From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from ma1-aaemail-dr-lapp03.apple.com (ma1-aaemail-dr-lapp03.apple.com [17.171.2.72]) by mx.groups.io with SMTP id smtpd.web11.78645.1597793391278910705 for ; Tue, 18 Aug 2020 16:29:56 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@apple.com header.s=20180706 header.b=LQkNiJlX; spf=pass (domain: apple.com, ip: 17.171.2.72, mailfrom: afish@apple.com) Received: from pps.filterd (ma1-aaemail-dr-lapp03.apple.com [127.0.0.1]) by ma1-aaemail-dr-lapp03.apple.com (8.16.0.42/8.16.0.42) with SMTP id 07INN0ne013691; Tue, 18 Aug 2020 16:29:49 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=from : message-id : content-type : mime-version : subject : date : in-reply-to : cc : to : references; s=20180706; bh=cu7s13T4k4fmGKbHX59vxOGjuvjLopCNC0DJIEEEW4k=; b=LQkNiJlXq0kJIfOC9HVCImahPYPLVrOu3EYidj8HAtFzS+b4/x2Dt5fxxiNLrVdhBGpy ElYEO/OGvmWGedvb9CLIcBfpRdmGt2iwTMdZE8LXwd/v0dsnCWUrSaE8KrVzRr0ycrS0 JVernr+DJsVAu2vt1xPJBbPkypUcetdqe41uEt2iBSwDks93gWoCjjCG7UrDkUvZpZ7p t/KNMBq4gX2y8nQgEz4HzahZ4t0XG5mrPAWibEwx6BThr06BugiHsGwnHelRqeUMfL+H eKF63wYoaXKxq0Lfp498/RN1l0GpG/bQcp/r6sf+6hxiZ+hezn2S7UGUhhfiF5M46zEM EQ== Received: from rn-mailsvcp-mta-lapp01.rno.apple.com (rn-mailsvcp-mta-lapp01.rno.apple.com [10.225.203.149]) by ma1-aaemail-dr-lapp03.apple.com with ESMTP id 32xepv1fqc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Tue, 18 Aug 2020 16:29:45 -0700 Received: from rn-mailsvcp-mmp-lapp03.rno.apple.com (rn-mailsvcp-mmp-lapp03.rno.apple.com [17.179.253.16]) by rn-mailsvcp-mta-lapp01.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPS id <0QFA004CI99JE0O0@rn-mailsvcp-mta-lapp01.rno.apple.com>; Tue, 18 Aug 2020 16:29:45 -0700 (PDT) Received: from process_milters-daemon.rn-mailsvcp-mmp-lapp03.rno.apple.com by rn-mailsvcp-mmp-lapp03.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) id <0QFA00J0093S7500@rn-mailsvcp-mmp-lapp03.rno.apple.com>; Tue, 18 Aug 2020 16:29:43 -0700 (PDT) X-Va-A: X-Va-T-CD: 191d32ccbe72196cf4780b643a5b742a X-Va-E-CD: 5c6805d94f23345e571e5cfdf6e73a22 X-Va-R-CD: d427b2a7d4da1cffe16a2e3fd0ed1dd9 X-Va-CD: 0 X-Va-ID: c054a158-8c01-41b1-bf61-3a5a80c88c61 X-V-A: X-V-T-CD: 191d32ccbe72196cf4780b643a5b742a X-V-E-CD: 5c6805d94f23345e571e5cfdf6e73a22 X-V-R-CD: d427b2a7d4da1cffe16a2e3fd0ed1dd9 X-V-CD: 0 X-V-ID: 5b299cfe-7d21-46ea-b455-e33efc7f3388 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235,18.0.687 definitions=2020-08-18_16:2020-08-18,2020-08-18 signatures=0 Received: from [17.235.28.128] (unknown [17.235.28.128]) by rn-mailsvcp-mmp-lapp03.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPSA id <0QFA00QNS99AJS00@rn-mailsvcp-mmp-lapp03.rno.apple.com>; Tue, 18 Aug 2020 16:29:41 -0700 (PDT) From: "Andrew Fish" Message-id: <079D9350-7E66-49A0-A70E-883C74D307CE@apple.com> MIME-version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\)) Subject: Re: [edk2-devel] [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-generated assembly files for X64 Date: Tue, 18 Aug 2020 16:29:34 -0700 In-reply-to: Cc: Mike Kinney , "Wang, Jian J" , "Zurcher, Christopher J" , "Yao, Jiewen" , "Lu, XiaoyuX" , Ard Biesheuvel To: devel@edk2.groups.io, spbrogan@outlook.com References: <20200804002429.3897-1-christopher.j.zurcher@intel.com> <20200804002429.3897-3-christopher.j.zurcher@intel.com> X-Mailer: Apple Mail (2.3608.80.23.2.2) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235,18.0.687 definitions=2020-08-18_16:2020-08-18,2020-08-18 signatures=0 Content-type: multipart/alternative; boundary="Apple-Mail=_CF94D665-A9A8-46A7-9B3A-463F28816A39" --Apple-Mail=_CF94D665-A9A8-46A7-9B3A-463F28816A39 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Sean, I agree it is reasonable to think hard about adding extra dependencies to = building.=20 Seems Perl is very popular in Openssl: /Volumes/Case/edk2(master)>find . -iname '*.pl' | wc -l 283 Thanks, Andrew Fish > On Aug 18, 2020, at 2:33 PM, Sean wrote: >=20 > Mike, >=20 > I am not technically a basetool maintainer but as an active user/dev in = basetools, i would be opposed to bringing in perl as an edk2 dependency. Al= so introducing another language is counter to the goal of aligning on pytho= n and improving the python used within edk2. From my perspective the opens= sl config case isn't strong enough to counter the above goal. In fact as yo= u know we are trying to change the paradigm for Crypto/OpenSSL with the Cry= pto Driver (https://github.com/tianocore/edk2/tree/master/CryptoPkg/Driver)= and BaseCryptLibOnProtocolPpi (https://github.com/tianocore/edk2/tree/mast= er/CryptoPkg/Library/BaseCryptLibOnProtocolPpi) work so that everyday devel= opment doesn't need to compile openssl in their edk2 builds. >=20 > So I support leaving it as is which means if you have to change somethin= g in openssl config you deal with it and a special one off. >=20 > Just my 2 cents. >=20 > Thanks > Sean >=20 >=20 > On 8/18/2020 9:15 AM, Michael D Kinney wrote: >> Jian, >> I want the BaseTools maintainers to evaluate these build requirements. >> We already have a number of tool dependencies. Adding one more for per= l >> may be acceptable. >> Mike >>> -----Original Message----- >>> From: Wang, Jian J >>> Sent: Monday, August 17, 2020 7:37 PM >>> To: Zurcher, Christopher J ; Yao, Jie= wen ; Kinney, Michael D >>> ; devel@edk2.groups.io >>> Cc: Lu, XiaoyuX ; Ard Biesheuvel >>> Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-gene= rated assembly files for X64 >>>=20 >>> I agree with Christopher. Currently manual works are inevitable in ope= nssl upgrade, >>> because perl script is used to automate part of code generation. It's = hard to ask >>> Windows developers to install an extra interpreter like perl, consider= ing it's not >>> popular in Windows environment. >>>=20 >>> Regards, >>> Jian >>>=20 >>>> -----Original Message----- >>>> From: Zurcher, Christopher J >>>> Sent: Saturday, August 15, 2020 3:35 AM >>>> To: Yao, Jiewen ; Kinney, Michael D >>>> ; devel@edk2.groups.io >>>> Cc: Wang, Jian J ; Lu, XiaoyuX ; >>>> Ard Biesheuvel >>>> Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-gen= erated >>>> assembly files for X64 >>>>=20 >>>> The current OpenSSL "UEFI" configuration depends on the OpenSSL build >>>> happening in a Unix-like environment. For a Windows-based build, this= must be >>>> done in a wrapper such as Cygwin/git bash or WSL. Integrating the Ope= nSSL >>>> config step into the build process is a non-trivial change. >>>>=20 >>>>>>> That means, whenever we upgrade the openssl, we need manually >>>> generate >>>>>>> them again. >>>>>>> Any step by step, or readme to tell us how to do that? >>>>=20 >>>> The process for generating these X64 files is virtually identical to = the already- >>>> existing maintainer process for OpensslLib, with only one additional = argument >>>> required to process_files.pl. >>>>=20 >>>> OpensslLib as it exists today in EDK2 already includes auto-generated= files from >>>> the Perl configure process. If we want to re-architect how we include= OpenSSL >>>> into EDK2, I think that should be done in a different patch set. Addi= tionally, such >>>> a large task might be a waste of time with the release of OpenSSL 3 h= appening >>>> later this year. They are making changes to their build system, and I= think that if >>>> we are going to re-architect our side of it, we should wait until we = are adopting >>>> OpenSSL 3. >>>>=20 >>>> -- >>>> Christopher Zurcher >>>>=20 >>>>> -----Original Message----- >>>>> From: Yao, Jiewen >>>>> Sent: Thursday, August 13, 2020 08:46 >>>>> To: Kinney, Michael D ; Zurcher, Christo= pher J >>>>> ; devel@edk2.groups.io >>>>> Cc: Wang, Jian J ; Lu, XiaoyuX >>>> ; >>>>> Ard Biesheuvel >>>>> Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto- >>>> generated >>>>> assembly files for X64 >>>>>=20 >>>>> Thank you Mike to help on this. >>>>>=20 >>>>> I also believe that the best option is to integrate the auto-gen pro= cess in >>>>> base tool. >>>>>=20 >>>>>=20 >>>>>=20 >>>>>> -----Original Message----- >>>>>> From: Kinney, Michael D >>>>>> Sent: Thursday, August 13, 2020 11:38 PM >>>>>> To: Yao, Jiewen ; Zurcher, Christopher J >>>>>> ; devel@edk2.groups.io; Kinney, Mi= chael >>>> D >>>>>> >>>>>> Cc: Wang, Jian J ; Lu, XiaoyuX >>>>> ; >>>>>> Ard Biesheuvel >>>>>> Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto- >>>> generated >>>>>> assembly files for X64 >>>>>>=20 >>>>>> Hi Jiewen, >>>>>>=20 >>>>>> For this use case, generating the files as part of the build proces= s would >>>>> add >>>>>> a dependency in pearl. >>>>>>=20 >>>>>> Based on other recent CryptoPkg changes and some being discussed in= BZ, I >>>>> am >>>>>> seeing more changes to the OpenSLL .pl configuration files, and I a= m >>>>> concerned >>>>>> that based on platform requirements, we may need to build OpenSSL w= ith >>>>>> different .pl config file settings which would also add a pearl dep= endency >>>>>> to the build. >>>>>>=20 >>>>>> So exploring what it would take to add the pearl dependency to the = build >>>>> system >>>>>> is worth exploring and if successful would eliminate the need to ch= eckin >>>>> these >>>>>> types of autogenerated files. This would also reduce maintenance o= f the >>>>>> auto-genererated files when EDK II moves to a new version of OpenSS= L. >>>>>>=20 >>>>>> @Cristopher - Can you please share a branch that uses pearl to gene= rate the >>>>>> files >>>>>> instead of checking them in? I would like the BaseTools maintainer= s to >>>>> review >>>>>> that and evaluate adding the pearl dependency. Hopefully, we can m= ake the >>>>>> pearl dependency detectable so it is only required if the build req= uires >>>>> it. >>>>>>=20 >>>>>> Thanks, >>>>>>=20 >>>>>> Mike >>>>>>=20 >>>>>>> -----Original Message----- >>>>>>> From: Yao, Jiewen >>>>>>> Sent: Thursday, August 13, 2020 8:25 AM >>>>>>> To: Zurcher, Christopher J ; >>>>>> devel@edk2.groups.io >>>>>>> Cc: Wang, Jian J ; Lu, XiaoyuX >>>>>> ; Kinney, Michael D >>>>>>> ; Ard Biesheuvel >>>>>>> Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto- >>>>>> generated assembly files for X64 >>>>>>>=20 >>>>>>> + Mike Kinney >>>>>>>=20 >>>>>>> I am not sure if it is a right way to check in auto-generated file= . >>>>>>> That means, whenever we upgrade the openssl, we need manually >>>> generate >>>>>> them again. >>>>>>> Any step by step, or readme to tell us how to do that? >>>>>>>=20 >>>>>>> Mike, would you please double confirm what is the right way for au= to- >>>>>> generated file in EDKII? >>>>>>>=20 >>>>>>>=20 >>>>>>>> -----Original Message----- >>>>>>>> From: Zurcher, Christopher J >>>>>>>> Sent: Tuesday, August 4, 2020 8:24 AM >>>>>>>> To: devel@edk2.groups.io >>>>>>>> Cc: Yao, Jiewen ; Wang, Jian J >>>>>> ; >>>>>>>> Lu, XiaoyuX ; Ard Biesheuvel >>>>>> >>>>>>>> Subject: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto- >>>> generated >>>>>>>> assembly files for X64 >>>>>>>>=20 >>>>>>>> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2507 >>>>>>>>=20 >>>>>>>> Adding the auto-generated assembly files for the X64 architecture= . >>>>>>>>=20 >>>>>>>> Cc: Jiewen Yao >>>>>>>> Cc: Jian J Wang >>>>>>>> Cc: Xiaoyu Lu >>>>>>>> Cc: Ard Biesheuvel >>>>>>>> Signed-off-by: Christopher J Zurcher >>>>>>>> --- >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb-x86_64.nasm >>>> | >>>>>> 732 >>>>>>>> +++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.na= sm >>>> | >>>>>>>> 1916 ++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha256- >>>> x86_64.nasm | >>>>>>>> 78 + >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-x86_64.nasm = | >>>>>> 5103 >>>>>>>> ++++++++++++++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes-x86_64.nasm = | >>>>>> 1173 >>>>>>>> +++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash-x86_64.nasm >>>> | >>>>>>>> 1569 ++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb-x86_64.nasm >>>> | >>>>>> 3137 >>>>>>>> ++++++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm = | >>>>>> 2884 >>>>>>>> +++++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-mb-x86_64.nas= m >>>> | >>>>>>>> 3461 +++++++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-x86_64.nasm >>>> | >>>>>> 3313 >>>>>>>> +++++++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512-x86_64.nasm >>>> | >>>>>> 1938 >>>>>>>> ++++++++ >>>>>>>> CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.nasm = | >>>>> 491 >>>>>> ++ >>>>>>>> 12 files changed, 25795 insertions(+) >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb= - >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-m= b- >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..1a3ed1dd35 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb- >>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,732 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/aes/asm/aesni-mb-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2013-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_multi_cbc_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_multi_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_multi_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,48 >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc4x_body: >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + lea rsi,[120+rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[80+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc4x_loop_grande: >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[((-64))+rdi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((-80))+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-72))+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[((-56))+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[((-24))+rdi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((-40))+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[((-16))+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r10,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[56+rdi] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[40+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r11,rsp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$enc4x_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((16-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((32-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[((240-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor rbx,rbx >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_enc4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_enc4x: >>>>>>>>=20 >>>>>>>> + add rbx,16 >>>>>>>>=20 >>>>>>>> + lea rbp,[16+rsp] >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + sub rbp,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r8] >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r9] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r10] >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((48-120))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> + cmovge r8,rbp >>>>>>>>=20 >>>>>>>> + cmovg r12,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-56))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + cmovge r9,rbp >>>>>>>>=20 >>>>>>>> + cmovg r13,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> + cmovge r10,rbp >>>>>>>>=20 >>>>>>>> + cmovg r14,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + cmovge r11,rbp >>>>>>>>=20 >>>>>>>> + cmovg r15,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r12] >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r13] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r14] >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((128-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm11,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[((-120))+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((144-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp eax,11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((160-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jb NEAR $L$enc4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((176-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((192-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + je NEAR $L$enc4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((208-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((224-120))+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$enc4x_tail: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[rbx*1+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[((16-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[rbx*1+r9] >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[rbx*1+r10] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,224 >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[rbx*1+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,232 >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[((32-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r12],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r13],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r14],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r15],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rdi,[160+rdi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc4x_loop_grande >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc4x_done: >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-216))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-200))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc4x_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_multi_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_multi_cbc_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_multi_cbc_decrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_multi_cbc_decrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,48 >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec4x_body: >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + lea rsi,[120+rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[80+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec4x_loop_grande: >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[((-64))+rdi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((-80))+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-72))+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[((-56))+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[((-24))+rdi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((-40))+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[((-16))+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r10,rsp >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[56+rdi] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[40+rdi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],ecx >>>>>>>>=20 >>>>>>>> + cmovle r11,rsp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$dec4x_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((16-120))+rsi] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((32-120))+rsi] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[((240-120))+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor rbx,rbx >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_dec4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_dec4x: >>>>>>>>=20 >>>>>>>> + add rbx,16 >>>>>>>>=20 >>>>>>>> + lea rbp,[16+rsp] >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + sub rbp,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r8] >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r9] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r10] >>>>>>>>=20 >>>>>>>> + prefetcht0 [31+rbx*1+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((48-120))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> + cmovge r8,rbp >>>>>>>>=20 >>>>>>>> + cmovg r12,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-56))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + cmovge r9,rbp >>>>>>>>=20 >>>>>>>> + cmovg r13,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> + cmovge r10,rbp >>>>>>>>=20 >>>>>>>> + cmovg r14,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + cmovge r11,rbp >>>>>>>>=20 >>>>>>>> + cmovg r15,rbp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r12] >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r13] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r14] >>>>>>>>=20 >>>>>>>> + prefetcht0 [15+rbx*1+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((128-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm11,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[((-120))+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((144-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp eax,11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((160-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jb NEAR $L$dec4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((176-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((192-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + je NEAR $L$dec4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((208-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((224-120))+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$dec4x_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$dec4x_tail: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[((16-120))+rsi] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[((32-120))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,214 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,223 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[((-16))+rbx*1+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[((-16))+rbx*1+r9] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,224 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,233 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[((-16))+rbx*1+r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[((-16))+rbx*1+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r12],xmm2 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rbx*1+r8] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r13],xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[rbx*1+r9] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r14],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[rbx*1+r10] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rbx*1+r15],xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[rbx*1+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rdi,[160+rdi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec4x_loop_grande >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec4x_done: >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-216))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-200))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec4x_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_multi_cbc_decrypt: >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + mov QWORD[240+r8],r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-56-160))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_multi_cbc_encrypt wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_multi_cbc_encrypt wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_aesni_multi_cbc_encrypt wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_multi_cbc_decrypt wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_multi_cbc_decrypt wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_aesni_multi_cbc_decrypt wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_aesni_multi_cbc_encrypt: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$enc4x_body wrt ..imagebase,$L$enc4x_epilogue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_aesni_multi_cbc_decrypt: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$dec4x_body wrt ..imagebase,$L$dec4x_epilogue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sh= a1- >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- >>>> sha1- >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..f4fd9ca50d >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1- >>>>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,1916 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/aes/asm/aesni-sha1-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2011-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_cbc_sha1_enc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_cbc_sha1_enc: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[((OPENSSL_ia32cap_P+0))] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + bt r11,61 >>>>>>>>=20 >>>>>>>> + jc NEAR aesni_cbc_sha1_enc_shaext >>>>>>>>=20 >>>>>>>> + jmp NEAR aesni_cbc_sha1_enc_ssse3 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_cbc_sha1_enc_ssse3: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_cbc_sha1_enc_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-264))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+0)+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+16)+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+32)+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+48)+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+64)+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+80)+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+96)+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+112)+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+128)+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(96+144)+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$prologue_ssse3: >>>>>>>>=20 >>>>>>>> + mov r12,rdi >>>>>>>>=20 >>>>>>>> + mov r13,rsi >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + lea r15,[112+rcx] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rsp],r8 >>>>>>>>=20 >>>>>>>> + shl r14,6 >>>>>>>>=20 >>>>>>>> + sub r13,r12 >>>>>>>>=20 >>>>>>>> + mov r8d,DWORD[((240-112))+r15] >>>>>>>>=20 >>>>>>>> + add r14,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[K_XX_XX] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[r9] >>>>>>>>=20 >>>>>>>> + mov ebx,DWORD[4+r9] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[12+r9] >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + and esi,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> + add r10,64 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm4 >>>>>>>>=20 >>>>>>>> + psubd xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm5 >>>>>>>>=20 >>>>>>>> + psubd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + psubd xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movups xmm15,XMMWORD[((-112))+r15] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_ssse3 >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_ssse3: >>>>>>>>=20 >>>>>>>> + ror ebx,2 >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[r12] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm4,238 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm12,4 >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pslldq xmm3,12 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm12,31 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm3 >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pslld xmm13,2 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm5,238 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm13,4 >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm3 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pslldq xmm12,12 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm13,31 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm12,30 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm3,2 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm12,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm6,238 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm3,4 >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm10 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pslldq xmm13,12 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm10 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm3,31 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm13 >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm13,30 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm12,2 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm11,xmm7,238 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm10 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm12,4 >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm12 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pslldq xmm3,12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm11 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm12,31 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm3 >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + cmp r8d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast1 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast1 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast1: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + por xmm11,xmm12 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm13,2 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm10,238 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm13,xmm11 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[16+r12] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r13*1+r12],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm3 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pslld xmm4,2 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + psrld xmm13,30 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm11,238 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm6 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm4 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm12 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm5,2 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm4,238 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm6,2 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + psrld xmm12,30 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + por xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm5,238 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm6 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm3 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pslld xmm7,2 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + psrld xmm13,30 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + por xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm6,238 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm8,2 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm7,238 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + cmp r8d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast2 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast2 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast2: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm13 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm9,2 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm12,30 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + por xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm8,238 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[32+r12] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+r12*1+r13],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm10 >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm3 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + pslld xmm10,2 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + psrld xmm13,30 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + por xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm9,238 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pslld xmm11,2 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + por xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm10,238 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm11 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm4 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pslld xmm4,2 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm12,30 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + por xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm11,238 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm6 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm3 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pslld xmm5,2 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm13,30 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + por xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm4,238 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + cmp r8d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast3 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast3 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast3: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[48+r12] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+r12*1+r13],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm6 >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pslld xmm6,2 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + psrld xmm3,30 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + por xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm5,238 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm7,2 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + psrld xmm12,30 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm3 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + cmp r10,r14 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done_ssse3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+r10] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> + add r10,64 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm4 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + psubd xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm5 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + psubd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + cmp r8d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast4 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast4 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + psubd xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+r12*1+r13],xmm2 >>>>>>>>=20 >>>>>>>> + lea r12,[64+r12] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add eax,DWORD[r9] >>>>>>>>=20 >>>>>>>> + add esi,DWORD[4+r9] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+r9] >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+r9] >>>>>>>>=20 >>>>>>>> + mov DWORD[r9],eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + mov DWORD[4+r9],esi >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+r9],ecx >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+r9],edx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+r9],ebp >>>>>>>>=20 >>>>>>>> + and esi,edi >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_ssse3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_ssse3: >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + cmp r8d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast5 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast5 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+r15] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast5: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+r15] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+r12*1+r13],xmm2 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add eax,DWORD[r9] >>>>>>>>=20 >>>>>>>> + add esi,DWORD[4+r9] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov DWORD[r9],eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+r9] >>>>>>>>=20 >>>>>>>> + mov DWORD[4+r9],esi >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + mov DWORD[8+r9],ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+r9],edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+r9],ebp >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm2 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((96+0))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((96+16))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((96+32))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((96+48))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((96+64))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((96+80))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((96+96))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((96+112))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((96+128))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((96+144))+rsp] >>>>>>>>=20 >>>>>>>> + lea rsi,[264+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[32+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[48+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_cbc_sha1_enc_ssse3: >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +K_XX_XX: >>>>>>>>=20 >>>>>>>> + DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 >>>>>>>>=20 >>>>>>>> + DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 >>>>>>>>=20 >>>>>>>> + DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc >>>>>>>>=20 >>>>>>>> + DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> +DB >>>>> 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115 >>>>>>>>=20 >>>>>>>> +DB 116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52 >>>>>>>>=20 >>>>>>>> +DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 >>>>>>>>=20 >>>>>>>> +DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,= 111 >>>>>>>>=20 >>>>>>>> +DB 114,103,62,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_cbc_sha1_enc_shaext: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_cbc_sha1_enc_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-160)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-144)+rax],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-128)+rax],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-112)+rax],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-96)+rax],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-80)+rax],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-64)+rax],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-48)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-32)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-16)+rax],xmm15 >>>>>>>>=20 >>>>>>>> +$L$prologue_shaext: >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[((K_XX_XX+80))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r11d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + sub rsi,rdi >>>>>>>>=20 >>>>>>>> + movups xmm15,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[112+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm8,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm9,27 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_shaext: >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,223 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[16+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,231 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[32+r10] >>>>>>>>=20 >>>>>>>> + lea r10,[64+r10] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,239 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,212 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,220 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[((-16))+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,247 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,214 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,203 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,243 >>>>>>>>=20 >>>>>>>> + cmp r11d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast6 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast6 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+rcx] >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,212 >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rdi*1+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,220 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,214 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,203 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,243 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,212 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,220 >>>>>>>>=20 >>>>>>>> + cmp r11d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast7: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+rcx] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rdi*1+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,214 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,203 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,243 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,212 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,220 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + cmp r11d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast8 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast8 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast8: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+rcx] >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,214 >>>>>>>>=20 >>>>>>>> + movups xmm14,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rdi*1+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-80))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,203 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,243 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-16))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,214 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,205 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + cmp r11d,11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$aesenclast9 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[80+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + je NEAR $L$aesenclast9 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[96+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[112+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +$L$aesenclast9: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((16-112))+rcx] >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rdi*1+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + lea rdi,[64+rdi] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm8,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm9,27 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r9],xmm8 >>>>>>>>=20 >>>>>>>> + movd DWORD[16+r9],xmm9 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-8-160))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-8-144))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-8-128))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-8-112))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-8-96))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-8-80))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-8-64))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-8-48))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-8-32))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-8-16))+rax] >>>>>>>>=20 >>>>>>>> + mov rsp,rax >>>>>>>>=20 >>>>>>>> +$L$epilogue_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_cbc_sha1_enc_shaext: >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +ssse3_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + lea r10,[aesni_cbc_sha1_enc_shaext] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$seh_no_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + lea rax,[168+rax] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> +$L$seh_no_shaext: >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + lea rax,[264+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[24+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[32+rax] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[40+rax] >>>>>>>>=20 >>>>>>>> + lea rax,[48+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + mov QWORD[240+r8],r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$common_seh_tail: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_cbc_sha1_enc_ssse3 wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_cbc_sha1_enc_ssse3 wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_aesni_cbc_sha1_enc_ssse3 wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_cbc_sha1_enc_shaext wrt ..ima= gebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_cbc_sha1_enc_shaext wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_aesni_cbc_sha1_enc_shaext wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_aesni_cbc_sha1_enc_ssse3: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ssse3_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ss= se3 >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_aesni_cbc_sha1_enc_shaext: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ssse3_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue_shaext wrt ..imagebase,$L$epilogue_s= haext >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sh= a256- >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- >>>>>> sha256- >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..f5c250b904 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha256- >>>>>>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,78 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/aes/asm/aesni-sha256-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2013-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> +global aesni_cbc_sha256_enc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_cbc_sha256_enc: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + cmp rcx,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$probe >>>>>>>>=20 >>>>>>>> + ud2 >>>>>>>>=20 >>>>>>>> +$L$probe: >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +K256: >>>>>>>>=20 >>>>>>>> + DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 >>>>>>>>=20 >>>>>>>> + DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 >>>>>>>>=20 >>>>>>>> + DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 >>>>>>>>=20 >>>>>>>> + DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 >>>>>>>>=20 >>>>>>>> + DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 >>>>>>>>=20 >>>>>>>> + DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 >>>>>>>>=20 >>>>>>>> + DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 >>>>>>>>=20 >>>>>>>> + DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 >>>>>>>>=20 >>>>>>>> + DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc >>>>>>>>=20 >>>>>>>> + DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc >>>>>>>>=20 >>>>>>>> + DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da >>>>>>>>=20 >>>>>>>> + DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da >>>>>>>>=20 >>>>>>>> + DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 >>>>>>>>=20 >>>>>>>> + DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 >>>>>>>>=20 >>>>>>>> + DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 >>>>>>>>=20 >>>>>>>> + DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 >>>>>>>>=20 >>>>>>>> + DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 >>>>>>>>=20 >>>>>>>> + DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 >>>>>>>>=20 >>>>>>>> + DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 >>>>>>>>=20 >>>>>>>> + DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 >>>>>>>>=20 >>>>>>>> + DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 >>>>>>>>=20 >>>>>>>> + DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 >>>>>>>>=20 >>>>>>>> + DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 >>>>>>>>=20 >>>>>>>> + DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 >>>>>>>>=20 >>>>>>>> + DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 >>>>>>>>=20 >>>>>>>> + DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 >>>>>>>>=20 >>>>>>>> + DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 >>>>>>>>=20 >>>>>>>> + DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 >>>>>>>>=20 >>>>>>>> + DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 >>>>>>>>=20 >>>>>>>> + DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 >>>>>>>>=20 >>>>>>>> + DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 >>>>>>>>=20 >>>>>>>> + DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0,0,0,0,0,0,0,0,-1,-1,-1,-1 >>>>>>>>=20 >>>>>>>> + DD 0,0,0,0,0,0,0,0 >>>>>>>>=20 >>>>>>>> +DB 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54 >>>>>>>>=20 >>>>>>>> +DB 32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95 >>>>>>>>=20 >>>>>>>> +DB 54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98 >>>>>>>>=20 >>>>>>>> +DB 121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,= 108 >>>>>>>>=20 >>>>>>>> +DB 46,111,114,103,62,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- >>>>>> x86_64.nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..57ee23ea8c >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-x86_64.na= sm >>>>>>>> @@ -0,0 +1,5103 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/aes/asm/aesni-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2009-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> +global aesni_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_encrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+r8] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_1: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_1 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rdx],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_decrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+r8] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_2: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rdx],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_encrypt2: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc_loop2: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_decrypt2: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec_loop2: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,216 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_encrypt3: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc_loop3: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,224 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_decrypt3: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec_loop3: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,224 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_encrypt4: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x1f,0x00 >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc_loop4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,232 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_decrypt4: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x1f,0x00 >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec_loop4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,232 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_encrypt6: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_loop6_enter >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$enc_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +$L$enc_loop6_enter: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,248 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_decrypt6: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$dec_loop6_enter >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$dec_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +$L$dec_loop6_enter: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,248 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_encrypt8: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_loop8_inner >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$enc_loop8: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +$L$enc_loop8_inner: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> +$L$enc_loop8_enter: >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,221,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,221,200 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_aesni_decrypt8: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$dec_loop8_inner >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$dec_loop8: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +$L$dec_loop8_inner: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> +$L$dec_loop8_enter: >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,223,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,223,200 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_ecb_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_ecb_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ecb_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-88))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_body: >>>>>>>>=20 >>>>>>>> + and rdx,-16 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov r11,rcx >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + test r8d,r8d >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ecb_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rdx,0x80 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_enc_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + sub rdx,0x80 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_enc_loop8_enter >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_loop8: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[112+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_loop8_enter: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,0x80 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ecb_enc_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[112+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + add rdx,0x80 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_tail: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x20 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_enc_one >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_enc_two >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x40 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_enc_three >>>>>>>>=20 >>>>>>>> + movups xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_enc_four >>>>>>>>=20 >>>>>>>> + movups xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x60 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_enc_five >>>>>>>>=20 >>>>>>>> + movups xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_enc_six >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_one: >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_3: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_3 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_two: >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_three: >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_four: >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_five: >>>>>>>>=20 >>>>>>>> + xorps xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_six: >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_decrypt: >>>>>>>>=20 >>>>>>>> + cmp rdx,0x80 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_dec_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + sub rdx,0x80 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_dec_loop8_enter >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_loop8: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[112+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_loop8_enter: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + sub rdx,0x80 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ecb_dec_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[112+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + add rdx,0x80 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_tail: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x20 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_dec_one >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_dec_two >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x40 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_dec_three >>>>>>>>=20 >>>>>>>> + movups xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_dec_four >>>>>>>>=20 >>>>>>>> + movups xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x60 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ecb_dec_five >>>>>>>>=20 >>>>>>>> + movups xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ecb_dec_six >>>>>>>>=20 >>>>>>>> + movups xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_one: >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_two: >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_three: >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_four: >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_five: >>>>>>>>=20 >>>>>>>> + xorps xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ecb_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ecb_dec_six: >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ecb_ret: >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + lea rsp,[88+rsp] >>>>>>>>=20 >>>>>>>> +$L$ecb_enc_ret: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ecb_encrypt: >>>>>>>>=20 >>>>>>>> +global aesni_ccm64_encrypt_blocks >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_ccm64_encrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ccm64_encrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-88))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> +$L$ccm64_enc_body: >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[$L$increment64] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[$L$bswap_mask] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + mov r10d,16 >>>>>>>>=20 >>>>>>>> + lea r11,[rcx] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,247 >>>>>>>>=20 >>>>>>>> + sub r10,rax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ccm64_enc_outer >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ccm64_enc_outer: >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + movups xmm8,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ccm64_enc2_loop: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ccm64_enc2_loop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + paddq xmm6,xmm9 >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,215 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ccm64_enc_outer >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r9],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + lea rsp,[88+rsp] >>>>>>>>=20 >>>>>>>> +$L$ccm64_enc_ret: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ccm64_encrypt_blocks: >>>>>>>>=20 >>>>>>>> +global aesni_ccm64_decrypt_blocks >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_ccm64_decrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ccm64_decrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-88))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> +$L$ccm64_dec_body: >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movups xmm6,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[$L$increment64] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[$L$bswap_mask] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + mov r11,rcx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,247 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_5: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + shl r10d,4 >>>>>>>>=20 >>>>>>>> + mov eax,16 >>>>>>>>=20 >>>>>>>> + movups xmm8,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + paddq xmm6,xmm9 >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + sub rax,r10 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+r10*1+r11] >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ccm64_dec_outer >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ccm64_dec_outer: >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm8 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,215 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ccm64_dec_break >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ccm64_dec2_loop >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ccm64_dec2_loop: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ccm64_dec2_loop >>>>>>>>=20 >>>>>>>> + movups xmm8,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + paddq xmm6,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,216 >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ccm64_dec_outer >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ccm64_dec_break: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+r11] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + lea r11,[32+r11] >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm8 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r11,[16+r11] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_6 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,217 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r9],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + lea rsp,[88+rsp] >>>>>>>>=20 >>>>>>>> +$L$ccm64_dec_ret: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ccm64_decrypt_blocks: >>>>>>>>=20 >>>>>>>> +global aesni_ctr32_encrypt_blocks >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_ctr32_encrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ctr32_encrypt_blocks: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rdx,1 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$ctr32_bulk >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_7: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_7 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_epilogue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ctr32_bulk: >>>>>>>>=20 >>>>>>>> + lea r11,[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,288 >>>>>>>>=20 >>>>>>>> + and rsp,-16 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm15 >>>>>>>>=20 >>>>>>>> +$L$ctr32_body: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov r8d,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[12+rcx] >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm2 >>>>>>>>=20 >>>>>>>> + bswap r8d >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[64+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[80+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[96+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + mov r10,rdx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[112+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rax,[1+r8] >>>>>>>>=20 >>>>>>>> + lea rdx,[2+r8] >>>>>>>>=20 >>>>>>>> + bswap eax >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,58,34,216,3 >>>>>>>>=20 >>>>>>>> + lea rax,[3+r8] >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,34,226,3 >>>>>>>>=20 >>>>>>>> + bswap eax >>>>>>>>=20 >>>>>>>> + mov rdx,r10 >>>>>>>>=20 >>>>>>>> + lea r10,[4+r8] >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm4 >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> + bswap r10d >>>>>>>>=20 >>>>>>>> +DB 102,15,58,34,232,3 >>>>>>>>=20 >>>>>>>> + xor r10d,ebp >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm5 >>>>>>>>=20 >>>>>>>> + lea r9,[5+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[((64+12))+rsp],r10d >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> + lea r10,[6+r8] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> + bswap r10d >>>>>>>>=20 >>>>>>>> + mov DWORD[((80+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + xor r10d,ebp >>>>>>>>=20 >>>>>>>> + lea r9,[7+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[((96+12))+rsp],r10d >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> + and r10d,71303168 >>>>>>>>=20 >>>>>>>> + mov DWORD[((112+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rdx,8 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ctr32_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + cmp r10d,4194304 >>>>>>>>=20 >>>>>>>> + je NEAR $L$ctr32_6x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rcx,[128+rcx] >>>>>>>>=20 >>>>>>>> + sub rdx,2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ctr32_6x: >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + mov r10d,48 >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + sub r10,rax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ctr32_loop6: >>>>>>>>=20 >>>>>>>> + add r8d,6 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-48))+r10*1+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + mov eax,r8d >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,12 >>>>>>>>=20 >>>>>>>> + lea eax,[1+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,28 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + lea eax,[2+r8] >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,44 >>>>>>>>=20 >>>>>>>> + lea eax,[3+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-32))+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,60 >>>>>>>>=20 >>>>>>>> + lea eax,[4+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,76 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> + lea eax,[5+r8] >>>>>>>>=20 >>>>>>>> + xor eax,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x38,0xf1,0x44,0x24,92 >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call $L$enc_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-64))+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movaps xmm2,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + movaps xmm3,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + movaps xmm4,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm5,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm10 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[80+rsi],xmm13 >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ctr32_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add rdx,6 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea eax,[((-48))+r10] >>>>>>>>=20 >>>>>>>> + lea rcx,[((-80))+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + neg eax >>>>>>>>=20 >>>>>>>> + shr eax,4 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ctr32_loop8: >>>>>>>>=20 >>>>>>>> + add r8d,8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + mov r9d,r8d >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((32-128))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + mov DWORD[((0+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[1+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((48-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + mov DWORD[((16+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[2+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((64-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + mov DWORD[((32+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[3+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((80-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + mov DWORD[((48+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[4+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((96-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + mov DWORD[((64+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[5+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((112-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + mov DWORD[((80+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[6+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((128-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> +DB 0x66,0x90 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + mov DWORD[((96+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + lea r9,[7+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((144-128))+rcx] >>>>>>>>=20 >>>>>>>> + bswap r9d >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> + xor r9d,ebp >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + mov DWORD[((112+12))+rsp],r9d >>>>>>>>=20 >>>>>>>> + cmp eax,11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((160-128))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ctr32_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((176-128))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((192-128))+rcx] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ctr32_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((208-128))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((224-128))+rcx] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ctr32_enc_done: >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,201 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,210 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[((112-128))+rdi] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,219 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,228 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,237 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,246 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,255 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,221,193 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((16-128))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,221,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm14 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[112+rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,8 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ctr32_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add rdx,8 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + lea rcx,[((-128))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ctr32_tail: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + cmp rdx,4 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ctr32_loop3 >>>>>>>>=20 >>>>>>>> + je NEAR $L$ctr32_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + lea rcx,[((32-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + add rax,16 >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> + movups xmm11,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm12,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,220,193 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call $L$enc_loop8_enter >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + cmp rdx,6 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm11,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + je NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm12,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ctr32_loop4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ctr32_loop4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,217 >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm11,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,233 >>>>>>>>=20 >>>>>>>> + movups xmm12,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm13,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ctr32_loop3: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ctr32_loop3 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,225 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + cmp rdx,2 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm11,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + je NEAR $L$ctr32_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm12,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ctr32_done: >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + xor ebp,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-168))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-152))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-136))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-120))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-104))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-88))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-72))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-56))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-40))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-24))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ctr32_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ctr32_encrypt_blocks: >>>>>>>>=20 >>>>>>>> +global aesni_xts_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_xts_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_xts_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,272 >>>>>>>>=20 >>>>>>>> + and rsp,-16 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm15 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_body: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+r8] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_8: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov rbp,rcx >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + shl r10d,4 >>>>>>>>=20 >>>>>>>> + mov r9,rdx >>>>>>>>=20 >>>>>>>> + and rdx,-16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[$L$xts_magic] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm2 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm2,0x5f >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm9,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,16*6 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$xts_enc_short >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+96 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+r10*1+rbp] >>>>>>>>=20 >>>>>>>> + sub rax,r10 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rbp] >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + lea r8,[$L$xts_magic] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_grandloop: >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[64+rsp],xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[80+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm15,0x5f >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_loop6 >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-64))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-80))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$xts_enc_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movaps xmm11,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + movaps xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> + movaps xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movaps xmm14,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm0,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rbp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,84,36,0 >>>>>>>>=20 >>>>>>>> + psrad xmm9,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,92,36,16 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,100,36,32 >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,108,36,48 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,116,36,64 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,124,36,80 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-96)+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-80)+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-64)+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-48)+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-32)+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + sub rdx,16*6 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$xts_enc_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+96 >>>>>>>>=20 >>>>>>>> + sub eax,r10d >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + shr eax,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_enc_short: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + add rdx,16*6 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> + cmp rdx,0x20 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$xts_enc_one >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$xts_enc_two >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> + cmp rdx,0x40 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$xts_enc_three >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$xts_enc_four >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + xorps xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + lea rsi,[80+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_one: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_9: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_two: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + lea rsi,[32+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_three: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[48+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + lea rsi,[48+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_four: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[64+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_encrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_enc_done: >>>>>>>>=20 >>>>>>>> + and r9,15 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$xts_enc_ret >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_enc_steal: >>>>>>>>=20 >>>>>>>> + movzx eax,BYTE[rdi] >>>>>>>>=20 >>>>>>>> + movzx ecx,BYTE[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[1+rdi] >>>>>>>>=20 >>>>>>>> + mov BYTE[((-16))+rsi],al >>>>>>>>=20 >>>>>>>> + mov BYTE[rsi],cl >>>>>>>>=20 >>>>>>>> + lea rsi,[1+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$xts_enc_steal >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsi,r9 >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_10: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_enc_ret: >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-168))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-152))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-136))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-120))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-104))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-88))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-72))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-56))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-40))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-24))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_enc_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_xts_encrypt: >>>>>>>>=20 >>>>>>>> +global aesni_xts_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_xts_decrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_xts_decrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,272 >>>>>>>>=20 >>>>>>>> + and rsp,-16 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm15 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_body: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+r8] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_11: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + test rdx,15 >>>>>>>>=20 >>>>>>>> + setnz al >>>>>>>>=20 >>>>>>>> + shl rax,4 >>>>>>>>=20 >>>>>>>> + sub rdx,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov rbp,rcx >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + shl r10d,4 >>>>>>>>=20 >>>>>>>> + mov r9,rdx >>>>>>>>=20 >>>>>>>> + and rdx,-16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[$L$xts_magic] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm2 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm2,0x5f >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm9,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,16*6 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$xts_dec_short >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+96 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+r10*1+rbp] >>>>>>>>=20 >>>>>>>> + sub rax,r10 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rbp] >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + lea r8,[$L$xts_magic] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_grandloop: >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[64+rsp],xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[80+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm15,0x5f >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_loop6 >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-64))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-80))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$xts_dec_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movaps xmm11,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-64))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + movaps xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-48))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> + movaps xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((-32))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm14,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movaps xmm14,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + psrad xmm0,31 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rbp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,84,36,0 >>>>>>>>=20 >>>>>>>> + psrad xmm9,31 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,92,36,16 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,100,36,32 >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,108,36,48 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,116,36,64 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,124,36,80 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-96)+rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-80)+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-64)+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-48)+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-32)+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + sub rdx,16*6 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$xts_dec_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+96 >>>>>>>>=20 >>>>>>>> + sub eax,r10d >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + shr eax,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_dec_short: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> + add rdx,16*6 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$xts_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + cmp rdx,0x20 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$xts_dec_one >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$xts_dec_two >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + cmp rdx,0x40 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$xts_dec_three >>>>>>>>=20 >>>>>>>> + je NEAR $L$xts_dec_four >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + xorps xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + lea rsi,[80+rsi] >>>>>>>>=20 >>>>>>>> + pshufd xmm11,xmm14,0x13 >>>>>>>>=20 >>>>>>>> + and r9,15 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$xts_dec_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + paddq xmm15,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_done2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_one: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_12: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm12 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_two: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + lea rsi,[32+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_three: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[48+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm14 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + lea rsi,[48+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_four: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[64+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$xts_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$xts_dec_done: >>>>>>>>=20 >>>>>>>> + and r9,15 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$xts_dec_ret >>>>>>>>=20 >>>>>>>> +$L$xts_dec_done2: >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_13: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_dec_steal: >>>>>>>>=20 >>>>>>>> + movzx eax,BYTE[16+rdi] >>>>>>>>=20 >>>>>>>> + movzx ecx,BYTE[rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[1+rdi] >>>>>>>>=20 >>>>>>>> + mov BYTE[rsi],al >>>>>>>>=20 >>>>>>>> + mov BYTE[16+rsi],cl >>>>>>>>=20 >>>>>>>> + lea rsi,[1+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$xts_dec_steal >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsi,r9 >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_14: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_dec_ret: >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-168))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-168)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-152))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-152)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-136))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-136)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-120))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-104))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-88))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-72))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-56))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-40))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-24))+r11] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-24)+r11],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$xts_dec_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_xts_decrypt: >>>>>>>>=20 >>>>>>>> +global aesni_ocb_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_ocb_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ocb_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rax,[rsp] >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-160))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_body: >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[56+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((56+8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + mov r11,rcx >>>>>>>>=20 >>>>>>>> + shl r10d,4 >>>>>>>>=20 >>>>>>>> + movups xmm9,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+32 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+r10*1+r11] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + sub rax,r10 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + test r8,1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_enc_odd >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + bsf r12,r8 >>>>>>>>=20 >>>>>>>> + add r8,1 >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_odd: >>>>>>>>=20 >>>>>>>> + lea r12,[1+r8] >>>>>>>>=20 >>>>>>>> + lea r13,[3+r8] >>>>>>>>=20 >>>>>>>> + lea r14,[5+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[6+r8] >>>>>>>>=20 >>>>>>>> + bsf r12,r12 >>>>>>>>=20 >>>>>>>> + bsf r13,r13 >>>>>>>>=20 >>>>>>>> + bsf r14,r14 >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + shl r13,4 >>>>>>>>=20 >>>>>>>> + shl r14,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$ocb_enc_short >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_grandloop: >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ocb_enc_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_short: >>>>>>>>=20 >>>>>>>> + add rdx,6 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,2 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ocb_enc_one >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ocb_enc_two >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,4 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ocb_enc_three >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ocb_enc_four >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_one: >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_two: >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_three: >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_four: >>>>>>>>=20 >>>>>>>> + call __ocb_encrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm13 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_done: >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rbp],xmm8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r9],xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + lea rax,[((160+40))+rsp] >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_pop: >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ocb_encrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_encrypt6: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[r13*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[r14*1+rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r12,[1+r8] >>>>>>>>=20 >>>>>>>> + lea r13,[3+r8] >>>>>>>>=20 >>>>>>>> + lea r14,[5+r8] >>>>>>>>=20 >>>>>>>> + add r8,6 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + bsf r12,r12 >>>>>>>>=20 >>>>>>>> + bsf r13,r13 >>>>>>>>=20 >>>>>>>> + bsf r14,r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + shl r13,4 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_enc_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + shl r14,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,210 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,219 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,228 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,237 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,246 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,255 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_encrypt4: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[r13*1+rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_loop4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_enc_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,210 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,219 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,228 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,221,237 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_encrypt1: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_enc_loop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_enc_loop1: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,208 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_enc_loop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,215 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_ocb_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +aesni_ocb_decrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_ocb_decrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rax,[rsp] >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-160))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_body: >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[56+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((56+8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + mov r11,rcx >>>>>>>>=20 >>>>>>>> + shl r10d,4 >>>>>>>>=20 >>>>>>>> + movups xmm9,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r10*1+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,16+32 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+r10*1+r11] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + sub rax,r10 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + test r8,1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_dec_odd >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + bsf r12,r8 >>>>>>>>=20 >>>>>>>> + add r8,1 >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_odd: >>>>>>>>=20 >>>>>>>> + lea r12,[1+r8] >>>>>>>>=20 >>>>>>>> + lea r13,[3+r8] >>>>>>>>=20 >>>>>>>> + lea r14,[5+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[6+r8] >>>>>>>>=20 >>>>>>>> + bsf r12,r12 >>>>>>>>=20 >>>>>>>> + bsf r13,r13 >>>>>>>>=20 >>>>>>>> + bsf r14,r14 >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + shl r13,4 >>>>>>>>=20 >>>>>>>> + shl r14,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$ocb_dec_short >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_grandloop: >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,6 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$ocb_dec_grandloop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_short: >>>>>>>>=20 >>>>>>>> + add rdx,6 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,2 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ocb_dec_one >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ocb_dec_two >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + cmp rdx,4 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$ocb_dec_three >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + je NEAR $L$ocb_dec_four >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_one: >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_two: >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_three: >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_four: >>>>>>>>=20 >>>>>>>> + call __ocb_decrypt4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm13 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_done: >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rbp],xmm8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r9],xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + lea rax,[((160+40))+rsp] >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_pop: >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_ocb_decrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_decrypt6: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[r13*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[r14*1+rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r12,[1+r8] >>>>>>>>=20 >>>>>>>> + lea r13,[3+r8] >>>>>>>>=20 >>>>>>>> + lea r14,[5+r8] >>>>>>>>=20 >>>>>>>> + add r8,6 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + bsf r12,r12 >>>>>>>>=20 >>>>>>>> + bsf r13,r13 >>>>>>>>=20 >>>>>>>> + bsf r14,r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + shl r12,4 >>>>>>>>=20 >>>>>>>> + shl r13,4 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_loop6: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_dec_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + shl r14,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,210 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,219 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,228 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,237 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,246 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,255 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_decrypt4: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[r12*1+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm10 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[r13*1+rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_loop4: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_dec_loop4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,210 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,219 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,228 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,237 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +__ocb_decrypt1: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ocb_dec_loop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$ocb_dec_loop1: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rax*1+rcx] >>>>>>>>=20 >>>>>>>> + add rax,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-16))+rax*1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ocb_dec_loop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> + mov rax,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,215 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_cbc_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_aesni_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + test rdx,rdx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$cbc_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[240+rcx] >>>>>>>>=20 >>>>>>>> + mov r11,rcx >>>>>>>>=20 >>>>>>>> + test r9d,r9d >>>>>>>>=20 >>>>>>>> + jz NEAR $L$cbc_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + cmp rdx,16 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$cbc_enc_tail >>>>>>>>=20 >>>>>>>> + sub rdx,16 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_enc_loop >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_enc_loop: >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm3 >>>>>>>>=20 >>>>>>>> +$L$oop_enc1_15: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,220,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_enc1_15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,209 >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,16 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$cbc_enc_loop >>>>>>>>=20 >>>>>>>> + add rdx,16 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$cbc_enc_tail >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$cbc_enc_tail: >>>>>>>>=20 >>>>>>>> + mov rcx,rdx >>>>>>>>=20 >>>>>>>> + xchg rsi,rdi >>>>>>>>=20 >>>>>>>> + DD 0x9066A4F3 >>>>>>>>=20 >>>>>>>> + mov ecx,16 >>>>>>>>=20 >>>>>>>> + sub rcx,rdx >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + DD 0x9066AAF3 >>>>>>>>=20 >>>>>>>> + lea rdi,[((-16))+rdi] >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + mov rsi,rdi >>>>>>>>=20 >>>>>>>> + mov rcx,r11 >>>>>>>>=20 >>>>>>>> + xor rdx,rdx >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_enc_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_decrypt: >>>>>>>>=20 >>>>>>>> + cmp rdx,16 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$cbc_decrypt_bulk >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm2 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_16: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec r10d >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_16 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r8],xmm4 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_decrypt_bulk: >>>>>>>>=20 >>>>>>>> + lea r11,[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,176 >>>>>>>>=20 >>>>>>>> + and rsp,-16 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$cbc_decrypt_body: >>>>>>>>=20 >>>>>>>> + mov rbp,rcx >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + cmp rdx,0x50 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm6 >>>>>>>>=20 >>>>>>>> + mov r9d,DWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x70 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_six_or_seven >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r9d,71303168 >>>>>>>>=20 >>>>>>>> + sub rdx,0x50 >>>>>>>>=20 >>>>>>>> + cmp r9d,4194304 >>>>>>>>=20 >>>>>>>> + je NEAR $L$cbc_dec_loop6_enter >>>>>>>>=20 >>>>>>>> + sub rdx,0x20 >>>>>>>>=20 >>>>>>>> + lea rcx,[112+rcx] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_loop8_enter >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_loop8: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_loop8_enter: >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((16-112))+rcx] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + mov rbp,-1 >>>>>>>>=20 >>>>>>>> + cmp rdx,0x70 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((32-112))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> + adc rbp,0 >>>>>>>>=20 >>>>>>>> + and rbp,128 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + add rbp,rdi >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((48-112))+rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((64-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((80-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((96-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((112-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((128-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((144-112))+rcx] >>>>>>>>=20 >>>>>>>> + cmp eax,11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((160-112))+rcx] >>>>>>>>=20 >>>>>>>> + jb NEAR $L$cbc_dec_done >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((176-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((192-112))+rcx] >>>>>>>>=20 >>>>>>>> + je NEAR $L$cbc_dec_done >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[((208-112))+rcx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,208 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,216 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,224 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,232 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,240 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,248 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,192 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,200 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((224-112))+rcx] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_done >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_done: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,217 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,225 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,233 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,241 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,249 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,193 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,222,201 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,210 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,219 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[112+rdi] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,228 >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,237 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,246 >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[16+rbp] >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,223,255 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,223,193 >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[48+rbp] >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,223,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[80+rbp] >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[((-112))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm14 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm15 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[96+rsi],xmm8 >>>>>>>>=20 >>>>>>>> + lea rsi,[112+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rdx,0x80 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$cbc_dec_loop8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + lea rcx,[((-112))+rcx] >>>>>>>>=20 >>>>>>>> + add rdx,0x70 >>>>>>>>=20 >>>>>>>> + jle NEAR $L$cbc_dec_clear_tail_collected >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm9 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + cmp rdx,0x50 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_six_or_seven: >>>>>>>>=20 >>>>>>>> + cmp rdx,0x60 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$cbc_dec_seven >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + lea rsi,[80+rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_seven: >>>>>>>>=20 >>>>>>>> + movups xmm8,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + xorps xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt8 >>>>>>>>=20 >>>>>>>> + movups xmm9,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movups xmm10,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[80+rsi],xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + lea rsi,[96+rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm9 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_loop6: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm7 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[80+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm6 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_loop6_enter: >>>>>>>>=20 >>>>>>>> + lea rdi,[96+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + mov rcx,rbp >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rsi],xmm6 >>>>>>>>=20 >>>>>>>> + lea rsi,[80+rsi] >>>>>>>>=20 >>>>>>>> + sub rdx,0x60 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$cbc_dec_loop6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + add rdx,0x50 >>>>>>>>=20 >>>>>>>> + jle NEAR $L$cbc_dec_clear_tail_collected >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm7 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_tail: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + sub rdx,0x10 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_one >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm3,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movaps xmm11,xmm2 >>>>>>>>=20 >>>>>>>> + sub rdx,0x10 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_two >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm4,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movaps xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + sub rdx,0x10 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_three >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm5,XMMWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + movaps xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + sub rdx,0x10 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$cbc_dec_four >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm6,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movaps xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + movaps xmm15,xmm6 >>>>>>>>=20 >>>>>>>> + xorps xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt6 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rsi],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + sub rdx,0x10 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_one: >>>>>>>>=20 >>>>>>>> + movaps xmm11,xmm2 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[32+rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +$L$oop_dec1_17: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,222,209 >>>>>>>>=20 >>>>>>>> + dec eax >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_dec1_17 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,223,209 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_two: >>>>>>>>=20 >>>>>>>> + movaps xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_three: >>>>>>>>=20 >>>>>>>> + movaps xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt3 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + lea rsi,[32+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_four: >>>>>>>>=20 >>>>>>>> + movaps xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + call _aesni_decrypt4 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + movaps xmm10,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rsi],xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rsi],xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + lea rsi,[48+rsi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_tail_collected >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_clear_tail_collected: >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_tail_collected: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm10 >>>>>>>>=20 >>>>>>>> + and rdx,15 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$cbc_dec_tail_partial >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rsi],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_dec_ret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_tail_partial: >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + mov rcx,16 >>>>>>>>=20 >>>>>>>> + mov rdi,rsi >>>>>>>>=20 >>>>>>>> + sub rcx,rdx >>>>>>>>=20 >>>>>>>> + lea rsi,[rsp] >>>>>>>>=20 >>>>>>>> + DD 0x9066A4F3 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_ret: >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$cbc_ret: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_aesni_cbc_encrypt: >>>>>>>>=20 >>>>>>>> +global aesni_set_decrypt_key >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_set_decrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 0x48,0x83,0xEC,0x08 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call __aesni_set_encrypt_key >>>>>>>>=20 >>>>>>>> + shl edx,4 >>>>>>>>=20 >>>>>>>> + test eax,eax >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_key_ret >>>>>>>>=20 >>>>>>>> + lea rcx,[16+rdx*1+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rcx],xmm0 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm1 >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + lea rcx,[((-16))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec_key_inverse: >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movups xmm1,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,219,192 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,219,201 >>>>>>>>=20 >>>>>>>> + lea r8,[16+r8] >>>>>>>>=20 >>>>>>>> + lea rcx,[((-16))+rcx] >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rcx],xmm0 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[(-16)+r8],xmm1 >>>>>>>>=20 >>>>>>>> + cmp rcx,r8 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$dec_key_inverse >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,219,192 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rcx],xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> +$L$dec_key_ret: >>>>>>>>=20 >>>>>>>> + add rsp,8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_set_decrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global aesni_set_encrypt_key >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +aesni_set_encrypt_key: >>>>>>>>=20 >>>>>>>> +__aesni_set_encrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 0x48,0x83,0xEC,0x08 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,-1 >>>>>>>>=20 >>>>>>>> + test rcx,rcx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + test r8,r8 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,268437504 >>>>>>>>=20 >>>>>>>> + movups xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + and r10d,DWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + lea rax,[16+r8] >>>>>>>>=20 >>>>>>>> + cmp edx,256 >>>>>>>>=20 >>>>>>>> + je NEAR $L$14rounds >>>>>>>>=20 >>>>>>>> + cmp edx,192 >>>>>>>>=20 >>>>>>>> + je NEAR $L$12rounds >>>>>>>>=20 >>>>>>>> + cmp edx,128 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$bad_keybits >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$10rounds: >>>>>>>>=20 >>>>>>>> + mov edx,9 >>>>>>>>=20 >>>>>>>> + cmp r10d,268435456 >>>>>>>>=20 >>>>>>>> + je NEAR $L$10rounds_alt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,1 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128_cold >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,2 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,4 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,8 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,16 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,32 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,64 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,128 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,27 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,54 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_128 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + mov DWORD[80+rax],edx >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$10rounds_alt: >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[$L$key_rotate] >>>>>>>>=20 >>>>>>>> + mov r10d,8 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[$L$key_rcon1] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_key128 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_key128: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,196 >>>>>>>>=20 >>>>>>>> + pslld xmm4,1 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(-16)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + dec r10d >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_key128 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[$L$key_rcon1b] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,196 >>>>>>>>=20 >>>>>>>> + pslld xmm4,1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,196 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + pslldq xmm2,4 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rax],xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[96+rax],edx >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$12rounds: >>>>>>>>=20 >>>>>>>> + movq xmm2,QWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + mov edx,11 >>>>>>>>=20 >>>>>>>> + cmp r10d,268435456 >>>>>>>>=20 >>>>>>>> + je NEAR $L$12rounds_alt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,1 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192a_cold >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,2 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,4 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,8 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,16 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,32 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,64 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,128 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_192b >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rax],edx >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$12rounds_alt: >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[$L$key_rotate192] >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[$L$key_rcon1] >>>>>>>>=20 >>>>>>>> + mov r10d,8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_key192 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_key192: >>>>>>>>=20 >>>>>>>> + movq QWORD[rax],xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,213 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,212 >>>>>>>>=20 >>>>>>>> + pslld xmm4,1 >>>>>>>>=20 >>>>>>>> + lea rax,[24+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,0xff >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + pslldq xmm1,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(-16)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + dec r10d >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_key192 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rax],edx >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$14rounds: >>>>>>>>=20 >>>>>>>> + movups xmm2,XMMWORD[16+rcx] >>>>>>>>=20 >>>>>>>> + mov edx,13 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> + cmp r10d,268435456 >>>>>>>>=20 >>>>>>>> + je NEAR $L$14rounds_alt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movups XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+r8],xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,1 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a_cold >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,1 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,2 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,2 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,4 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,4 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,8 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,8 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,16 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,16 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,32 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,200,32 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256b >>>>>>>>=20 >>>>>>>> +DB 102,15,58,223,202,64 >>>>>>>>=20 >>>>>>>> + call $L$key_expansion_256a >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rax],edx >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$14rounds_alt: >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[$L$key_rotate] >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[$L$key_rcon1] >>>>>>>>=20 >>>>>>>> + mov r10d,7 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r8],xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+r8],xmm2 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_key256 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_key256: >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,213 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,212 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pslld xmm4,1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + dec r10d >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done_key256 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm2,xmm0,0xff >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,221,211 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + pslldq xmm1,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + pslldq xmm1,4 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + pslldq xmm1,4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rax],xmm2 >>>>>>>>=20 >>>>>>>> + lea rax,[32+rax] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_key256 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_key256: >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rax],edx >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_key_ret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$bad_keybits: >>>>>>>>=20 >>>>>>>> + mov rax,-2 >>>>>>>>=20 >>>>>>>> +$L$enc_key_ret: >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + add rsp,8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> +$L$SEH_end_set_encrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_128: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> +$L$key_expansion_128_cold: >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,16 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,140 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm1,xmm1,255 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_192a: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> +$L$key_expansion_192a_cold: >>>>>>>>=20 >>>>>>>> + movaps xmm5,xmm2 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_192b_warm: >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,16 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,140 >>>>>>>>=20 >>>>>>>> + pslldq xmm3,4 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm1,85 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,255 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_192b: >>>>>>>>=20 >>>>>>>> + movaps xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + shufps xmm5,xmm0,68 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm5 >>>>>>>>=20 >>>>>>>> + shufps xmm3,xmm2,78 >>>>>>>>=20 >>>>>>>> + movups XMMWORD[16+rax],xmm3 >>>>>>>>=20 >>>>>>>> + lea rax,[32+rax] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$key_expansion_192b_warm >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_256a: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm2 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> +$L$key_expansion_256a_cold: >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,16 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm0,140 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm1,xmm1,255 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$key_expansion_256b: >>>>>>>>=20 >>>>>>>> + movups XMMWORD[rax],xmm0 >>>>>>>>=20 >>>>>>>> + lea rax,[16+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm2,16 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm4,xmm2,140 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + shufps xmm1,xmm1,170 >>>>>>>>=20 >>>>>>>> + xorps xmm2,xmm1 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +$L$bswap_mask: >>>>>>>>=20 >>>>>>>> +DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 >>>>>>>>=20 >>>>>>>> +$L$increment32: >>>>>>>>=20 >>>>>>>> + DD 6,6,6,0 >>>>>>>>=20 >>>>>>>> +$L$increment64: >>>>>>>>=20 >>>>>>>> + DD 1,0,0,0 >>>>>>>>=20 >>>>>>>> +$L$xts_magic: >>>>>>>>=20 >>>>>>>> + DD 0x87,0,1,0 >>>>>>>>=20 >>>>>>>> +$L$increment1: >>>>>>>>=20 >>>>>>>> +DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 >>>>>>>>=20 >>>>>>>> +$L$key_rotate: >>>>>>>>=20 >>>>>>>> + DD 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d >>>>>>>>=20 >>>>>>>> +$L$key_rotate192: >>>>>>>>=20 >>>>>>>> + DD 0x04070605,0x04070605,0x04070605,0x04070605 >>>>>>>>=20 >>>>>>>> +$L$key_rcon1: >>>>>>>>=20 >>>>>>>> + DD 1,1,1,1 >>>>>>>>=20 >>>>>>>> +$L$key_rcon1b: >>>>>>>>=20 >>>>>>>> + DD 0x1b,0x1b,0x1b,0x1b >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 >>>>>>>>=20 >>>>>>>> +DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 >>>>>>>>=20 >>>>>>>> +DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,11= 5 >>>>>>>>=20 >>>>>>>> +DB 115,108,46,111,114,103,62,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +ecb_ccm64_se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,8 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + lea rax,[88+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +ctr_xts_se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[208+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-168))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +ocb_se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[8+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$ocb_no_xmm >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + lea rax,[((160+40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ocb_no_xmm: >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +cbc_se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$cbc_decrypt_bulk] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$cbc_decrypt_body] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$cbc_ret] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[208+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$common_seh_tail: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ecb_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ecb_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ecb wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ccm64_encrypt_blocks wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ccm64_encrypt_blocks wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ccm64_enc wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ccm64_decrypt_blocks wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ccm64_decrypt_blocks wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ccm64_dec wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ctr32_encrypt_blocks wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ctr32_encrypt_blocks wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ctr32 wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_xts_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_xts_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_xts_enc wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_xts_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_xts_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_xts_dec wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ocb_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ocb_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ocb_enc wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_ocb_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_ocb_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_ocb_dec wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_aesni_cbc_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_aesni_cbc_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_cbc wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD aesni_set_decrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_set_decrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD aesni_set_encrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_set_encrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ecb: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ecb_ccm64_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ecb_enc_body wrt ..imagebase,$L$ecb_enc_ret >>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ccm64_enc: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ecb_ccm64_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ccm64_enc_body wrt ..imagebase,$L$ccm64_enc_r= et >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ccm64_dec: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ecb_ccm64_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ccm64_dec_body wrt ..imagebase,$L$ccm64_dec_r= et >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ctr32: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ctr_xts_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ctr32_body wrt ..imagebase,$L$ctr32_epilogue >>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_xts_enc: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ctr_xts_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$xts_enc_body wrt ..imagebase,$L$xts_enc_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_xts_dec: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ctr_xts_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$xts_dec_body wrt ..imagebase,$L$xts_dec_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ocb_enc: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ocb_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ocb_enc_body wrt ..imagebase,$L$ocb_enc_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ocb_enc_pop wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD 0 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_ocb_dec: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ocb_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ocb_dec_body wrt ..imagebase,$L$ocb_dec_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ocb_dec_pop wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD 0 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_cbc: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD cbc_se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_key: >>>>>>>>=20 >>>>>>>> +DB 0x01,0x04,0x01,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x04,0x02,0x00,0x00 >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes- >>>>>> x86_64.nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes-x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..1c911fa294 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes-x86_64.na= sm >>>>>>>> @@ -0,0 +1,1173 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/aes/asm/vpaes-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2011-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_encrypt_core: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r9,rdx >>>>>>>>=20 >>>>>>>> + mov r11,16 >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rdx] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[$L$k_ipt] >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[(($L$k_ipt+16))] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + add r9,16 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + lea r10,[$L$k_mc_backward] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$enc_entry >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$enc_loop: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,195 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((-64))+r10*1+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,234 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[r10*1+r11] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + add r9,16 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,220 >>>>>>>>=20 >>>>>>>> + add r11,16 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + and r11,0x30 >>>>>>>>=20 >>>>>>>> + sub rax,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$enc_entry: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm11 >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,232 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,224 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,220 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$enc_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((-96))+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((-80))+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,195 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[64+r10*1+r11] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_decrypt_core: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r9,rdx >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[240+rdx] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[$L$k_dipt] >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + mov r11,rax >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + shl r11,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[(($L$k_dipt+16))] >>>>>>>>=20 >>>>>>>> + xor r11,0x30 >>>>>>>>=20 >>>>>>>> + lea r10,[$L$k_dsbd] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + and r11,0x30 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[(($L$k_mc_forward+48))] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + add r9,16 >>>>>>>>=20 >>>>>>>> + add r11,r10 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$dec_entry >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$dec_loop: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((-32))+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((-16))+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,203 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[16+r10] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,203 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[32+r10] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[48+r10] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,203 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[64+r10] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[80+r10] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,203 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + add r9,16 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,237,12 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + sub rax,1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$dec_entry: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,224 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,220 >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$dec_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[96+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[112+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((-352))+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,195 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,194 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_core: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _vpaes_preheat >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[$L$k_rcon] >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + lea r11,[$L$k_ipt] >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_transform >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$k_sr] >>>>>>>>=20 >>>>>>>> + test rcx,rcx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$schedule_am_decrypting >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdx],xmm0 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$schedule_go >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$schedule_am_decrypting: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[r10*1+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdx],xmm3 >>>>>>>>=20 >>>>>>>> + xor r8,0x30 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$schedule_go: >>>>>>>>=20 >>>>>>>> + cmp esi,192 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$schedule_256 >>>>>>>>=20 >>>>>>>> + je NEAR $L$schedule_192 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$schedule_128: >>>>>>>>=20 >>>>>>>> + mov esi,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_schedule_128: >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_round >>>>>>>>=20 >>>>>>>> + dec rsi >>>>>>>>=20 >>>>>>>> + jz NEAR $L$schedule_mangle_last >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_schedule_128 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$schedule_192: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_transform >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + movhlps xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + mov esi,4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_schedule_192: >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_round >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,198,8 >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_192_smear >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_round >>>>>>>>=20 >>>>>>>> + dec rsi >>>>>>>>=20 >>>>>>>> + jz NEAR $L$schedule_mangle_last >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_192_smear >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_schedule_192 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$schedule_256: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_transform >>>>>>>>=20 >>>>>>>> + mov esi,7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_schedule_256: >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_round >>>>>>>>=20 >>>>>>>> + dec rsi >>>>>>>>=20 >>>>>>>> + jz NEAR $L$schedule_mangle_last >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_mangle >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0xFF >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_low_round >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_schedule_256 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$schedule_mangle_last: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[$L$k_deskew] >>>>>>>>=20 >>>>>>>> + test rcx,rcx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$schedule_mangle_last_dec >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[r10*1+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + lea r11,[$L$k_opt] >>>>>>>>=20 >>>>>>>> + add rdx,32 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$schedule_mangle_last_dec: >>>>>>>>=20 >>>>>>>> + add rdx,-16 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[$L$k_s63] >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_transform >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdx],xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_192_smear: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm6,0x80 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm7,0xFE >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm6 >>>>>>>>=20 >>>>>>>> + movhlps xmm6,xmm1 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_round: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,200,15 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,58,15,192,15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0xFF >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,192,1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_low_round: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + pslldq xmm7,4 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + pslldq xmm7,8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm7,XMMWORD[$L$k_s63] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,208 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,224 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,211 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,220 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,226 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,195 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_transform: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,208 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,193 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_schedule_mangle: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[$L$k_mc_forward] >>>>>>>>=20 >>>>>>>> + test rcx,rcx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$schedule_mangle_dec >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add rdx,16 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[$L$k_s63] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$schedule_mangle_both >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$schedule_mangle_dec: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[$L$k_dksd] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pandn xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm1,4 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,212 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[16+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[32+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,212 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[48+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[64+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,212 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[80+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[96+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,212 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[112+r11] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add rdx,-16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$schedule_mangle_both: >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[r10*1+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,217 >>>>>>>>=20 >>>>>>>> + add r8,-16 >>>>>>>>=20 >>>>>>>> + and r8,0x30 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdx],xmm3 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global vpaes_set_encrypt_key >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +vpaes_set_encrypt_key: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_vpaes_set_encrypt_key: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-184))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$enc_key_body: >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + shr eax,5 >>>>>>>>=20 >>>>>>>> + add eax,5 >>>>>>>>=20 >>>>>>>> + mov DWORD[240+rdx],eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,0 >>>>>>>>=20 >>>>>>>> + mov r8d,0x30 >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_core >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[184+rsp] >>>>>>>>=20 >>>>>>>> +$L$enc_key_epilogue: >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_vpaes_set_encrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global vpaes_set_decrypt_key >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +vpaes_set_decrypt_key: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_vpaes_set_decrypt_key: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-184))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$dec_key_body: >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + shr eax,5 >>>>>>>>=20 >>>>>>>> + add eax,5 >>>>>>>>=20 >>>>>>>> + mov DWORD[240+rdx],eax >>>>>>>>=20 >>>>>>>> + shl eax,4 >>>>>>>>=20 >>>>>>>> + lea rdx,[16+rax*1+rdx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + mov r8d,esi >>>>>>>>=20 >>>>>>>> + shr r8d,1 >>>>>>>>=20 >>>>>>>> + and r8d,32 >>>>>>>>=20 >>>>>>>> + xor r8d,32 >>>>>>>>=20 >>>>>>>> + call _vpaes_schedule_core >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[184+rsp] >>>>>>>>=20 >>>>>>>> +$L$dec_key_epilogue: >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_vpaes_set_decrypt_key: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global vpaes_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +vpaes_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_vpaes_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-184))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$enc_body: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + call _vpaes_preheat >>>>>>>>=20 >>>>>>>> + call _vpaes_encrypt_core >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[184+rsp] >>>>>>>>=20 >>>>>>>> +$L$enc_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_vpaes_encrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global vpaes_decrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +vpaes_decrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_vpaes_decrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-184))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$dec_body: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + call _vpaes_preheat >>>>>>>>=20 >>>>>>>> + call _vpaes_decrypt_core >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rsi],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[184+rsp] >>>>>>>>=20 >>>>>>>> +$L$dec_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_vpaes_decrypt: >>>>>>>>=20 >>>>>>>> +global vpaes_cbc_encrypt >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +vpaes_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_vpaes_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xchg rdx,rcx >>>>>>>>=20 >>>>>>>> + sub rcx,16 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$cbc_abort >>>>>>>>=20 >>>>>>>> + lea rsp,[((-184))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[64+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[80+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[96+rsp],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[112+rsp],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[128+rsp],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[144+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[160+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +$L$cbc_body: >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + sub rsi,rdi >>>>>>>>=20 >>>>>>>> + call _vpaes_preheat >>>>>>>>=20 >>>>>>>> + cmp r9d,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$cbc_dec_loop >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_enc_loop >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_enc_loop: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm6 >>>>>>>>=20 >>>>>>>> + call _vpaes_encrypt_core >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdi*1+rsi],xmm0 >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + sub rcx,16 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$cbc_enc_loop >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$cbc_done >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$cbc_dec_loop: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + call _vpaes_decrypt_core >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdi*1+rsi],xmm0 >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + sub rcx,16 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$cbc_dec_loop >>>>>>>>=20 >>>>>>>> +$L$cbc_done: >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[r8],xmm6 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[160+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[184+rsp] >>>>>>>>=20 >>>>>>>> +$L$cbc_epilogue: >>>>>>>>=20 >>>>>>>> +$L$cbc_abort: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_vpaes_cbc_encrypt: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +_vpaes_preheat: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$k_s0F] >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[((-32))+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm11,XMMWORD[((-16))+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,XMMWORD[48+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm12,XMMWORD[64+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[80+r10] >>>>>>>>=20 >>>>>>>> + movdqa xmm14,XMMWORD[96+r10] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +_vpaes_consts: >>>>>>>>=20 >>>>>>>> +$L$k_inv: >>>>>>>>=20 >>>>>>>> + DQ 0x0E05060F0D080180,0x040703090A0B0C02 >>>>>>>>=20 >>>>>>>> + DQ 0x01040A060F0B0780,0x030D0E0C02050809 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_s0F: >>>>>>>>=20 >>>>>>>> + DQ 0x0F0F0F0F0F0F0F0F,0x0F0F0F0F0F0F0F0F >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_ipt: >>>>>>>>=20 >>>>>>>> + DQ 0xC2B2E8985A2A7000,0xCABAE09052227808 >>>>>>>>=20 >>>>>>>> + DQ 0x4C01307D317C4D00,0xCD80B1FCB0FDCC81 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_sb1: >>>>>>>>=20 >>>>>>>> + DQ 0xB19BE18FCB503E00,0xA5DF7A6E142AF544 >>>>>>>>=20 >>>>>>>> + DQ 0x3618D415FAE22300,0x3BF7CCC10D2ED9EF >>>>>>>>=20 >>>>>>>> +$L$k_sb2: >>>>>>>>=20 >>>>>>>> + DQ 0xE27A93C60B712400,0x5EB7E955BC982FCD >>>>>>>>=20 >>>>>>>> + DQ 0x69EB88400AE12900,0xC2A163C8AB82234A >>>>>>>>=20 >>>>>>>> +$L$k_sbo: >>>>>>>>=20 >>>>>>>> + DQ 0xD0D26D176FBDC700,0x15AABF7AC502A878 >>>>>>>>=20 >>>>>>>> + DQ 0xCFE474A55FBB6A00,0x8E1E90D1412B35FA >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_mc_forward: >>>>>>>>=20 >>>>>>>> + DQ 0x0407060500030201,0x0C0F0E0D080B0A09 >>>>>>>>=20 >>>>>>>> + DQ 0x080B0A0904070605,0x000302010C0F0E0D >>>>>>>>=20 >>>>>>>> + DQ 0x0C0F0E0D080B0A09,0x0407060500030201 >>>>>>>>=20 >>>>>>>> + DQ 0x000302010C0F0E0D,0x080B0A0904070605 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_mc_backward: >>>>>>>>=20 >>>>>>>> + DQ 0x0605040702010003,0x0E0D0C0F0A09080B >>>>>>>>=20 >>>>>>>> + DQ 0x020100030E0D0C0F,0x0A09080B06050407 >>>>>>>>=20 >>>>>>>> + DQ 0x0E0D0C0F0A09080B,0x0605040702010003 >>>>>>>>=20 >>>>>>>> + DQ 0x0A09080B06050407,0x020100030E0D0C0F >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_sr: >>>>>>>>=20 >>>>>>>> + DQ 0x0706050403020100,0x0F0E0D0C0B0A0908 >>>>>>>>=20 >>>>>>>> + DQ 0x030E09040F0A0500,0x0B06010C07020D08 >>>>>>>>=20 >>>>>>>> + DQ 0x0F060D040B020900,0x070E050C030A0108 >>>>>>>>=20 >>>>>>>> + DQ 0x0B0E0104070A0D00,0x0306090C0F020508 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_rcon: >>>>>>>>=20 >>>>>>>> + DQ 0x1F8391B9AF9DEEB6,0x702A98084D7C7D81 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_s63: >>>>>>>>=20 >>>>>>>> + DQ 0x5B5B5B5B5B5B5B5B,0x5B5B5B5B5B5B5B5B >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_opt: >>>>>>>>=20 >>>>>>>> + DQ 0xFF9F4929D6B66000,0xF7974121DEBE6808 >>>>>>>>=20 >>>>>>>> + DQ 0x01EDBD5150BCEC00,0xE10D5DB1B05C0CE0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_deskew: >>>>>>>>=20 >>>>>>>> + DQ 0x07E4A34047A4E300,0x1DFEB95A5DBEF91A >>>>>>>>=20 >>>>>>>> + DQ 0x5F36B5DC83EA6900,0x2841C2ABF49D1E77 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_dksd: >>>>>>>>=20 >>>>>>>> + DQ 0xFEB91A5DA3E44700,0x0740E3A45A1DBEF9 >>>>>>>>=20 >>>>>>>> + DQ 0x41C277F4B5368300,0x5FDC69EAAB289D1E >>>>>>>>=20 >>>>>>>> +$L$k_dksb: >>>>>>>>=20 >>>>>>>> + DQ 0x9A4FCA1F8550D500,0x03D653861CC94C99 >>>>>>>>=20 >>>>>>>> + DQ 0x115BEDA7B6FC4A00,0xD993256F7E3482C8 >>>>>>>>=20 >>>>>>>> +$L$k_dkse: >>>>>>>>=20 >>>>>>>> + DQ 0xD5031CCA1FC9D600,0x53859A4C994F5086 >>>>>>>>=20 >>>>>>>> + DQ 0xA23196054FDC7BE8,0xCD5EF96A20B31487 >>>>>>>>=20 >>>>>>>> +$L$k_dks9: >>>>>>>>=20 >>>>>>>> + DQ 0xB6116FC87ED9A700,0x4AED933482255BFC >>>>>>>>=20 >>>>>>>> + DQ 0x4576516227143300,0x8BB89FACE9DAFDCE >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_dipt: >>>>>>>>=20 >>>>>>>> + DQ 0x0F505B040B545F00,0x154A411E114E451A >>>>>>>>=20 >>>>>>>> + DQ 0x86E383E660056500,0x12771772F491F194 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$k_dsb9: >>>>>>>>=20 >>>>>>>> + DQ 0x851C03539A86D600,0xCAD51F504F994CC9 >>>>>>>>=20 >>>>>>>> + DQ 0xC03B1789ECD74900,0x725E2C9EB2FBA565 >>>>>>>>=20 >>>>>>>> +$L$k_dsbd: >>>>>>>>=20 >>>>>>>> + DQ 0x7D57CCDFE6B1A200,0xF56E9B13882A4439 >>>>>>>>=20 >>>>>>>> + DQ 0x3CE2FAF724C6CB00,0x2931180D15DEEFD3 >>>>>>>>=20 >>>>>>>> +$L$k_dsbb: >>>>>>>>=20 >>>>>>>> + DQ 0xD022649296B44200,0x602646F6B0F2D404 >>>>>>>>=20 >>>>>>>> + DQ 0xC19498A6CD596700,0xF3FF0C3E3255AA6B >>>>>>>>=20 >>>>>>>> +$L$k_dsbe: >>>>>>>>=20 >>>>>>>> + DQ 0x46F2929626D4D000,0x2242600464B4F6B0 >>>>>>>>=20 >>>>>>>> + DQ 0x0C55A6CDFFAAC100,0x9467F36B98593E32 >>>>>>>>=20 >>>>>>>> +$L$k_dsbo: >>>>>>>>=20 >>>>>>>> + DQ 0x1387EA537EF94000,0xC7AA6DB9D4943E2D >>>>>>>>=20 >>>>>>>> + DQ 0x12D7560F93441D00,0xCA4B8159D8C58E9C >>>>>>>>=20 >>>>>>>> +DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,1= 05 >>>>>>>>=20 >>>>>>>> +DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54 >>>>>>>>=20 >>>>>>>> +DB 52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97 >>>>>>>>=20 >>>>>>>> +DB 109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,3= 2 >>>>>>>>=20 >>>>>>>> +DB 85,110,105,118,101,114,115,105,116,121,41,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[16+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + lea rax,[184+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_vpaes_set_encrypt_key wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_vpaes_set_encrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_vpaes_set_encrypt_key wrt ..imagebas= e >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_vpaes_set_decrypt_key wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_vpaes_set_decrypt_key wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_vpaes_set_decrypt_key wrt ..imagebas= e >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_vpaes_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_vpaes_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_vpaes_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_vpaes_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_vpaes_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_vpaes_decrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_vpaes_cbc_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_vpaes_cbc_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_vpaes_cbc_encrypt wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_vpaes_set_encrypt_key: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$enc_key_body wrt ..imagebase,$L$enc_key_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_vpaes_set_decrypt_key: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$dec_key_body wrt ..imagebase,$L$dec_key_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_vpaes_encrypt: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$enc_body wrt ..imagebase,$L$enc_epilogue wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_vpaes_decrypt: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$dec_body wrt ..imagebase,$L$dec_epilogue wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_vpaes_cbc_encrypt: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$cbc_body wrt ..imagebase,$L$cbc_epilogue wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash- >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash= - >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..60f283d5fb >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash- >>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,1569 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/modes/asm/ghash-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2010-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_gmult_4bit >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +gcm_gmult_4bit: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_gcm_gmult_4bit: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,280 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$gmult_prologue: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movzx r8,BYTE[15+rdi] >>>>>>>>=20 >>>>>>>> + lea r11,[$L$rem_4bit] >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + xor rbx,rbx >>>>>>>>=20 >>>>>>>> + mov al,r8b >>>>>>>>=20 >>>>>>>> + mov bl,r8b >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + mov rcx,14 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + and bl,0xf0 >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop1: >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + and rdx,0xf >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + mov al,BYTE[rcx*1+rdi] >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rbx*1+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*1+rsi] >>>>>>>>=20 >>>>>>>> + mov bl,al >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rdx*8+r11] >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + dec rcx >>>>>>>>=20 >>>>>>>> + js NEAR $L$break1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + and rdx,0xf >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + and bl,0xf0 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rdx*8+r11] >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$break1: >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + and rdx,0xf >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + and bl,0xf0 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rdx*8+r11] >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + and rdx,0xf >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rbx*1+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rdx*8+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + bswap r8 >>>>>>>>=20 >>>>>>>> + bswap r9 >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rdi],r8 >>>>>>>>=20 >>>>>>>> + mov QWORD[rdi],r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((280+48))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$gmult_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_gcm_gmult_4bit: >>>>>>>>=20 >>>>>>>> +global gcm_ghash_4bit >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +gcm_ghash_4bit: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_gcm_ghash_4bit: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + mov rcx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub rsp,280 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ghash_prologue: >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + mov r15,rcx >>>>>>>>=20 >>>>>>>> + sub rsi,-128 >>>>>>>>=20 >>>>>>>> + lea rbp,[((16+128))+rsp] >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((0+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((0+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((16+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((16+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((32+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((0-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((32+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[1+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((48+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((8-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((48+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[2+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((64+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((16-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((64+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[3+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[24+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((80+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((24-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((80+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[4+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((96+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((32-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((96+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[5+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((112+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((40-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((112+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[6+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((128+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((48-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((128+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[7+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((144+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((56-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((144+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[8+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[64+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((160+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((64-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((160+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[9+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[72+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((176+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((72-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((176+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[10+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[80+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((192+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((80-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((192+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[11+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((208+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((88-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((208+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[12+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[96+rbp],r8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[((224+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((96-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((224+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[13+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov dl,al >>>>>>>>=20 >>>>>>>> + shr rax,4 >>>>>>>>=20 >>>>>>>> + mov r10,r8 >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[104+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[((240+0-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((104-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((240+8-128))+rsi] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[14+rsp],dl >>>>>>>>=20 >>>>>>>> + or rax,r10 >>>>>>>>=20 >>>>>>>> + mov dl,bl >>>>>>>>=20 >>>>>>>> + shr rbx,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[112+rbp],r8 >>>>>>>>=20 >>>>>>>> + shl dl,4 >>>>>>>>=20 >>>>>>>> + mov QWORD[((112-128))+rbp],rax >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + mov BYTE[15+rsp],dl >>>>>>>>=20 >>>>>>>> + or rbx,r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[120+rbp],r9 >>>>>>>>=20 >>>>>>>> + mov QWORD[((120-128))+rbp],rbx >>>>>>>>=20 >>>>>>>> + add rsi,-128 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[rdi] >>>>>>>>=20 >>>>>>>> + add r15,r14 >>>>>>>>=20 >>>>>>>> + lea r11,[$L$rem_8bit] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$outer_loop >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$outer_loop: >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[r14] >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+r14] >>>>>>>>=20 >>>>>>>> + lea r14,[16+r14] >>>>>>>>=20 >>>>>>>> + xor rdx,r8 >>>>>>>>=20 >>>>>>>> + mov QWORD[rdi],r9 >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rdi],rdx >>>>>>>>=20 >>>>>>>> + shr rdx,32 >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[4+rdi] >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[rdi] >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ecx,4 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ebx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r13,BYTE[rcx*1+rsp] >>>>>>>>=20 >>>>>>>> + shr ebx,4 >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r13,r13b >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*8+rbp] >>>>>>>>=20 >>>>>>>> + rol edx,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + mov al,dl >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + movzx ecx,dl >>>>>>>>=20 >>>>>>>> + shl al,4 >>>>>>>>=20 >>>>>>>> + movzx r12,BYTE[rbx*1+rsp] >>>>>>>>=20 >>>>>>>> + and ecx,240 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + xor r12,r8 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + shr r8,8 >>>>>>>>=20 >>>>>>>> + movzx r12,r12b >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[((-4))+rdi] >>>>>>>>=20 >>>>>>>> + shr r9,8 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[((-128))+rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + shl r10,56 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rbx*8+rbp] >>>>>>>>=20 >>>>>>>> + movzx r12,WORD[r12*2+r11] >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rax*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rax*1+rsi] >>>>>>>>=20 >>>>>>>> + shl r12,48 >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + xor r9,r12 >>>>>>>>=20 >>>>>>>> + movzx r13,r8b >>>>>>>>=20 >>>>>>>> + shr r8,4 >>>>>>>>=20 >>>>>>>> + mov r10,r9 >>>>>>>>=20 >>>>>>>> + shl r13b,4 >>>>>>>>=20 >>>>>>>> + shr r9,4 >>>>>>>>=20 >>>>>>>> + xor r8,QWORD[8+rcx*1+rsi] >>>>>>>>=20 >>>>>>>> + movzx r13,WORD[r13*2+r11] >>>>>>>>=20 >>>>>>>> + shl r10,60 >>>>>>>>=20 >>>>>>>> + xor r9,QWORD[rcx*1+rsi] >>>>>>>>=20 >>>>>>>> + xor r8,r10 >>>>>>>>=20 >>>>>>>> + shl r13,48 >>>>>>>>=20 >>>>>>>> + bswap r8 >>>>>>>>=20 >>>>>>>> + xor r9,r13 >>>>>>>>=20 >>>>>>>> + bswap r9 >>>>>>>>=20 >>>>>>>> + cmp r14,r15 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$outer_loop >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rdi],r8 >>>>>>>>=20 >>>>>>>> + mov QWORD[rdi],r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((280+48))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ghash_epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_gcm_ghash_4bit: >>>>>>>>=20 >>>>>>>> +global gcm_init_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +gcm_init_clmul: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$_init_clmul: >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_gcm_init_clmul: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 0x48,0x83,0xec,0x18 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x29,0x34,0x24 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdx] >>>>>>>>=20 >>>>>>>> + pshufd xmm2,xmm2,78 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm2,255 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + psllq xmm2,1 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + psrlq xmm3,63 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + pslldq xmm3,8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pand xmm5,XMMWORD[$L$0x1c2_polynomial] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm6,xmm2,78 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,194,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,202,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm2,78 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rcx],xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rcx],xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,227,8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rcx],xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,194,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,202,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,194,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,202,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm5,78 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[48+rcx],xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rcx],xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,227,8 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[80+rcx],xmm4 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[24+rsp] >>>>>>>>=20 >>>>>>>> +$L$SEH_end_gcm_init_clmul: >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_gmult_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +gcm_gmult_clmul: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$_gmult_clmul: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[$L$bswap_mask] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdx] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[32+rdx] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,194,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,202,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,220,0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rcx],xmm0 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_ghash_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +gcm_ghash_clmul: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$_ghash_clmul: >>>>>>>>=20 >>>>>>>> + lea rax,[((-136))+rsp] >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_gcm_ghash_clmul: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 0x48,0x8d,0x60,0xe0 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x29,0x70,0xe0 >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x29,0x78,0xf0 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x48,0x10 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x50,0x20 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x58,0x30 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x60,0x40 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x68,0x50 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x70,0x60 >>>>>>>>=20 >>>>>>>> +DB 0x44,0x0f,0x29,0x78,0x70 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[$L$bswap_mask] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rcx] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[rdx] >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[32+rdx] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,194 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub r9,0x10 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$odd_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[16+rdx] >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + cmp r9,0x30 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$skip4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and eax,71303168 >>>>>>>>=20 >>>>>>>> + cmp eax,4194304 >>>>>>>>=20 >>>>>>>> + je NEAR $L$skip4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub r9,0x30 >>>>>>>>=20 >>>>>>>> + mov rax,0xA040608020C0E000 >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[48+rdx] >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[64+rdx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[48+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[32+r8] >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,218 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,218 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm3,78 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,218,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,234,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm11 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm11,78 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,238,17 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,231,16 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movups xmm7,XMMWORD[80+rdx] >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,218 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,194 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm11 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm11,78 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,58,68,238,17 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> + sub r9,0x40 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$tail4x >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$mod4_loop >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$mod4_loop: >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,68,199,0 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[48+r8] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,218 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,68,207,17 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[32+r8] >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,199,16 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm11,78 >>>>>>>>=20 >>>>>>>> + xorps xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,218 >>>>>>>>=20 >>>>>>>> + movups xmm7,XMMWORD[32+rdx] >>>>>>>>=20 >>>>>>>> + xorps xmm8,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,218,0 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm3,78 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,234,17 >>>>>>>>=20 >>>>>>>> + pslldq xmm8,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm9,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[$L$7_mask] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,76,15,110,200 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pand xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,200 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + psllq xmm9,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslldq xmm9,8 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + psrldq xmm8,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,238,17 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,218 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,16 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + movups xmm7,XMMWORD[80+rdx] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,194 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm11,78 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,58,68,222,0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,58,68,238,17 >>>>>>>>=20 >>>>>>>> + xorps xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + xorps xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> + sub r9,0x40 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$mod4_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$tail4x: >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,68,199,0 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,68,207,17 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,58,68,199,16 >>>>>>>>=20 >>>>>>>> + xorps xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + xorps xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + xorps xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + psrldq xmm8,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm9,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + add r9,0x40 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[32+rdx] >>>>>>>>=20 >>>>>>>> + sub r9,0x10 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$odd_tail >>>>>>>>=20 >>>>>>>> +$L$skip4x: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,194 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,218 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm3,78 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,218,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,234,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + sub r9,0x20 >>>>>>>>=20 >>>>>>>> + jbe NEAR $L$even_tail >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$mod_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$mod_loop: >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,198,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,206,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,202 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,218 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + psrldq xmm8,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,218,0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm8,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm5,78 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,234,17 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + lea r8,[32+r8] >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,0 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub r9,0x20 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$mod_loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$even_tail: >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,198,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,206,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,231,16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + psrldq xmm8,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + test r9,r9 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$odd_tail: >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> +DB 102,69,15,56,0,194 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + pshufd xmm3,xmm0,78 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,194,0 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,202,17 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,68,223,0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pslldq xmm4,8 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psllq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psllq xmm0,57 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pslldq xmm0,8 >>>>>>>>=20 >>>>>>>> + psrldq xmm3,8 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrlq xmm0,1 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> +$L$done: >>>>>>>>=20 >>>>>>>> +DB 102,65,15,56,0,194 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rcx],xmm0 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[128+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[144+rsp] >>>>>>>>=20 >>>>>>>> + lea rsp,[168+rsp] >>>>>>>>=20 >>>>>>>> +$L$SEH_end_gcm_ghash_clmul: >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_init_avx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +gcm_init_avx: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$_init_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_gmult_avx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +gcm_gmult_avx: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$_gmult_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global gcm_ghash_avx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +gcm_ghash_avx: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$_ghash_clmul >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +$L$bswap_mask: >>>>>>>>=20 >>>>>>>> +DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 >>>>>>>>=20 >>>>>>>> +$L$0x1c2_polynomial: >>>>>>>>=20 >>>>>>>> +DB 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2 >>>>>>>>=20 >>>>>>>> +$L$7_mask: >>>>>>>>=20 >>>>>>>> + DD 7,0,7,0 >>>>>>>>=20 >>>>>>>> +$L$7_mask_poly: >>>>>>>>=20 >>>>>>>> + DD 7,0,450,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$rem_4bit: >>>>>>>>=20 >>>>>>>> + DD 0,0,0,471859200,0,943718400,0,610271232 >>>>>>>>=20 >>>>>>>> + DD 0,1887436800,0,1822425088,0,1220542464,0,1423966= 208 >>>>>>>>=20 >>>>>>>> + DD 0,3774873600,0,4246732800,0,3644850176,0,3311403= 008 >>>>>>>>=20 >>>>>>>> + DD 0,2441084928,0,2376073216,0,2847932416,0,3051356= 160 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$rem_8bit: >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x0000,0x01C2,0x0384,0x0246,0x0708,0x06CA,0x048C,0x054E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x0E10,0x0FD2,0x0D94,0x0C56,0x0918,0x08DA,0x0A9C,0x0B5E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x1C20,0x1DE2,0x1FA4,0x1E66,0x1B28,0x1AEA,0x18AC,0x196E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x1230,0x13F2,0x11B4,0x1076,0x1538,0x14FA,0x16BC,0x177E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x3840,0x3982,0x3BC4,0x3A06,0x3F48,0x3E8A,0x3CCC,0x3D0E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x3650,0x3792,0x35D4,0x3416,0x3158,0x309A,0x32DC,0x331E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x2460,0x25A2,0x27E4,0x2626,0x2368,0x22AA,0x20EC,0x212E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x2A70,0x2BB2,0x29F4,0x2836,0x2D78,0x2CBA,0x2EFC,0x2F3E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x7080,0x7142,0x7304,0x72C6,0x7788,0x764A,0x740C,0x75CE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x7E90,0x7F52,0x7D14,0x7CD6,0x7998,0x785A,0x7A1C,0x7BDE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x6CA0,0x6D62,0x6F24,0x6EE6,0x6BA8,0x6A6A,0x682C,0x69EE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x62B0,0x6372,0x6134,0x60F6,0x65B8,0x647A,0x663C,0x67FE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x48C0,0x4902,0x4B44,0x4A86,0x4FC8,0x4E0A,0x4C4C,0x4D8E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x46D0,0x4712,0x4554,0x4496,0x41D8,0x401A,0x425C,0x439E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x54E0,0x5522,0x5764,0x56A6,0x53E8,0x522A,0x506C,0x51AE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x5AF0,0x5B32,0x5974,0x58B6,0x5DF8,0x5C3A,0x5E7C,0x5FBE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0xE100,0xE0C2,0xE284,0xE346,0xE608,0xE7CA,0xE58C,0xE44E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0xEF10,0xEED2,0xEC94,0xED56,0xE818,0xE9DA,0xEB9C,0xEA5E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0xFD20,0xFCE2,0xFEA4,0xFF66,0xFA28,0xFBEA,0xF9AC,0xF86E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0xF330,0xF2F2,0xF0B4,0xF176,0xF438,0xF5FA,0xF7BC,0xF67E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A,0xDDCC,0xDC0E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xD750,0xD692,0xD4D4,0xD516,0xD058,0xD19A,0xD3DC,0xD21E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE3E >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x9180,0x9042,0x9204,0x93C6,0x9688,0x974A,0x950C,0x94CE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x9F90,0x9E52,0x9C14,0x9DD6,0x9898,0x995A,0x9B1C,0x9ADE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x8DA0,0x8C62,0x8E24,0x8FE6,0x8AA8,0x8B6A,0x892C,0x88EE >>>>>>>>=20 >>>>>>>> + DW >>>>> 0x83B0,0x8272,0x8034,0x81F6,0x84B8,0x857A,0x873C,0x86FE >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A,0xAD4C,0xAC8E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xA7D0,0xA612,0xA454,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE >>>>>>>>=20 >>>>>>>> + DW >>>>>> 0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBEBE >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52 >>>>>>>>=20 >>>>>>>> +DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 >>>>>>>>=20 >>>>>>>> +DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,= 111 >>>>>>>>=20 >>>>>>>> +DB 114,103,62,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rax,[((48+280))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + mov QWORD[240+r8],r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_gcm_gmult_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_gcm_gmult_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_gcm_gmult_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_gcm_ghash_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_gcm_ghash_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_gcm_ghash_4bit wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_gcm_init_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_gcm_init_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_gcm_init_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_gcm_ghash_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_gcm_ghash_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_gcm_ghash_clmul wrt ..imagebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_gcm_gmult_4bit: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$gmult_prologue wrt ..imagebase,$L$gmult_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_gcm_ghash_4bit: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$ghash_prologue wrt ..imagebase,$L$ghash_epilo= gue >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_gcm_init_clmul: >>>>>>>>=20 >>>>>>>> +DB 0x01,0x08,0x03,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x08,0x68,0x00,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x04,0x22,0x00,0x00 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_gcm_ghash_clmul: >>>>>>>>=20 >>>>>>>> +DB 0x01,0x33,0x16,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x33,0xf8,0x09,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x2e,0xe8,0x08,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x29,0xd8,0x07,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x24,0xc8,0x06,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x1f,0xb8,0x05,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x1a,0xa8,0x04,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x15,0x98,0x03,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x10,0x88,0x02,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x0c,0x78,0x01,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x08,0x68,0x00,0x00 >>>>>>>>=20 >>>>>>>> +DB 0x04,0x01,0x15,0x00 >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb- >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb= - >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..f3b7b0e35e >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb- >>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,3137 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/sha/asm/sha1-mb-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2013-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global sha1_multi_block >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +sha1_multi_block: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha1_multi_block: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rcx,QWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + bt rcx,61 >>>>>>>>=20 >>>>>>>> + jc NEAR _shaext_shortcut >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+rax],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + sub rsp,288 >>>>>>>>=20 >>>>>>>> + and rsp,-256 >>>>>>>>=20 >>>>>>>> + mov QWORD[272+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$body: >>>>>>>>=20 >>>>>>>> + lea rbp,[K_XX_XX] >>>>>>>>=20 >>>>>>>> + lea rbx,[256+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_grande: >>>>>>>>=20 >>>>>>>> + mov DWORD[280+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rbp >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rbp >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[32+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r10,rbp >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[56+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r11,rbp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rax,[128+rsp] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[128+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop: >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[r8] >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[r9] >>>>>>>>=20 >>>>>>>> + lea r9,[64+r9] >>>>>>>>=20 >>>>>>>> + movd xmm3,DWORD[r10] >>>>>>>>=20 >>>>>>>> + lea r10,[64+r10] >>>>>>>>=20 >>>>>>>> + movd xmm4,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r11,[64+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[((-60))+r8] >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-60))+r9] >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-60))+r10] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-60))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[((-56))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-56))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,205 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-56))+r10] >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-56))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + movd xmm3,DWORD[((-52))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-52))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,213 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-52))+r10] >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-52))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + movd xmm4,DWORD[((-48))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-48))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-48))+r10] >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-48))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[((-44))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-44))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-44))+r10] >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-44))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[((-40))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-40))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-40))+r10] >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-40))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[((-36))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-36))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,205 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-36))+r10] >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-36))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + movd xmm3,DWORD[((-32))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-32))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,213 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-32))+r10] >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-32))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + movd xmm4,DWORD[((-28))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-28))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-28))+r10] >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-28))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[((-24))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-24))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-24))+r10] >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-24))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[((-20))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-20))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-20))+r10] >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-20))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + punpckldq xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[((-16))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-16))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,205 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-16))+r10] >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-16))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + punpckldq xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + movd xmm3,DWORD[((-12))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-12))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,213 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-12))+r10] >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-12))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + punpckldq xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + movd xmm4,DWORD[((-8))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-8))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,221 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-8))+r10] >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + punpckldq xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[((-4))+r8] >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm9,DWORD[((-4))+r9] >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,229 >>>>>>>>=20 >>>>>>>> + movd xmm8,DWORD[((-4))+r10] >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + movd xmm7,DWORD[((-4))+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + punpckldq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r8] >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r10] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,197 >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r11] >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pandn xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + pand xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm0,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm11,2 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm2,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm14 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm10,2 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm3,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm13 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm14,2 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm5,31 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm13,2 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + por xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm8,5 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm9,27 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pslld xmm7,30 >>>>>>>>=20 >>>>>>>> + por xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm12,2 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + por xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm8 >>>>>>>>=20 >>>>>>>> + cmovge r8,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[4+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + cmovge r9,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[8+rbx] >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + cmovge r10,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[12+rbx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + cmovge r11,rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + pand xmm10,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm11,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[64+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm12,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[96+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[128+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdi],xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[32+rdi],xmm11 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[64+rdi],xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[96+rdi],xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[128+rdi],xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rbx],xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + movdqa xmm15,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[280+rsp] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_grande >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done: >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[272+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-104))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-88))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-72))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-56))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha1_multi_block: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +sha1_multi_block_shaext: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha1_multi_block_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_shaext_shortcut: >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+rax],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + sub rsp,288 >>>>>>>>=20 >>>>>>>> + shl edx,1 >>>>>>>>=20 >>>>>>>> + and rsp,-256 >>>>>>>>=20 >>>>>>>> + lea rdi,[64+rdi] >>>>>>>>=20 >>>>>>>> + mov QWORD[272+rsp],rax >>>>>>>>=20 >>>>>>>> +$L$body_shaext: >>>>>>>>=20 >>>>>>>> + lea rbx,[256+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((K_XX_XX+128))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_grande_shaext: >>>>>>>>=20 >>>>>>>> + mov DWORD[280+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rsp >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rsp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq xmm0,QWORD[((0-64))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm4,QWORD[((32-64))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm5,QWORD[((64-64))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm6,QWORD[((96-64))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm7,QWORD[((128-64))+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm0,xmm5 >>>>>>>>=20 >>>>>>>> + punpckhqdq xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm7,63 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm7,127 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm8,27 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_shaext: >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[32+r9] >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,219 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[48+r9] >>>>>>>>=20 >>>>>>>> + lea r9,[64+r9] >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,227 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[80+rsp],xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[112+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[64+rsp],xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[96+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> + prefetcht0 [127+r8] >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,235 >>>>>>>>=20 >>>>>>>> + prefetcht0 [127+r9] >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,220 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,205 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm13 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,214 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm14 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,203 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm11 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm12 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,220 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,205 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm13 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,214 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm14 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,203 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm11 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm12 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,220 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,205 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm13 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,214 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm14 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,203 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm11 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm12 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,220 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,205 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,245 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm13 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,214 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,222 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm14 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,203 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,227 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm11 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,201,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,212 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,236 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[rbx] >>>>>>>>=20 >>>>>>>> + cmovge r8,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,205 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,202,245 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[4+rbx] >>>>>>>>=20 >>>>>>>> + cmovge r9,rsp >>>>>>>>=20 >>>>>>>> + movq xmm6,QWORD[rbx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,200,214 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm11,xmm6,0x00 >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm6,0x55 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm12,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> +DB 69,15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 68,15,56,200,204 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm7,xmm4 >>>>>>>>=20 >>>>>>>> + pand xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm8,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm12 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm0,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm8,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm9,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq QWORD[rbx],xmm6 >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[280+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm8,27 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + punpckhdq xmm6,xmm8 >>>>>>>>=20 >>>>>>>> + punpckhdq xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movq QWORD[(0-64)+rdi],xmm0 >>>>>>>>=20 >>>>>>>> + psrldq xmm0,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(64-64)+rdi],xmm6 >>>>>>>>=20 >>>>>>>> + psrldq xmm6,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(32-64)+rdi],xmm0 >>>>>>>>=20 >>>>>>>> + psrldq xmm1,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(96-64)+rdi],xmm6 >>>>>>>>=20 >>>>>>>> + movq QWORD[(128-64)+rdi],xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rdi,[8+rdi] >>>>>>>>=20 >>>>>>>> + lea rsi,[32+rsi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_grande_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_shaext: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-104))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-88))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-72))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-56))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha1_multi_block_shaext: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 256 >>>>>>>>=20 >>>>>>>> + DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 >>>>>>>>=20 >>>>>>>> + DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 >>>>>>>>=20 >>>>>>>> +K_XX_XX: >>>>>>>>=20 >>>>>>>> + DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 >>>>>>>>=20 >>>>>>>> + DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 >>>>>>>>=20 >>>>>>>> + DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc >>>>>>>>=20 >>>>>>>> + DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc >>>>>>>>=20 >>>>>>>> + DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 >>>>>>>>=20 >>>>>>>> + DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> +DB >>>>> 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 >>>>>>>>=20 >>>>>>>> +DB 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107 >>>>>>>>=20 >>>>>>>> +DB 32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,= 120 >>>>>>>>=20 >>>>>>>> +DB 56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77 >>>>>>>>=20 >>>>>>>> +DB 83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110 >>>>>>>>=20 >>>>>>>> +DB 115,115,108,46,111,114,103,62,0 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[272+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-24-160))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha1_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha1_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha1_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha1_multi_block_shaext wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha1_multi_block_shaext wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha1_multi_block_shaext wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha1_multi_block: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$body wrt ..imagebase,$L$epilogue wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha1_multi_block_shaext: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$body_shaext wrt ..imagebase,$L$epilogue_shaex= t >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1- >>>>> x86_64.nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..c6d68d348f >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nas= m >>>>>>>> @@ -0,0 +1,2884 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/sha/asm/sha1-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2006-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global sha1_block_data_order >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +sha1_block_data_order: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha1_block_data_order: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r9d,DWORD[((OPENSSL_ia32cap_P+0))] >>>>>>>>=20 >>>>>>>> + mov r8d,DWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[((OPENSSL_ia32cap_P+8))] >>>>>>>>=20 >>>>>>>> + test r8d,512 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$ialu >>>>>>>>=20 >>>>>>>> + test r10d,536870912 >>>>>>>>=20 >>>>>>>> + jnz NEAR _shaext_shortcut >>>>>>>>=20 >>>>>>>> + jmp NEAR _ssse3_shortcut >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ialu: >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r8,rdi >>>>>>>>=20 >>>>>>>> + sub rsp,72 >>>>>>>>=20 >>>>>>>> + mov r9,rsi >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov r10,rdx >>>>>>>>=20 >>>>>>>> + mov QWORD[64+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$prologue: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov esi,DWORD[r8] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + mov r11d,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$loop: >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[r9] >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[4+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + lea r13d,[1518500249+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + mov r14d,DWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + bswap r14d >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + lea r12d,[1518500249+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[12+r9] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + lea r11d,[1518500249+r11*1+r14] >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + lea edi,[1518500249+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + mov r14d,DWORD[20+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + bswap r14d >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + lea esi,[1518500249+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[24+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + lea r13d,[1518500249+r13*1+r14] >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[28+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + lea r12d,[1518500249+r12*1+rdx] >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + mov r14d,DWORD[32+r9] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + bswap r14d >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + lea r11d,[1518500249+r11*1+rbp] >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[36+r9] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + lea edi,[1518500249+rdi*1+r14] >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + lea esi,[1518500249+rsi*1+rdx] >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + mov r14d,DWORD[44+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + bswap r14d >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + lea r13d,[1518500249+r13*1+rbp] >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[48+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + lea r12d,[1518500249+r12*1+r14] >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[52+r9] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + bswap ebp >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + lea r11d,[1518500249+r11*1+rdx] >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + mov r14d,DWORD[56+r9] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + bswap r14d >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + lea edi,[1518500249+rdi*1+rbp] >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[60+r9] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + bswap edx >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + lea esi,[1518500249+rsi*1+r14] >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + lea r13d,[1518500249+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + lea r12d,[1518500249+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + lea r11d,[1518500249+r11*1+r14] >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + lea edi,[1518500249+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + lea esi,[1518500249+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[1859775393+r13*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[1859775393+r12*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[1859775393+r11*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[1859775393+rdi*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[1859775393+rsi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[1859775393+r13*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[1859775393+r12*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[1859775393+r11*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[1859775393+rdi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[1859775393+rsi*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[1859775393+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[1859775393+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[1859775393+r11*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[1859775393+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[1859775393+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[1859775393+r13*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[1859775393+r12*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[1859775393+r11*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[1859775393+rdi*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[1859775393+rsi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-1894007588))+r13*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,edi >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-1894007588))+r12*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,esi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-1894007588))+r11*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,r13d >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-1894007588))+rdi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,r12d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-1894007588))+rsi*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,r11d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,r12d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-1894007588))+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,edi >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,r11d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-1894007588))+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,esi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,edi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-1894007588))+r11*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,r13d >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-1894007588))+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,r12d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-1894007588))+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,r11d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-1894007588))+r13*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,edi >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-1894007588))+r12*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,esi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,edi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-1894007588))+r11*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,r13d >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-1894007588))+rdi*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,r12d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,r13d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-1894007588))+rsi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,r11d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r11d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-1894007588))+r13*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,edi >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and eax,edi >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-1894007588))+r12*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,esi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ebx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + and eax,esi >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-1894007588))+r11*1+rdx] >>>>>>>>=20 >>>>>>>> + xor ebx,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + and ebx,r13d >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,ebx >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r13d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-1894007588))+rdi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor ebx,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + and ebx,r12d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,ebx >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ebx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + and eax,r12d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-1894007588))+rsi*1+r14] >>>>>>>>=20 >>>>>>>> + xor ebx,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + and ebx,r11d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-899497514))+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-899497514))+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-899497514))+r11*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-899497514))+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-899497514))+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-899497514))+r13*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-899497514))+r12*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-899497514))+r11*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-899497514))+rdi*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],edx >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-899497514))+rsi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],ebp >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-899497514))+r13*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],r14d >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-899497514))+r12*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-899497514))+r11*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-899497514))+rdi*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + lea esi,[((-899497514))+rsi*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,esi >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + lea r13d,[((-899497514))+r13*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + add r13d,ecx >>>>>>>>=20 >>>>>>>> + rol edi,30 >>>>>>>>=20 >>>>>>>> + add r13d,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,esi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,r11d >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor r14d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + lea r12d,[((-899497514))+r12*1+rbp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + rol esi,30 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + rol r14d,1 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,r12d >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor eax,edi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + lea r11d,[((-899497514))+r11*1+r14] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + add r11d,ecx >>>>>>>>=20 >>>>>>>> + rol r13d,30 >>>>>>>>=20 >>>>>>>> + add r11d,eax >>>>>>>>=20 >>>>>>>> + rol edx,1 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,r11d >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor eax,esi >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + lea edi,[((-899497514))+rdi*1+rdx] >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + add edi,ecx >>>>>>>>=20 >>>>>>>> + rol r12d,30 >>>>>>>>=20 >>>>>>>> + add edi,eax >>>>>>>>=20 >>>>>>>> + rol ebp,1 >>>>>>>>=20 >>>>>>>> + mov eax,r11d >>>>>>>>=20 >>>>>>>> + mov ecx,edi >>>>>>>>=20 >>>>>>>> + xor eax,r13d >>>>>>>>=20 >>>>>>>> + lea esi,[((-899497514))+rsi*1+rbp] >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + xor eax,r12d >>>>>>>>=20 >>>>>>>> + add esi,ecx >>>>>>>>=20 >>>>>>>> + rol r11d,30 >>>>>>>>=20 >>>>>>>> + add esi,eax >>>>>>>>=20 >>>>>>>> + add esi,DWORD[r8] >>>>>>>>=20 >>>>>>>> + add edi,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + add r13d,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[r8],esi >>>>>>>>=20 >>>>>>>> + mov DWORD[4+r8],edi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+r8],r11d >>>>>>>>=20 >>>>>>>> + mov DWORD[12+r8],r12d >>>>>>>>=20 >>>>>>>> + mov DWORD[16+r8],r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub r10,1 >>>>>>>>=20 >>>>>>>> + lea r9,[64+r9] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha1_block_data_order: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +sha1_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha1_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_shaext_shortcut: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-72))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-64)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-48)+rax],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-32)+rax],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-16)+rax],xmm9 >>>>>>>>=20 >>>>>>>> +$L$prologue_shaext: >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((K_XX_XX+160))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,27 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm1,27 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm1 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_shaext: >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> + lea r8,[64+rsi] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + cmovne rsi,r8 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,0 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,1 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,229 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,231 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,247 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,2 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,201,252 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,245 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,204 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,202,254 >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,213 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,206 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,193,3 >>>>>>>>=20 >>>>>>>> +DB 15,56,200,215 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> +DB 15,58,204,194,3 >>>>>>>>=20 >>>>>>>> +DB 65,15,56,200,201 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm1,27 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdi],xmm0 >>>>>>>>=20 >>>>>>>> + movd DWORD[16+rdi],xmm1 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-8-64))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-8-48))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-8-32))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-8-16))+rax] >>>>>>>>=20 >>>>>>>> + mov rsp,rax >>>>>>>>=20 >>>>>>>> +$L$epilogue_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha1_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +sha1_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha1_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_ssse3_shortcut: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r11,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-160))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-96)+r11],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-80)+r11],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-64)+r11],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-48)+r11],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-32)+r11],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40-16)+r11],xmm11 >>>>>>>>=20 >>>>>>>> +$L$prologue_ssse3: >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov r8,rdi >>>>>>>>=20 >>>>>>>> + mov r9,rsi >>>>>>>>=20 >>>>>>>> + mov r10,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl r10,6 >>>>>>>>=20 >>>>>>>> + add r10,r9 >>>>>>>>=20 >>>>>>>> + lea r14,[((K_XX_XX+64))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[r8] >>>>>>>>=20 >>>>>>>> + mov ebx,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + mov ebp,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + and esi,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[64+r14] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[((-64))+r14] >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[32+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[48+r9] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,198 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,206 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,214 >>>>>>>>=20 >>>>>>>> + add r9,64 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,222 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + psubd xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm1 >>>>>>>>=20 >>>>>>>> + psubd xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + psubd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_ssse3 >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_ssse3: >>>>>>>>=20 >>>>>>>> + ror ebx,2 >>>>>>>>=20 >>>>>>>> + pshufd xmm4,xmm0,238 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm8,4 >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pslldq xmm10,12 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm8,31 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm9,2 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[((-64))+r14] >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm5,xmm1,238 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm5,xmm2 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm9,4 >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm10 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pslldq xmm8,12 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm9,31 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm8 >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm8,30 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm10,2 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm8 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm8,XMMWORD[((-32))+r14] >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm10 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm6,xmm2,238 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm10,4 >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm2 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pslldq xmm9,12 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm10,31 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm9,30 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + por xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm8,2 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm9 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[((-32))+r14] >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm8 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm3,238 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm7,xmm4 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + psrldq xmm8,4 >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pslldq xmm10,12 >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm7 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + psrld xmm8,31 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm10 >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + por xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm9,2 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[((-32))+r14] >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm6,238 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + add edx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pslld xmm0,2 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + psrld xmm9,30 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + por xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm7,238 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm1 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm8 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm1,2 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm0,238 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa xmm10,XMMWORD[r14] >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm2,2 >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + psrld xmm8,30 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + por xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm1,238 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm9,xmm2 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm2 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm3,2 >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + psrld xmm9,30 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm2,238 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm4 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm4,2 >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + por xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm3,238 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm8,xmm4 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm6 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm8 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm9 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm5,2 >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm8,30 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + por xmm5,xmm8 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm4,238 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm2 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm9 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + pslld xmm6,2 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + psrld xmm9,30 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + por xmm6,xmm9 >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm5,238 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[32+r14] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pslld xmm7,2 >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + por xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm6,238 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + pslld xmm0,2 >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm8,30 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + por xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm7,238 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + and esi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm9,xmm0 >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm0 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm10 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + pslld xmm1,2 >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + psrld xmm9,30 >>>>>>>>=20 >>>>>>>> + add eax,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + and esi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + por xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm0,238 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + and edi,ecx >>>>>>>>=20 >>>>>>>> + xor ecx,edx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebx >>>>>>>>=20 >>>>>>>> + xor ebx,ecx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm10,xmm1 >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm3 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm8 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm1 >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + and edi,eax >>>>>>>>=20 >>>>>>>> + xor eax,ebx >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm2 >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + pslld xmm2,2 >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + psrld xmm10,30 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + and esi,ebp >>>>>>>>=20 >>>>>>>> + xor ebp,eax >>>>>>>>=20 >>>>>>>> + por xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + pshufd xmm8,xmm1,238 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + xor edx,ebp >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm8,xmm2 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm9 >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm2 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + pslld xmm3,2 >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + psrld xmm8,30 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + por xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm10 >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + cmp r9,r10 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done_ssse3 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[64+r14] >>>>>>>>=20 >>>>>>>> + movdqa xmm9,XMMWORD[((-64))+r14] >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[32+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[48+r9] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,198 >>>>>>>>=20 >>>>>>>> + add r9,64 >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,206 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm0 >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + psubd xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,214 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm1 >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + psubd xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,222 >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm2 >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + psubd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[r8] >>>>>>>>=20 >>>>>>>> + add esi,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[r8],eax >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[4+r8],esi >>>>>>>>=20 >>>>>>>> + mov ebx,esi >>>>>>>>=20 >>>>>>>> + mov DWORD[8+r8],ecx >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+r8],edx >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+r8],ebp >>>>>>>>=20 >>>>>>>> + and esi,edi >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_ssse3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$done_ssse3: >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,esi >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + mov esi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,esi >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + mov esi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,edx >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,esi >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov esi,eax >>>>>>>>=20 >>>>>>>> + rol eax,5 >>>>>>>>=20 >>>>>>>> + add ebp,edi >>>>>>>>=20 >>>>>>>> + xor esi,ecx >>>>>>>>=20 >>>>>>>> + ror ebx,7 >>>>>>>>=20 >>>>>>>> + add ebp,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebx >>>>>>>>=20 >>>>>>>> + mov edi,ebp >>>>>>>>=20 >>>>>>>> + rol ebp,5 >>>>>>>>=20 >>>>>>>> + add edx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror eax,7 >>>>>>>>=20 >>>>>>>> + add edx,ebp >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + mov esi,edx >>>>>>>>=20 >>>>>>>> + rol edx,5 >>>>>>>>=20 >>>>>>>> + add ecx,edi >>>>>>>>=20 >>>>>>>> + xor esi,eax >>>>>>>>=20 >>>>>>>> + ror ebp,7 >>>>>>>>=20 >>>>>>>> + add ecx,edx >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + xor esi,ebp >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + rol ecx,5 >>>>>>>>=20 >>>>>>>> + add ebx,esi >>>>>>>>=20 >>>>>>>> + xor edi,ebp >>>>>>>>=20 >>>>>>>> + ror edx,7 >>>>>>>>=20 >>>>>>>> + add ebx,ecx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + mov esi,ebx >>>>>>>>=20 >>>>>>>> + rol ebx,5 >>>>>>>>=20 >>>>>>>> + add eax,edi >>>>>>>>=20 >>>>>>>> + ror ecx,7 >>>>>>>>=20 >>>>>>>> + add eax,ebx >>>>>>>>=20 >>>>>>>> + add eax,DWORD[r8] >>>>>>>>=20 >>>>>>>> + add esi,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[r8],eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[4+r8],esi >>>>>>>>=20 >>>>>>>> + add ebp,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + mov DWORD[8+r8],ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+r8],edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+r8],ebp >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-40-96))+r11] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-40-80))+r11] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-40-64))+r11] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-40-48))+r11] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-40-32))+r11] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-40-16))+r11] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[r11] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha1_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +K_XX_XX: >>>>>>>>=20 >>>>>>>> + DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 >>>>>>>>=20 >>>>>>>> + DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 >>>>>>>>=20 >>>>>>>> + DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 >>>>>>>>=20 >>>>>>>> + DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 >>>>>>>>=20 >>>>>>>> + DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc >>>>>>>>=20 >>>>>>>> + DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc >>>>>>>>=20 >>>>>>>> + DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 >>>>>>>>=20 >>>>>>>> + DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> +DB >>>>> 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 >>>>>>>>=20 >>>>>>>> +DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 >>>>>>>>=20 >>>>>>>> +DB 102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44 >>>>>>>>=20 >>>>>>>> +DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60 >>>>>>>>=20 >>>>>>>> +DB 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111= ,114 >>>>>>>>=20 >>>>>>>> +DB 103,62,0 >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$prologue] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$epilogue] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[64+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +shaext_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$prologue_shaext] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$epilogue_shaext] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-8-64))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,8 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +ssse3_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[208+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$common_seh_tail >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-40-96))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,12 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$common_seh_tail: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha1_block_data_order wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha1_block_data_order wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha1_block_data_order wrt ..imagebas= e >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha1_block_data_order_shaext wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha1_block_data_order_shaext wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha1_block_data_order_shaext wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha1_block_data_order_ssse3 wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha1_block_data_order_ssse3 wrt ..ima= gebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha1_block_data_order_ssse3 wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha1_block_data_order: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha1_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD shaext_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha1_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD ssse3_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ss= se3 >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-m= b- >>>>>>>> x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256- >>>> mb- >>>>>>>> x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..7cd5eae85c >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-mb- >>>>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,3461 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/sha/asm/sha256-mb-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2013-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global sha256_multi_block >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +sha256_multi_block: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha256_multi_block: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rcx,QWORD[((OPENSSL_ia32cap_P+4))] >>>>>>>>=20 >>>>>>>> + bt rcx,61 >>>>>>>>=20 >>>>>>>> + jc NEAR _shaext_shortcut >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+rax],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + sub rsp,288 >>>>>>>>=20 >>>>>>>> + and rsp,-256 >>>>>>>>=20 >>>>>>>> + mov QWORD[272+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$body: >>>>>>>>=20 >>>>>>>> + lea rbp,[((K256+128))] >>>>>>>>=20 >>>>>>>> + lea rbx,[256+rsp] >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_grande: >>>>>>>>=20 >>>>>>>> + mov DWORD[280+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rbp >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rbp >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[32+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r10,rbp >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[56+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r11,rbp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[((0-128))+rdi] >>>>>>>>=20 >>>>>>>> + lea rax,[128+rsp] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[((32-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[((64-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[((96-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm12,XMMWORD[((128-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm13,XMMWORD[((160-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm14,XMMWORD[((192-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm15,XMMWORD[((224-128))+rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[$L$pbswap] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop: >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-128))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[4+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[4+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[4+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-96))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[8+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[8+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[8+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[8+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-64))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[12+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[12+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[12+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[12+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[16+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[16+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[16+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[20+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[20+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[20+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[20+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[24+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[24+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[24+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[24+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[28+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[28+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[28+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[28+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + lea rbp,[256+rbp] >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[32+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[32+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[32+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[32+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-128))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[36+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[36+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[36+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[36+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-96))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[40+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[40+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[40+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[40+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-64))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[44+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[44+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[44+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[44+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[48+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[48+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[48+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[48+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[52+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[52+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[52+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[52+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[56+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[56+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[56+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[56+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movd xmm5,DWORD[60+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> + movd xmm0,DWORD[60+r9] >>>>>>>>=20 >>>>>>>> + lea r9,[64+r9] >>>>>>>>=20 >>>>>>>> + movd xmm1,DWORD[60+r10] >>>>>>>>=20 >>>>>>>> + lea r10,[64+r10] >>>>>>>>=20 >>>>>>>> + movd xmm2,DWORD[60+r11] >>>>>>>>=20 >>>>>>>> + lea r11,[64+r11] >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + punpckldq xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + punpckldq xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,238 >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r8] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r9] >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r10] >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + prefetcht0 [63+r11] >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + lea rbp,[256+rbp] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + mov ecx,3 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_16_xx >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_16_xx: >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(0-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-128))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(16-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((-96))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(32-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-64))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(48-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(64-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(80-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(96-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(112-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + lea rbp,[256+rbp] >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((16-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(128-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-128))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm15,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((32-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(144-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((-96))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm14,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((48-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(160-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((-64))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm12 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm13,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((64-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((144-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(176-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((-32))+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm11 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm12,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm12,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((80-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((160-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(192-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm12 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm12 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm13 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm11,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((224-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((96-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((176-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(208-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm15 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm8 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm11 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm12 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[((240-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[((112-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm6 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((192-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm3,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + psrld xmm3,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(224-128)+rax],xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm5,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm14 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm8 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm15 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm10 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm11 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm9,xmm4 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm5 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[((0-128))+rax] >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[((128-128))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm5 >>>>>>>>=20 >>>>>>>> + psrld xmm7,3 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,7 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((208-128))+rax] >>>>>>>>=20 >>>>>>>> + pslld xmm2,14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm1,18-7 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,25-14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + psrld xmm0,10 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm4,17 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm1,13 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + psrld xmm4,19-17 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + pslld xmm1,15-13 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,6 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,7 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[(240-128)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,11 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + pslld xmm2,21-7 >>>>>>>>=20 >>>>>>>> + paddd xmm6,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm1,25-11 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm13 >>>>>>>>=20 >>>>>>>> + pslld xmm2,26-21 >>>>>>>>=20 >>>>>>>> + pandn xmm0,xmm15 >>>>>>>>=20 >>>>>>>> + pand xmm4,xmm14 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,xmm9 >>>>>>>>=20 >>>>>>>> + psrld xmm1,2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm10 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm9 >>>>>>>>=20 >>>>>>>> + pslld xmm2,10 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + pslld xmm2,19-10 >>>>>>>>=20 >>>>>>>> + pand xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + psrld xmm7,22-13 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm10 >>>>>>>>=20 >>>>>>>> + pslld xmm2,30-19 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm7 >>>>>>>>=20 >>>>>>>> + lea rbp,[256+rbp] >>>>>>>>=20 >>>>>>>> + dec ecx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_16_xx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + lea rbp,[((K256+128))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[rbx] >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[rbx] >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + cmovge r8,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[4+rbx] >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + cmovge r9,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[8+rbx] >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + cmovge r10,rbp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[12+rbx] >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + cmovge r11,rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[((0-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm8,xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[((32-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[((64-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm10,xmm6 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[((96-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm0 >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[((128-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm12,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[((160-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm13,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[((192-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[((224-128))+rdi] >>>>>>>>=20 >>>>>>>> + pand xmm15,xmm6 >>>>>>>>=20 >>>>>>>> + paddd xmm12,xmm0 >>>>>>>>=20 >>>>>>>> + paddd xmm13,xmm1 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(0-128)+rdi],xmm8 >>>>>>>>=20 >>>>>>>> + paddd xmm14,xmm2 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(32-128)+rdi],xmm9 >>>>>>>>=20 >>>>>>>> + paddd xmm15,xmm5 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(64-128)+rdi],xmm10 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(96-128)+rdi],xmm11 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(128-128)+rdi],xmm12 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(160-128)+rdi],xmm13 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(192-128)+rdi],xmm14 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[(224-128)+rdi],xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rbx],xmm7 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[$L$pbswap] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[280+rsp] >>>>>>>>=20 >>>>>>>> + lea rdi,[16+rdi] >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_grande >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done: >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[272+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-104))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-88))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-72))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-56))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha256_multi_block: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +sha256_multi_block_shaext: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha256_multi_block_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_shaext_shortcut: >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-168))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[16+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[32+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[48+rsp],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-120)+rax],xmm10 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-104)+rax],xmm11 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-88)+rax],xmm12 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-72)+rax],xmm13 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-56)+rax],xmm14 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-40)+rax],xmm15 >>>>>>>>=20 >>>>>>>> + sub rsp,288 >>>>>>>>=20 >>>>>>>> + shl edx,1 >>>>>>>>=20 >>>>>>>> + and rsp,-256 >>>>>>>>=20 >>>>>>>> + lea rdi,[128+rdi] >>>>>>>>=20 >>>>>>>> + mov QWORD[272+rsp],rax >>>>>>>>=20 >>>>>>>> +$L$body_shaext: >>>>>>>>=20 >>>>>>>> + lea rbx,[256+rsp] >>>>>>>>=20 >>>>>>>> + lea rbp,[((K256_shaext+128))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$oop_grande_shaext: >>>>>>>>=20 >>>>>>>> + mov DWORD[280+rsp],edx >>>>>>>>=20 >>>>>>>> + xor edx,edx >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r8,rsp >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + cmp ecx,edx >>>>>>>>=20 >>>>>>>> + cmovg edx,ecx >>>>>>>>=20 >>>>>>>> + test ecx,ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rbx],ecx >>>>>>>>=20 >>>>>>>> + cmovle r9,rsp >>>>>>>>=20 >>>>>>>> + test edx,edx >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq xmm12,QWORD[((0-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm4,QWORD[((32-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm13,QWORD[((64-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm5,QWORD[((96-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm8,QWORD[((128-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm9,QWORD[((160-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm10,QWORD[((192-128))+rdi] >>>>>>>>=20 >>>>>>>> + movq xmm11,QWORD[((224-128))+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + punpckldq xmm12,xmm4 >>>>>>>>=20 >>>>>>>> + punpckldq xmm13,xmm5 >>>>>>>>=20 >>>>>>>> + punpckldq xmm8,xmm9 >>>>>>>>=20 >>>>>>>> + punpckldq xmm10,xmm11 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((K256_shaext-16))] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm14,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm15,xmm13 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm12,xmm8 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm13,xmm10 >>>>>>>>=20 >>>>>>>> + punpckhqdq xmm14,xmm8 >>>>>>>>=20 >>>>>>>> + punpckhqdq xmm15,xmm10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm12,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm13,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm14,xmm14,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm15,xmm15,27 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 32 >>>>>>>>=20 >>>>>>>> +$L$oop_shaext: >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm8,XMMWORD[r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[16+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm9,XMMWORD[16+r9] >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[32+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,227 >>>>>>>>=20 >>>>>>>> + movdqu xmm10,XMMWORD[32+r9] >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,195 >>>>>>>>=20 >>>>>>>> + movdqu xmm7,XMMWORD[48+r8] >>>>>>>>=20 >>>>>>>> + lea r8,[64+r8] >>>>>>>>=20 >>>>>>>> + movdqu xmm11,XMMWORD[48+r9] >>>>>>>>=20 >>>>>>>> + lea r9,[64+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((0-128))+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,235 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((0-128))+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,203 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm8 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[80+rsp],xmm13 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[112+rsp],xmm15 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[64+rsp],xmm12 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + pxor xmm8,xmm14 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[96+rsp],xmm14 >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((16-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,243 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((16-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + prefetcht0 [127+r8] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,251 >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,211 >>>>>>>>=20 >>>>>>>> + prefetcht0 [127+r9] >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> +DB 102,68,15,56,0,219 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((32-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((32-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,193 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,222,4 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,218,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((48-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((48-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,223,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,195 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,219,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((64-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((64-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,220,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,200 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,216,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,252 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((80-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm5 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,216 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((80-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,221,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,217,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((96-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,193 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((96-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,222,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,218 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,218,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((112-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((112-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,223,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,195 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,219,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((128-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((128-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,220,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,200 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,216,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,252 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((144-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm5 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,216 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((144-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,221,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,217,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((160-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,193 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((160-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,222,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,218 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm11 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,218,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((176-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((176-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm8,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,231 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,223,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,195 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm8 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,219,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((192-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,211 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((192-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm9,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,220,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,200 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm9 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,216,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,252 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((208-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm5 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,204,216 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((208-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm10,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm9 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,221,4 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,xmm10 >>>>>>>>=20 >>>>>>>> +DB 102,65,15,58,15,217,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((224-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((224-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm3 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm10 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,254 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + mov ecx,1 >>>>>>>>=20 >>>>>>>> + pxor xmm6,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,205,218 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm1,XMMWORD[((240-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + movq xmm7,QWORD[rbx] >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm2,XMMWORD[((240-128))+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm11 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm1 >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[rbx] >>>>>>>>=20 >>>>>>>> + cmovge r8,rsp >>>>>>>>=20 >>>>>>>> + cmp ecx,DWORD[4+rbx] >>>>>>>>=20 >>>>>>>> + cmovge r9,rsp >>>>>>>>=20 >>>>>>>> + pshufd xmm9,xmm7,0x00 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,236 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,xmm2 >>>>>>>>=20 >>>>>>>> + pshufd xmm10,xmm7,0x55 >>>>>>>>=20 >>>>>>>> + movdqa xmm11,xmm7 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,254 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x0e >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm9,xmm6 >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm10,xmm6 >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,229 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm2,0x0e >>>>>>>>=20 >>>>>>>> + pcmpgtd xmm11,xmm6 >>>>>>>>=20 >>>>>>>> + movdqa xmm3,XMMWORD[((K256_shaext-16))] >>>>>>>>=20 >>>>>>>> +DB 69,15,56,203,247 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pand xmm13,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm15,xmm10 >>>>>>>>=20 >>>>>>>> + pand xmm12,xmm9 >>>>>>>>=20 >>>>>>>> + pand xmm14,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm11,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm13,XMMWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm15,XMMWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm12,XMMWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + paddd xmm14,XMMWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq QWORD[rbx],xmm11 >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[280+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm12,xmm12,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm13,xmm13,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm14,xmm14,27 >>>>>>>>=20 >>>>>>>> + pshufd xmm15,xmm15,27 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm12 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm13 >>>>>>>>=20 >>>>>>>> + punpckldq xmm12,xmm14 >>>>>>>>=20 >>>>>>>> + punpckhdq xmm5,xmm14 >>>>>>>>=20 >>>>>>>> + punpckldq xmm13,xmm15 >>>>>>>>=20 >>>>>>>> + punpckhdq xmm6,xmm15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq QWORD[(0-128)+rdi],xmm12 >>>>>>>>=20 >>>>>>>> + psrldq xmm12,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(128-128)+rdi],xmm5 >>>>>>>>=20 >>>>>>>> + psrldq xmm5,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(32-128)+rdi],xmm12 >>>>>>>>=20 >>>>>>>> + movq QWORD[(160-128)+rdi],xmm5 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movq QWORD[(64-128)+rdi],xmm13 >>>>>>>>=20 >>>>>>>> + psrldq xmm13,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(192-128)+rdi],xmm6 >>>>>>>>=20 >>>>>>>> + psrldq xmm6,8 >>>>>>>>=20 >>>>>>>> + movq QWORD[(96-128)+rdi],xmm13 >>>>>>>>=20 >>>>>>>> + movq QWORD[(224-128)+rdi],xmm6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rdi,[8+rdi] >>>>>>>>=20 >>>>>>>> + lea rsi,[32+rsi] >>>>>>>>=20 >>>>>>>> + dec edx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_grande_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_shaext: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-184))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-168))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-152))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-136))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-120))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm11,XMMWORD[((-104))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm12,XMMWORD[((-88))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm13,XMMWORD[((-72))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm14,XMMWORD[((-56))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm15,XMMWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha256_multi_block_shaext: >>>>>>>>=20 >>>>>>>> +ALIGN 256 >>>>>>>>=20 >>>>>>>> +K256: >>>>>>>>=20 >>>>>>>> + DD 1116352408,1116352408,1116352408,1116352408 >>>>>>>>=20 >>>>>>>> + DD 1116352408,1116352408,1116352408,1116352408 >>>>>>>>=20 >>>>>>>> + DD 1899447441,1899447441,1899447441,1899447441 >>>>>>>>=20 >>>>>>>> + DD 1899447441,1899447441,1899447441,1899447441 >>>>>>>>=20 >>>>>>>> + DD 3049323471,3049323471,3049323471,3049323471 >>>>>>>>=20 >>>>>>>> + DD 3049323471,3049323471,3049323471,3049323471 >>>>>>>>=20 >>>>>>>> + DD 3921009573,3921009573,3921009573,3921009573 >>>>>>>>=20 >>>>>>>> + DD 3921009573,3921009573,3921009573,3921009573 >>>>>>>>=20 >>>>>>>> + DD 961987163,961987163,961987163,961987163 >>>>>>>>=20 >>>>>>>> + DD 961987163,961987163,961987163,961987163 >>>>>>>>=20 >>>>>>>> + DD 1508970993,1508970993,1508970993,1508970993 >>>>>>>>=20 >>>>>>>> + DD 1508970993,1508970993,1508970993,1508970993 >>>>>>>>=20 >>>>>>>> + DD 2453635748,2453635748,2453635748,2453635748 >>>>>>>>=20 >>>>>>>> + DD 2453635748,2453635748,2453635748,2453635748 >>>>>>>>=20 >>>>>>>> + DD 2870763221,2870763221,2870763221,2870763221 >>>>>>>>=20 >>>>>>>> + DD 2870763221,2870763221,2870763221,2870763221 >>>>>>>>=20 >>>>>>>> + DD 3624381080,3624381080,3624381080,3624381080 >>>>>>>>=20 >>>>>>>> + DD 3624381080,3624381080,3624381080,3624381080 >>>>>>>>=20 >>>>>>>> + DD 310598401,310598401,310598401,310598401 >>>>>>>>=20 >>>>>>>> + DD 310598401,310598401,310598401,310598401 >>>>>>>>=20 >>>>>>>> + DD 607225278,607225278,607225278,607225278 >>>>>>>>=20 >>>>>>>> + DD 607225278,607225278,607225278,607225278 >>>>>>>>=20 >>>>>>>> + DD 1426881987,1426881987,1426881987,1426881987 >>>>>>>>=20 >>>>>>>> + DD 1426881987,1426881987,1426881987,1426881987 >>>>>>>>=20 >>>>>>>> + DD 1925078388,1925078388,1925078388,1925078388 >>>>>>>>=20 >>>>>>>> + DD 1925078388,1925078388,1925078388,1925078388 >>>>>>>>=20 >>>>>>>> + DD 2162078206,2162078206,2162078206,2162078206 >>>>>>>>=20 >>>>>>>> + DD 2162078206,2162078206,2162078206,2162078206 >>>>>>>>=20 >>>>>>>> + DD 2614888103,2614888103,2614888103,2614888103 >>>>>>>>=20 >>>>>>>> + DD 2614888103,2614888103,2614888103,2614888103 >>>>>>>>=20 >>>>>>>> + DD 3248222580,3248222580,3248222580,3248222580 >>>>>>>>=20 >>>>>>>> + DD 3248222580,3248222580,3248222580,3248222580 >>>>>>>>=20 >>>>>>>> + DD 3835390401,3835390401,3835390401,3835390401 >>>>>>>>=20 >>>>>>>> + DD 3835390401,3835390401,3835390401,3835390401 >>>>>>>>=20 >>>>>>>> + DD 4022224774,4022224774,4022224774,4022224774 >>>>>>>>=20 >>>>>>>> + DD 4022224774,4022224774,4022224774,4022224774 >>>>>>>>=20 >>>>>>>> + DD 264347078,264347078,264347078,264347078 >>>>>>>>=20 >>>>>>>> + DD 264347078,264347078,264347078,264347078 >>>>>>>>=20 >>>>>>>> + DD 604807628,604807628,604807628,604807628 >>>>>>>>=20 >>>>>>>> + DD 604807628,604807628,604807628,604807628 >>>>>>>>=20 >>>>>>>> + DD 770255983,770255983,770255983,770255983 >>>>>>>>=20 >>>>>>>> + DD 770255983,770255983,770255983,770255983 >>>>>>>>=20 >>>>>>>> + DD 1249150122,1249150122,1249150122,1249150122 >>>>>>>>=20 >>>>>>>> + DD 1249150122,1249150122,1249150122,1249150122 >>>>>>>>=20 >>>>>>>> + DD 1555081692,1555081692,1555081692,1555081692 >>>>>>>>=20 >>>>>>>> + DD 1555081692,1555081692,1555081692,1555081692 >>>>>>>>=20 >>>>>>>> + DD 1996064986,1996064986,1996064986,1996064986 >>>>>>>>=20 >>>>>>>> + DD 1996064986,1996064986,1996064986,1996064986 >>>>>>>>=20 >>>>>>>> + DD 2554220882,2554220882,2554220882,2554220882 >>>>>>>>=20 >>>>>>>> + DD 2554220882,2554220882,2554220882,2554220882 >>>>>>>>=20 >>>>>>>> + DD 2821834349,2821834349,2821834349,2821834349 >>>>>>>>=20 >>>>>>>> + DD 2821834349,2821834349,2821834349,2821834349 >>>>>>>>=20 >>>>>>>> + DD 2952996808,2952996808,2952996808,2952996808 >>>>>>>>=20 >>>>>>>> + DD 2952996808,2952996808,2952996808,2952996808 >>>>>>>>=20 >>>>>>>> + DD 3210313671,3210313671,3210313671,3210313671 >>>>>>>>=20 >>>>>>>> + DD 3210313671,3210313671,3210313671,3210313671 >>>>>>>>=20 >>>>>>>> + DD 3336571891,3336571891,3336571891,3336571891 >>>>>>>>=20 >>>>>>>> + DD 3336571891,3336571891,3336571891,3336571891 >>>>>>>>=20 >>>>>>>> + DD 3584528711,3584528711,3584528711,3584528711 >>>>>>>>=20 >>>>>>>> + DD 3584528711,3584528711,3584528711,3584528711 >>>>>>>>=20 >>>>>>>> + DD 113926993,113926993,113926993,113926993 >>>>>>>>=20 >>>>>>>> + DD 113926993,113926993,113926993,113926993 >>>>>>>>=20 >>>>>>>> + DD 338241895,338241895,338241895,338241895 >>>>>>>>=20 >>>>>>>> + DD 338241895,338241895,338241895,338241895 >>>>>>>>=20 >>>>>>>> + DD 666307205,666307205,666307205,666307205 >>>>>>>>=20 >>>>>>>> + DD 666307205,666307205,666307205,666307205 >>>>>>>>=20 >>>>>>>> + DD 773529912,773529912,773529912,773529912 >>>>>>>>=20 >>>>>>>> + DD 773529912,773529912,773529912,773529912 >>>>>>>>=20 >>>>>>>> + DD 1294757372,1294757372,1294757372,1294757372 >>>>>>>>=20 >>>>>>>> + DD 1294757372,1294757372,1294757372,1294757372 >>>>>>>>=20 >>>>>>>> + DD 1396182291,1396182291,1396182291,1396182291 >>>>>>>>=20 >>>>>>>> + DD 1396182291,1396182291,1396182291,1396182291 >>>>>>>>=20 >>>>>>>> + DD 1695183700,1695183700,1695183700,1695183700 >>>>>>>>=20 >>>>>>>> + DD 1695183700,1695183700,1695183700,1695183700 >>>>>>>>=20 >>>>>>>> + DD 1986661051,1986661051,1986661051,1986661051 >>>>>>>>=20 >>>>>>>> + DD 1986661051,1986661051,1986661051,1986661051 >>>>>>>>=20 >>>>>>>> + DD 2177026350,2177026350,2177026350,2177026350 >>>>>>>>=20 >>>>>>>> + DD 2177026350,2177026350,2177026350,2177026350 >>>>>>>>=20 >>>>>>>> + DD 2456956037,2456956037,2456956037,2456956037 >>>>>>>>=20 >>>>>>>> + DD 2456956037,2456956037,2456956037,2456956037 >>>>>>>>=20 >>>>>>>> + DD 2730485921,2730485921,2730485921,2730485921 >>>>>>>>=20 >>>>>>>> + DD 2730485921,2730485921,2730485921,2730485921 >>>>>>>>=20 >>>>>>>> + DD 2820302411,2820302411,2820302411,2820302411 >>>>>>>>=20 >>>>>>>> + DD 2820302411,2820302411,2820302411,2820302411 >>>>>>>>=20 >>>>>>>> + DD 3259730800,3259730800,3259730800,3259730800 >>>>>>>>=20 >>>>>>>> + DD 3259730800,3259730800,3259730800,3259730800 >>>>>>>>=20 >>>>>>>> + DD 3345764771,3345764771,3345764771,3345764771 >>>>>>>>=20 >>>>>>>> + DD 3345764771,3345764771,3345764771,3345764771 >>>>>>>>=20 >>>>>>>> + DD 3516065817,3516065817,3516065817,3516065817 >>>>>>>>=20 >>>>>>>> + DD 3516065817,3516065817,3516065817,3516065817 >>>>>>>>=20 >>>>>>>> + DD 3600352804,3600352804,3600352804,3600352804 >>>>>>>>=20 >>>>>>>> + DD 3600352804,3600352804,3600352804,3600352804 >>>>>>>>=20 >>>>>>>> + DD 4094571909,4094571909,4094571909,4094571909 >>>>>>>>=20 >>>>>>>> + DD 4094571909,4094571909,4094571909,4094571909 >>>>>>>>=20 >>>>>>>> + DD 275423344,275423344,275423344,275423344 >>>>>>>>=20 >>>>>>>> + DD 275423344,275423344,275423344,275423344 >>>>>>>>=20 >>>>>>>> + DD 430227734,430227734,430227734,430227734 >>>>>>>>=20 >>>>>>>> + DD 430227734,430227734,430227734,430227734 >>>>>>>>=20 >>>>>>>> + DD 506948616,506948616,506948616,506948616 >>>>>>>>=20 >>>>>>>> + DD 506948616,506948616,506948616,506948616 >>>>>>>>=20 >>>>>>>> + DD 659060556,659060556,659060556,659060556 >>>>>>>>=20 >>>>>>>> + DD 659060556,659060556,659060556,659060556 >>>>>>>>=20 >>>>>>>> + DD 883997877,883997877,883997877,883997877 >>>>>>>>=20 >>>>>>>> + DD 883997877,883997877,883997877,883997877 >>>>>>>>=20 >>>>>>>> + DD 958139571,958139571,958139571,958139571 >>>>>>>>=20 >>>>>>>> + DD 958139571,958139571,958139571,958139571 >>>>>>>>=20 >>>>>>>> + DD 1322822218,1322822218,1322822218,1322822218 >>>>>>>>=20 >>>>>>>> + DD 1322822218,1322822218,1322822218,1322822218 >>>>>>>>=20 >>>>>>>> + DD 1537002063,1537002063,1537002063,1537002063 >>>>>>>>=20 >>>>>>>> + DD 1537002063,1537002063,1537002063,1537002063 >>>>>>>>=20 >>>>>>>> + DD 1747873779,1747873779,1747873779,1747873779 >>>>>>>>=20 >>>>>>>> + DD 1747873779,1747873779,1747873779,1747873779 >>>>>>>>=20 >>>>>>>> + DD 1955562222,1955562222,1955562222,1955562222 >>>>>>>>=20 >>>>>>>> + DD 1955562222,1955562222,1955562222,1955562222 >>>>>>>>=20 >>>>>>>> + DD 2024104815,2024104815,2024104815,2024104815 >>>>>>>>=20 >>>>>>>> + DD 2024104815,2024104815,2024104815,2024104815 >>>>>>>>=20 >>>>>>>> + DD 2227730452,2227730452,2227730452,2227730452 >>>>>>>>=20 >>>>>>>> + DD 2227730452,2227730452,2227730452,2227730452 >>>>>>>>=20 >>>>>>>> + DD 2361852424,2361852424,2361852424,2361852424 >>>>>>>>=20 >>>>>>>> + DD 2361852424,2361852424,2361852424,2361852424 >>>>>>>>=20 >>>>>>>> + DD 2428436474,2428436474,2428436474,2428436474 >>>>>>>>=20 >>>>>>>> + DD 2428436474,2428436474,2428436474,2428436474 >>>>>>>>=20 >>>>>>>> + DD 2756734187,2756734187,2756734187,2756734187 >>>>>>>>=20 >>>>>>>> + DD 2756734187,2756734187,2756734187,2756734187 >>>>>>>>=20 >>>>>>>> + DD 3204031479,3204031479,3204031479,3204031479 >>>>>>>>=20 >>>>>>>> + DD 3204031479,3204031479,3204031479,3204031479 >>>>>>>>=20 >>>>>>>> + DD 3329325298,3329325298,3329325298,3329325298 >>>>>>>>=20 >>>>>>>> + DD 3329325298,3329325298,3329325298,3329325298 >>>>>>>>=20 >>>>>>>> +$L$pbswap: >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> +K256_shaext: >>>>>>>>=20 >>>>>>>> + DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 >>>>>>>>=20 >>>>>>>> + DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 >>>>>>>>=20 >>>>>>>> + DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 >>>>>>>>=20 >>>>>>>> + DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 >>>>>>>>=20 >>>>>>>> + DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc >>>>>>>>=20 >>>>>>>> + DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da >>>>>>>>=20 >>>>>>>> + DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 >>>>>>>>=20 >>>>>>>> + DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 >>>>>>>>=20 >>>>>>>> + DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 >>>>>>>>=20 >>>>>>>> + DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 >>>>>>>>=20 >>>>>>>> + DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 >>>>>>>>=20 >>>>>>>> + DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 >>>>>>>>=20 >>>>>>>> + DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 >>>>>>>>=20 >>>>>>>> + DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 >>>>>>>>=20 >>>>>>>> + DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 >>>>>>>>=20 >>>>>>>> + DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 >>>>>>>>=20 >>>>>>>> +DB 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111 >>>>>>>>=20 >>>>>>>> +DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,= 114 >>>>>>>>=20 >>>>>>>> +DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71 >>>>>>>>=20 >>>>>>>> +DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112 >>>>>>>>=20 >>>>>>>> +DB 101,110,115,115,108,46,111,114,103,62,0 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[272+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-24-160))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,20 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha256_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha256_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha256_multi_block wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha256_multi_block_shaext wrt ..ima= gebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha256_multi_block_shaext wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha256_multi_block_shaext wrt ..imag= ebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha256_multi_block: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$body wrt ..imagebase,$L$epilogue wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha256_multi_block_shaext: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$body_shaext wrt ..imagebase,$L$epilogue_shaex= t >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256- >>>>>> x86_64.nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..70e49862a3 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256- >>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,3313 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/sha/asm/sha512-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2005-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> +global sha256_block_data_order >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +sha256_block_data_order: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha256_block_data_order: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r11,[OPENSSL_ia32cap_P] >>>>>>>>=20 >>>>>>>> + mov r9d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + mov r11d,DWORD[8+r11] >>>>>>>>=20 >>>>>>>> + test r11d,536870912 >>>>>>>>=20 >>>>>>>> + jnz NEAR _shaext_shortcut >>>>>>>>=20 >>>>>>>> + test r10d,512 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ssse3_shortcut >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl rdx,4 >>>>>>>>=20 >>>>>>>> + sub rsp,16*4+4*8 >>>>>>>>=20 >>>>>>>> + lea rdx,[rdx*4+rsi] >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+0))+rsp],rdi >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+8))+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+16))+rsp],rdx >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$prologue: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov ebx,DWORD[4+rdi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[12+rdi] >>>>>>>>=20 >>>>>>>> + mov r8d,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + mov r9d,DWORD[20+rdi] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + mov r11d,DWORD[28+rdi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$loop: >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + lea rbp,[K256] >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + mov r14d,eax >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r11d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11d,edi >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[4+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + mov r14d,r11d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r10d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10d,r15d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + mov r14d,r10d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r9d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9d,edi >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[12+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + mov r14d,r9d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r8d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r8d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8d,r15d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + add r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + mov r14d,r8d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,edx >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov edx,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edx,edi >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[20+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + mov r14d,edx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ecx,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ecx,r15d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + mov r14d,ecx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ebx,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[28+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + mov r14d,ebx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov eax,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,r15d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + add eax,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[32+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + mov r14d,eax >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r11d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11d,edi >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[36+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + mov r14d,r11d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r10d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10d,r15d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + mov r14d,r10d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r9d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9d,edi >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[44+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + mov r14d,r9d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r8d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r8d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8d,r15d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + add r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + mov r14d,r8d >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,edx >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov edx,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edx,edi >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[52+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + mov r14d,edx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ecx,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ecx,r15d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[56+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + mov r14d,ecx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ebx,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + add ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,DWORD[60+rsi] >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + mov r14d,ebx >>>>>>>>=20 >>>>>>>> + bswap r12d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov eax,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,r15d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$rounds_16_xx >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$rounds_16_xx: >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add eax,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,eax >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r11d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11d,edi >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r10d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10d,r15d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r9d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9d,edi >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r8d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r8d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8d,r15d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,edx >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov edx,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edx,edi >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add edx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ecx,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ecx,r15d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ebx,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov eax,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,r15d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add eax,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,eax >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[32+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r11d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11d,edi >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[36+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r10d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10d,r15d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[40+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r9d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9d,edi >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[44+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,r8d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov r8d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8d,r15d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[48+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,edx >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov edx,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edx,edi >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add edx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[52+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ecx >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ecx,r8d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ecx,r15d >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,r15d >>>>>>>>=20 >>>>>>>> + ror r15d,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15d,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + mov r14d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r15d,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[56+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r15d,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add r12d,r15d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov ebx,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor ebx,edi >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[4+rbp] >>>>>>>>=20 >>>>>>>> + mov r13d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov edi,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12d,r13d >>>>>>>>=20 >>>>>>>> + ror r13d,11 >>>>>>>>=20 >>>>>>>> + add ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r14d,edi >>>>>>>>=20 >>>>>>>> + ror edi,2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r12d >>>>>>>>=20 >>>>>>>> + shr r12d,3 >>>>>>>>=20 >>>>>>>> + ror r13d,7 >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + shr r14d,10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror edi,17 >>>>>>>>=20 >>>>>>>> + xor r12d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r14d >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + mov r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edi,r10d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[60+rsp],r12d >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and edi,r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + add r12d,eax >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add r12d,edi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + add r12d,DWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + mov eax,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r12d,r13d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,r15d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[20+rbp] >>>>>>>>=20 >>>>>>>> + cmp BYTE[3+rbp],0 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$rounds_16_xx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[((64+0))+rsp] >>>>>>>>=20 >>>>>>>> + add eax,r14d >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add eax,DWORD[rdi] >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[4+rdi] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+rdi] >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[20+rdi] >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[28+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rsi,QWORD[((64+16))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[rdi],eax >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rdi],ebx >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rdi],ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rdi],edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rdi],r8d >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rdi],r9d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rdi],r10d >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rdi],r11d >>>>>>>>=20 >>>>>>>> + jb NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha256_block_data_order: >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +K256: >>>>>>>>=20 >>>>>>>> + DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 >>>>>>>>=20 >>>>>>>> + DD 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 >>>>>>>>=20 >>>>>>>> + DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 >>>>>>>>=20 >>>>>>>> + DD 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 >>>>>>>>=20 >>>>>>>> + DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 >>>>>>>>=20 >>>>>>>> + DD 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 >>>>>>>>=20 >>>>>>>> + DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 >>>>>>>>=20 >>>>>>>> + DD 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 >>>>>>>>=20 >>>>>>>> + DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc >>>>>>>>=20 >>>>>>>> + DD 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc >>>>>>>>=20 >>>>>>>> + DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da >>>>>>>>=20 >>>>>>>> + DD 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da >>>>>>>>=20 >>>>>>>> + DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 >>>>>>>>=20 >>>>>>>> + DD 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 >>>>>>>>=20 >>>>>>>> + DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 >>>>>>>>=20 >>>>>>>> + DD 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 >>>>>>>>=20 >>>>>>>> + DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 >>>>>>>>=20 >>>>>>>> + DD 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 >>>>>>>>=20 >>>>>>>> + DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 >>>>>>>>=20 >>>>>>>> + DD 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 >>>>>>>>=20 >>>>>>>> + DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 >>>>>>>>=20 >>>>>>>> + DD 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 >>>>>>>>=20 >>>>>>>> + DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 >>>>>>>>=20 >>>>>>>> + DD 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 >>>>>>>>=20 >>>>>>>> + DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 >>>>>>>>=20 >>>>>>>> + DD 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 >>>>>>>>=20 >>>>>>>> + DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 >>>>>>>>=20 >>>>>>>> + DD 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 >>>>>>>>=20 >>>>>>>> + DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 >>>>>>>>=20 >>>>>>>> + DD 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 >>>>>>>>=20 >>>>>>>> + DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 >>>>>>>>=20 >>>>>>>> + DD 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f >>>>>>>>=20 >>>>>>>> + DD 0x03020100,0x0b0a0908,0xffffffff,0xffffffff >>>>>>>>=20 >>>>>>>> + DD 0x03020100,0x0b0a0908,0xffffffff,0xffffffff >>>>>>>>=20 >>>>>>>> + DD 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 >>>>>>>>=20 >>>>>>>> + DD 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 >>>>>>>>=20 >>>>>>>> +DB 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 >>>>>>>>=20 >>>>>>>> +DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,5= 4 >>>>>>>>=20 >>>>>>>> +DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 >>>>>>>>=20 >>>>>>>> +DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,= 46 >>>>>>>>=20 >>>>>>>> +DB 111,114,103,62,0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +sha256_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha256_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +_shaext_shortcut: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[((-88))+rsp] >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-80)+rax],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-64)+rax],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-48)+rax],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-32)+rax],xmm9 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(-8-16)+rax],xmm10 >>>>>>>>=20 >>>>>>>> +$L$prologue_shaext: >>>>>>>>=20 >>>>>>>> + lea rcx,[((K256+128))] >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[rdi] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[((512-128))+rcx] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm1,0x1b >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm1,0xb1 >>>>>>>>=20 >>>>>>>> + pshufd xmm2,xmm2,0x1b >>>>>>>>=20 >>>>>>>> + movdqa xmm8,xmm7 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,202,8 >>>>>>>>=20 >>>>>>>> + punpcklqdq xmm2,xmm0 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_shaext: >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm4,XMMWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm5,XMMWORD[32+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,223 >>>>>>>>=20 >>>>>>>> + movdqu xmm6,XMMWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((0-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,231 >>>>>>>>=20 >>>>>>>> + movdqa xmm10,xmm2 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + movdqa xmm9,xmm1 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((32-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,239 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> +DB 15,56,204,220 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((64-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,247 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,253,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((96-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,222 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,254,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((128-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,227 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,251,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,243 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((160-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,252,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,220 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((192-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,253,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((224-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,222 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,254,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((256-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,227 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,251,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,243 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((288-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,252,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,220 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((320-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm6 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,253,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,229 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((352-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm6 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,222 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm3 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,254,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,238 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((384-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm3 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,227 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm4 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,251,4 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm7 >>>>>>>>=20 >>>>>>>> +DB 15,56,204,243 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((416-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> +DB 15,56,205,236 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm5 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,252,4 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((448-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm5 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> +DB 15,56,205,245 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm8 >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqa xmm0,XMMWORD[((480-128))+rcx] >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm6 >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 15,56,203,209 >>>>>>>>=20 >>>>>>>> + pshufd xmm0,xmm0,0x0e >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> + nop >>>>>>>>=20 >>>>>>>> +DB 15,56,203,202 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm10 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm9 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_shaext >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + pshufd xmm2,xmm2,0xb1 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm1,0x1b >>>>>>>>=20 >>>>>>>> + pshufd xmm1,xmm1,0xb1 >>>>>>>>=20 >>>>>>>> + punpckhqdq xmm1,xmm2 >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,215,8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[rdi],xmm1 >>>>>>>>=20 >>>>>>>> + movdqu XMMWORD[16+rdi],xmm2 >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((-8-80))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((-8-64))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((-8-48))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((-8-32))+rax] >>>>>>>>=20 >>>>>>>> + movaps xmm10,XMMWORD[((-8-16))+rax] >>>>>>>>=20 >>>>>>>> + mov rsp,rax >>>>>>>>=20 >>>>>>>> +$L$epilogue_shaext: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha256_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> +sha256_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha256_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$ssse3_shortcut: >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl rdx,4 >>>>>>>>=20 >>>>>>>> + sub rsp,160 >>>>>>>>=20 >>>>>>>> + lea rdx,[rdx*4+rsi] >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+0))+rsp],rdi >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+8))+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[((64+16))+rsp],rdx >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(64+32)+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(64+48)+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(64+64)+rsp],xmm8 >>>>>>>>=20 >>>>>>>> + movaps XMMWORD[(64+80)+rsp],xmm9 >>>>>>>>=20 >>>>>>>> +$L$prologue_ssse3: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov ebx,DWORD[4+rdi] >>>>>>>>=20 >>>>>>>> + mov ecx,DWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + mov edx,DWORD[12+rdi] >>>>>>>>=20 >>>>>>>> + mov r8d,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + mov r9d,DWORD[20+rdi] >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + mov r11d,DWORD[28+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$loop_ssse3 >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$loop_ssse3: >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[((K256+512))] >>>>>>>>=20 >>>>>>>> + movdqu xmm0,XMMWORD[rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm1,XMMWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + movdqu xmm2,XMMWORD[32+rsi] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,199 >>>>>>>>=20 >>>>>>>> + movdqu xmm3,XMMWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + lea rbp,[K256] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,207 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + movdqa xmm5,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,215 >>>>>>>>=20 >>>>>>>> + paddd xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> +DB 102,15,56,0,223 >>>>>>>>=20 >>>>>>>> + movdqa xmm7,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + paddd xmm5,xmm1 >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm2 >>>>>>>>=20 >>>>>>>> + paddd xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm4 >>>>>>>>=20 >>>>>>>> + mov r14d,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm5 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm7 >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ssse3_00_47 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ssse3_00_47: >>>>>>>>=20 >>>>>>>> + sub rbp,-128 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm1 >>>>>>>>=20 >>>>>>>> + mov eax,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r9d >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm3 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,224,4 >>>>>>>>=20 >>>>>>>> + and r12d,r8d >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,250,4 >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + psrld xmm4,3 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + add r11d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add edx,r11d >>>>>>>>=20 >>>>>>>> + psrld xmm6,7 >>>>>>>>=20 >>>>>>>> + add r11d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm3,250 >>>>>>>>=20 >>>>>>>> + add r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + pslld xmm5,14 >>>>>>>>=20 >>>>>>>> + mov r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r8d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + psrld xmm6,11 >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + and r12d,edx >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + pslld xmm5,11 >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r10d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm4 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ecx,r10d >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + add r10d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r14d,r10d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r12d,ecx >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,128 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + psrldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm7 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + add r9d,r13d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm0,80 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ebx,r9d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + add r9d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + mov r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + and r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,8 >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[rbp] >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + pslldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + add r8d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + paddd xmm0,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add eax,r8d >>>>>>>>=20 >>>>>>>> + add r8d,r15d >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm0 >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r14d,r8d >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[rsp],xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm2 >>>>>>>>=20 >>>>>>>> + mov r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm0 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,225,4 >>>>>>>>=20 >>>>>>>> + and r12d,eax >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,251,4 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + psrld xmm4,3 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + add edx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r11d,edx >>>>>>>>=20 >>>>>>>> + psrld xmm6,7 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm0,250 >>>>>>>>=20 >>>>>>>> + add r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + pslld xmm5,14 >>>>>>>>=20 >>>>>>>> + mov edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + psrld xmm6,11 >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + and r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + pslld xmm5,11 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm4 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r10d,ecx >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + add ecx,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r14d,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r12d,r10d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,128 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + psrldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + add ebx,r13d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm1,80 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r9d,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + mov ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r10d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + and r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add eax,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,8 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[32+rbp] >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + pslldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + add eax,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + paddd xmm1,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r8d,eax >>>>>>>>=20 >>>>>>>> + add eax,r15d >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm1 >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r14d,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[16+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm3 >>>>>>>>=20 >>>>>>>> + mov eax,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r9d >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm1 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,226,4 >>>>>>>>=20 >>>>>>>> + and r12d,r8d >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,248,4 >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + psrld xmm4,3 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + add r11d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add edx,r11d >>>>>>>>=20 >>>>>>>> + psrld xmm6,7 >>>>>>>>=20 >>>>>>>> + add r11d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm1,250 >>>>>>>>=20 >>>>>>>> + add r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + pslld xmm5,14 >>>>>>>>=20 >>>>>>>> + mov r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r8d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + psrld xmm6,11 >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + and r12d,edx >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + pslld xmm5,11 >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r10d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm4 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ecx,r10d >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + add r10d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r14d,r10d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r12d,ecx >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,128 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + psrldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + add r9d,r13d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm2,80 >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ebx,r9d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + add r9d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + mov r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + and r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,8 >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[64+rbp] >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + pslldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + add r8d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + paddd xmm2,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add eax,r8d >>>>>>>>=20 >>>>>>>> + add r8d,r15d >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm2 >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r14d,r8d >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[32+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + movdqa xmm4,xmm0 >>>>>>>>=20 >>>>>>>> + mov r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm7,xmm2 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,227,4 >>>>>>>>=20 >>>>>>>> + and r12d,eax >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> +DB 102,15,58,15,249,4 >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm5,xmm4 >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm4 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + psrld xmm4,3 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + add edx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r11d,edx >>>>>>>>=20 >>>>>>>> + psrld xmm6,7 >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm2,250 >>>>>>>>=20 >>>>>>>> + add r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + pslld xmm5,14 >>>>>>>>=20 >>>>>>>> + mov edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + psrld xmm6,11 >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + and r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + pslld xmm5,11 >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm6 >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm5 >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm4 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r10d,ecx >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + add ecx,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r14d,ecx >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r12d,r10d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,128 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + psrldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + add ebx,r13d >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm3,80 >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r9d,ebx >>>>>>>>=20 >>>>>>>> + movdqa xmm6,xmm7 >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + psrld xmm7,10 >>>>>>>>=20 >>>>>>>> + add r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + psrlq xmm6,17 >>>>>>>>=20 >>>>>>>> + mov ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r10d >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + psrlq xmm6,2 >>>>>>>>=20 >>>>>>>> + and r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + pxor xmm7,xmm6 >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + pshufd xmm7,xmm7,8 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + movdqa xmm6,XMMWORD[96+rbp] >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + pslldq xmm7,8 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + add eax,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + paddd xmm3,xmm7 >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r8d,eax >>>>>>>>=20 >>>>>>>> + add eax,r15d >>>>>>>>=20 >>>>>>>> + paddd xmm6,xmm3 >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r14d,eax >>>>>>>>=20 >>>>>>>> + movdqa XMMWORD[48+rsp],xmm6 >>>>>>>>=20 >>>>>>>> + cmp BYTE[131+rbp],0 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$ssse3_00_47 >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov eax,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r12d,r8d >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + add r11d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add edx,r11d >>>>>>>>=20 >>>>>>>> + add r11d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + add r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and r12d,edx >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[4+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + add r10d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ecx,r10d >>>>>>>>=20 >>>>>>>> + add r10d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r14d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r12d,ecx >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + add r9d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ebx,r9d >>>>>>>>=20 >>>>>>>> + add r9d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + add r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[12+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + add r8d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add eax,r8d >>>>>>>>=20 >>>>>>>> + add r8d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r14d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r12d,eax >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + add edx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r11d,edx >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + add r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[20+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + add ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r10d,ecx >>>>>>>>=20 >>>>>>>> + add ecx,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r14d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r12d,r10d >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + add ebx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r9d,ebx >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + add r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add eax,DWORD[28+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + add eax,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r8d,eax >>>>>>>>=20 >>>>>>>> + add eax,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r14d,eax >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov eax,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + and r12d,r8d >>>>>>>>=20 >>>>>>>> + xor r13d,r8d >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,ebx >>>>>>>>=20 >>>>>>>> + add r11d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,eax >>>>>>>>=20 >>>>>>>> + add r11d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add edx,r11d >>>>>>>>=20 >>>>>>>> + add r11d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,edx >>>>>>>>=20 >>>>>>>> + add r14d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r11d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + and r12d,edx >>>>>>>>=20 >>>>>>>> + xor r13d,edx >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[36+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,eax >>>>>>>>=20 >>>>>>>> + add r10d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r11d >>>>>>>>=20 >>>>>>>> + add r10d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ecx,r10d >>>>>>>>=20 >>>>>>>> + add r10d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,ecx >>>>>>>>=20 >>>>>>>> + add r14d,r10d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r10d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + and r12d,ecx >>>>>>>>=20 >>>>>>>> + xor r13d,ecx >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r11d >>>>>>>>=20 >>>>>>>> + add r9d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r10d >>>>>>>>=20 >>>>>>>> + add r9d,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add ebx,r9d >>>>>>>>=20 >>>>>>>> + add r9d,edi >>>>>>>>=20 >>>>>>>> + mov r13d,ebx >>>>>>>>=20 >>>>>>>> + add r14d,r9d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r9d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + and r12d,ebx >>>>>>>>=20 >>>>>>>> + xor r13d,ebx >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[44+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,edx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,r10d >>>>>>>>=20 >>>>>>>> + add r8d,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,r9d >>>>>>>>=20 >>>>>>>> + add r8d,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add eax,r8d >>>>>>>>=20 >>>>>>>> + add r8d,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,eax >>>>>>>>=20 >>>>>>>> + add r14d,r8d >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov r8d,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + and r12d,eax >>>>>>>>=20 >>>>>>>> + xor r13d,eax >>>>>>>>=20 >>>>>>>> + add edx,DWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,r8d >>>>>>>>=20 >>>>>>>> + xor r12d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,r9d >>>>>>>>=20 >>>>>>>> + add edx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,r8d >>>>>>>>=20 >>>>>>>> + add edx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,r9d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r11d,edx >>>>>>>>=20 >>>>>>>> + add edx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r11d >>>>>>>>=20 >>>>>>>> + add r14d,edx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov edx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + and r12d,r11d >>>>>>>>=20 >>>>>>>> + xor r13d,r11d >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[52+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,edx >>>>>>>>=20 >>>>>>>> + xor r12d,ebx >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,r8d >>>>>>>>=20 >>>>>>>> + add ecx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,edx >>>>>>>>=20 >>>>>>>> + add ecx,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,r8d >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r10d,ecx >>>>>>>>=20 >>>>>>>> + add ecx,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r10d >>>>>>>>=20 >>>>>>>> + add r14d,ecx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ecx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + and r12d,r10d >>>>>>>>=20 >>>>>>>> + xor r13d,r10d >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov r15d,ecx >>>>>>>>=20 >>>>>>>> + xor r12d,eax >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor r15d,edx >>>>>>>>=20 >>>>>>>> + add ebx,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and edi,r15d >>>>>>>>=20 >>>>>>>> + xor r14d,ecx >>>>>>>>=20 >>>>>>>> + add ebx,r13d >>>>>>>>=20 >>>>>>>> + xor edi,edx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r9d,ebx >>>>>>>>=20 >>>>>>>> + add ebx,edi >>>>>>>>=20 >>>>>>>> + mov r13d,r9d >>>>>>>>=20 >>>>>>>> + add r14d,ebx >>>>>>>>=20 >>>>>>>> + ror r13d,14 >>>>>>>>=20 >>>>>>>> + mov ebx,r14d >>>>>>>>=20 >>>>>>>> + mov r12d,r10d >>>>>>>>=20 >>>>>>>> + ror r14d,9 >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r13d,5 >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + and r12d,r9d >>>>>>>>=20 >>>>>>>> + xor r13d,r9d >>>>>>>>=20 >>>>>>>> + add eax,DWORD[60+rsp] >>>>>>>>=20 >>>>>>>> + mov edi,ebx >>>>>>>>=20 >>>>>>>> + xor r12d,r11d >>>>>>>>=20 >>>>>>>> + ror r14d,11 >>>>>>>>=20 >>>>>>>> + xor edi,ecx >>>>>>>>=20 >>>>>>>> + add eax,r12d >>>>>>>>=20 >>>>>>>> + ror r13d,6 >>>>>>>>=20 >>>>>>>> + and r15d,edi >>>>>>>>=20 >>>>>>>> + xor r14d,ebx >>>>>>>>=20 >>>>>>>> + add eax,r13d >>>>>>>>=20 >>>>>>>> + xor r15d,ecx >>>>>>>>=20 >>>>>>>> + ror r14d,2 >>>>>>>>=20 >>>>>>>> + add r8d,eax >>>>>>>>=20 >>>>>>>> + add eax,r15d >>>>>>>>=20 >>>>>>>> + mov r13d,r8d >>>>>>>>=20 >>>>>>>> + add r14d,eax >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[((64+0))+rsp] >>>>>>>>=20 >>>>>>>> + mov eax,r14d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add eax,DWORD[rdi] >>>>>>>>=20 >>>>>>>> + lea rsi,[64+rsi] >>>>>>>>=20 >>>>>>>> + add ebx,DWORD[4+rdi] >>>>>>>>=20 >>>>>>>> + add ecx,DWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + add edx,DWORD[12+rdi] >>>>>>>>=20 >>>>>>>> + add r8d,DWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + add r9d,DWORD[20+rdi] >>>>>>>>=20 >>>>>>>> + add r10d,DWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + add r11d,DWORD[28+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rsi,QWORD[((64+16))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov DWORD[rdi],eax >>>>>>>>=20 >>>>>>>> + mov DWORD[4+rdi],ebx >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rdi],ecx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rdi],edx >>>>>>>>=20 >>>>>>>> + mov DWORD[16+rdi],r8d >>>>>>>>=20 >>>>>>>> + mov DWORD[20+rdi],r9d >>>>>>>>=20 >>>>>>>> + mov DWORD[24+rdi],r10d >>>>>>>>=20 >>>>>>>> + mov DWORD[28+rdi],r11d >>>>>>>>=20 >>>>>>>> + jb NEAR $L$loop_ssse3 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + movaps xmm6,XMMWORD[((64+32))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm7,XMMWORD[((64+48))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm8,XMMWORD[((64+64))+rsp] >>>>>>>>=20 >>>>>>>> + movaps xmm9,XMMWORD[((64+80))+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue_ssse3: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha256_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + mov rsi,rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((64+24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + mov QWORD[240+r8],r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$epilogue] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((64+32))+rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,8 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +shaext_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$prologue_shaext] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$epilogue_shaext] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((-8-80))+rax] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,10 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha256_block_data_order wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha256_block_data_order wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha256_block_data_order wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha256_block_data_order_shaext >>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha256_block_data_order_shaext wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha256_block_data_order_shaext wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha256_block_data_order_ssse3 wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha256_block_data_order_ssse3 wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha256_block_data_order_ssse3 wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha256_block_data_order: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue wrt ..imagebase,$L$epilogue wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha256_block_data_order_shaext: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD shaext_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha256_block_data_order_ssse3: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ss= se3 >>>>>>>> wrt ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512- >>>>>> x86_64.nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512-x86_64.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..c6397d4393 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512- >>>> x86_64.nasm >>>>>>>> @@ -0,0 +1,1938 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/sha/asm/sha512-x86_64.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2005-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_ia32cap_P >>>>>>>>=20 >>>>>>>> +global sha512_block_data_order >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +sha512_block_data_order: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_sha512_block_data_order: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + mov rsi,rdx >>>>>>>>=20 >>>>>>>> + mov rdx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + shl rdx,4 >>>>>>>>=20 >>>>>>>> + sub rsp,16*8+4*8 >>>>>>>>=20 >>>>>>>> + lea rdx,[rdx*8+rsi] >>>>>>>>=20 >>>>>>>> + and rsp,-64 >>>>>>>>=20 >>>>>>>> + mov QWORD[((128+0))+rsp],rdi >>>>>>>>=20 >>>>>>>> + mov QWORD[((128+8))+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[((128+16))+rsp],rdx >>>>>>>>=20 >>>>>>>> + mov QWORD[152+rsp],rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$prologue: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[rdi] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + mov rcx,QWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[40+rdi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+rdi] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$loop: >>>>>>>>=20 >>>>>>>> + mov rdi,rbx >>>>>>>>=20 >>>>>>>> + lea rbp,[K512] >>>>>>>>=20 >>>>>>>> + xor rdi,rcx >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r8 >>>>>>>>=20 >>>>>>>> + mov r14,rax >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + and r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r11 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rax >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rbx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r11,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11,rdi >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add r11,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rdx >>>>>>>>=20 >>>>>>>> + mov r14,r11 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + and rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r10 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r11 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rax >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10,r15 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add r10,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rcx >>>>>>>>=20 >>>>>>>> + mov r14,r10 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + and r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r9 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r10 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r11 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r9,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9,rdi >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add r9,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[24+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rbx >>>>>>>>=20 >>>>>>>> + mov r14,r9 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[24+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + and rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r8 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r9 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r10 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r8,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8,r15 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add r8,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[32+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rax >>>>>>>>=20 >>>>>>>> + mov r14,r8 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + and r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rdx >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r8 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r9 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdx,rdi >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add rdx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r11 >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + and rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rcx >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rdx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r8 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rcx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rcx,r15 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add rcx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[48+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r10 >>>>>>>>=20 >>>>>>>> + mov r14,rcx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + and r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rbx >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rcx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rdx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rbx,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rbx,rdi >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add rbx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[56+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r9 >>>>>>>>=20 >>>>>>>> + mov r14,rbx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + and rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rax >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rbx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rcx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rax,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,r15 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add rax,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[64+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r8 >>>>>>>>=20 >>>>>>>> + mov r14,rax >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[64+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + and r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r11 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rax >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rbx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r11,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11,rdi >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add r11,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[72+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rdx >>>>>>>>=20 >>>>>>>> + mov r14,r11 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[72+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + and rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r10 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r11 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rax >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10,r15 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add r10,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[80+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rcx >>>>>>>>=20 >>>>>>>> + mov r14,r10 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[80+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + and r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r9 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r10 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r11 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r9,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9,rdi >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add r9,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[88+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rbx >>>>>>>>=20 >>>>>>>> + mov r14,r9 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + and rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r8 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r9 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r10 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r8,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8,r15 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add r8,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[96+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,rax >>>>>>>>=20 >>>>>>>> + mov r14,r8 >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[96+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + and r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rdx >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r8 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r9 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdx,rdi >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add rdx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[104+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r11 >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[104+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + and rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rcx >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rdx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r8 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rcx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rcx,r15 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + add rcx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[112+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r10 >>>>>>>>=20 >>>>>>>> + mov r14,rcx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[112+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + and r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rbx >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rcx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rdx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rbx,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rbx,rdi >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + add rbx,r14 >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[120+rsi] >>>>>>>>=20 >>>>>>>> + mov r13,r9 >>>>>>>>=20 >>>>>>>> + mov r14,rbx >>>>>>>>=20 >>>>>>>> + bswap r12 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[120+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + and rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rax >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rbx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rcx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rax,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,r15 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$rounds_16_xx >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$rounds_16_xx: >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rax,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[72+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,rax >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + and r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r11 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rax >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rbx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r11,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11,rdi >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[120+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r11,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,r11 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + and rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r10 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r11 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rax >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10,r15 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r10,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,r10 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + and r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r9 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r10 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r11 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r9,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9,rdi >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r9,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,r9 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[24+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + and rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r8 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r9 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r10 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r8,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8,r15 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r8,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[104+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,r8 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + and r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rdx >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r8 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r9 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdx,rdi >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rdx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + and rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rcx >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rdx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r8 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rcx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rcx,r15 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rcx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[120+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,rcx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + and r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rbx >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rcx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rdx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rbx,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rbx,rdi >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rbx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,rbx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + and rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rax >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rbx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rcx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rax,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,r15 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[72+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rax,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,rax >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[64+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + and r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r11 >>>>>>>>=20 >>>>>>>> + xor r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r8 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rax >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rbx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r11,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r11,rdi >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r11,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[72+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,r11 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[72+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + and rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r10 >>>>>>>>=20 >>>>>>>> + xor rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rdx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r11 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rax >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r10,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r10,r15 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r10,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[24+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,r10 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[80+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + and r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r9 >>>>>>>>=20 >>>>>>>> + xor r15,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rcx >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r10 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r11 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r9,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r9,rdi >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[72+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r9,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[32+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,r9 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[88+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + and rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,r8 >>>>>>>>=20 >>>>>>>> + xor rdi,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rbx >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,r9 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r10 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov r8,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r8,r15 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[104+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[80+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add r8,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[40+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,r8 >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[96+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + and r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rdx >>>>>>>>=20 >>>>>>>> + xor r15,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,rax >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,r8 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,r9 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rdx,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdx,rdi >>>>>>>>=20 >>>>>>>> + add r11,r12 >>>>>>>>=20 >>>>>>>> + add rdx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[88+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rdx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[48+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[104+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,rdx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[104+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + and rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rcx >>>>>>>>=20 >>>>>>>> + xor rdi,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r11 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rdx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,r8 >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rcx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rcx,r15 >>>>>>>>=20 >>>>>>>> + add r10,r12 >>>>>>>>=20 >>>>>>>> + add rcx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[120+rsp] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[96+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rcx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,r15 >>>>>>>>=20 >>>>>>>> + ror r15,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r15,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor r15,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[56+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[112+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + mov r14,rcx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov r15,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[112+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + and r15,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rbx >>>>>>>>=20 >>>>>>>> + xor r15,rax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r10 >>>>>>>>=20 >>>>>>>> + add r12,r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,rcx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r15,rdx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rbx,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and rdi,r15 >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rbx,rdi >>>>>>>>=20 >>>>>>>> + add r9,r12 >>>>>>>>=20 >>>>>>>> + add rbx,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[8+rbp] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[rsp] >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[104+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,r13 >>>>>>>>=20 >>>>>>>> + ror r13,7 >>>>>>>>=20 >>>>>>>> + add rbx,r14 >>>>>>>>=20 >>>>>>>> + mov r14,rdi >>>>>>>>=20 >>>>>>>> + ror rdi,42 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r12 >>>>>>>>=20 >>>>>>>> + shr r12,7 >>>>>>>>=20 >>>>>>>> + ror r13,1 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + shr r14,6 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror rdi,19 >>>>>>>>=20 >>>>>>>> + xor r12,r13 >>>>>>>>=20 >>>>>>>> + xor rdi,r14 >>>>>>>>=20 >>>>>>>> + add r12,QWORD[64+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add r12,QWORD[120+rsp] >>>>>>>>=20 >>>>>>>> + mov r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + mov r14,rbx >>>>>>>>=20 >>>>>>>> + ror r13,23 >>>>>>>>=20 >>>>>>>> + mov rdi,r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + ror r14,5 >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[120+rsp],r12 >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + and rdi,r9 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r13,4 >>>>>>>>=20 >>>>>>>> + add r12,rax >>>>>>>>=20 >>>>>>>> + xor rdi,r11 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + ror r14,6 >>>>>>>>=20 >>>>>>>> + xor r13,r9 >>>>>>>>=20 >>>>>>>> + add r12,rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,rbx >>>>>>>>=20 >>>>>>>> + add r12,QWORD[rbp] >>>>>>>>=20 >>>>>>>> + xor r14,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rdi,rcx >>>>>>>>=20 >>>>>>>> + ror r13,14 >>>>>>>>=20 >>>>>>>> + mov rax,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and r15,rdi >>>>>>>>=20 >>>>>>>> + ror r14,28 >>>>>>>>=20 >>>>>>>> + add r12,r13 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,r15 >>>>>>>>=20 >>>>>>>> + add r8,r12 >>>>>>>>=20 >>>>>>>> + add rax,r12 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rbp,[24+rbp] >>>>>>>>=20 >>>>>>>> + cmp BYTE[7+rbp],0 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$rounds_16_xx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[((128+0))+rsp] >>>>>>>>=20 >>>>>>>> + add rax,r14 >>>>>>>>=20 >>>>>>>> + lea rsi,[128+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + add rax,QWORD[rdi] >>>>>>>>=20 >>>>>>>> + add rbx,QWORD[8+rdi] >>>>>>>>=20 >>>>>>>> + add rcx,QWORD[16+rdi] >>>>>>>>=20 >>>>>>>> + add rdx,QWORD[24+rdi] >>>>>>>>=20 >>>>>>>> + add r8,QWORD[32+rdi] >>>>>>>>=20 >>>>>>>> + add r9,QWORD[40+rdi] >>>>>>>>=20 >>>>>>>> + add r10,QWORD[48+rdi] >>>>>>>>=20 >>>>>>>> + add r11,QWORD[56+rdi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp rsi,QWORD[((128+16))+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov QWORD[rdi],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rdi],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rdi],rcx >>>>>>>>=20 >>>>>>>> + mov QWORD[24+rdi],rdx >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rdi],r8 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rdi],r9 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rdi],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rdi],r11 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$loop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[152+rsp] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsp,[rsi] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$epilogue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_sha512_block_data_order: >>>>>>>>=20 >>>>>>>> +ALIGN 64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +K512: >>>>>>>>=20 >>>>>>>> + DQ 0x428a2f98d728ae22,0x7137449123ef65cd >>>>>>>>=20 >>>>>>>> + DQ 0x428a2f98d728ae22,0x7137449123ef65cd >>>>>>>>=20 >>>>>>>> + DQ 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc >>>>>>>>=20 >>>>>>>> + DQ 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc >>>>>>>>=20 >>>>>>>> + DQ 0x3956c25bf348b538,0x59f111f1b605d019 >>>>>>>>=20 >>>>>>>> + DQ 0x3956c25bf348b538,0x59f111f1b605d019 >>>>>>>>=20 >>>>>>>> + DQ 0x923f82a4af194f9b,0xab1c5ed5da6d8118 >>>>>>>>=20 >>>>>>>> + DQ 0x923f82a4af194f9b,0xab1c5ed5da6d8118 >>>>>>>>=20 >>>>>>>> + DQ 0xd807aa98a3030242,0x12835b0145706fbe >>>>>>>>=20 >>>>>>>> + DQ 0xd807aa98a3030242,0x12835b0145706fbe >>>>>>>>=20 >>>>>>>> + DQ 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 >>>>>>>>=20 >>>>>>>> + DQ 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 >>>>>>>>=20 >>>>>>>> + DQ 0x72be5d74f27b896f,0x80deb1fe3b1696b1 >>>>>>>>=20 >>>>>>>> + DQ 0x72be5d74f27b896f,0x80deb1fe3b1696b1 >>>>>>>>=20 >>>>>>>> + DQ 0x9bdc06a725c71235,0xc19bf174cf692694 >>>>>>>>=20 >>>>>>>> + DQ 0x9bdc06a725c71235,0xc19bf174cf692694 >>>>>>>>=20 >>>>>>>> + DQ 0xe49b69c19ef14ad2,0xefbe4786384f25e3 >>>>>>>>=20 >>>>>>>> + DQ 0xe49b69c19ef14ad2,0xefbe4786384f25e3 >>>>>>>>=20 >>>>>>>> + DQ 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 >>>>>>>>=20 >>>>>>>> + DQ 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 >>>>>>>>=20 >>>>>>>> + DQ 0x2de92c6f592b0275,0x4a7484aa6ea6e483 >>>>>>>>=20 >>>>>>>> + DQ 0x2de92c6f592b0275,0x4a7484aa6ea6e483 >>>>>>>>=20 >>>>>>>> + DQ 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 >>>>>>>>=20 >>>>>>>> + DQ 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 >>>>>>>>=20 >>>>>>>> + DQ 0x983e5152ee66dfab,0xa831c66d2db43210 >>>>>>>>=20 >>>>>>>> + DQ 0x983e5152ee66dfab,0xa831c66d2db43210 >>>>>>>>=20 >>>>>>>> + DQ 0xb00327c898fb213f,0xbf597fc7beef0ee4 >>>>>>>>=20 >>>>>>>> + DQ 0xb00327c898fb213f,0xbf597fc7beef0ee4 >>>>>>>>=20 >>>>>>>> + DQ 0xc6e00bf33da88fc2,0xd5a79147930aa725 >>>>>>>>=20 >>>>>>>> + DQ 0xc6e00bf33da88fc2,0xd5a79147930aa725 >>>>>>>>=20 >>>>>>>> + DQ 0x06ca6351e003826f,0x142929670a0e6e70 >>>>>>>>=20 >>>>>>>> + DQ 0x06ca6351e003826f,0x142929670a0e6e70 >>>>>>>>=20 >>>>>>>> + DQ 0x27b70a8546d22ffc,0x2e1b21385c26c926 >>>>>>>>=20 >>>>>>>> + DQ 0x27b70a8546d22ffc,0x2e1b21385c26c926 >>>>>>>>=20 >>>>>>>> + DQ 0x4d2c6dfc5ac42aed,0x53380d139d95b3df >>>>>>>>=20 >>>>>>>> + DQ 0x4d2c6dfc5ac42aed,0x53380d139d95b3df >>>>>>>>=20 >>>>>>>> + DQ 0x650a73548baf63de,0x766a0abb3c77b2a8 >>>>>>>>=20 >>>>>>>> + DQ 0x650a73548baf63de,0x766a0abb3c77b2a8 >>>>>>>>=20 >>>>>>>> + DQ 0x81c2c92e47edaee6,0x92722c851482353b >>>>>>>>=20 >>>>>>>> + DQ 0x81c2c92e47edaee6,0x92722c851482353b >>>>>>>>=20 >>>>>>>> + DQ 0xa2bfe8a14cf10364,0xa81a664bbc423001 >>>>>>>>=20 >>>>>>>> + DQ 0xa2bfe8a14cf10364,0xa81a664bbc423001 >>>>>>>>=20 >>>>>>>> + DQ 0xc24b8b70d0f89791,0xc76c51a30654be30 >>>>>>>>=20 >>>>>>>> + DQ 0xc24b8b70d0f89791,0xc76c51a30654be30 >>>>>>>>=20 >>>>>>>> + DQ 0xd192e819d6ef5218,0xd69906245565a910 >>>>>>>>=20 >>>>>>>> + DQ 0xd192e819d6ef5218,0xd69906245565a910 >>>>>>>>=20 >>>>>>>> + DQ 0xf40e35855771202a,0x106aa07032bbd1b8 >>>>>>>>=20 >>>>>>>> + DQ 0xf40e35855771202a,0x106aa07032bbd1b8 >>>>>>>>=20 >>>>>>>> + DQ 0x19a4c116b8d2d0c8,0x1e376c085141ab53 >>>>>>>>=20 >>>>>>>> + DQ 0x19a4c116b8d2d0c8,0x1e376c085141ab53 >>>>>>>>=20 >>>>>>>> + DQ 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 >>>>>>>>=20 >>>>>>>> + DQ 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 >>>>>>>>=20 >>>>>>>> + DQ 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb >>>>>>>>=20 >>>>>>>> + DQ 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb >>>>>>>>=20 >>>>>>>> + DQ 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 >>>>>>>>=20 >>>>>>>> + DQ 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 >>>>>>>>=20 >>>>>>>> + DQ 0x748f82ee5defb2fc,0x78a5636f43172f60 >>>>>>>>=20 >>>>>>>> + DQ 0x748f82ee5defb2fc,0x78a5636f43172f60 >>>>>>>>=20 >>>>>>>> + DQ 0x84c87814a1f0ab72,0x8cc702081a6439ec >>>>>>>>=20 >>>>>>>> + DQ 0x84c87814a1f0ab72,0x8cc702081a6439ec >>>>>>>>=20 >>>>>>>> + DQ 0x90befffa23631e28,0xa4506cebde82bde9 >>>>>>>>=20 >>>>>>>> + DQ 0x90befffa23631e28,0xa4506cebde82bde9 >>>>>>>>=20 >>>>>>>> + DQ 0xbef9a3f7b2c67915,0xc67178f2e372532b >>>>>>>>=20 >>>>>>>> + DQ 0xbef9a3f7b2c67915,0xc67178f2e372532b >>>>>>>>=20 >>>>>>>> + DQ 0xca273eceea26619c,0xd186b8c721c0c207 >>>>>>>>=20 >>>>>>>> + DQ 0xca273eceea26619c,0xd186b8c721c0c207 >>>>>>>>=20 >>>>>>>> + DQ 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 >>>>>>>>=20 >>>>>>>> + DQ 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 >>>>>>>>=20 >>>>>>>> + DQ 0x06f067aa72176fba,0x0a637dc5a2c898a6 >>>>>>>>=20 >>>>>>>> + DQ 0x06f067aa72176fba,0x0a637dc5a2c898a6 >>>>>>>>=20 >>>>>>>> + DQ 0x113f9804bef90dae,0x1b710b35131c471b >>>>>>>>=20 >>>>>>>> + DQ 0x113f9804bef90dae,0x1b710b35131c471b >>>>>>>>=20 >>>>>>>> + DQ 0x28db77f523047d84,0x32caab7b40c72493 >>>>>>>>=20 >>>>>>>> + DQ 0x28db77f523047d84,0x32caab7b40c72493 >>>>>>>>=20 >>>>>>>> + DQ 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c >>>>>>>>=20 >>>>>>>> + DQ 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c >>>>>>>>=20 >>>>>>>> + DQ 0x4cc5d4becb3e42b6,0x597f299cfc657e2a >>>>>>>>=20 >>>>>>>> + DQ 0x4cc5d4becb3e42b6,0x597f299cfc657e2a >>>>>>>>=20 >>>>>>>> + DQ 0x5fcb6fab3ad6faec,0x6c44198c4a475817 >>>>>>>>=20 >>>>>>>> + DQ 0x5fcb6fab3ad6faec,0x6c44198c4a475817 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + DQ 0x0001020304050607,0x08090a0b0c0d0e0f >>>>>>>>=20 >>>>>>>> + DQ 0x0001020304050607,0x08090a0b0c0d0e0f >>>>>>>>=20 >>>>>>>> +DB 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97 >>>>>>>>=20 >>>>>>>> +DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,5= 4 >>>>>>>>=20 >>>>>>>> +DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121 >>>>>>>>=20 >>>>>>>> +DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,= 46 >>>>>>>>=20 >>>>>>>> +DB 111,114,103,62,0 >>>>>>>>=20 >>>>>>>> +EXTERN __imp_RtlVirtualUnwind >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +se_handler: >>>>>>>>=20 >>>>>>>> + push rsi >>>>>>>>=20 >>>>>>>> + push rdi >>>>>>>>=20 >>>>>>>> + push rbx >>>>>>>>=20 >>>>>>>> + push rbp >>>>>>>>=20 >>>>>>>> + push r12 >>>>>>>>=20 >>>>>>>> + push r13 >>>>>>>>=20 >>>>>>>> + push r14 >>>>>>>>=20 >>>>>>>> + push r15 >>>>>>>>=20 >>>>>>>> + pushfq >>>>>>>>=20 >>>>>>>> + sub rsp,64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[120+r8] >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[248+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[8+r9] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[56+r9] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[152+r8] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,DWORD[4+r11] >>>>>>>>=20 >>>>>>>> + lea r10,[r10*1+rsi] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + mov rsi,rax >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[((128+24))+rax] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rbx,QWORD[((-8))+rax] >>>>>>>>=20 >>>>>>>> + mov rbp,QWORD[((-16))+rax] >>>>>>>>=20 >>>>>>>> + mov r12,QWORD[((-24))+rax] >>>>>>>>=20 >>>>>>>> + mov r13,QWORD[((-32))+rax] >>>>>>>>=20 >>>>>>>> + mov r14,QWORD[((-40))+rax] >>>>>>>>=20 >>>>>>>> + mov r15,QWORD[((-48))+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[144+r8],rbx >>>>>>>>=20 >>>>>>>> + mov QWORD[160+r8],rbp >>>>>>>>=20 >>>>>>>> + mov QWORD[216+r8],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[224+r8],r13 >>>>>>>>=20 >>>>>>>> + mov QWORD[232+r8],r14 >>>>>>>>=20 >>>>>>>> + mov QWORD[240+r8],r15 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea r10,[$L$epilogue] >>>>>>>>=20 >>>>>>>> + cmp rbx,r10 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$in_prologue >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + lea rsi,[((128+32))+rsi] >>>>>>>>=20 >>>>>>>> + lea rdi,[512+r8] >>>>>>>>=20 >>>>>>>> + mov ecx,12 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$in_prologue: >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rax] >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rax] >>>>>>>>=20 >>>>>>>> + mov QWORD[152+r8],rax >>>>>>>>=20 >>>>>>>> + mov QWORD[168+r8],rsi >>>>>>>>=20 >>>>>>>> + mov QWORD[176+r8],rdi >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[40+r9] >>>>>>>>=20 >>>>>>>> + mov rsi,r8 >>>>>>>>=20 >>>>>>>> + mov ecx,154 >>>>>>>>=20 >>>>>>>> + DD 0xa548f3fc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rsi,r9 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + mov rdx,QWORD[8+rsi] >>>>>>>>=20 >>>>>>>> + mov r8,QWORD[rsi] >>>>>>>>=20 >>>>>>>> + mov r9,QWORD[16+rsi] >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[40+rsi] >>>>>>>>=20 >>>>>>>> + lea r11,[56+rsi] >>>>>>>>=20 >>>>>>>> + lea r12,[24+rsi] >>>>>>>>=20 >>>>>>>> + mov QWORD[32+rsp],r10 >>>>>>>>=20 >>>>>>>> + mov QWORD[40+rsp],r11 >>>>>>>>=20 >>>>>>>> + mov QWORD[48+rsp],r12 >>>>>>>>=20 >>>>>>>> + mov QWORD[56+rsp],rcx >>>>>>>>=20 >>>>>>>> + call QWORD[__imp_RtlVirtualUnwind] >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + add rsp,64 >>>>>>>>=20 >>>>>>>> + popfq >>>>>>>>=20 >>>>>>>> + pop r15 >>>>>>>>=20 >>>>>>>> + pop r14 >>>>>>>>=20 >>>>>>>> + pop r13 >>>>>>>>=20 >>>>>>>> + pop r12 >>>>>>>>=20 >>>>>>>> + pop rbp >>>>>>>>=20 >>>>>>>> + pop rbx >>>>>>>>=20 >>>>>>>> + pop rdi >>>>>>>>=20 >>>>>>>> + pop rsi >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .pdata rdata align=3D4 >>>>>>>>=20 >>>>>>>> +ALIGN 4 >>>>>>>>=20 >>>>>>>> + DD $L$SEH_begin_sha512_block_data_order wrt ..image= base >>>>>>>>=20 >>>>>>>> + DD $L$SEH_end_sha512_block_data_order wrt ..imageba= se >>>>>>>>=20 >>>>>>>> + DD $L$SEH_info_sha512_block_data_order wrt ..imageb= ase >>>>>>>>=20 >>>>>>>> +section .xdata rdata align=3D8 >>>>>>>>=20 >>>>>>>> +ALIGN 8 >>>>>>>>=20 >>>>>>>> +$L$SEH_info_sha512_block_data_order: >>>>>>>>=20 >>>>>>>> +DB 9,0,0,0 >>>>>>>>=20 >>>>>>>> + DD se_handler wrt ..imagebase >>>>>>>>=20 >>>>>>>> + DD $L$prologue wrt ..imagebase,$L$epilogue wrt >>>>> ..imagebase >>>>>>>>=20 >>>>>>>> diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.= nasm >>>>>>>> b/CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.nasm >>>>>>>> new file mode 100644 >>>>>>>> index 0000000000..2a3d5bcf72 >>>>>>>> --- /dev/null >>>>>>>> +++ b/CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.nasm >>>>>>>> @@ -0,0 +1,491 @@ >>>>>>>> +; WARNING: do not edit! >>>>>>>>=20 >>>>>>>> +; Generated from openssl/crypto/x86_64cpuid.pl >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Copyright 2005-2020 The OpenSSL Project Authors. All Rights >>>>> Reserved. >>>>>>>>=20 >>>>>>>> +; >>>>>>>>=20 >>>>>>>> +; Licensed under the OpenSSL license (the "License"). You may n= ot use >>>>>>>>=20 >>>>>>>> +; this file except in compliance with the License. You can obta= in a >>>>> copy >>>>>>>>=20 >>>>>>>> +; in the file LICENSE in the source distribution or at >>>>>>>>=20 >>>>>>>> +; https://www.openssl.org/source/license.html >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +default rel >>>>>>>>=20 >>>>>>>> +%define XMMWORD >>>>>>>>=20 >>>>>>>> +%define YMMWORD >>>>>>>>=20 >>>>>>>> +%define ZMMWORD >>>>>>>>=20 >>>>>>>> +EXTERN OPENSSL_cpuid_setup >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .CRT$XCU rdata align=3D8 >>>>>>>>=20 >>>>>>>> + DQ OPENSSL_cpuid_setup >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +common OPENSSL_ia32cap_P 16 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +section .text code align=3D64 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_atomic_add >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_atomic_add: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,DWORD[rcx] >>>>>>>>=20 >>>>>>>> +$L$spin: lea r8,[rax*1+rdx] >>>>>>>>=20 >>>>>>>> +DB 0xf0 >>>>>>>>=20 >>>>>>>> + cmpxchg DWORD[rcx],r8d >>>>>>>>=20 >>>>>>>> + jne NEAR $L$spin >>>>>>>>=20 >>>>>>>> + mov eax,r8d >>>>>>>>=20 >>>>>>>> +DB 0x48,0x98 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_rdtsc >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_rdtsc: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + rdtsc >>>>>>>>=20 >>>>>>>> + shl rdx,32 >>>>>>>>=20 >>>>>>>> + or rax,rdx >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_ia32_cpuid >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_ia32_cpuid: >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rdi ;WIN64 prologue >>>>>>>>=20 >>>>>>>> + mov QWORD[16+rsp],rsi >>>>>>>>=20 >>>>>>>> + mov rax,rsp >>>>>>>>=20 >>>>>>>> +$L$SEH_begin_OPENSSL_ia32_cpuid: >>>>>>>>=20 >>>>>>>> + mov rdi,rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r8,rbx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rdi],rax >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + mov r11d,eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor eax,eax >>>>>>>>=20 >>>>>>>> + cmp ebx,0x756e6547 >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + mov r9d,eax >>>>>>>>=20 >>>>>>>> + cmp edx,0x49656e69 >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + or r9d,eax >>>>>>>>=20 >>>>>>>> + cmp ecx,0x6c65746e >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + or r9d,eax >>>>>>>>=20 >>>>>>>> + jz NEAR $L$intel >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp ebx,0x68747541 >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + cmp edx,0x69746E65 >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + or r10d,eax >>>>>>>>=20 >>>>>>>> + cmp ecx,0x444D4163 >>>>>>>>=20 >>>>>>>> + setne al >>>>>>>>=20 >>>>>>>> + or r10d,eax >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$intel >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,0x80000000 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + cmp eax,0x80000001 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$intel >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + mov eax,0x80000001 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + or r9d,ecx >>>>>>>>=20 >>>>>>>> + and r9d,0x00000801 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp r10d,0x80000008 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$intel >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,0x80000008 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + movzx r10,cl >>>>>>>>=20 >>>>>>>> + inc r10 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + bt edx,28 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$generic >>>>>>>>=20 >>>>>>>> + shr ebx,16 >>>>>>>>=20 >>>>>>>> + cmp bl,r10b >>>>>>>>=20 >>>>>>>> + ja NEAR $L$generic >>>>>>>>=20 >>>>>>>> + and edx,0xefffffff >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$generic >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$intel: >>>>>>>>=20 >>>>>>>> + cmp r11d,4 >>>>>>>>=20 >>>>>>>> + mov r10d,-1 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$nocacheinfo >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov eax,4 >>>>>>>>=20 >>>>>>>> + mov ecx,0 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + mov r10d,eax >>>>>>>>=20 >>>>>>>> + shr r10d,14 >>>>>>>>=20 >>>>>>>> + and r10d,0xfff >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$nocacheinfo: >>>>>>>>=20 >>>>>>>> + mov eax,1 >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + movd xmm0,eax >>>>>>>>=20 >>>>>>>> + and edx,0xbfefffff >>>>>>>>=20 >>>>>>>> + cmp r9d,0 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$notintel >>>>>>>>=20 >>>>>>>> + or edx,0x40000000 >>>>>>>>=20 >>>>>>>> + and ah,15 >>>>>>>>=20 >>>>>>>> + cmp ah,15 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$notP4 >>>>>>>>=20 >>>>>>>> + or edx,0x00100000 >>>>>>>>=20 >>>>>>>> +$L$notP4: >>>>>>>>=20 >>>>>>>> + cmp ah,6 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$notintel >>>>>>>>=20 >>>>>>>> + and eax,0x0fff0ff0 >>>>>>>>=20 >>>>>>>> + cmp eax,0x00050670 >>>>>>>>=20 >>>>>>>> + je NEAR $L$knights >>>>>>>>=20 >>>>>>>> + cmp eax,0x00080650 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$notintel >>>>>>>>=20 >>>>>>>> +$L$knights: >>>>>>>>=20 >>>>>>>> + and ecx,0xfbffffff >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$notintel: >>>>>>>>=20 >>>>>>>> + bt edx,28 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$generic >>>>>>>>=20 >>>>>>>> + and edx,0xefffffff >>>>>>>>=20 >>>>>>>> + cmp r10d,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$generic >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + or edx,0x10000000 >>>>>>>>=20 >>>>>>>> + shr ebx,16 >>>>>>>>=20 >>>>>>>> + cmp bl,1 >>>>>>>>=20 >>>>>>>> + ja NEAR $L$generic >>>>>>>>=20 >>>>>>>> + and edx,0xefffffff >>>>>>>>=20 >>>>>>>> +$L$generic: >>>>>>>>=20 >>>>>>>> + and r9d,0x00000800 >>>>>>>>=20 >>>>>>>> + and ecx,0xfffff7ff >>>>>>>>=20 >>>>>>>> + or r9d,ecx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10d,edx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + cmp r11d,7 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$no_extended_info >>>>>>>>=20 >>>>>>>> + mov eax,7 >>>>>>>>=20 >>>>>>>> + xor ecx,ecx >>>>>>>>=20 >>>>>>>> + cpuid >>>>>>>>=20 >>>>>>>> + bt r9d,26 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$notknights >>>>>>>>=20 >>>>>>>> + and ebx,0xfff7ffff >>>>>>>>=20 >>>>>>>> +$L$notknights: >>>>>>>>=20 >>>>>>>> + movd eax,xmm0 >>>>>>>>=20 >>>>>>>> + and eax,0x0fff0ff0 >>>>>>>>=20 >>>>>>>> + cmp eax,0x00050650 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$notskylakex >>>>>>>>=20 >>>>>>>> + and ebx,0xfffeffff >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$notskylakex: >>>>>>>>=20 >>>>>>>> + mov DWORD[8+rdi],ebx >>>>>>>>=20 >>>>>>>> + mov DWORD[12+rdi],ecx >>>>>>>>=20 >>>>>>>> +$L$no_extended_info: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + bt r9d,27 >>>>>>>>=20 >>>>>>>> + jnc NEAR $L$clear_avx >>>>>>>>=20 >>>>>>>> + xor ecx,ecx >>>>>>>>=20 >>>>>>>> +DB 0x0f,0x01,0xd0 >>>>>>>>=20 >>>>>>>> + and eax,0xe6 >>>>>>>>=20 >>>>>>>> + cmp eax,0xe6 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done >>>>>>>>=20 >>>>>>>> + and DWORD[8+rdi],0x3fdeffff >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + and eax,6 >>>>>>>>=20 >>>>>>>> + cmp eax,6 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done >>>>>>>>=20 >>>>>>>> +$L$clear_avx: >>>>>>>>=20 >>>>>>>> + mov eax,0xefffe7ff >>>>>>>>=20 >>>>>>>> + and r9d,eax >>>>>>>>=20 >>>>>>>> + mov eax,0x3fdeffdf >>>>>>>>=20 >>>>>>>> + and DWORD[8+rdi],eax >>>>>>>>=20 >>>>>>>> +$L$done: >>>>>>>>=20 >>>>>>>> + shl r9,32 >>>>>>>>=20 >>>>>>>> + mov eax,r10d >>>>>>>>=20 >>>>>>>> + mov rbx,r8 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + or rax,r9 >>>>>>>>=20 >>>>>>>> + mov rdi,QWORD[8+rsp] ;WIN64 epilogue >>>>>>>>=20 >>>>>>>> + mov rsi,QWORD[16+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$SEH_end_OPENSSL_ia32_cpuid: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_cleanse >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_cleanse: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + cmp rdx,15 >>>>>>>>=20 >>>>>>>> + jae NEAR $L$ot >>>>>>>>=20 >>>>>>>> + cmp rdx,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$ret >>>>>>>>=20 >>>>>>>> +$L$ittle: >>>>>>>>=20 >>>>>>>> + mov BYTE[rcx],al >>>>>>>>=20 >>>>>>>> + sub rdx,1 >>>>>>>>=20 >>>>>>>> + lea rcx,[1+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$ittle >>>>>>>>=20 >>>>>>>> +$L$ret: >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$ot: >>>>>>>>=20 >>>>>>>> + test rcx,7 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$aligned >>>>>>>>=20 >>>>>>>> + mov BYTE[rcx],al >>>>>>>>=20 >>>>>>>> + lea rdx,[((-1))+rdx] >>>>>>>>=20 >>>>>>>> + lea rcx,[1+rcx] >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$ot >>>>>>>>=20 >>>>>>>> +$L$aligned: >>>>>>>>=20 >>>>>>>> + mov QWORD[rcx],rax >>>>>>>>=20 >>>>>>>> + lea rdx,[((-8))+rdx] >>>>>>>>=20 >>>>>>>> + test rdx,-8 >>>>>>>>=20 >>>>>>>> + lea rcx,[8+rcx] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$aligned >>>>>>>>=20 >>>>>>>> + cmp rdx,0 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$ittle >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global CRYPTO_memcmp >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +CRYPTO_memcmp: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + xor r10,r10 >>>>>>>>=20 >>>>>>>> + cmp r8,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$no_data >>>>>>>>=20 >>>>>>>> + cmp r8,16 >>>>>>>>=20 >>>>>>>> + jne NEAR $L$oop_cmp >>>>>>>>=20 >>>>>>>> + mov r10,QWORD[rcx] >>>>>>>>=20 >>>>>>>> + mov r11,QWORD[8+rcx] >>>>>>>>=20 >>>>>>>> + mov r8,1 >>>>>>>>=20 >>>>>>>> + xor r10,QWORD[rdx] >>>>>>>>=20 >>>>>>>> + xor r11,QWORD[8+rdx] >>>>>>>>=20 >>>>>>>> + or r10,r11 >>>>>>>>=20 >>>>>>>> + cmovnz rax,r8 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop_cmp: >>>>>>>>=20 >>>>>>>> + mov r10b,BYTE[rcx] >>>>>>>>=20 >>>>>>>> + lea rcx,[1+rcx] >>>>>>>>=20 >>>>>>>> + xor r10b,BYTE[rdx] >>>>>>>>=20 >>>>>>>> + lea rdx,[1+rdx] >>>>>>>>=20 >>>>>>>> + or al,r10b >>>>>>>>=20 >>>>>>>> + dec r8 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_cmp >>>>>>>>=20 >>>>>>>> + neg rax >>>>>>>>=20 >>>>>>>> + shr rax,63 >>>>>>>>=20 >>>>>>>> +$L$no_data: >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_wipe_cpu >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_wipe_cpu: >>>>>>>>=20 >>>>>>>> + pxor xmm0,xmm0 >>>>>>>>=20 >>>>>>>> + pxor xmm1,xmm1 >>>>>>>>=20 >>>>>>>> + pxor xmm2,xmm2 >>>>>>>>=20 >>>>>>>> + pxor xmm3,xmm3 >>>>>>>>=20 >>>>>>>> + pxor xmm4,xmm4 >>>>>>>>=20 >>>>>>>> + pxor xmm5,xmm5 >>>>>>>>=20 >>>>>>>> + xor rcx,rcx >>>>>>>>=20 >>>>>>>> + xor rdx,rdx >>>>>>>>=20 >>>>>>>> + xor r8,r8 >>>>>>>>=20 >>>>>>>> + xor r9,r9 >>>>>>>>=20 >>>>>>>> + xor r10,r10 >>>>>>>>=20 >>>>>>>> + xor r11,r11 >>>>>>>>=20 >>>>>>>> + lea rax,[8+rsp] >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_instrument_bus >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_instrument_bus: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10,rcx >>>>>>>>=20 >>>>>>>> + mov rcx,rdx >>>>>>>>=20 >>>>>>>> + mov r11,rdx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + rdtsc >>>>>>>>=20 >>>>>>>> + mov r8d,eax >>>>>>>>=20 >>>>>>>> + mov r9d,0 >>>>>>>>=20 >>>>>>>> + clflush [r10] >>>>>>>>=20 >>>>>>>> +DB 0xf0 >>>>>>>>=20 >>>>>>>> + add DWORD[r10],r9d >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$oop: rdtsc >>>>>>>>=20 >>>>>>>> + mov edx,eax >>>>>>>>=20 >>>>>>>> + sub eax,r8d >>>>>>>>=20 >>>>>>>> + mov r8d,edx >>>>>>>>=20 >>>>>>>> + mov r9d,eax >>>>>>>>=20 >>>>>>>> + clflush [r10] >>>>>>>>=20 >>>>>>>> +DB 0xf0 >>>>>>>>=20 >>>>>>>> + add DWORD[r10],eax >>>>>>>>=20 >>>>>>>> + lea r10,[4+r10] >>>>>>>>=20 >>>>>>>> + sub rcx,1 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov rax,r11 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_instrument_bus2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_instrument_bus2: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r10,rcx >>>>>>>>=20 >>>>>>>> + mov rcx,rdx >>>>>>>>=20 >>>>>>>> + mov r11,r8 >>>>>>>>=20 >>>>>>>> + mov QWORD[8+rsp],rcx >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + rdtsc >>>>>>>>=20 >>>>>>>> + mov r8d,eax >>>>>>>>=20 >>>>>>>> + mov r9d,0 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + clflush [r10] >>>>>>>>=20 >>>>>>>> +DB 0xf0 >>>>>>>>=20 >>>>>>>> + add DWORD[r10],r9d >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + rdtsc >>>>>>>>=20 >>>>>>>> + mov edx,eax >>>>>>>>=20 >>>>>>>> + sub eax,r8d >>>>>>>>=20 >>>>>>>> + mov r8d,edx >>>>>>>>=20 >>>>>>>> + mov r9d,eax >>>>>>>>=20 >>>>>>>> +$L$oop2: >>>>>>>>=20 >>>>>>>> + clflush [r10] >>>>>>>>=20 >>>>>>>> +DB 0xf0 >>>>>>>>=20 >>>>>>>> + add DWORD[r10],eax >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + sub r11,1 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + rdtsc >>>>>>>>=20 >>>>>>>> + mov edx,eax >>>>>>>>=20 >>>>>>>> + sub eax,r8d >>>>>>>>=20 >>>>>>>> + mov r8d,edx >>>>>>>>=20 >>>>>>>> + cmp eax,r9d >>>>>>>>=20 >>>>>>>> + mov r9d,eax >>>>>>>>=20 >>>>>>>> + mov edx,0 >>>>>>>>=20 >>>>>>>> + setne dl >>>>>>>>=20 >>>>>>>> + sub rcx,rdx >>>>>>>>=20 >>>>>>>> + lea r10,[rdx*4+r10] >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop2 >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done2: >>>>>>>>=20 >>>>>>>> + mov rax,QWORD[8+rsp] >>>>>>>>=20 >>>>>>>> + sub rax,rcx >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_ia32_rdrand_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_ia32_rdrand_bytes: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + cmp rdx,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done_rdrand_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r11,8 >>>>>>>>=20 >>>>>>>> +$L$oop_rdrand_bytes: >>>>>>>>=20 >>>>>>>> +DB 73,15,199,242 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$break_rdrand_bytes >>>>>>>>=20 >>>>>>>> + dec r11 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_rdrand_bytes >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$done_rdrand_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$break_rdrand_bytes: >>>>>>>>=20 >>>>>>>> + cmp rdx,8 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$tail_rdrand_bytes >>>>>>>>=20 >>>>>>>> + mov QWORD[rcx],r10 >>>>>>>>=20 >>>>>>>> + lea rcx,[8+rcx] >>>>>>>>=20 >>>>>>>> + add rax,8 >>>>>>>>=20 >>>>>>>> + sub rdx,8 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done_rdrand_bytes >>>>>>>>=20 >>>>>>>> + mov r11,8 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_rdrand_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$tail_rdrand_bytes: >>>>>>>>=20 >>>>>>>> + mov BYTE[rcx],r10b >>>>>>>>=20 >>>>>>>> + lea rcx,[1+rcx] >>>>>>>>=20 >>>>>>>> + inc rax >>>>>>>>=20 >>>>>>>> + shr r10,8 >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$tail_rdrand_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_rdrand_bytes: >>>>>>>>=20 >>>>>>>> + xor r10,r10 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +global OPENSSL_ia32_rdseed_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +OPENSSL_ia32_rdseed_bytes: >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + xor rax,rax >>>>>>>>=20 >>>>>>>> + cmp rdx,0 >>>>>>>>=20 >>>>>>>> + je NEAR $L$done_rdseed_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + mov r11,8 >>>>>>>>=20 >>>>>>>> +$L$oop_rdseed_bytes: >>>>>>>>=20 >>>>>>>> +DB 73,15,199,250 >>>>>>>>=20 >>>>>>>> + jc NEAR $L$break_rdseed_bytes >>>>>>>>=20 >>>>>>>> + dec r11 >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$oop_rdseed_bytes >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$done_rdseed_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$break_rdseed_bytes: >>>>>>>>=20 >>>>>>>> + cmp rdx,8 >>>>>>>>=20 >>>>>>>> + jb NEAR $L$tail_rdseed_bytes >>>>>>>>=20 >>>>>>>> + mov QWORD[rcx],r10 >>>>>>>>=20 >>>>>>>> + lea rcx,[8+rcx] >>>>>>>>=20 >>>>>>>> + add rax,8 >>>>>>>>=20 >>>>>>>> + sub rdx,8 >>>>>>>>=20 >>>>>>>> + jz NEAR $L$done_rdseed_bytes >>>>>>>>=20 >>>>>>>> + mov r11,8 >>>>>>>>=20 >>>>>>>> + jmp NEAR $L$oop_rdseed_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +ALIGN 16 >>>>>>>>=20 >>>>>>>> +$L$tail_rdseed_bytes: >>>>>>>>=20 >>>>>>>> + mov BYTE[rcx],r10b >>>>>>>>=20 >>>>>>>> + lea rcx,[1+rcx] >>>>>>>>=20 >>>>>>>> + inc rax >>>>>>>>=20 >>>>>>>> + shr r10,8 >>>>>>>>=20 >>>>>>>> + dec rdx >>>>>>>>=20 >>>>>>>> + jnz NEAR $L$tail_rdseed_bytes >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> +$L$done_rdseed_bytes: >>>>>>>>=20 >>>>>>>> + xor r10,r10 >>>>>>>>=20 >>>>>>>> + DB 0F3h,0C3h ;repret >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> + >>>>>>>>=20 >>>>>>>> -- >>>>>>>> 2.28.0.windows.1 >=20 >=20 >=20 --Apple-Mail=_CF94D665-A9A8-46A7-9B3A-463F28816A39 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii Sean,
<= br class=3D"">
I agree it is reasonable to think hard = about adding extra dependencies to building. 
Seems Perl is very popular in Openssl:
/Volum= es/Case/edk2(master)>find . -in= ame '*.pl' | wc -l
= &nbs= p;    283

=
Thanks,

Andrew Fish

On Aug 18, 2020, at 2:33 PM, Sean <= ;spbrogan@outlook.com> wrote:

<= div class=3D"">Mike,

I am not technically a ba= setool maintainer but as an active user/dev in basetools, i would be oppose= d to bringing in perl as an edk2 dependency. Also introducing another langu= age is counter to the goal of aligning on python and improving the python u= sed within edk2.  From my perspective the openssl config case isn't st= rong enough to counter the above goal. In fact as you know we are trying to= change the paradigm for Crypto/OpenSSL with the Crypto Driver (
= https://github.com/tianocore/edk2/tree/master/CryptoPkg/Driver) and Bas= eCryptLibOnProtocolPpi (https://githu= b.com/tianocore/edk2/tree/master/CryptoPkg/Library/BaseCryptLibOnProtocolPp= i) work so that everyday development doesn't need to compile openssl in= their edk2 builds.

So I support leaving it as= is which means if you have to change something in openssl config you deal = with it and a special one off.

Just my 2 cents= .

Thanks
Sean


On 8/18/2020 9:15 AM, Michael D Kinney wrote:
Jian,
I want = the BaseTools maintainers to evaluate these build requirements.
We already have a number of tool dependencies.  Adding one more for= perl
may be acceptable.
Mike
-----Original Message-----
= From: Wang, Jian J <= jian.j.wang@intel.com>
Sent: Monday, August 17, 2020 7= :37 PM
To: Zurcher, Christopher J <christopher.j.zurcher@intel.com&= gt;; Yao, Jiewen <jie= wen.yao@intel.com>; Kinney, Michael D
<michael.d.kinney@intel.com= >; devel@edk2.groups.= io
Cc: Lu, XiaoyuX <xiaoyux.lu@intel.com>; Ard Biesheuvel <ard.biesheuvel@linaro.org= >
Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Co= mmit the auto-generated assembly files for X64

I agree with Christopher. Currently manual works are inevitable in openssl= upgrade,
because perl script is used to automate part of cod= e generation. It's hard to ask
Windows developers to install = an extra interpreter like perl, considering it's not
popular = in Windows environment.

Regards,
Jian

---= --Original Message-----
From: Zurcher, Christopher J <christopher.j.zur= cher@intel.com>
Sent: Saturday, August 15, 2020 3:35 A= M
To: Yao, Jiewen <jiewen.yao@intel.com>; Kinney, Michael D
&= lt;michael.d.kinne= y@intel.com>; dev= el@edk2.groups.io
Cc: Wang, Jian J <jian.j.wang@intel.com>; Lu, Xiaoyu= X <xiaoyux.lu@intel.c= om>;
Ard Biesheuvel <ard.biesheuvel@linaro.org>
S= ubject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-generated<= br class=3D"">assembly files for X64

The curre= nt OpenSSL "UEFI" configuration depends on the OpenSSL build
= happening in a Unix-like environment. For a Windows-based build, this must = be
done in a wrapper such as Cygwin/git bash or WSL. Integrat= ing the OpenSSL
config step into the build process is a non-t= rivial change.

That means, whenever we upgrade the openssl, we need manually
generate
them again.
Any step by step, = or readme to tell us how to do that?

The process for generating these X64 files is= virtually identical to the already-
existing maintainer proc= ess for OpensslLib, with only one additional argument
require= d to process_files.pl.

OpensslLib as it exists= today in EDK2 already includes auto-generated files from
the= Perl configure process. If we want to re-architect how we include OpenSSL<= br class=3D"">into EDK2, I think that should be done in a different patch s= et. Additionally, such
a large task might be a waste of time = with the release of OpenSSL 3 happening
later this year. They= are making changes to their build system, and I think that if
we are going to re-architect our side of it, we should wait until we are = adopting
OpenSSL 3.

--
Christopher Zurcher

-----Original Message-----
From: Yao, Jiewe= n <jiewen.yao@intel.c= om>
Sent: Thursday, August 13, 2020 08:46
To: Kinney, Michael D <michael.d.kinney@intel.com>; Zurcher, Christopher J
<c= hristopher.j.zurcher@intel.com>; devel@edk2.groups.io
Cc: Wang, Jian J <= ;jian.j.wang@intel.com<= /a>>; Lu, XiaoyuX
<xiaoyux.lu@intel.com>;
Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-
generated
assembly files for X64

Thank you M= ike to help on this.

I also believe that the b= est option is to integrate the auto-gen process in
base tool.=



-----Original Message-----
From: Kinney= , Michael D <mi= chael.d.kinney@intel.com>
Sent: Thursday, August 13, 2= 020 11:38 PM
To: Yao, Jiewen <jiewen.yao@intel.com>; Zurcher, Christopher J=
<christopher.j.zurcher@intel.com>; devel@edk2.groups.io; Kinney, Michael
D
<michael.d.kinney@intel.com>
Cc: Wang, Jian J <jian.j.wang@intel.com>; Lu, XiaoyuX
<xiaoyux.lu@intel.c= om>;
Ard Biesheuv= el <ard.biesheuv= el@linaro.org>
Subject: RE: [PATCH v2 2/2] CryptoPkg/O= pensslLib: Commit the auto-
generat= ed
assembly files for X64

Hi Jiew= en,

For this use case, generating the files as= part of the build process would
add
a dependency in pearl.

Based on other recent CryptoPkg changes and some being dis= cussed in BZ, I
am
seeing more changes to the OpenSLL .pl configuration = files, and I am
concerned
that based on platform requirements, we may ne= ed to build OpenSSL with
different .pl config file settings w= hich would also add a pearl dependency
to the build.

So exploring what it would take to add the pearl depe= ndency to the build
system
is worth exploring and if successful would el= iminate the need to checkin
these
=
types of autogenerated files.  Th= is would also reduce maintenance of the
auto-genererated file= s when EDK II moves to a new version of OpenSSL.

@Cristopher - Can you please share a branch that uses pearl to generate = the
files
instead of checking them in?  I = would like the BaseTools maintainers to
review
that and evaluate adding = the pearl dependency.  Hopefully, we can make the
pearl = dependency detectable so it is only required if the build requires
it.
=
Thanks,

Mike

-----Original Message-----<= br class=3D"">From: Yao, Jiewen <jiewen.yao@intel.com>
Sent: Thursday, Augu= st 13, 2020 8:25 AM
To: Zurcher, Christopher J <christopher.j.zurcher@i= ntel.com>;
devel@edk2.groups.io
Cc: Wang, Jian J <jian.j.wang@intel.com>; Lu, X= iaoyuX
<xiaoyux.lu@intel.com>; Kinney, Mic= hael D
<michael.d.kin= ney@intel.com>; Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: RE: [PATCH v2 2/2] CryptoPkg/OpensslLib: Commit the auto-
generated assembly files for X64

+ Mike Kinney

I am not sure if it is a right way to check in auto-gener= ated file.
That means, whenever we upgrade the openssl, we ne= ed manually
generate
them again.
= Any step by step, or readme to tell us how to do that?

Mike, would you please double confirm what is the right way for au= to-
generated file in EDKII?


-----Original Message-----
From: Zurc= her, Christopher J <christopher.j.zurcher@intel.com>
Sent: Tuesd= ay, August 4, 2020 8:24 AM
To: devel@edk2.groups.io
Cc: Yao, Jiewen= <jiewen.yao@intel.co= m>; Wang, Jian J
<jian.j.wang@intel.com>= ;
Lu, XiaoyuX <xiaoyux.lu@intel.com>; Ard Biesheuvel
<ard.biesheuvel@linaro.org>
Subject: [PATCH v2 2/2] Cr= yptoPkg/OpensslLib: Commit the auto-
generated
assembly files for X64
BZ: https://bugzilla.tianocore.org/show_bug.cg= i?id=3D2507

Adding the auto-generated asse= mbly files for the X64 architecture.

Cc: Jiewe= n Yao <jiewen.yao@int= el.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: X= iaoyu Lu <xiaoyux.lu@= intel.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Christopher J Zurcher <christopher.j.zurcher@intel.com>= ;
---
 CryptoPkg/Library/OpensslLib/X64/c= rypto/aes/aesni-mb-x86_64.nasm
|
=
732
+++
&n= bsp;CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm
|
1916 ++++++++
 CryptoPkg/Library/OpensslLib/X64/crypto= /aes/aesni-sha256-
x86_64.nasm |
=
<= blockquote type=3D"cite" class=3D"">78 +
 CryptoPkg/Lib= rary/OpensslLib/X64/crypto/aes/aesni-x86_64.nasm     &n= bsp;  |
5103
++++++++++++++++++++
 CryptoPkg/Library/OpensslLib/X64= /crypto/aes/vpaes-x86_64.nasm        |
1173
+++++
 CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash-x86_64.na= sm
|
1569 ++++++
 CryptoPkg/Library/OpensslLib/X64/c= rypto/sha/sha1-mb-x86_64.nasm
|
<= blockquote type=3D"cite" class=3D"">3137
++++++++++++
 CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm =         |
2884
+++++++++++
 CryptoPkg= /Library/OpensslLib/X64/crypto/sha/sha256-mb-x86_64.nasm
|
3461 ++++++++= +++++
 CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha2= 56-x86_64.nasm
|
3313
+++++++++++++
 = CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512-x86_64.nasm
|
1938
++++++++
 CryptoPkg/Library/OpensslLib/X64/= crypto/x86_64cpuid.nasm         &nb= sp;   |
491
++
&n= bsp;12 files changed, 25795 insertions(+)

diff= --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb-
x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb-
x86_64.nasm
new file mode 100644
index= 0000000000..1a3ed1dd35
--- /dev/null
+++ b/Cry= ptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb-
x86_64.nasm
@@ -0,0 += 1,732 @@
+; WARNING: do not edit!

+; Generated from openssl/crypto/aes/asm/aesni-mb-x86_64.pl

+;

+; Copyright 2013-2020 The = OpenSSL Project Authors. All Rights
Reserved.
=
<= br class=3D"">+;

+; Licensed under the OpenSSL= license (the "License").  You may not use

+; this file except in compliance with the License.  You can obtain = a
copy
<= blockquote type=3D"cite" class=3D"">

+; in the file LICENSE in= the source distribution or at

+; https://www.openssl.= org/source/license.html

+
+default rel

+%define XMMWORD

+%define YMMWORD

+%d= efine ZMMWORD

+section .text code align=3D64
+

+
=
+EXTERN  OPENSSL_ia32cap_P

+

+global  aesni_multi_cbc_encrypt

+

+ALIGN   3= 2

+aesni_multi_cbc_encrypt:

+        mov   &nbs= p; QWORD[8+rsp],rdi        ;WIN64 p= rologue

+       =  mov     QWORD[16+rsp],rsi

+        mov    &n= bsp;rax,rsp

+$L$SEH_begin_aesni_multi_cbc_encr= ypt:

+       &nb= sp;mov     rdi,rcx

+  = ;      mov     rsi,rdx
+        mov =     rdx,r8

+

+

+

+        mov     = rax,rsp

+

+  = ;      push    rbx

+

+     =    push    rbp

+=

+        p= ush    r12

+

+        push   &nb= sp;r13

+

+  =       push    r14

+

+     &= nbsp;  push    r15

+<= br class=3D"">
+        le= a     rsp,[((-168))+rsp]

+=        movaps  XMMWORD[rsp],xmm6
+        mov= aps  XMMWORD[16+rsp],xmm7

+   &= nbsp;    movaps  XMMWORD[32+rsp],xmm8

+        movaps  X= MMWORD[48+rsp],xmm9

+     =    movaps  XMMWORD[64+rsp],xmm10

+        movaps  XMMWORD[80+= rsp],xmm11

+      &nb= sp; movaps  XMMWORD[96+rsp],xmm12

+ =        movaps  XMMWORD[(-104)+rax],= xmm13

+       &n= bsp;movaps  XMMWORD[(-88)+rax],xmm14

+ &n= bsp;      movaps  XMMWORD[(-72)+rax],xmm= 15

+

+

+

+

+

+

+ &n= bsp;      sub     rsp,48<= br class=3D"">
+        an= d     rsp,-64

+  &nbs= p;     mov     QWORD[16+rsp],r= ax

+

+

+$L$enc4x_body:

+  =       movdqu  xmm12,XMMWORD[rsi]

+        lea  = ;   rsi,[120+rsi]

+   = ;     lea     rdi,[80+rdi]

+

+$L$enc4x_loop_gra= nde:

+       &nb= sp;mov     DWORD[24+rsp],edx

+        xor     = edx,edx

+       =  mov     ecx,DWORD[((-64))+rdi]

+        mov   &nbs= p; r8,QWORD[((-80))+rdi]

+   &n= bsp;    cmp     ecx,edx

+        mov  &nb= sp;  r12,QWORD[((-72))+rdi]

+  =       cmovg   edx,ecx

+        test  &nbs= p; ecx,ecx

+     &nbs= p;  movdqu  xmm2,XMMWORD[((-56))+rdi]

+        mov    &n= bsp;DWORD[32+rsp],ecx

+    &nbs= p;   cmovle  r8,rsp

+ &nbs= p;      mov     ecx,DWORD= [((-24))+rdi]

+      =   mov     r9,QWORD[((-40))+rdi]

+        cmp   = ;  ecx,edx

+     = ;   mov     r13,QWORD[((-32))+rdi]

+        cmovg &= nbsp; edx,ecx

+     &= nbsp;  test    ecx,ecx

+        movdqu  xmm3,XMMWORD[((-= 16))+rdi]

+      &nbs= p; mov     DWORD[36+rsp],ecx

+        cmovle  r9,rsp

+        mov &= nbsp;   ecx,DWORD[16+rdi]

+ &nb= sp;      mov     r10,QWOR= D[rdi]

+       &= nbsp;cmp     ecx,edx

+ &nb= sp;      mov     r14,QWOR= D[8+rdi]

+       = ; cmovg   edx,ecx

+   = ;     test    ecx,ecx

+        movdqu  xm= m4,XMMWORD[24+rdi]

+     &= nbsp;  mov     DWORD[40+rsp],ecx

+        cmovle  r= 10,rsp

+       &= nbsp;mov     ecx,DWORD[56+rdi]

+        mov    &n= bsp;r11,QWORD[40+rdi]

+    &nbs= p;   cmp     ecx,edx

+        mov    = ; r15,QWORD[48+rdi]

+    &= nbsp;   cmovg   edx,ecx

+        test    ecx,e= cx

+        = ;movdqu  xmm5,XMMWORD[64+rdi]

+  &nb= sp;     mov     DWORD[44+rsp],= ecx

+       &nbs= p;cmovle  r11,rsp

+    &nb= sp;   test    edx,edx

+        jz    &nb= sp; NEAR $L$enc4x_done

+
+        movups  xmm1,= XMMWORD[((16-120))+rsi]

+    &n= bsp;   pxor    xmm2,xmm12

+        movups  xmm0,XMM= WORD[((32-120))+rsi]

+     = ;   pxor    xmm3,xmm12

+        mov    &n= bsp;eax,DWORD[((240-120))+rsi]

+   &= nbsp;    pxor    xmm4,xmm12

+        movdqu  x= mm6,XMMWORD[r8]

+     &nbs= p;  pxor    xmm5,xmm12

+        movdqu  xmm7,XMMWORD[r9]=

+        p= xor    xmm2,xmm6

+   =      movdqu  xmm8,XMMWORD[r10]
=
+        pxor   = ; xmm3,xmm7

+     &nb= sp;  movdqu  xmm9,XMMWORD[r11]

= +        pxor    xmm4,xmm= 8

+        = pxor    xmm5,xmm9

+   = ;     movdqa  xmm10,XMMWORD[32+rsp]

+        xor  = ;   rbx,rbx

+    = ;    jmp     NEAR $L$oop_enc4x

+

+ALIGN   = 32

+$L$oop_enc4x:

+        add     rb= x,16

+       &nb= sp;lea     rbp,[16+rsp]

+ =        mov     ecx,1=

+        s= ub     rbp,rbx

+

+DB      102,15,56,220,209
+        pre= fetcht0      [31+rbx*1+r8]

+        prefetcht0   &= nbsp;  [31+rbx*1+r9]

+DB   = ;   102,15,56,220,217

+  &= nbsp;     prefetcht0      = ;[31+rbx*1+r10]

+     &nbs= p;  prefetcht0      [31+rbx*1+r10]

+DB      102,15,56,220,225=

+DB      102,15,56,2= 20,233

+       &= nbsp;movups  xmm1,XMMWORD[((48-120))+rsi]

+        cmp     ec= x,DWORD[32+rsp]

+DB     &n= bsp;102,15,56,220,208

+DB    &n= bsp; 102,15,56,220,216

+DB   &n= bsp;  102,15,56,220,224

+  &nbs= p;     cmovge  r8,rbp

+        cmovg   r12,rb= p

+DB      102,15,56,= 220,232

+       =  movups  xmm0,XMMWORD[((-56))+rsi]

+=        cmp     ecx,= DWORD[36+rsp]

+DB     &nbs= p;102,15,56,220,209

+DB    &nbs= p; 102,15,56,220,217

+DB   &nbs= p;  102,15,56,220,225

+   =      cmovge  r9,rbp

+        cmovg   r13,rb= p

+DB      102,15,56,= 220,233

+       =  movups  xmm1,XMMWORD[((-40))+rsi]

+=        cmp     ecx,= DWORD[40+rsp]

+DB     &nbs= p;102,15,56,220,208

+DB    &nbs= p; 102,15,56,220,216

+DB   &nbs= p;  102,15,56,220,224

+   =      cmovge  r10,rbp

+        cmovg   r14,rb= p

+DB      102,15,56,= 220,232

+       =  movups  xmm0,XMMWORD[((-24))+rsi]

+=        cmp     ecx,= DWORD[44+rsp]

+DB     &nbs= p;102,15,56,220,209

+DB    &nbs= p; 102,15,56,220,217

+DB   &nbs= p;  102,15,56,220,225

+   =      cmovge  r11,rbp

+        cmovg   r15,rb= p

+DB      102,15,56,= 220,233

+       =  movups  xmm1,XMMWORD[((-8))+rsi]

+ =        movdqa  xmm11,xmm10

+DB      102,15,56,220,208
+        pre= fetcht0      [15+rbx*1+r12]

+        prefetcht0   &= nbsp;  [15+rbx*1+r13]

+DB  &nbs= p;   102,15,56,220,216

+  =       prefetcht0     &nbs= p;[15+rbx*1+r14]

+     &nb= sp;  prefetcht0      [15+rbx*1+r15]

+DB      102,15,56,220,22= 4

+DB      102,15,56,= 220,232

+       =  movups  xmm0,XMMWORD[((128-120))+rsi]

+        pxor    xmm12= ,xmm12

+

+DB &nbs= p;    102,15,56,220,209

+ =        pcmpgtd xmm11,xmm12

+        movdqu  xm= m12,XMMWORD[((-120))+rsi]

+DB   &nbs= p;  102,15,56,220,217

+   =      paddd   xmm10,xmm11
<= br class=3D"">+        movdqa  XMMW= ORD[32+rsp],xmm10

+DB     =  102,15,56,220,225

+DB    =   102,15,56,220,233

+   &n= bsp;    movups  xmm1,XMMWORD[((144-120))+rsi]

+

+    = ;    cmp     eax,11
<= br class=3D"">+

+DB     &n= bsp;102,15,56,220,208

+DB    &n= bsp; 102,15,56,220,216

+DB   &n= bsp;  102,15,56,220,224

+DB  &n= bsp;   102,15,56,220,232

+ &nbs= p;      movups  xmm0,XMMWORD[((160-120))= +rsi]

+

+  &= nbsp;     jb      NEAR $L= $enc4x_tail

+

+DB=      102,15,56,220,209

+DB      102,15,56,220,217

+DB      102,15,56,220,225
=
+DB      102,15,56,220,233

+        movups &n= bsp;xmm1,XMMWORD[((176-120))+rsi]

+

+DB      102,15,56,220,208
+DB      102,15,56,220= ,216

+DB      102,15,= 56,220,224

+DB      1= 02,15,56,220,232

+     &nb= sp;  movups  xmm0,XMMWORD[((192-120))+rsi]
+

+      =   je      NEAR $L$enc4x_tail

+

+DB    &nbs= p; 102,15,56,220,209

+DB   &nbs= p;  102,15,56,220,217

+DB  &nbs= p;   102,15,56,220,225

+DB &nbs= p;    102,15,56,220,233

+ =        movups  xmm1,XMMWORD[((208-1= 20))+rsi]

+

+DB &= nbsp;    102,15,56,220,208

+DB      102,15,56,220,216

+DB      102,15,56,220,224
+DB      102,15,56,220,232

+        movups &n= bsp;xmm0,XMMWORD[((224-120))+rsi]

+  &nbs= p;     jmp     NEAR $L$enc4x_t= ail

+

+ALIGN &nbs= p; 32

+$L$enc4x_tail:

+DB      102,15,56,220,209

+DB      102,15,56,220,217

+DB      102,15,56,220,225
+DB      102,15,56,220= ,233

+       &nb= sp;movdqu  xmm6,XMMWORD[rbx*1+r8]

+  = ;      movdqu  xmm1,XMMWORD[((16-120))+r= si]

+

+DB  &= nbsp;   102,15,56,221,208

+ &nb= sp;      movdqu  xmm7,XMMWORD[rbx*1+r9]<= br class=3D"">
+        px= or    xmm6,xmm12

+DB  &nbs= p;   102,15,56,221,216

+  =       movdqu  xmm8,XMMWORD[rbx*1+r10]
+        pxor=    xmm7,xmm12

+DB   =    102,15,56,221,224

+  &n= bsp;     movdqu  xmm9,XMMWORD[rbx*1+r11]

+        pxor &= nbsp;  xmm8,xmm12

+DB   &n= bsp;  102,15,56,221,232

+  &nbs= p;     movdqu  xmm0,XMMWORD[((32-120))+rsi]
+        pxo= r    xmm9,xmm12

+

+        movups  XM= MWORD[(-16)+rbx*1+r12],xmm2

+   &nbs= p;    pxor    xmm2,xmm6
+        movups  XMMWO= RD[(-16)+rbx*1+r13],xmm3

+    &= nbsp;   pxor    xmm3,xmm7

+        movups  XMMWORD[= (-16)+rbx*1+r14],xmm4

+    &nbs= p;   pxor    xmm4,xmm8

+        movups  XMMWORD[(-1= 6)+rbx*1+r15],xmm5

+     &= nbsp;  pxor    xmm5,xmm9

+

+       = ; dec     edx

+  = ;      jnz     NEAR $L$oo= p_enc4x

+

+  = ;      mov     rax,QWORD[= 16+rsp]

+

+  = ;      mov     edx,DWORD[= 24+rsp]

+

+

+

+

+

+

+<= br class=3D"">
+

+

+

+     &n= bsp;  lea     rdi,[160+rdi]
+        dec   &nb= sp; edx

+      &= nbsp; jnz     NEAR $L$enc4x_loop_grande

+

+$L$enc4x_done:

+        movaps &= nbsp;xmm6,XMMWORD[((-216))+rax]

+   =      movaps  xmm7,XMMWORD[((-200))+rax]

+        movaps =  xmm8,XMMWORD[((-184))+rax]

+   = ;     movaps  xmm9,XMMWORD[((-168))+rax]

+        movaps=  xmm10,XMMWORD[((-152))+rax]

+  &nb= sp;     movaps  xmm11,XMMWORD[((-136))+rax]
+        mov= aps  xmm12,XMMWORD[((-120))+rax]

+

+

+

+        mov    = ; r15,QWORD[((-48))+rax]

+
=
+        mov   =   r14,QWORD[((-40))+rax]

+

+        mov  = ;   r13,QWORD[((-32))+rax]

+
+        mov =     r12,QWORD[((-24))+rax]

+

+        = ;mov     rbp,QWORD[((-16))+rax]

+

+       = ; mov     rbx,QWORD[((-8))+rax]

+

+      &= nbsp; lea     rsp,[rax]

+

+$L$enc4x_epilogue:

+        mov    &= nbsp;rdi,QWORD[8+rsp]        ;WIN64 epil= ogue

+       &nb= sp;mov     rsi,QWORD[16+rsp]

+        DB     &= nbsp;0F3h,0C3h           =     ;repret

+

+$L$SEH_end_aesni_multi_cbc_encrypt:

+

+global  aesni_multi_cbc_decryp= t

+

+ALIGN  =  32

+aesni_multi_cbc_decrypt:

+        mov  &nb= sp;  QWORD[8+rsp],rdi        ;= WIN64 prologue

+      = ;  mov     QWORD[16+rsp],rsi
+        mov   &n= bsp; rax,rsp

+$L$SEH_begin_aesni_multi_cb= c_decrypt:

+      &nb= sp; mov     rdi,rcx

+=        mov     rsi,= rdx

+       &nbs= p;mov     rdx,r8

+

+

+

+        mov    =  rax,rsp

+

+=        push    rbx

+

+    =     push    rbp

+

+       = ; push    r12

+

+        push &nbs= p;  r13

+

+        push    r14
+

+   &n= bsp;    push    r15

+

+      &nb= sp; lea     rsp,[((-168))+rsp]

+        movaps  XMMWORD[= rsp],xmm6

+      &nbs= p; movaps  XMMWORD[16+rsp],xmm7

+ &n= bsp;      movaps  XMMWORD[32+rsp],xmm8
+        mov= aps  XMMWORD[48+rsp],xmm9

+   &= nbsp;    movaps  XMMWORD[64+rsp],xmm10

+        movaps  = XMMWORD[80+rsp],xmm11

+    &nbs= p;   movaps  XMMWORD[96+rsp],xmm12

+        movaps  XMMWORD[(= -104)+rax],xmm13

+     &nb= sp;  movaps  XMMWORD[(-88)+rax],xmm14

+        movaps  XMMWORD[(-7= 2)+rax],xmm15

+

+=

+

+

+

+

+        sub    &n= bsp;rsp,48

+      &nb= sp; and     rsp,-64

+=        mov     QWOR= D[16+rsp],rax

+

+=

+$L$dec4x_body:

= +        movdqu  xmm12,XMMWORD[rsi]=

+        l= ea     rsi,[120+rsi]

+ &nb= sp;      lea     rdi,[80+= rdi]

+

+$L$dec4x_= loop_grande:

+      &= nbsp; mov     DWORD[24+rsp],edx

+        xor   &nbs= p; edx,edx

+     &nbs= p;  mov     ecx,DWORD[((-64))+rdi]

+        mov  = ;   r8,QWORD[((-80))+rdi]

+ &nb= sp;      cmp     ecx,edx<= br class=3D"">
+        mo= v     r12,QWORD[((-72))+rdi]

+        cmovg   edx,ecx
+        test=    ecx,ecx

+    = ;    movdqu  xmm6,XMMWORD[((-56))+rdi]

+        mov  &nb= sp;  DWORD[32+rsp],ecx

+   = ;     cmovle  r8,rsp

+        mov    &n= bsp;ecx,DWORD[((-24))+rdi]

+    = ;    mov     r9,QWORD[((-40))+rdi]<= br class=3D"">
+        cm= p     ecx,edx

+  &nbs= p;     mov     r13,QWORD[((-32= ))+rdi]

+       =  cmovg   edx,ecx

+   =      test    ecx,ecx
=
+        movdqu  xmm= 7,XMMWORD[((-16))+rdi]

+    &nb= sp;   mov     DWORD[36+rsp],ecx

+        cmovle &n= bsp;r9,rsp

+      &nb= sp; mov     ecx,DWORD[16+rdi]

+        mov    =  r10,QWORD[rdi]

+     = ;   cmp     ecx,edx

+        mov    =  r14,QWORD[8+rdi]

+    &nb= sp;   cmovg   edx,ecx

+        test    ecx,ecx=

+        m= ovdqu  xmm8,XMMWORD[24+rdi]

+   = ;     mov     DWORD[40+rsp],ec= x

+        = cmovle  r10,rsp

+     = ;   mov     ecx,DWORD[56+rdi]

+        mov  = ;   r11,QWORD[40+rdi]

+  &= nbsp;     cmp     ecx,edx

+        mov &n= bsp;   r15,QWORD[48+rdi]

+ &nbs= p;      cmovg   edx,ecx

+        test  &n= bsp; ecx,ecx

+     &n= bsp;  movdqu  xmm9,XMMWORD[64+rdi]

+        mov    &n= bsp;DWORD[44+rsp],ecx

+    &nbs= p;   cmovle  r11,rsp

+ &nb= sp;      test    edx,edx

+        jz &nbs= p;    NEAR $L$dec4x_done

+=

+        m= ovups  xmm1,XMMWORD[((16-120))+rsi]

+ &nb= sp;      movups  xmm0,XMMWORD[((32-120))= +rsi]

+       &n= bsp;mov     eax,DWORD[((240-120))+rsi]
+        movdqu  xmm2,= XMMWORD[r8]

+      &n= bsp; movdqu  xmm3,XMMWORD[r9]

+ &nbs= p;      pxor    xmm2,xmm12

+        movdq= u  xmm4,XMMWORD[r10]

+    =     pxor    xmm3,xmm12
+        movdqu  xmm5,X= MMWORD[r11]

+      &n= bsp; pxor    xmm4,xmm12

+ =        pxor    xmm5,xmm12=

+        m= ovdqa  xmm10,XMMWORD[32+rsp]

+  &nbs= p;     xor     rbx,rbx

+        jmp  = ;   NEAR $L$oop_dec4x

+

+ALIGN   32

+$= L$oop_dec4x:

+      &= nbsp; add     rbx,16

= +        lea     rbp= ,[16+rsp]

+      &nbs= p; mov     ecx,1

+ &n= bsp;      sub     rbp,rbx=

+

+DB  &nbs= p;   102,15,56,222,209

+  =       prefetcht0     &nbs= p;[31+rbx*1+r8]

+     &nbs= p;  prefetcht0      [31+rbx*1+r9]

+DB      102,15,56,222,217<= br class=3D"">
+        pr= efetcht0      [31+rbx*1+r10]

+        prefetcht0   =    [31+rbx*1+r11]

+DB  &nb= sp;   102,15,56,222,225

+DB &nb= sp;    102,15,56,222,233

+=        movups  xmm1,XMMWORD[((48-1= 20))+rsi]

+      &nbs= p; cmp     ecx,DWORD[32+rsp]

+DB      102,15,56,222,208
<= br class=3D"">+DB      102,15,56,222,216

+DB      102,15,56,222,224
+        cmo= vge  r8,rbp

+     &nb= sp;  cmovg   r12,rbp

+DB &= nbsp;    102,15,56,222,232

+        movups  xmm0,XMMWORD[((-5= 6))+rsi]

+       = ; cmp     ecx,DWORD[36+rsp]

+DB      102,15,56,222,209
+DB      102,15,56,222,217

+DB      102,15,56,222,225
+        cmo= vge  r9,rbp

+     &nb= sp;  cmovg   r13,rbp

+DB &= nbsp;    102,15,56,222,233

+        movups  xmm1,XMMWORD[((-4= 0))+rsi]

+       = ; cmp     ecx,DWORD[40+rsp]

+DB      102,15,56,222,208
+DB      102,15,56,222,216

+DB      102,15,56,222,224
+        cmo= vge  r10,rbp

+     &n= bsp;  cmovg   r14,rbp

+DB =      102,15,56,222,232

+        movups  xmm0,XMMWORD[((-= 24))+rsi]

+      &nbs= p; cmp     ecx,DWORD[44+rsp]

+DB      102,15,56,222,209
<= br class=3D"">+DB      102,15,56,222,217

+DB      102,15,56,222,225
+        cmo= vge  r11,rbp

+     &n= bsp;  cmovg   r15,rbp

+DB =      102,15,56,222,233

+        movups  xmm1,XMMWORD[((-= 8))+rsi]

+       = ; movdqa  xmm11,xmm10

+DB  &nbs= p;   102,15,56,222,208

+  =       prefetcht0     &nbs= p;[15+rbx*1+r12]

+     &nb= sp;  prefetcht0      [15+rbx*1+r13]

+DB      102,15,56,222,21= 6

+        = prefetcht0      [15+rbx*1+r14]

+        prefetcht0  &nbs= p;   [15+rbx*1+r15]

+DB  &= nbsp;   102,15,56,222,224

+DB &= nbsp;    102,15,56,222,232

+        movups  xmm0,XMMWORD[((12= 8-120))+rsi]

+      &= nbsp; pxor    xmm12,xmm12

= +

+DB      102,15,56,= 222,209

+       =  pcmpgtd xmm11,xmm12

+    =     movdqu  xmm12,XMMWORD[((-120))+rsi]

+DB      102,15,56,222,217
+        pad= dd   xmm10,xmm11

+    = ;    movdqa  XMMWORD[32+rsp],xmm10
<= br class=3D"">+DB      102,15,56,222,225

+DB      102,15,56,222,233
+        mov= ups  xmm1,XMMWORD[((144-120))+rsi]

+

+        cmp &n= bsp;   eax,11

+
<= br class=3D"">+DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222= ,224

+DB      102,15,= 56,222,232

+      &nb= sp; movups  xmm0,XMMWORD[((160-120))+rsi]

+

+       = ; jb      NEAR $L$dec4x_tail
+

+DB     &nb= sp;102,15,56,222,209

+DB    &nb= sp; 102,15,56,222,217

+DB   &nb= sp;  102,15,56,222,225

+DB  &nb= sp;   102,15,56,222,233

+  = ;      movups  xmm1,XMMWORD[((176-120))+= rsi]

+

+DB  =     102,15,56,222,208

+DB =      102,15,56,222,216

+DB      102,15,56,222,224

+DB      102,15,56,222,232
<= br class=3D"">+        movups  xmm0= ,XMMWORD[((192-120))+rsi]

+

+        je    = ;  NEAR $L$dec4x_tail

+

+DB      102,15,56,222,209

+DB      102,15,56,222,217<= br class=3D"">
+DB      102,15,56,22= 2,225

+DB      102,15= ,56,222,233

+      &n= bsp; movups  xmm1,XMMWORD[((208-120))+rsi]

+

+DB      102= ,15,56,222,208

+DB     &nb= sp;102,15,56,222,216

+DB    &nb= sp; 102,15,56,222,224

+DB   &nb= sp;  102,15,56,222,232

+   = ;     movups  xmm0,XMMWORD[((224-120))+rsi]
+        jmp=     NEAR $L$dec4x_tail

+<= br class=3D"">
+ALIGN   32

+$L$dec4x_tail:

+DB    &= nbsp; 102,15,56,222,209

+DB   &= nbsp;  102,15,56,222,217

+DB  &= nbsp;   102,15,56,222,225

+ &nb= sp;      pxor    xmm6,xmm0

+        pxor =    xmm7,xmm0

+DB   &n= bsp;  102,15,56,222,233

+  &nbs= p;     movdqu  xmm1,XMMWORD[((16-120))+rsi]
+        pxo= r    xmm8,xmm0

+   &n= bsp;    pxor    xmm9,xmm0
=
+        movdqu  xmm= 0,XMMWORD[((32-120))+rsi]

+

+DB      102,15,56,223,214

+DB      102,15,56,223,223

+        movdqu &= nbsp;xmm6,XMMWORD[((-16))+rbx*1+r8]

+  &n= bsp;     movdqu  xmm7,XMMWORD[((-16))+rbx*1+r= 9]

+DB      102,65,15= ,56,223,224

+DB      = 102,65,15,56,223,233

+     = ;   movdqu  xmm8,XMMWORD[((-16))+rbx*1+r10]

+        movdqu  = xmm9,XMMWORD[((-16))+rbx*1+r11]

+

+        movups  X= MMWORD[(-16)+rbx*1+r12],xmm2

+   &nb= sp;    movdqu  xmm2,XMMWORD[rbx*1+r8]

+        movups  X= MMWORD[(-16)+rbx*1+r13],xmm3

+   &nb= sp;    movdqu  xmm3,XMMWORD[rbx*1+r9]

+        pxor  &nb= sp; xmm2,xmm12

+     =    movups  XMMWORD[(-16)+rbx*1+r14],xmm4
=
+        movdqu  xmm= 4,XMMWORD[rbx*1+r10]

+     = ;   pxor    xmm3,xmm12

+        movups  XMMWORD[(-1= 6)+rbx*1+r15],xmm5

+     &= nbsp;  movdqu  xmm5,XMMWORD[rbx*1+r11]

+        pxor    = xmm4,xmm12

+      &nb= sp; pxor    xmm5,xmm12

+
+        dec=     edx

+   &nb= sp;    jnz     NEAR $L$oop_dec4x
+

+   &nb= sp;    mov     rax,QWORD[16+rsp]
+

+   &nb= sp;    mov     edx,DWORD[24+rsp]
+

+   &nb= sp;    lea     rdi,[160+rdi]

+        dec &nbs= p;   edx

+    &n= bsp;   jnz     NEAR $L$dec4x_loop_grande=

+

+$L$dec4x_done= :

+        = movaps  xmm6,XMMWORD[((-216))+rax]

+ &nbs= p;      movaps  xmm7,XMMWORD[((-200))+ra= x]

+        = ;movaps  xmm8,XMMWORD[((-184))+rax]

+ &nb= sp;      movaps  xmm9,XMMWORD[((-168))+r= ax]

+       &nbs= p;movaps  xmm10,XMMWORD[((-152))+rax]

+ &= nbsp;      movaps  xmm11,XMMWORD[((-136)= )+rax]

+       &= nbsp;movaps  xmm12,XMMWORD[((-120))+rax]

= +

+

+

+        mov  &nb= sp;  r15,QWORD[((-48))+rax]

+

+        mov &nbs= p;   r14,QWORD[((-40))+rax]

+
+        mov=     r13,QWORD[((-32))+rax]

+

+       &nbs= p;mov     r12,QWORD[((-24))+rax]

+

+       = ; mov     rbp,QWORD[((-16))+rax]
+

+      =   mov     rbx,QWORD[((-8))+rax]

+

+     &n= bsp;  lea     rsp,[rax]

+

+$L$dec4x_epilogue:
+        mov   &n= bsp; rdi,QWORD[8+rsp]        ;WIN64= epilogue

+      &nbs= p; mov     rsi,QWORD[16+rsp]

+        DB    &n= bsp; 0F3h,0C3h          &= nbsp;    ;repret

+

+$L$SEH_end_aesni_multi_cbc_decrypt:
+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16
<= br class=3D"">+se_handler:

+    = ;    push    rsi

+        push    r= di

+        = ;push    rbx

+   &nbs= p;    push    rbp

+        push    r= 12

+        = ;push    r13

+   &nbs= p;    push    r14

+        push    r= 15

+        = ;pushfq

+       =  sub     rsp,64

+

+        mov &= nbsp;   rax,QWORD[120+r8]

+ &nb= sp;      mov     rbx,QWOR= D[248+r8]

+

+ &nb= sp;      mov     rsi,QWOR= D[8+r9]

+       =  mov     r11,QWORD[56+r9]

+

+       = ; mov     r10d,DWORD[r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jb    &n= bsp; NEAR $L$in_prologue

+
=
+        mov   =   rax,QWORD[152+r8]

+
=
+        mov   =   r10d,DWORD[4+r11]

+   &n= bsp;    lea     r10,[r10*1+rsi]

+        cmp &= nbsp;   rbx,r10

+   &= nbsp;    jae     NEAR $L$in_prologu= e

+

+   = ;     mov     rax,QWORD[16+rax= ]

+

+   = ;     mov     rbx,QWORD[((-8))= +rax]

+       &n= bsp;mov     rbp,QWORD[((-16))+rax]

+        mov    =  r12,QWORD[((-24))+rax]

+   &nb= sp;    mov     r13,QWORD[((-32))+ra= x]

+        = ;mov     r14,QWORD[((-40))+rax]

+        mov    &n= bsp;r15,QWORD[((-48))+rax]

+    = ;    mov     QWORD[144+r8],rbx

+        mov &n= bsp;   QWORD[160+r8],rbp

+ &nbs= p;      mov     QWORD[216= +r8],r12

+       = ; mov     QWORD[224+r8],r13

+        mov    &n= bsp;QWORD[232+r8],r14

+    &nbs= p;   mov     QWORD[240+r8],r15

+

+    &n= bsp;   lea     rsi,[((-56-160))+rax]

+        lea &= nbsp;   rdi,[512+r8]

+  &n= bsp;     mov     ecx,20

+        DD  = ;    0xa548f3fc

+

+$L$in_prologue:

+  = ;      mov     rdi,QWORD[= 8+rax]

+       &= nbsp;mov     rsi,QWORD[16+rax]

+        mov    &n= bsp;QWORD[152+r8],rax

+    &nbs= p;   mov     QWORD[168+r8],rsi

+        mov  = ;   QWORD[176+r8],rdi

+

+        mov  = ;   rdi,QWORD[40+r9]

+  &n= bsp;     mov     rsi,r8

+        mov &nbs= p;   ecx,154

+   &nbs= p;    DD      0xa548f3fc

+

+    =     mov     rsi,r9
+        xor   &n= bsp; rcx,rcx

+     &n= bsp;  mov     rdx,QWORD[8+rsi]
=
+        mov   =   r8,QWORD[rsi]

+    =     mov     r9,QWORD[16+rsi]

+        mov &nbs= p;   r10,QWORD[40+rsi]

+  =       lea     r11,[56+rsi= ]

+        = lea     r12,[24+rsi]

+ &nb= sp;      mov     QWORD[32= +rsp],r10

+      &nbs= p; mov     QWORD[40+rsp],r11

+        mov    &= nbsp;QWORD[48+rsp],r12

+    &nb= sp;   mov     QWORD[56+rsp],rcx

+        call &nbs= p;  QWORD[__imp_RtlVirtualUnwind]

+<= br class=3D"">
+        mo= v     eax,1

+   =      add     rsp,64

+        popfq

+        pop &= nbsp;   r15

+    = ;    pop     r14

+        pop   &nbs= p; r13

+      &n= bsp; pop     r12

+ &n= bsp;      pop     rbp

+        pop &= nbsp;   rbx

+    = ;    pop     rdi

+        pop   &nbs= p; rsi

+      &n= bsp; DB      0F3h,0C3h    &nbs= p;          ;repret

+

+

+section .pdata rdata align=3D4

+AL= IGN   4

+     &n= bsp;  DD      $L$SEH_begin_aesni_multi_c= bc_encrypt wrt ..imagebase

+    = ;    DD      $L$SEH_end_aesni_= multi_cbc_encrypt wrt ..imagebase

+  &nbs= p;     DD      $L$SEH_inf= o_aesni_multi_cbc_encrypt wrt ..imagebase

+ &n= bsp;      DD      $L= $SEH_begin_aesni_multi_cbc_decrypt wrt ..imagebase

+        DD    &nb= sp; $L$SEH_end_aesni_multi_cbc_decrypt wrt ..imagebase
<= br class=3D"">+        DD   &n= bsp;  $L$SEH_info_aesni_multi_cbc_decrypt wrt ..imagebase

+section .xdata rdata align=3D8

+ALIGN   8

+$L$SEH_info_aesn= i_multi_cbc_encrypt:

+DB    &nb= sp; 9,0,0,0

+     &nb= sp;  DD      se_handler wrt ..imagebase<= br class=3D"">
+        DD=      $L$enc4x_body wrt ..imagebase,$L$enc4x_epilo= gue
wrt ..imagebase

+$L$SEH_info= _aesni_multi_cbc_decrypt:

+DB   &nbs= p;  9,0,0,0

+    &nbs= p;   DD      se_handler wrt ..image= base

+       &nb= sp;DD      $L$dec4x_body wrt ..imagebase,$L$dec4x_= epilogue
wrt ..imagebase

diff --= git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-
x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-
sha1-
x86_64.nasm
new file mode 100644
index 0= 000000000..f4fd9ca50d
--- /dev/null
+++ b/Crypt= oPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-
x86_64.nasm
@@ -0,0 +1,1916 @@
+; WARNING: do not edit!

+; Generated from o= penssl/crypto/aes/asm/aesni-sha1-x86_64.pl

+;<= br class=3D"">
+; Copyright 2011-2020 The OpenSSL Project Aut= hors. All Rights
Reser= ved.

+;
+; Licensed under the OpenSSL license (the "Lice= nse").  You may not use

+; this file exce= pt in compliance with the License.  You can obtain a
copy

+; in the file LICENSE in the source distrib= ution or at

+; https://www.openssl.org/source/license.= html

+

+defau= lt rel

+%define XMMWORD

+%define YMMWORD

+%define ZMMWORD

+section .text code align=3D64

+

+EXTERN  OPENSSL_ia32cap_P

+

+global  aesn= i_cbc_sha1_enc

+

= +ALIGN   32

+aesni_cbc_sha1_enc:

+

+
+        mov   &n= bsp; r10d,DWORD[((OPENSSL_ia32cap_P+0))]

= +        mov     r11= ,QWORD[((OPENSSL_ia32cap_P+4))]

+   =      bt      r11,61

+        jc &nbs= p;    NEAR aesni_cbc_sha1_enc_shaext

+        jmp   &nbs= p; NEAR aesni_cbc_sha1_enc_ssse3

+  =       DB      0F3h,0= C3h             = ;  ;repret

+

+

+

+ALIGN=   32

+aesni_cbc_sha1_enc_ssse3:

+        mov &= nbsp;   QWORD[8+rsp],rdi       = ; ;WIN64 prologue

+    &nb= sp;   mov     QWORD[16+rsp],rsi

+        mov  = ;   rax,rsp

+$L$SEH_begin_aesni= _cbc_sha1_enc_ssse3:

+     = ;   mov     rdi,rcx

+        mov    =  rsi,rdx

+      =   mov     rdx,r8

+        mov     rc= x,r9

+       &nb= sp;mov     r8,QWORD[40+rsp]

+        mov     r= 9,QWORD[48+rsp]

+

+

+

+  &nbs= p;     mov     r10,QWORD[56+rs= p]

+

+

+        push &nbs= p;  rbx

+

+        push    rbp
+

+   &n= bsp;    push    r12

+

+      &nb= sp; push    r13

+

+        push &nbs= p;  r14

+

+        push    r15
+

+   &n= bsp;    lea     rsp,[((-264))+rsp]<= br class=3D"">
+

+

+

+     &n= bsp;  movaps  XMMWORD[(96+0)+rsp],xmm6

+        movaps  XMMWORD[(9= 6+16)+rsp],xmm7

+     &nbs= p;  movaps  XMMWORD[(96+32)+rsp],xmm8

+        movaps  XMMWORD[(96= +48)+rsp],xmm9

+      = ;  movaps  XMMWORD[(96+64)+rsp],xmm10

+        movaps  XMMWORD[(96= +80)+rsp],xmm11

+     &nbs= p;  movaps  XMMWORD[(96+96)+rsp],xmm12

+        movaps  XMMWORD[(9= 6+112)+rsp],xmm13

+     &n= bsp;  movaps  XMMWORD[(96+128)+rsp],xmm14

+        movaps  XMMWORD= [(96+144)+rsp],xmm15

+$L$prologue_ssse3:

+        mov &nb= sp;   r12,rdi

+   &nb= sp;    mov     r13,rsi

+        mov  &nbs= p;  r14,rdx

+    &nbs= p;   lea     r15,[112+rcx]

+        movdqu  xm= m2,XMMWORD[r8]

+      = ;  mov     QWORD[88+rsp],r8
+        shl   &nb= sp; r14,6

+      = ;  sub     r13,r12

+        mov     = r8d,DWORD[((240-112))+r15]

+    = ;    add     r14,r10
=
+

+     &nb= sp;  lea     r11,[K_XX_XX]

+        mov   &nbs= p; eax,DWORD[r9]

+    &nbs= p;   mov     ebx,DWORD[4+r9]

+        mov  &nb= sp;  ecx,DWORD[8+r9]

+   &= nbsp;    mov     edx,DWORD[12+r9]
+        mov=     esi,ebx

+   = ;     mov     ebp,DWORD[16+r9]=

+        m= ov     edi,ecx

+  &nb= sp;     xor     edi,edx

+        and &nbs= p;   esi,edi

+
+        movdqa  xmm3,= XMMWORD[64+r11]

+     &nbs= p;  movdqa  xmm13,XMMWORD[r11]

= +        movdqu  xmm4,XMMWORD[r10]<= br class=3D"">
+        mo= vdqu  xmm5,XMMWORD[16+r10]

+   =      movdqu  xmm6,XMMWORD[32+r10]

+        movdqu  = xmm7,XMMWORD[48+r10]

+DB    &nb= sp; 102,15,56,0,227

+DB    = ;  102,15,56,0,235

+DB   &= nbsp;  102,15,56,0,243

+   = ;     add     r10,64

+        paddd &nb= sp; xmm4,xmm13

+DB    &nbs= p; 102,15,56,0,251

+    &n= bsp;   paddd   xmm5,xmm13

+        paddd   xmm6,x= mm13

+       &nb= sp;movdqa  XMMWORD[rsp],xmm4

+  &nbs= p;     psubd   xmm4,xmm13
=
+        movdqa  XMM= WORD[16+rsp],xmm5

+     &n= bsp;  psubd   xmm5,xmm13

+=        movdqa  XMMWORD[32+rsp],xmm= 6

+        = psubd   xmm6,xmm13

+   &nb= sp;    movups  xmm15,XMMWORD[((-112))+r15]

+        movups &n= bsp;xmm0,XMMWORD[((16-112))+r15]

+   = ;     jmp     NEAR $L$oop_ssse= 3

+ALIGN   32

+$L$oop_ssse3:

+    &nbs= p;   ror     ebx,2

+        movups  xmm14,XMMW= ORD[r12]

+       = ; xorps   xmm14,xmm15

+  &= nbsp;     xorps   xmm2,xmm14

+        movups  = xmm1,XMMWORD[((-80))+r15]

+DB   &nbs= p;  102,15,56,220,208

+   =      pshufd  xmm8,xmm4,238

+        xor   &nbs= p; esi,edx

+     &nbs= p;  movdqa  xmm12,xmm7

+  =       paddd   xmm13,xmm7

+        mov  = ;   edi,eax

+    = ;    add     ebp,DWORD[rsp]

+        punpcklqd= q      xmm8,xmm5

+ &n= bsp;      xor     ebx,ecx=

+        r= ol     eax,5

+   = ;     add     ebp,esi

+        psrldq &n= bsp;xmm12,4

+      &n= bsp; and     edi,ebx

= +        xor     ebx= ,ecx

+       &nb= sp;pxor    xmm8,xmm4

+  &n= bsp;     add     ebp,eax

+        ror &nb= sp;   eax,7

+    = ;    pxor    xmm12,xmm6
+        xor   &n= bsp; edi,ecx

+     &n= bsp;  mov     esi,ebp

+        add    &n= bsp;edx,DWORD[4+rsp]

+     = ;   pxor    xmm8,xmm12

+        xor    &n= bsp;eax,ebx

+      &n= bsp; rol     ebp,5

+ =        movdqa  XMMWORD[48+rsp],xmm1= 3

+        = add     edx,edi

+  &n= bsp;     movups  xmm0,XMMWORD[((-64))+r15]
+DB      102,15,56,220,= 209

+       &nbs= p;and     esi,eax

+  =       movdqa  xmm3,xmm8
+        xor   &n= bsp; eax,ebx

+     &n= bsp;  add     edx,ebp

+        ror    &n= bsp;ebp,7

+      &nbs= p; movdqa  xmm12,xmm8

+   =      xor     esi,ebx

+        pslldq &n= bsp;xmm3,12

+      &n= bsp; paddd   xmm8,xmm8

+  =       mov     edi,edx

+        add &= nbsp;   ecx,DWORD[8+rsp]

+ &nbs= p;      psrld   xmm12,31

+        xor  = ;   ebp,eax

+    = ;    rol     edx,5
+        add   &n= bsp; ecx,esi

+     &n= bsp;  movdqa  xmm13,xmm3

+ &nbs= p;      and     edi,ebp
+        xor=     ebp,eax

+   = ;     psrld   xmm3,30

+        add   &nbs= p; ecx,edx

+     &nbs= p;  ror     edx,7

+        por     x= mm8,xmm12

+      &nbs= p; xor     edi,eax

+ =        mov     esi,e= cx

+        = ;add     ebx,DWORD[12+rsp]

+        movups  xmm1,XMMWORD[((-4= 8))+r15]

+DB      102= ,15,56,220,208

+      = ;  pslld   xmm13,2

+  = ;      pxor    xmm8,xmm3

+        xor &nb= sp;   edx,ebp

+   &nb= sp;    movdqa  xmm3,XMMWORD[r11]
+        rol   &nb= sp; ecx,5

+      = ;  add     ebx,edi

+        and     = esi,edx

+       =  pxor    xmm8,xmm13

+ &nbs= p;      xor     edx,ebp
+        add=     ebx,ecx

+   = ;     ror     ecx,7

+        pshufd &n= bsp;xmm9,xmm5,238

+     &n= bsp;  xor     esi,ebp

+        movdqa  xmm13,xmm8<= br class=3D"">
+        pa= ddd   xmm3,xmm8

+    =     mov     edi,ebx
<= br class=3D"">+        add   &= nbsp; eax,DWORD[16+rsp]

+   &nb= sp;    punpcklqdq      xmm9,xm= m6

+        = ;xor     ecx,edx

+  &= nbsp;     rol     ebx,5

+        add &nbs= p;   eax,esi

+   &nbs= p;    psrldq  xmm13,4

+        and     ed= i,ecx

+       &n= bsp;xor     ecx,edx

+ &nbs= p;      pxor    xmm9,xmm5

+        add &n= bsp;   eax,ebx

+   &n= bsp;    ror     ebx,7

+        movups  xm= m0,XMMWORD[((-32))+r15]

+DB    =   102,15,56,220,209

+   &n= bsp;    pxor    xmm13,xmm7

+        xor   = ;  edi,edx

+     = ;   mov     esi,eax

+        add    =  ebp,DWORD[20+rsp]

+    &n= bsp;   pxor    xmm9,xmm13

+        xor    = ; ebx,ecx

+      = ;  rol     eax,5

+        movdqa  XMMWORD[rsp],xmm3=

+        a= dd     ebp,edi

+  &nb= sp;     and     esi,ebx

+        movdqa &= nbsp;xmm12,xmm9

+     &nbs= p;  xor     ebx,ecx

+        add    &n= bsp;ebp,eax

+      &n= bsp; ror     eax,7

+ =        movdqa  xmm13,xmm9

+        xor  = ;   esi,ecx

+    = ;    pslldq  xmm12,12

+        paddd   xmm9,xmm9
+        mov =     edi,ebp

+   =      add     edx,DWORD[24+rsp]=

+        p= srld   xmm13,31

+    =     xor     eax,ebx
<= br class=3D"">+        rol   &= nbsp; ebp,5

+     &nb= sp;  add     edx,esi

+        movups  xmm1,XMMWOR= D[((-16))+r15]

+DB     &nb= sp;102,15,56,220,208

+     = ;   movdqa  xmm3,xmm12

+ &= nbsp;      and     edi,ea= x

+        = xor     eax,ebx

+  &n= bsp;     psrld   xmm12,30
=
+        add   =   edx,ebp

+     =    ror     ebp,7

+        por    &n= bsp;xmm9,xmm13

+      = ;  xor     edi,ebx

+        mov     = esi,edx

+       =  add     ecx,DWORD[28+rsp]

+        pslld   xmm3,2=

+        p= xor    xmm9,xmm12

+   = ;     xor     ebp,eax

+        movdqa &n= bsp;xmm12,XMMWORD[16+r11]

+    =     rol     edx,5
+        add   &nb= sp; ecx,edi

+     &nb= sp;  and     esi,ebp

+        pxor    x= mm9,xmm3

+       = ; xor     ebp,eax

+ &= nbsp;      add     ecx,ed= x

+        = ror     edx,7

+  &nbs= p;     pshufd  xmm10,xmm6,238
<= br class=3D"">+        xor   &= nbsp; esi,eax

+     &= nbsp;  movdqa  xmm3,xmm9

+ &nbs= p;      paddd   xmm12,xmm9

+        mov  = ;   edi,ecx

+    = ;    add     ebx,DWORD[32+rsp]

+        movups=  xmm0,XMMWORD[r15]

+DB    = ;  102,15,56,220,209

+   &= nbsp;    punpcklqdq      xmm10= ,xmm7

+       &n= bsp;xor     edx,ebp

+ &nbs= p;      rol     ecx,5

+        add &= nbsp;   ebx,esi

+   &= nbsp;    psrldq  xmm3,4

+        and     = edi,edx

+       =  xor     edx,ebp

+ &n= bsp;      pxor    xmm10,xmm6
+        add=     ebx,ecx

+   = ;     ror     ecx,7

+        pxor &nbs= p;  xmm3,xmm8

+    &n= bsp;   xor     edi,ebp
+        mov   &nb= sp; esi,ebx

+     &nb= sp;  add     eax,DWORD[36+rsp]
=
+        pxor   = ; xmm10,xmm3

+     &n= bsp;  xor     ecx,edx

+        rol    &n= bsp;ebx,5

+      &nbs= p; movdqa  XMMWORD[16+rsp],xmm12

+ &= nbsp;      add     eax,ed= i

+        = and     esi,ecx

+  &n= bsp;     movdqa  xmm13,xmm10
+        xor   &n= bsp; ecx,edx

+     &n= bsp;  add     eax,ebx

+        ror    &n= bsp;ebx,7

+      &nbs= p; movups  xmm1,XMMWORD[16+r15]

+DB =      102,15,56,220,208

+        movdqa  xmm3,xmm10

+        xor &nb= sp;   esi,edx

+   &nb= sp;    pslldq  xmm13,12

+        paddd   xmm10,xmm1= 0

+        = mov     edi,eax

+  &n= bsp;     add     ebp,DWORD[40+= rsp]

+       &nb= sp;psrld   xmm3,31

+   &nb= sp;    xor     ebx,ecx

+        rol  &nbs= p;  eax,5

+     =    add     ebp,esi

+        movdqa  xmm12,xmm1= 3

+        = and     edi,ebx

+  &n= bsp;     xor     ebx,ecx

+        psrld &= nbsp; xmm13,30

+     =    add     ebp,eax

+        ror    &= nbsp;eax,7

+      &nb= sp; por     xmm10,xmm3

+        xor     e= di,ecx

+       &= nbsp;mov     esi,ebp

+ &nb= sp;      add     edx,DWOR= D[44+rsp]

+      &nbs= p; pslld   xmm12,2

+  &nbs= p;     pxor    xmm10,xmm13

+        xor  = ;   eax,ebx

+    = ;    movdqa  xmm13,XMMWORD[16+r11]
<= br class=3D"">+        rol   &= nbsp; ebp,5

+     &nb= sp;  add     edx,edi

+        movups  xmm0,XMMWOR= D[32+r15]

+DB      10= 2,15,56,220,209

+     &nbs= p;  and     esi,eax

+        pxor    x= mm10,xmm12

+      &nb= sp; xor     eax,ebx

+=        add     edx,= ebp

+       &nbs= p;ror     ebp,7

+  &n= bsp;     pshufd  xmm11,xmm7,238

+        xor   = ;  esi,ebx

+     = ;   movdqa  xmm12,xmm10

+ =        paddd   xmm13,xmm10

+        mov &= nbsp;   edi,edx

+   &= nbsp;    add     ecx,DWORD[48+rsp]<= br class=3D"">
+        pu= npcklqdq      xmm11,xmm8

+        xor    &n= bsp;ebp,eax

+      &n= bsp; rol     edx,5

+ =        add     ecx,e= si

+        = ;psrldq  xmm12,4

+    &nbs= p;   and     edi,ebp

+        xor    = ; ebp,eax

+      = ;  pxor    xmm11,xmm7

+        add     ec= x,edx

+       &n= bsp;ror     edx,7

+  =       pxor    xmm12,xmm9

+        xor &nb= sp;   edi,eax

+   &nb= sp;    mov     esi,ecx

+        add  &nbs= p;  ebx,DWORD[52+rsp]

+   =      movups  xmm1,XMMWORD[48+r15]

+DB      102,15,56,220,208

+        pxor &n= bsp;  xmm11,xmm12

+   &nbs= p;    xor     edx,ebp

+        rol   = ;  ecx,5

+     &= nbsp;  movdqa  XMMWORD[32+rsp],xmm13

+        add    &n= bsp;ebx,edi

+      &n= bsp; and     esi,edx

= +        movdqa  xmm3,xmm11

+        xor  = ;   edx,ebp

+    = ;    add     ebx,ecx
=
+        ror   =   ecx,7

+     &n= bsp;  movdqa  xmm12,xmm11

+ &nb= sp;      xor     esi,ebp<= br class=3D"">
+        ps= lldq  xmm3,12

+     &= nbsp;  paddd   xmm11,xmm11

+        mov     ed= i,ebx

+       &n= bsp;add     eax,DWORD[56+rsp]

+        psrld   xmm12,= 31

+        = ;xor     ecx,edx

+  &= nbsp;     rol     ebx,5

+        add &nbs= p;   eax,esi

+   &nbs= p;    movdqa  xmm13,xmm3

+        and    &n= bsp;edi,ecx

+      &n= bsp; xor     ecx,edx

= +        psrld   xmm3,30

+        add &nb= sp;   eax,ebx

+   &nb= sp;    ror     ebx,7
=
+        cmp   =   r8d,11

+     &= nbsp;  jb      NEAR $L$aesenclast1

+        movups =  xmm0,XMMWORD[64+r15]

+DB   &nb= sp;  102,15,56,220,209

+   = ;     movups  xmm1,XMMWORD[80+r15]

+DB      102,15,56,220,208
+        je =      NEAR $L$aesenclast1

+        movups  xmm0,XMMWOR= D[96+r15]

+DB      10= 2,15,56,220,209

+     &nbs= p;  movups  xmm1,XMMWORD[112+r15]

+DB      102,15,56,220,208

+$L$aesenclast1:

+DB   &nbs= p;  102,15,56,221,209

+   =      movups  xmm0,XMMWORD[((16-112))+r15]

+        por &= nbsp;   xmm11,xmm12

+  &nb= sp;     xor     edi,edx

+        mov &nbs= p;   esi,eax

+   &nbs= p;    add     ebp,DWORD[60+rsp]

+        pslld=   xmm13,2

+     = ;   pxor    xmm11,xmm3

+        xor    &n= bsp;ebx,ecx

+      &n= bsp; movdqa  xmm3,XMMWORD[16+r11]

+ =        rol     eax,5=

+        a= dd     ebp,edi

+  &nb= sp;     and     esi,ebx

+        pxor &nb= sp;  xmm11,xmm13

+    = ;    pshufd  xmm13,xmm10,238

+        xor    &= nbsp;ebx,ecx

+      &= nbsp; add     ebp,eax

+        ror     ea= x,7

+       &nbs= p;pxor    xmm4,xmm8

+  &nb= sp;     xor     esi,ecx

+        mov &nbs= p;   edi,ebp

+   &nbs= p;    add     edx,DWORD[rsp]

+        punpcklq= dq      xmm13,xmm11

+=        xor     eax,= ebx

+       &nbs= p;rol     ebp,5

+  &n= bsp;     pxor    xmm4,xmm5

+        add  = ;   edx,esi

+    = ;    movups  xmm14,XMMWORD[16+r12]
<= br class=3D"">+        xorps   = ;xmm14,xmm15

+      &= nbsp; movups  XMMWORD[r13*1+r12],xmm2

+        xorps   xmm2,xmm14<= br class=3D"">
+        mo= vups  xmm1,XMMWORD[((-80))+r15]

+DB  = ;    102,15,56,220,208

+ &= nbsp;      and     edi,ea= x

+        = movdqa  xmm12,xmm3

+    &n= bsp;   xor     eax,ebx
+        paddd   x= mm3,xmm11

+      &nbs= p; add     edx,ebp

+ =        pxor    xmm4,xmm13=

+        r= or     ebp,7

+   = ;     xor     edi,ebx

+        mov  = ;   esi,edx

+    = ;    add     ecx,DWORD[4+rsp]

+        movdqa =  xmm13,xmm4

+     &nb= sp;  xor     ebp,eax

+        rol    &n= bsp;edx,5

+      &nbs= p; movdqa  XMMWORD[48+rsp],xmm3

+ &n= bsp;      add     ecx,edi=

+        a= nd     esi,ebp

+  &nb= sp;     xor     ebp,eax

+        pslld &n= bsp; xmm4,2

+     &nb= sp;  add     ecx,edx

+        ror    &n= bsp;edx,7

+      &nbs= p; psrld   xmm13,30

+  &nb= sp;     xor     esi,eax

+        mov &nbs= p;   edi,ecx

+   &nbs= p;    add     ebx,DWORD[8+rsp]

+        movups=  xmm0,XMMWORD[((-64))+r15]

+DB  &nb= sp;   102,15,56,220,209

+  = ;      por     xmm4,xmm13=

+        x= or     edx,ebp

+  &nb= sp;     rol     ecx,5

+        pshufd &n= bsp;xmm3,xmm11,238

+     &= nbsp;  add     ebx,esi

+        and    &n= bsp;edi,edx

+      &n= bsp; xor     edx,ebp

= +        add     ebx= ,ecx

+       &nb= sp;add     eax,DWORD[12+rsp]

+        xor     = edi,ebp

+       =  mov     esi,ebx

+ &n= bsp;      rol     ebx,5
+        add=     eax,edi

+   = ;     xor     esi,edx

+        ror  = ;   ecx,7

+    &= nbsp;   add     eax,ebx
+        pxor   &= nbsp;xmm5,xmm9

+      = ;  add     ebp,DWORD[16+rsp]
+        movups  xmm1,= XMMWORD[((-48))+r15]

+DB    &nb= sp; 102,15,56,220,208

+    = ;    xor     esi,ecx
=
+        punpcklqdq  = ;    xmm3,xmm4

+  &nb= sp;     mov     edi,eax

+        rol &nbs= p;   eax,5

+    =     pxor    xmm5,xmm6

+        add   &nbs= p; ebp,esi

+     &nbs= p;  xor     edi,ecx

+        movdqa  xmm13,xmm12=

+        r= or     ebx,7

+   = ;     paddd   xmm12,xmm4
<= br class=3D"">+        add   &= nbsp; ebp,eax

+     &= nbsp;  pxor    xmm5,xmm3

+        add    &n= bsp;edx,DWORD[20+rsp]

+    &nbs= p;   xor     edi,ebx

+        mov    = ; esi,ebp

+      = ;  rol     ebp,5

+        movdqa  xmm3,xmm5

+        add  = ;   edx,edi

+    = ;    xor     esi,ebx
=
+        movdqa  XMM= WORD[rsp],xmm12

+     &nbs= p;  ror     eax,7

+        add     e= dx,ebp

+       &= nbsp;add     ecx,DWORD[24+rsp]

+        pslld   xmm5,2=

+        x= or     esi,eax

+  &nb= sp;     mov     edi,edx

+        psrld &n= bsp; xmm3,30

+     &n= bsp;  rol     edx,5

+        add    &n= bsp;ecx,esi

+      &n= bsp; movups  xmm0,XMMWORD[((-32))+r15]

+DB      102,15,56,220,209

+        xor    =  edi,eax

+      =   ror     ebp,7

= +        por     xmm= 5,xmm3

+       &= nbsp;add     ecx,edx

+ &nb= sp;      add     ebx,DWOR= D[28+rsp]

+      &nbs= p; pshufd  xmm12,xmm4,238

+  &n= bsp;     xor     edi,ebp

+        mov &nb= sp;   esi,ecx

+   &nb= sp;    rol     ecx,5
=
+        add   =   ebx,edi

+     =    xor     esi,ebp

+        ror    &= nbsp;edx,7

+      &nb= sp; add     ebx,ecx

+=        pxor    xmm6,xmm1= 0

+        = add     eax,DWORD[32+rsp]

= +        xor     esi= ,edx

+       &nb= sp;punpcklqdq      xmm12,xmm5

+        mov    =  edi,ebx

+      =   rol     ebx,5

= +        pxor    xmm6,xmm= 7

+        = add     eax,esi

+  &n= bsp;     xor     edi,edx

+        movdqa =  xmm3,XMMWORD[32+r11]

+    = ;    ror     ecx,7
+        paddd   = xmm13,xmm5

+      &nb= sp; add     eax,ebx

+=        pxor    xmm6,xmm1= 2

+        = add     ebp,DWORD[36+rsp]

= +        movups  xmm1,XMMWORD[((-16= ))+r15]

+DB      102,= 15,56,220,208

+      =   xor     edi,ecx

+        mov     e= si,eax

+       &= nbsp;rol     eax,5

+  = ;      movdqa  xmm12,xmm6
=
+        add   =   ebp,edi

+     =    xor     esi,ecx

+        movdqa  XMMWORD[16= +rsp],xmm13

+      &n= bsp; ror     ebx,7

+ =        add     ebp,e= ax

+        = ;add     edx,DWORD[40+rsp]

+        pslld   xmm6,2

+        xor &nb= sp;   esi,ebx

+   &nb= sp;    mov     edi,ebp

+        psrld  &n= bsp;xmm12,30

+      &= nbsp; rol     ebp,5

+=        add     edx,= esi

+       &nbs= p;xor     edi,ebx

+  =       ror     eax,7

+        por &nb= sp;   xmm6,xmm12

+   =      add     edx,ebp

+        add  = ;   ecx,DWORD[44+rsp]

+  &= nbsp;     pshufd  xmm13,xmm5,238

+        xor  &nbs= p;  edi,eax

+    &nbs= p;   mov     esi,edx

+        rol    = ; edx,5

+      &= nbsp; add     ecx,edi

+        movups  xmm0,XMMWORD[r15]=

+DB      102,15,56,2= 20,209

+       &= nbsp;xor     esi,eax

+ &nb= sp;      ror     ebp,7
+        add =     ecx,edx

+   =      pxor    xmm7,xmm11

+        add  &nb= sp;  ebx,DWORD[48+rsp]

+   = ;     xor     esi,ebp

+        punpcklqd= q      xmm13,xmm6

+ &= nbsp;      mov     edi,ec= x

+        = rol     ecx,5

+  &nbs= p;     pxor    xmm7,xmm8

+        add  = ;   ebx,esi

+    = ;    xor     edi,ebp
=
+        movdqa  xmm= 12,xmm3

+       =  ror     edx,7

+ &nbs= p;      paddd   xmm3,xmm6

+        add  = ;   ebx,ecx

+    = ;    pxor    xmm7,xmm13
+        add   &n= bsp; eax,DWORD[52+rsp]

+   &nbs= p;    xor     edi,edx

+        mov   = ;  esi,ebx

+     = ;   rol     ebx,5

+        movdqa  xmm13,xmm7<= br class=3D"">
+        ad= d     eax,edi

+  &nbs= p;     xor     esi,edx

+        movdqa &n= bsp;XMMWORD[32+rsp],xmm3

+    &= nbsp;   ror     ecx,7

+        add   &nbs= p; eax,ebx

+     &nbs= p;  add     ebp,DWORD[56+rsp]
<= br class=3D"">+        movups  xmm1= ,XMMWORD[16+r15]

+DB     &= nbsp;102,15,56,220,208

+    &nb= sp;   pslld   xmm7,2

= +        xor     esi= ,ecx

+       &nb= sp;mov     edi,eax

+  = ;      psrld   xmm13,30

+        rol  &nb= sp;  eax,5

+     = ;   add     ebp,esi

+        xor    =  edi,ecx

+      =   ror     ebx,7

= +        por     xmm= 7,xmm13

+       =  add     ebp,eax

+ &n= bsp;      add     edx,DWO= RD[60+rsp]

+      &nb= sp; pshufd  xmm3,xmm6,238

+  &n= bsp;     xor     edi,ebx

+        mov &nb= sp;   esi,ebp

+   &nb= sp;    rol     ebp,5
=
+        add   =   edx,edi

+     =    xor     esi,ebx

+        ror    &= nbsp;eax,7

+      &nb= sp; add     edx,ebp

+=        pxor    xmm8,xmm4=

+        a= dd     ecx,DWORD[rsp]

+ &n= bsp;      xor     esi,eax=

+        p= unpcklqdq      xmm3,xmm7

+        mov    &n= bsp;edi,edx

+      &n= bsp; rol     edx,5

+ =        pxor    xmm8,xmm9<= br class=3D"">
+        ad= d     ecx,esi

+  &nbs= p;     movups  xmm0,XMMWORD[32+r15]

+DB      102,15,56,220,209
+        xor=     edi,eax

+   = ;     movdqa  xmm13,xmm12

+        ror    = ; ebp,7

+      &= nbsp; paddd   xmm12,xmm7

+ &nbs= p;      add     ecx,edx
+        pxo= r    xmm8,xmm3

+   &n= bsp;    add     ebx,DWORD[4+rsp]
+        xor =     edi,ebp

+   =      mov     esi,ecx

+        rol  = ;   ecx,5

+    &= nbsp;   movdqa  xmm3,xmm8

= +        add     ebx= ,edi

+       &nb= sp;xor     esi,ebp

+  = ;      movdqa  XMMWORD[48+rsp],xmm12

+        ror &= nbsp;   edx,7

+   &nb= sp;    add     ebx,ecx

+        add  &nbs= p;  eax,DWORD[8+rsp]

+   &= nbsp;    pslld   xmm8,2

+        xor    &= nbsp;esi,edx

+      &= nbsp; mov     edi,ebx

+        psrld   xmm3,30

+        rol &n= bsp;   ebx,5

+   &nbs= p;    add     eax,esi

+        xor   = ;  edi,edx

+     = ;   ror     ecx,7

+        por    &n= bsp;xmm8,xmm3

+      =   add     eax,ebx

+        add     e= bp,DWORD[12+rsp]

+     &nb= sp;  movups  xmm1,XMMWORD[48+r15]

+DB      102,15,56,220,208

+        pshufd  xmm12,xmm= 7,238

+       &n= bsp;xor     edi,ecx

+ &nbs= p;      mov     esi,eax
+        rol=     eax,5

+   &= nbsp;    add     ebp,edi

+        xor  = ;   esi,ecx

+    = ;    ror     ebx,7
+        add   &n= bsp; ebp,eax

+     &n= bsp;  pxor    xmm9,xmm5

+        add     = edx,DWORD[16+rsp]

+     &n= bsp;  xor     esi,ebx

+        punpcklqdq   &= nbsp;  xmm12,xmm8

+   &nbs= p;    mov     edi,ebp

+        rol   = ;  ebp,5

+     &= nbsp;  pxor    xmm9,xmm10

+        add    &n= bsp;edx,esi

+      &n= bsp; xor     edi,ebx

= +        movdqa  xmm3,xmm13

+        ror  = ;   eax,7

+    &= nbsp;   paddd   xmm13,xmm8

+        add    &n= bsp;edx,ebp

+      &n= bsp; pxor    xmm9,xmm12

+ =        add     ecx,D= WORD[20+rsp]

+      &= nbsp; xor     edi,eax

+        mov     es= i,edx

+       &n= bsp;rol     edx,5

+  =       movdqa  xmm12,xmm9
<= br class=3D"">+        add   &= nbsp; ecx,edi

+     &= nbsp;  cmp     r8d,11

+        jb    &nb= sp; NEAR $L$aesenclast2

+   &nb= sp;    movups  xmm0,XMMWORD[64+r15]
=
+DB      102,15,56,220,209

+        movups &n= bsp;xmm1,XMMWORD[80+r15]

+DB    = ;  102,15,56,220,208

+   &= nbsp;    je      NEAR $L$aesen= clast2

+       &= nbsp;movups  xmm0,XMMWORD[96+r15]

+DB &nb= sp;    102,15,56,220,209

+=        movups  xmm1,XMMWORD[112+r1= 5]

+DB      102,15,56= ,220,208

+$L$aesenclast2:

+DB      102,15,56,221,209
=
+        movups  xmm= 0,XMMWORD[((16-112))+r15]

+    =     xor     esi,eax
<= br class=3D"">+        movdqa  XMMW= ORD[rsp],xmm13

+      = ;  ror     ebp,7

+        add     ec= x,edx

+       &n= bsp;add     ebx,DWORD[24+rsp]

+        pslld   xmm9,2=

+        x= or     esi,ebp

+  &nb= sp;     mov     edi,ecx

+        psrld &n= bsp; xmm12,30

+     &= nbsp;  rol     ecx,5

+        add    &n= bsp;ebx,esi

+      &n= bsp; xor     edi,ebp

= +        ror     edx= ,7

+        = ;por     xmm9,xmm12

+ &nbs= p;      add     ebx,ecx
+        add=     eax,DWORD[28+rsp]

+ &= nbsp;      pshufd  xmm13,xmm8,238

+        ror &nbs= p;   ecx,7

+    =     mov     esi,ebx
<= br class=3D"">+        xor   &= nbsp; edi,edx

+     &= nbsp;  rol     ebx,5

+        add    &n= bsp;eax,edi

+      &n= bsp; xor     esi,ecx

= +        xor     ecx= ,edx

+       &nb= sp;add     eax,ebx

+  = ;      pxor    xmm10,xmm6

+        add &n= bsp;   ebp,DWORD[32+rsp]

+ &nbs= p;      movups  xmm14,XMMWORD[32+r12]
+        xorp= s   xmm14,xmm15

+    =     movups  XMMWORD[16+r12*1+r13],xmm2

+        xorps  &= nbsp;xmm2,xmm14

+     &nbs= p;  movups  xmm1,XMMWORD[((-80))+r15]

+DB      102,15,56,220,208
+        and   &n= bsp; esi,ecx

+     &n= bsp;  xor     ecx,edx

+        ror    &n= bsp;ebx,7

+      &nbs= p; punpcklqdq      xmm13,xmm9
<= br class=3D"">+        mov   &= nbsp; edi,eax

+     &= nbsp;  xor     esi,ecx

+        pxor    x= mm10,xmm11

+      &nb= sp; rol     eax,5

+ &= nbsp;      add     ebp,es= i

+        = movdqa  xmm12,xmm3

+    &n= bsp;   xor     edi,ebx
+        paddd   x= mm3,xmm9

+       = ; xor     ebx,ecx

+ &= nbsp;      pxor    xmm10,xmm13=

+        a= dd     ebp,eax

+  &nb= sp;     add     edx,DWORD[36+r= sp]

+       &nbs= p;and     edi,ebx

+  =       xor     ebx,ecx

+        ror &= nbsp;   eax,7

+   &nb= sp;    movdqa  xmm13,xmm10

+        mov    &n= bsp;esi,ebp

+      &n= bsp; xor     edi,ebx

= +        movdqa  XMMWORD[16+rsp],xm= m3

+        = ;rol     ebp,5

+  &nb= sp;     add     edx,edi

+        movups &= nbsp;xmm0,XMMWORD[((-64))+r15]

+DB   = ;   102,15,56,220,209

+  &= nbsp;     xor     esi,eax

+        pslld =   xmm10,2

+     =    xor     eax,ebx

+        add    &= nbsp;edx,ebp

+      &= nbsp; psrld   xmm13,30

+  =       add     ecx,DWORD[4= 0+rsp]

+       &= nbsp;and     esi,eax

+ &nb= sp;      xor     eax,ebx<= br class=3D"">
+        po= r     xmm10,xmm13

+  =       ror     ebp,7

+        mov &nb= sp;   edi,edx

+   &nb= sp;    xor     esi,eax

+        rol  &nbs= p;  edx,5

+     =    pshufd  xmm3,xmm9,238

+=        add     ecx,= esi

+       &nbs= p;xor     edi,ebp

+  =       xor     ebp,eax

+        add &= nbsp;   ecx,edx

+   &= nbsp;    add     ebx,DWORD[44+rsp]<= br class=3D"">
+        an= d     edi,ebp

+  &nbs= p;     xor     ebp,eax

+        ror  = ;   edx,7

+    &= nbsp;   movups  xmm1,XMMWORD[((-48))+r15]

+DB      102,15,56,220,208

+        mov  = ;   esi,ecx

+    = ;    xor     edi,ebp
=
+        rol   =   ecx,5

+     &n= bsp;  add     ebx,edi

+        xor    &n= bsp;esi,edx

+      &n= bsp; xor     edx,ebp

= +        add     ebx= ,ecx

+       &nb= sp;pxor    xmm11,xmm7

+  &= nbsp;     add     eax,DWORD[48= +rsp]

+       &n= bsp;and     esi,edx

+ &nbs= p;      xor     edx,ebp
+        ror=     ecx,7

+   &= nbsp;    punpcklqdq      xmm3,= xmm10

+       &n= bsp;mov     edi,ebx

+ &nbs= p;      xor     esi,edx
+        pxo= r    xmm11,xmm4

+   &= nbsp;    rol     ebx,5

+        add  &nbs= p;  eax,esi

+    &nbs= p;   movdqa  xmm13,XMMWORD[48+r11]

+        xor    =  edi,ecx

+      =   paddd   xmm12,xmm10

+ &n= bsp;      xor     ecx,edx=

+        p= xor    xmm11,xmm3

+   = ;     add     eax,ebx

+        add  = ;   ebp,DWORD[52+rsp]

+  &= nbsp;     movups  xmm0,XMMWORD[((-32))+r15]
+DB      102,15,56,220= ,209

+       &nb= sp;and     edi,ecx

+  = ;      xor     ecx,edx
+        ror =     ebx,7

+   &n= bsp;    movdqa  xmm3,xmm11

+        mov    &n= bsp;esi,eax

+      &n= bsp; xor     edi,ecx

= +        movdqa  XMMWORD[32+rsp],xm= m12

+       &nbs= p;rol     eax,5

+  &n= bsp;     add     ebp,edi

+        xor &nb= sp;   esi,ebx

+   &nb= sp;    pslld   xmm11,2

+        xor    &n= bsp;ebx,ecx

+      &n= bsp; add     ebp,eax

= +        psrld   xmm3,30

+        add &nb= sp;   edx,DWORD[56+rsp]

+  = ;      and     esi,ebx
+        xor =     ebx,ecx

+   =      por     xmm11,xmm3

+        ror &nbs= p;   eax,7

+    =     mov     edi,ebp
<= br class=3D"">+        xor   &= nbsp; esi,ebx

+     &= nbsp;  rol     ebp,5

+        pshufd  xmm12,xmm10= ,238

+       &nb= sp;add     edx,esi

+  = ;      movups  xmm1,XMMWORD[((-16))+r15]=

+DB      102,15,56,2= 20,208

+       &= nbsp;xor     edi,eax

+ &nb= sp;      xor     eax,ebx<= br class=3D"">
+        ad= d     edx,ebp

+  &nbs= p;     add     ecx,DWORD[60+rs= p]

+        = ;and     edi,eax

+  &= nbsp;     xor     eax,ebx

+        ror &n= bsp;   ebp,7

+   &nbs= p;    mov     esi,edx

+        xor   = ;  edi,eax

+     = ;   rol     edx,5

+        add    &n= bsp;ecx,edi

+      &n= bsp; xor     esi,ebp

= +        xor     ebp= ,eax

+       &nb= sp;add     ecx,edx

+  = ;      pxor    xmm4,xmm8

+        add &nb= sp;   ebx,DWORD[rsp]

+  &n= bsp;     and     esi,ebp

+        xor &nb= sp;   ebp,eax

+   &nb= sp;    ror     edx,7
=
+        movups  xmm= 0,XMMWORD[r15]

+DB     &nb= sp;102,15,56,220,209

+     = ;   punpcklqdq      xmm12,xmm11

+        mov &= nbsp;   edi,ecx

+   &= nbsp;    xor     esi,ebp

+        pxor &nbs= p;  xmm4,xmm5

+    &n= bsp;   rol     ecx,5

+        add    = ; ebx,esi

+      = ;  movdqa  xmm3,xmm13

+  &= nbsp;     xor     edi,edx

+        paddd =   xmm13,xmm11

+    &n= bsp;   xor     edx,ebp
+        pxor   &n= bsp;xmm4,xmm12

+      = ;  add     ebx,ecx

+        add     = eax,DWORD[4+rsp]

+     &nb= sp;  and     edi,edx

+        xor    &n= bsp;edx,ebp

+      &n= bsp; ror     ecx,7

+ =        movdqa  xmm12,xmm4

+        mov  = ;   esi,ebx

+    = ;    xor     edi,edx
=
+        movdqa  XMM= WORD[48+rsp],xmm13

+     &= nbsp;  rol     ebx,5

+        add    &n= bsp;eax,edi

+      &n= bsp; xor     esi,ecx

= +        pslld   xmm4,2

+        xor &nbs= p;   ecx,edx

+   &nbs= p;    add     eax,ebx

+        psrld  &nb= sp;xmm12,30

+      &n= bsp; add     ebp,DWORD[8+rsp]

+        movups  xmm1,XMMW= ORD[16+r15]

+DB      = 102,15,56,220,208

+     &n= bsp;  and     esi,ecx

+        xor    &n= bsp;ecx,edx

+      &n= bsp; por     xmm4,xmm12

+        ror     = ebx,7

+       &n= bsp;mov     edi,eax

+ &nbs= p;      xor     esi,ecx
+        rol=     eax,5

+   &= nbsp;    pshufd  xmm13,xmm11,238
+        add   &nb= sp; ebp,esi

+     &nb= sp;  xor     edi,ebx

+        xor    &n= bsp;ebx,ecx

+      &n= bsp; add     ebp,eax

= +        add     edx= ,DWORD[12+rsp]

+      = ;  and     edi,ebx

+        xor     = ebx,ecx

+       =  ror     eax,7

+ &nbs= p;      mov     esi,ebp
+        xor=     edi,ebx

+   = ;     rol     ebp,5

+        add  = ;   edx,edi

+    = ;    movups  xmm0,XMMWORD[32+r15]
+DB      102,15,56,220,209

+        xor  = ;   esi,eax

+    = ;    xor     eax,ebx
=
+        add   =   edx,ebp

+     =    pxor    xmm5,xmm9

+        add    &n= bsp;ecx,DWORD[16+rsp]

+    &nbs= p;   and     esi,eax

+        xor    = ; eax,ebx

+      = ;  ror     ebp,7

+        punpcklqdq    &= nbsp; xmm13,xmm4

+    &nbs= p;   mov     edi,edx

+        xor    = ; esi,eax

+      = ;  pxor    xmm5,xmm6

= +        rol     edx= ,5

+        = ;add     ecx,esi

+  &= nbsp;     movdqa  xmm12,xmm3
+        xor   &n= bsp; edi,ebp

+     &n= bsp;  paddd   xmm3,xmm4

+ =        xor     ebp,e= ax

+        = ;pxor    xmm5,xmm13

+  &nb= sp;     add     ecx,edx

+        add &nbs= p;   ebx,DWORD[20+rsp]

+  =       and     edi,ebp

+        xor &= nbsp;   ebp,eax

+   &= nbsp;    ror     edx,7

+        movups  x= mm1,XMMWORD[48+r15]

+DB    &nbs= p; 102,15,56,220,208

+    =     movdqa  xmm13,xmm5

+        mov     e= si,ecx

+       &= nbsp;xor     edi,ebp

+ &nb= sp;      movdqa  XMMWORD[rsp],xmm3

+        rol &nb= sp;   ecx,5

+    = ;    add     ebx,edi
=
+        xor   =   esi,edx

+     =    pslld   xmm5,2

+ &= nbsp;      xor     edx,eb= p

+        = add     ebx,ecx

+  &n= bsp;     psrld   xmm13,30
=
+        add   =   eax,DWORD[24+rsp]

+   &n= bsp;    and     esi,edx

+        xor  &nb= sp;  edx,ebp

+    &nb= sp;   por     xmm5,xmm13
<= br class=3D"">+        ror   &= nbsp; ecx,7

+     &nb= sp;  mov     edi,ebx

+        xor    &n= bsp;esi,edx

+      &n= bsp; rol     ebx,5

+ =        pshufd  xmm3,xmm4,238

+        add &nbs= p;   eax,esi

+   &nbs= p;    xor     edi,ecx

+        xor   = ;  ecx,edx

+     = ;   add     eax,ebx

+        add    =  ebp,DWORD[28+rsp]

+    &n= bsp;   cmp     r8d,11

+        jb    = ;  NEAR $L$aesenclast3

+   = ;     movups  xmm0,XMMWORD[64+r15]

+DB      102,15,56,220,209
+        mov= ups  xmm1,XMMWORD[80+r15]

+DB   = ;   102,15,56,220,208

+  &= nbsp;     je      NEAR $L= $aesenclast3

+      &= nbsp; movups  xmm0,XMMWORD[96+r15]

+= DB      102,15,56,220,209

+        movups  xmm1,XMMWOR= D[112+r15]

+DB      1= 02,15,56,220,208

+$L$aesenclast3:

+DB      102,15,56,221,209

+        movups &= nbsp;xmm0,XMMWORD[((16-112))+r15]

+  &nbs= p;     and     edi,ecx

+        xor  = ;   ecx,edx

+    = ;    ror     ebx,7
+        mov   &n= bsp; esi,eax

+     &n= bsp;  xor     edi,ecx

+        rol    &n= bsp;eax,5

+      &nbs= p; add     ebp,edi

+ =        xor     esi,e= bx

+        = ;xor     ebx,ecx

+  &= nbsp;     add     ebp,eax

+        pxor &= nbsp;  xmm6,xmm10

+   &nbs= p;    add     edx,DWORD[32+rsp]

+        and &= nbsp;   esi,ebx

+   &= nbsp;    xor     ebx,ecx

+        ror  = ;   eax,7

+    &= nbsp;   punpcklqdq      xmm3,xmm5
+        mov=     edi,ebp

+   = ;     xor     esi,ebx

+        pxor &nbs= p;  xmm6,xmm7

+    &n= bsp;   rol     ebp,5

+        add    = ; edx,esi

+      = ;  movups  xmm14,XMMWORD[48+r12]

+        xorps   xmm14,xmm15=

+        m= ovups  XMMWORD[32+r12*1+r13],xmm2

+  = ;      xorps   xmm2,xmm14

+        movups &n= bsp;xmm1,XMMWORD[((-80))+r15]

+DB   =    102,15,56,220,208

+  &n= bsp;     movdqa  xmm13,xmm12
+        xor   &n= bsp; edi,eax

+     &n= bsp;  paddd   xmm12,xmm5

+=        xor     eax,= ebx

+       &nbs= p;pxor    xmm6,xmm3

+  &nb= sp;     add     edx,ebp

+        add &nbs= p;   ecx,DWORD[36+rsp]

+  =       and     edi,eax

+        xor &= nbsp;   eax,ebx

+   &= nbsp;    ror     ebp,7

+        movdqa  x= mm3,xmm6

+       = ; mov     esi,edx

+ &= nbsp;      xor     edi,ea= x

+        = movdqa  XMMWORD[16+rsp],xmm12

+  &nb= sp;     rol     edx,5

+        add  = ;   ecx,edi

+    = ;    xor     esi,ebp
=
+        pslld  &nbs= p;xmm6,2

+       = ; xor     ebp,eax

+ &= nbsp;      add     ecx,ed= x

+        = psrld   xmm3,30

+    =     add     ebx,DWORD[40+rsp]

+        and &nb= sp;   esi,ebp

+   &nb= sp;    xor     ebp,eax

+        por  &nbs= p;  xmm6,xmm3

+    &n= bsp;   ror     edx,7

+        movups  xmm0,XMM= WORD[((-64))+r15]

+DB     =  102,15,56,220,209

+    &n= bsp;   mov     edi,ecx
+        xor   &nb= sp; esi,ebp

+     &nb= sp;  rol     ecx,5

+        pshufd  xmm12,xmm5,238<= br class=3D"">
+        ad= d     ebx,esi

+  &nbs= p;     xor     edi,edx

+        xor  = ;   edx,ebp

+    = ;    add     ebx,ecx
=
+        add   =   eax,DWORD[44+rsp]

+   &n= bsp;    and     edi,edx

+        xor  &nb= sp;  edx,ebp

+    &nb= sp;   ror     ecx,7

+        mov    =  esi,ebx

+      =   xor     edi,edx

+        rol     e= bx,5

+       &nb= sp;add     eax,edi

+  = ;      xor     esi,edx
+        add =     eax,ebx

+   =      pxor    xmm7,xmm11

+        add  &nb= sp;  ebp,DWORD[48+rsp]

+   = ;     movups  xmm1,XMMWORD[((-48))+r15]

+DB      102,15,56,220,208=

+        x= or     esi,ecx

+  &nb= sp;     punpcklqdq      x= mm12,xmm6

+      &nbs= p; mov     edi,eax

+ =        rol     eax,5=

+        p= xor    xmm7,xmm8

+   =      add     ebp,esi

+        xor  = ;   edi,ecx

+    = ;    movdqa  xmm3,xmm13

+        ror     = ebx,7

+       &n= bsp;paddd   xmm13,xmm6

+   = ;     add     ebp,eax

+        pxor &nbs= p;  xmm7,xmm12

+    &= nbsp;   add     edx,DWORD[52+rsp]

+        xor &nbs= p;   edi,ebx

+   &nbs= p;    mov     esi,ebp

+        rol   = ;  ebp,5

+     &= nbsp;  movdqa  xmm12,xmm7

+ &nb= sp;      add     edx,edi<= br class=3D"">
+        xo= r     esi,ebx

+  &nbs= p;     movdqa  XMMWORD[32+rsp],xmm13

+        ror  = ;   eax,7

+    &= nbsp;   add     edx,ebp
+        add   &n= bsp; ecx,DWORD[56+rsp]

+   &nbs= p;    pslld   xmm7,2

+        xor    &n= bsp;esi,eax

+      &n= bsp; mov     edi,edx

= +        psrld   xmm12,30

+        rol &n= bsp;   edx,5

+   &nbs= p;    add     ecx,esi

+        movups  xm= m0,XMMWORD[((-32))+r15]

+DB    =   102,15,56,220,209

+   &n= bsp;    xor     edi,eax

+        ror  &nb= sp;  ebp,7

+     = ;   por     xmm7,xmm12
+        add   &nb= sp; ecx,edx

+     &nb= sp;  add     ebx,DWORD[60+rsp]
=
+        xor   =   edi,ebp

+     =    mov     esi,ecx

+        rol    &= nbsp;ecx,5

+      &nb= sp; add     ebx,edi

+=        xor     esi,= ebp

+       &nbs= p;ror     edx,7

+  &n= bsp;     add     ebx,ecx

+        add &nb= sp;   eax,DWORD[rsp]

+  &n= bsp;     xor     esi,edx

+        mov &nb= sp;   edi,ebx

+   &nb= sp;    rol     ebx,5
=
+        paddd  &nbs= p;xmm3,xmm7

+      &n= bsp; add     eax,esi

= +        xor     edi= ,edx

+       &nb= sp;movdqa  XMMWORD[48+rsp],xmm3

+  &= nbsp;     ror     ecx,7

+        add &nbs= p;   eax,ebx

+   &nbs= p;    add     ebp,DWORD[4+rsp]

+        movups=  xmm1,XMMWORD[((-16))+r15]

+DB  &nb= sp;   102,15,56,220,208

+  = ;      xor     edi,ecx
+        mov =     esi,eax

+   =      rol     eax,5

+        add  &nb= sp;  ebp,edi

+    &nb= sp;   xor     esi,ecx

+        ror   &nbs= p; ebx,7

+      =   add     ebp,eax

+        add     e= dx,DWORD[8+rsp]

+     &nbs= p;  xor     esi,ebx

+        mov    &n= bsp;edi,ebp

+      &n= bsp; rol     ebp,5

+ =        add     edx,e= si

+        = ;xor     edi,ebx

+  &= nbsp;     ror     eax,7

+        add &nbs= p;   edx,ebp

+   &nbs= p;    add     ecx,DWORD[12+rsp]

+        xor &= nbsp;   edi,eax

+   &= nbsp;    mov     esi,edx

+        rol  = ;   edx,5

+    &= nbsp;   add     ecx,edi
+        movups  xmm0,= XMMWORD[r15]

+DB      = ;102,15,56,220,209

+     &= nbsp;  xor     esi,eax

+        ror    &n= bsp;ebp,7

+      &nbs= p; add     ecx,edx

+ =        cmp     r10,r= 14

+        = ;je      NEAR $L$done_ssse3

+        movdqa  xmm3,XMMWOR= D[64+r11]

+      &nbs= p; movdqa  xmm13,XMMWORD[r11]

+ &nbs= p;      movdqu  xmm4,XMMWORD[r10]

+        movdqu &= nbsp;xmm5,XMMWORD[16+r10]

+    =     movdqu  xmm6,XMMWORD[32+r10]
+        movdqu  xmm7,X= MMWORD[48+r10]

+DB     &nb= sp;102,15,56,0,227

+     &= nbsp;  add     r10,64

+        add    &n= bsp;ebx,DWORD[16+rsp]

+    &nbs= p;   xor     esi,ebp

+        mov    = ; edi,ecx

+DB     &nb= sp;102,15,56,0,235

+     &= nbsp;  rol     ecx,5

+        add    &n= bsp;ebx,esi

+      &n= bsp; xor     edi,ebp

= +        ror     edx= ,7

+        = ;paddd   xmm4,xmm13

+   &n= bsp;    add     ebx,ecx

+        add  &nb= sp;  eax,DWORD[20+rsp]

+   = ;     xor     edi,edx

+        mov  = ;   esi,ebx

+    = ;    movdqa  XMMWORD[rsp],xmm4

+        rol    = ; ebx,5

+      &= nbsp; add     eax,edi

+        xor     es= i,edx

+       &n= bsp;ror     ecx,7

+  =       psubd   xmm4,xmm13

+        add  = ;   eax,ebx

+    = ;    add     ebp,DWORD[24+rsp]

+        movups=  xmm1,XMMWORD[16+r15]

+DB   &n= bsp;  102,15,56,220,208

+  &nbs= p;     xor     esi,ecx

+        mov  = ;   edi,eax

+    = ;    rol     eax,5
+        add   &n= bsp; ebp,esi

+     &n= bsp;  xor     edi,ecx

+        ror    &n= bsp;ebx,7

+      &nbs= p; add     ebp,eax

+ =        add     edx,D= WORD[28+rsp]

+      &= nbsp; xor     edi,ebx

+        mov     es= i,ebp

+       &n= bsp;rol     ebp,5

+  =       add     edx,edi

+        xor &= nbsp;   esi,ebx

+   &= nbsp;    ror     eax,7

+        add  &nbs= p;  edx,ebp

+    &nbs= p;   add     ecx,DWORD[32+rsp]

+        xor  = ;   esi,eax

+    = ;    mov     edi,edx
=
+DB      102,15,56,0,243

+        rol  = ;   edx,5

+    &= nbsp;   add     ecx,esi
+        movups  xmm0,= XMMWORD[32+r15]

+DB     &n= bsp;102,15,56,220,209

+    &nbs= p;   xor     edi,eax

+        ror    = ; ebp,7

+      &= nbsp; paddd   xmm5,xmm13

+ &nbs= p;      add     ecx,edx
+        add=     ebx,DWORD[36+rsp]

+ &= nbsp;      xor     edi,eb= p

+        = mov     esi,ecx

+  &n= bsp;     movdqa  XMMWORD[16+rsp],xmm5

+        rol  = ;   ecx,5

+    &= nbsp;   add     ebx,edi
+        xor   &n= bsp; esi,ebp

+     &n= bsp;  ror     edx,7

+        psubd   xmm5,x= mm13

+       &nb= sp;add     ebx,ecx

+  = ;      add     eax,DWORD[= 40+rsp]

+       =  xor     esi,edx

+ &n= bsp;      mov     edi,ebx=

+        r= ol     ebx,5

+   = ;     add     eax,esi

+        xor  = ;   edi,edx

+    = ;    ror     ecx,7
+        add   &n= bsp; eax,ebx

+     &n= bsp;  add     ebp,DWORD[44+rsp]

+        movups  xm= m1,XMMWORD[48+r15]

+DB     = ; 102,15,56,220,208

+    &= nbsp;   xor     edi,ecx
+        mov   &n= bsp; esi,eax

+     &n= bsp;  rol     eax,5

+        add    &n= bsp;ebp,edi

+      &n= bsp; xor     esi,ecx

= +        ror     ebx= ,7

+        = ;add     ebp,eax

+  &= nbsp;     add     edx,DWORD[48= +rsp]

+       &n= bsp;xor     esi,ebx

+ &nbs= p;      mov     edi,ebp
+DB      102,15,56,0,2= 51

+        = ;rol     ebp,5

+  &nb= sp;     add     edx,esi

+        xor &nbs= p;   edi,ebx

+   &nbs= p;    ror     eax,7
<= br class=3D"">+        paddd   = ;xmm6,xmm13

+      &n= bsp; add     edx,ebp

= +        add     ecx= ,DWORD[52+rsp]

+      = ;  xor     edi,eax

+        mov     = esi,edx

+       =  movdqa  XMMWORD[32+rsp],xmm6

+ &nbs= p;      rol     edx,5

+        add &= nbsp;   ecx,edi

+   &= nbsp;    cmp     r8d,11

+        jb  &nbs= p;   NEAR $L$aesenclast4

+ &nbs= p;      movups  xmm0,XMMWORD[64+r15]

+DB      102,15,56,220,2= 09

+        = ;movups  xmm1,XMMWORD[80+r15]

+DB  &= nbsp;   102,15,56,220,208

+ &nb= sp;      je      NEA= R $L$aesenclast4

+     &nb= sp;  movups  xmm0,XMMWORD[96+r15]

+DB      102,15,56,220,209

+        movups  xmm1,XMMW= ORD[112+r15]

+DB      = ;102,15,56,220,208

+$L$aesenclast4:

+DB      102,15,56,221,209
+        mov= ups  xmm0,XMMWORD[((16-112))+r15]

+  = ;      xor     esi,eax
+        ror =     ebp,7

+   &n= bsp;    psubd   xmm6,xmm13

+        add   &nbs= p; ecx,edx

+     &nbs= p;  add     ebx,DWORD[56+rsp]
<= br class=3D"">+        xor   &= nbsp; esi,ebp

+     &= nbsp;  mov     edi,ecx

+        rol    &n= bsp;ecx,5

+      &nbs= p; add     ebx,esi

+ =        xor     edi,e= bp

+        = ;ror     edx,7

+  &nb= sp;     add     ebx,ecx

+        add &nbs= p;   eax,DWORD[60+rsp]

+  =       xor     edi,edx

+        mov &= nbsp;   esi,ebx

+   &= nbsp;    rol     ebx,5

+        add  &nbs= p;  eax,edi

+    &nbs= p;   ror     ecx,7

+        add    &= nbsp;eax,ebx

+      &= nbsp; movups  XMMWORD[48+r12*1+r13],xmm2

+        lea    &n= bsp;r12,[64+r12]

+

+        add     e= ax,DWORD[r9]

+      &= nbsp; add     esi,DWORD[4+r9]

+        add    =  ecx,DWORD[8+r9]

+    &nbs= p;   add     edx,DWORD[12+r9]

+        mov  = ;   DWORD[r9],eax

+   = ;     add     ebp,DWORD[16+r9]=

+        m= ov     DWORD[4+r9],esi

+ &= nbsp;      mov     ebx,es= i

+        = mov     DWORD[8+r9],ecx

+ =        mov     edi,e= cx

+        = ;mov     DWORD[12+r9],edx

= +        xor     edi= ,edx

+       &nb= sp;mov     DWORD[16+r9],ebp

+        and     e= si,edi

+       &= nbsp;jmp     NEAR $L$oop_ssse3

+

+$L$done_ssse3:

+        add    &= nbsp;ebx,DWORD[16+rsp]

+    &nb= sp;   xor     esi,ebp

+        mov   &nbs= p; edi,ecx

+     &nbs= p;  rol     ecx,5

+        add     e= bx,esi

+       &= nbsp;xor     edi,ebp

+ &nb= sp;      ror     edx,7
+        add =     ebx,ecx

+   =      add     eax,DWORD[20+rsp]=

+        x= or     edi,edx

+  &nb= sp;     mov     esi,ebx

+        rol &nbs= p;   ebx,5

+    =     add     eax,edi
<= br class=3D"">+        xor   &= nbsp; esi,edx

+     &= nbsp;  ror     ecx,7

+        add    &n= bsp;eax,ebx

+      &n= bsp; add     ebp,DWORD[24+rsp]

+        movups  xmm1,XMM= WORD[16+r15]

+DB      = ;102,15,56,220,208

+     &= nbsp;  xor     esi,ecx

+        mov    &n= bsp;edi,eax

+      &n= bsp; rol     eax,5

+ =        add     ebp,e= si

+        = ;xor     edi,ecx

+  &= nbsp;     ror     ebx,7

+        add &nbs= p;   ebp,eax

+   &nbs= p;    add     edx,DWORD[28+rsp]

+        xor &= nbsp;   edi,ebx

+   &= nbsp;    mov     esi,ebp

+        rol  = ;   ebp,5

+    &= nbsp;   add     edx,edi
+        xor   &n= bsp; esi,ebx

+     &n= bsp;  ror     eax,7

+        add    &n= bsp;edx,ebp

+      &n= bsp; add     ecx,DWORD[32+rsp]

+        xor    = ; esi,eax

+      = ;  mov     edi,edx

+        rol     = edx,5

+       &n= bsp;add     ecx,esi

+ &nbs= p;      movups  xmm0,XMMWORD[32+r15]

+DB      102,15,56,220,2= 09

+        = ;xor     edi,eax

+  &= nbsp;     ror     ebp,7

+        add &nbs= p;   ecx,edx

+   &nbs= p;    add     ebx,DWORD[36+rsp]

+        xor &= nbsp;   edi,ebp

+   &= nbsp;    mov     esi,ecx

+        rol  = ;   ecx,5

+    &= nbsp;   add     ebx,edi
+        xor   &n= bsp; esi,ebp

+     &n= bsp;  ror     edx,7

+        add    &n= bsp;ebx,ecx

+      &n= bsp; add     eax,DWORD[40+rsp]

+        xor    = ; esi,edx

+      = ;  mov     edi,ebx

+        rol     = ebx,5

+       &n= bsp;add     eax,esi

+ &nbs= p;      xor     edi,edx
+        ror=     ecx,7

+   &= nbsp;    add     eax,ebx

+        add  = ;   ebp,DWORD[44+rsp]

+  &= nbsp;     movups  xmm1,XMMWORD[48+r15]

+DB      102,15,56,220,208<= br class=3D"">
+        xo= r     edi,ecx

+  &nbs= p;     mov     esi,eax

+        rol  = ;   eax,5

+    &= nbsp;   add     ebp,edi
+        xor   &n= bsp; esi,ecx

+     &n= bsp;  ror     ebx,7

+        add    &n= bsp;ebp,eax

+      &n= bsp; add     edx,DWORD[48+rsp]

+        xor    = ; esi,ebx

+      = ;  mov     edi,ebp

+        rol     = ebp,5

+       &n= bsp;add     edx,esi

+ &nbs= p;      xor     edi,ebx
+        ror=     eax,7

+   &= nbsp;    add     edx,ebp

+        add  = ;   ecx,DWORD[52+rsp]

+  &= nbsp;     xor     edi,eax

+        mov &n= bsp;   esi,edx

+   &n= bsp;    rol     edx,5

+        add   = ;  ecx,edi

+     = ;   cmp     r8d,11

+        jb    &n= bsp; NEAR $L$aesenclast5

+   &n= bsp;    movups  xmm0,XMMWORD[64+r15]

+DB      102,15,56,220,209

+        movups &n= bsp;xmm1,XMMWORD[80+r15]

+DB    = ;  102,15,56,220,208

+   &= nbsp;    je      NEAR $L$aesen= clast5

+       &= nbsp;movups  xmm0,XMMWORD[96+r15]

+DB &nb= sp;    102,15,56,220,209

+=        movups  xmm1,XMMWORD[112+r1= 5]

+DB      102,15,56= ,220,208

+$L$aesenclast5:

+DB      102,15,56,221,209
=
+        movups  xmm= 0,XMMWORD[((16-112))+r15]

+    =     xor     esi,eax
<= br class=3D"">+        ror   &= nbsp; ebp,7

+     &nb= sp;  add     ecx,edx

+        add    &n= bsp;ebx,DWORD[56+rsp]

+    &nbs= p;   xor     esi,ebp

+        mov    = ; edi,ecx

+      = ;  rol     ecx,5

+        add     eb= x,esi

+       &n= bsp;xor     edi,ebp

+ &nbs= p;      ror     edx,7

+        add &= nbsp;   ebx,ecx

+   &= nbsp;    add     eax,DWORD[60+rsp]<= br class=3D"">
+        xo= r     edi,edx

+  &nbs= p;     mov     esi,ebx

+        rol  = ;   ebx,5

+    &= nbsp;   add     eax,edi
+        ror   &n= bsp; ecx,7

+     &nbs= p;  add     eax,ebx

+        movups  XMMWORD[48+= r12*1+r13],xmm2

+     &nbs= p;  mov     r8,QWORD[88+rsp]
+

+      = ;  add     eax,DWORD[r9]

+        add    =  esi,DWORD[4+r9]

+    &nbs= p;   add     ecx,DWORD[8+r9]

+        mov  &nb= sp;  DWORD[r9],eax

+   &nb= sp;    add     edx,DWORD[12+r9]

+        mov &= nbsp;   DWORD[4+r9],esi

+  = ;      add     ebp,DWORD[= 16+r9]

+       &= nbsp;mov     DWORD[8+r9],ecx

+        mov     = DWORD[12+r9],edx

+     &nb= sp;  mov     DWORD[16+r9],ebp
<= br class=3D"">+        movups  XMMW= ORD[r8],xmm2

+      &= nbsp; movaps  xmm6,XMMWORD[((96+0))+rsp]

+        movaps  xmm7,XMMWOR= D[((96+16))+rsp]

+     &nb= sp;  movaps  xmm8,XMMWORD[((96+32))+rsp]

+        movaps  xmm9,XMM= WORD[((96+48))+rsp]

+     =    movaps  xmm10,XMMWORD[((96+64))+rsp]
<= br class=3D"">+        movaps  xmm1= 1,XMMWORD[((96+80))+rsp]

+    &= nbsp;   movaps  xmm12,XMMWORD[((96+96))+rsp]

+        movaps &n= bsp;xmm13,XMMWORD[((96+112))+rsp]

+  &nbs= p;     movaps  xmm14,XMMWORD[((96+128))+rsp]<= br class=3D"">
+        mo= vaps  xmm15,XMMWORD[((96+144))+rsp]

+ &nb= sp;      lea     rsi,[264= +rsp]

+

+  &= nbsp;     mov     r15,QWORD[rs= i]

+

+  &nbs= p;     mov     r14,QWORD[8+rsi= ]

+

+   = ;     mov     r13,QWORD[16+rsi= ]

+

+   = ;     mov     r12,QWORD[24+rsi= ]

+

+   = ;     mov     rbp,QWORD[32+rsi= ]

+

+   = ;     mov     rbx,QWORD[40+rsi= ]

+

+   = ;     lea     rsp,[48+rsi]

+

+$L$epilogue_ssse3= :

+        = mov     rdi,QWORD[8+rsp]      =   ;WIN64 epilogue

+   &nbs= p;    mov     rsi,QWORD[16+rsp]

+        DB &n= bsp;    0F3h,0C3h       &= nbsp;       ;repret

+

+$L$SEH_end_aesni_cbc_sha1_enc_ssse= 3:

+ALIGN   64

+K_XX_XX:

+     &n= bsp;  DD      0x5a827999,0x5a827999,0x5a= 827999,0x5a827999

+     &n= bsp;  DD      0x6ed9eba1,0x6ed9eba1,0x6e= d9eba1,0x6ed9eba1

+     &n= bsp;  DD      0x8f1bbcdc,0x8f1bbcdc,0x8f= 1bbcdc,0x8f1bbcdc

+     &n= bsp;  DD      0xca62c1d6,0xca62c1d6,0xca= 62c1d6,0xca62c1d6

+     &n= bsp;  DD      0x00010203,0x04050607,0x08= 090a0b,0x0c0d0e0f

+DB
0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x= 4,0x3,0x2,0x1,0x0

+

+DB      65= ,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115

+DB      116,105,116,99,104,32,102,111,114,32,120= ,56,54,95,54,52

+DB     &n= bsp;44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32

+DB      60,97,112,112,114,111,64,111,112,1= 01,110,115,115,108,46,111

+DB   &nbs= p;  114,103,62,0

+ALIGN   = 64

+

+ALIGN  = ; 32

+aesni_cbc_sha1_enc_shaext:

+        mov  = ;   QWORD[8+rsp],rdi       &nb= sp;;WIN64 prologue

+     &= nbsp;  mov     QWORD[16+rsp],rsi

+        mov  &nbs= p;  rax,rsp

+$L$SEH_begin_aesni_cbc_= sha1_enc_shaext:

+     &nb= sp;  mov     rdi,rcx

+        mov    &n= bsp;rsi,rdx

+      &n= bsp; mov     rdx,r8

+=        mov     rcx,= r9

+        = ;mov     r8,QWORD[40+rsp]

= +        mov     r9,= QWORD[48+rsp]

+

+=

+

+   =      mov     r10,QWORD[56+rsp]=

+        l= ea     rsp,[((-168))+rsp]

= +        movaps  XMMWORD[(-8-160)+r= ax],xmm6

+       = ; movaps  XMMWORD[(-8-144)+rax],xmm7

+        movaps  XMMWORD[(-8-128)+= rax],xmm8

+      &nbs= p; movaps  XMMWORD[(-8-112)+rax],xmm9

+        movaps  XMMWORD[(-8-96)+= rax],xmm10

+      &nb= sp; movaps  XMMWORD[(-8-80)+rax],xmm11

+        movaps  XMMWORD[(-8-64)= +rax],xmm12

+      &n= bsp; movaps  XMMWORD[(-8-48)+rax],xmm13

+        movaps  XMMWORD[(-8= -32)+rax],xmm14

+     &nbs= p;  movaps  XMMWORD[(-8-16)+rax],xmm15

+$L$prologue_shaext:

+   &nb= sp;    movdqu  xmm8,XMMWORD[r9]

+        movd   &nb= sp;xmm9,DWORD[16+r9]

+     = ;   movdqa  xmm7,XMMWORD[((K_XX_XX+80))]
=
+

+     &nb= sp;  mov     r11d,DWORD[240+rcx]

+        sub  &nbs= p;  rsi,rdi

+    &nbs= p;   movups  xmm15,XMMWORD[rcx]

+        movups  xmm2,XMMWOR= D[r8]

+       &n= bsp;movups  xmm0,XMMWORD[16+rcx]

+  =       lea     rcx,[112+rc= x]

+

+  &nbs= p;     pshufd  xmm8,xmm8,27
+        pshufd  xmm9,x= mm9,27

+       &= nbsp;jmp     NEAR $L$oop_shaext

+

+ALIGN   16
<= br class=3D"">+$L$oop_shaext:

+   &n= bsp;    movups  xmm14,XMMWORD[rdi]
<= br class=3D"">+        xorps   = ;xmm14,xmm15

+      &= nbsp; xorps   xmm2,xmm14

+ &nbs= p;      movups  xmm1,XMMWORD[((-80))+rcx= ]

+DB      102,15,56,= 220,208

+       =  movdqu  xmm3,XMMWORD[r10]

+  &= nbsp;     movdqa  xmm12,xmm9
+DB      102,15,56,0,223

+        movdqu  x= mm4,XMMWORD[16+r10]

+     =    movdqa  xmm11,xmm8

+ &n= bsp;      movups  xmm0,XMMWORD[((-64))+r= cx]

+DB      102,15,5= 6,220,209

+DB      10= 2,15,56,0,231

+

+=        paddd   xmm9,xmm3

+        movdqu=  xmm5,XMMWORD[32+r10]

+   &nbs= p;    lea     r10,[64+r10]

+        pxor &nbs= p;  xmm3,xmm12

+    &= nbsp;   movups  xmm1,XMMWORD[((-48))+rcx]

+DB      102,15,56,220,208

+        pxor &nbs= p;  xmm3,xmm12

+    &= nbsp;   movdqa  xmm10,xmm8

+DB      102,15,56,0,239

+DB      69,15,58,204,193,0
<= br class=3D"">+DB      68,15,56,200,212

+        movups &n= bsp;xmm0,XMMWORD[((-32))+rcx]

+DB   =    102,15,56,220,209

+DB  =     15,56,201,220

+  =       movdqu  xmm6,XMMWORD[((-16))+r10]<= br class=3D"">
+        mo= vdqa  xmm9,xmm8

+DB    &nb= sp; 102,15,56,0,247

+    &= nbsp;   movups  xmm1,XMMWORD[((-16))+rcx]

+DB      102,15,56,220,208

+DB      69,15,58,204,194,0<= br class=3D"">
+DB      68,15,56,200= ,205

+       &nb= sp;pxor    xmm3,xmm5

+DB  =     15,56,201,229

+  =       movups  xmm0,XMMWORD[rcx]

+DB      102,15,56,220,209
+        mov= dqa  xmm10,xmm8

+DB    &nb= sp; 69,15,58,204,193,0

+DB   &n= bsp;  68,15,56,200,214

+   = ;     movups  xmm1,XMMWORD[16+rcx]

+DB      102,15,56,220,208
+DB      15,56,202,222=

+        p= xor    xmm4,xmm6

+DB  &nbs= p;   15,56,201,238

+  &nbs= p;     movups  xmm0,XMMWORD[32+rcx]

+DB      102,15,56,220,209
+        mov= dqa  xmm9,xmm8

+DB    &nbs= p; 69,15,58,204,194,0

+DB   &nb= sp;  68,15,56,200,203

+   =      movups  xmm1,XMMWORD[48+rcx]

+DB      102,15,56,220,208

+DB      15,56,202,227

+        pxor =    xmm5,xmm3

+DB   &n= bsp;  15,56,201,243

+   &n= bsp;    cmp     r11d,11

+        jb  &nbs= p;   NEAR $L$aesenclast6

+ &nbs= p;      movups  xmm0,XMMWORD[64+rcx]

+DB      102,15,56,220,2= 09

+        = ;movups  xmm1,XMMWORD[80+rcx]

+DB  &= nbsp;   102,15,56,220,208

+ &nb= sp;      je      NEA= R $L$aesenclast6

+     &nb= sp;  movups  xmm0,XMMWORD[96+rcx]

+DB      102,15,56,220,209

+        movups  xmm1,XMMW= ORD[112+rcx]

+DB      = ;102,15,56,220,208

+$L$aesenclast6:

+DB      102,15,56,221,209
+        mov= ups  xmm0,XMMWORD[((16-112))+rcx]

+  = ;      movdqa  xmm10,xmm8
=
+DB      69,15,58,204,193,0

+DB      68,15,56,200,212
+        movu= ps  xmm14,XMMWORD[16+rdi]

+   &= nbsp;    xorps   xmm14,xmm15
+        movups  XMMWO= RD[rdi*1+rsi],xmm2

+     &= nbsp;  xorps   xmm2,xmm14

= +        movups  xmm1,XMMWORD[((-80= ))+rcx]

+DB      102,= 15,56,220,208

+DB     &nbs= p;15,56,202,236

+     &nbs= p;  pxor    xmm6,xmm4

+DB      15,56,201,220

+        movups  xmm0,XMMWORD[((= -64))+rcx]

+DB      1= 02,15,56,220,209

+     &nb= sp;  movdqa  xmm9,xmm8

+DB &nbs= p;    69,15,58,204,194,1

+= DB      68,15,56,200,205

+        movups  xmm1,XMMWOR= D[((-48))+rcx]

+DB     &nb= sp;102,15,56,220,208

+DB    &nb= sp; 15,56,202,245

+    &nb= sp;   pxor    xmm3,xmm5

+DB      15,56,201,229

+        movups  xmm0,XMM= WORD[((-32))+rcx]

+DB     =  102,15,56,220,209

+    &n= bsp;   movdqa  xmm10,xmm8

= +DB      69,15,58,204,193,1

+DB      68,15,56,200,214
+        movups  xmm1,X= MMWORD[((-16))+rcx]

+DB    &nbs= p; 102,15,56,220,208

+DB   &nbs= p;  15,56,202,222

+   &nbs= p;    pxor    xmm4,xmm6
+DB      15,56,201,238
=
+        movups  xmm= 0,XMMWORD[rcx]

+DB     &nb= sp;102,15,56,220,209

+     = ;   movdqa  xmm9,xmm8

+DB =      69,15,58,204,194,1

+DB      68,15,56,200,203

+        movups  xmm1,XMMWO= RD[16+rcx]

+DB      1= 02,15,56,220,208

+DB     &= nbsp;15,56,202,227

+     &= nbsp;  pxor    xmm5,xmm3

+DB      15,56,201,243

+        movups  xmm0,XMMW= ORD[32+rcx]

+DB      = 102,15,56,220,209

+     &n= bsp;  movdqa  xmm10,xmm8

+DB &n= bsp;    69,15,58,204,193,1

+DB      68,15,56,200,212

+        movups  xmm1,XMMWOR= D[48+rcx]

+DB      10= 2,15,56,220,208

+DB     &n= bsp;15,56,202,236

+     &n= bsp;  pxor    xmm6,xmm4

+DB      15,56,201,220

+        cmp    &n= bsp;r11d,11

+      &n= bsp; jb      NEAR $L$aesenclast7

+        movups  x= mm0,XMMWORD[64+rcx]

+DB    &nbs= p; 102,15,56,220,209

+    =     movups  xmm1,XMMWORD[80+rcx]
+DB      102,15,56,220,208

+        je  &nbs= p;   NEAR $L$aesenclast7

+ &nbs= p;      movups  xmm0,XMMWORD[96+rcx]

+DB      102,15,56,220,2= 09

+        = ;movups  xmm1,XMMWORD[112+rcx]

+DB  =     102,15,56,220,208

+$L$= aesenclast7:

+DB      = ;102,15,56,221,209

+     &= nbsp;  movups  xmm0,XMMWORD[((16-112))+rcx]
+        movdqa  xmm9,= xmm8

+DB      69,15,5= 8,204,194,1

+DB      = 68,15,56,200,205

+     &nb= sp;  movups  xmm14,XMMWORD[32+rdi]

+        xorps   xmm14,= xmm15

+       &n= bsp;movups  XMMWORD[16+rdi*1+rsi],xmm2

+ =        xorps   xmm2,xmm14

+        movups=  xmm1,XMMWORD[((-80))+rcx]

+DB  &nb= sp;   102,15,56,220,208

+DB &nb= sp;    15,56,202,245

+ &nb= sp;      pxor    xmm3,xmm5

+DB      15,56,201,229
+        mov= ups  xmm0,XMMWORD[((-64))+rcx]

+DB  =     102,15,56,220,209

+ &n= bsp;      movdqa  xmm10,xmm8

+DB      69,15,58,204,193,2

+DB      68,15,56,200,214=

+        m= ovups  xmm1,XMMWORD[((-48))+rcx]

+DB &nbs= p;    102,15,56,220,208

+D= B      15,56,202,222

= +        pxor    xmm4,xmm= 6

+DB      15,56,201,= 238

+       &nbs= p;movups  xmm0,XMMWORD[((-32))+rcx]

+DB &= nbsp;    102,15,56,220,209

+        movdqa  xmm9,xmm8

+DB      69,15,58,204,194,2<= br class=3D"">
+DB      68,15,56,200= ,203

+       &nb= sp;movups  xmm1,XMMWORD[((-16))+rcx]

+DB =      102,15,56,220,208

+DB      15,56,202,227

+        pxor    x= mm5,xmm3

+DB      15,= 56,201,243

+      &nb= sp; movups  xmm0,XMMWORD[rcx]

+DB &n= bsp;    102,15,56,220,209

= +        movdqa  xmm10,xmm8

+DB      69,15,58,204,193,2<= br class=3D"">
+DB      68,15,56,200= ,212

+       &nb= sp;movups  xmm1,XMMWORD[16+rcx]

+DB  = ;    102,15,56,220,208

+DB=      15,56,202,236

+=        pxor    xmm6,xmm4=

+DB      15,56,201,2= 20

+        = ;movups  xmm0,XMMWORD[32+rcx]

+DB  &= nbsp;   102,15,56,220,209

+ &nb= sp;      movdqa  xmm9,xmm8

+DB      69,15,58,204,194,2

+DB      68,15,56,200,205
+        mov= ups  xmm1,XMMWORD[48+rcx]

+DB   = ;   102,15,56,220,208

+DB  = ;    15,56,202,245

+  = ;      pxor    xmm3,xmm5

+DB      15,56,201,229

+        cmp &= nbsp;   r11d,11

+   &= nbsp;    jb      NEAR $L$aesen= clast8

+       &= nbsp;movups  xmm0,XMMWORD[64+rcx]

+DB &nb= sp;    102,15,56,220,209

+=        movups  xmm1,XMMWORD[80+rcx= ]

+DB      102,15,56,= 220,208

+       =  je      NEAR $L$aesenclast8
+        movups  xmm0,= XMMWORD[96+rcx]

+DB     &n= bsp;102,15,56,220,209

+    &nbs= p;   movups  xmm1,XMMWORD[112+rcx]

+DB      102,15,56,220,208
=
+$L$aesenclast8:

+DB  &nbs= p;   102,15,56,221,209

+  =       movups  xmm0,XMMWORD[((16-112))+rc= x]

+        = ;movdqa  xmm10,xmm8

+DB    = ;  69,15,58,204,193,2

+DB  &nbs= p;   68,15,56,200,214

+  &= nbsp;     movups  xmm14,XMMWORD[48+rdi]

+        xorps &= nbsp; xmm14,xmm15

+    &nb= sp;   movups  XMMWORD[32+rdi*1+rsi],xmm2
=
+        xorps  &nbs= p;xmm2,xmm14

+      &= nbsp; movups  xmm1,XMMWORD[((-80))+rcx]

+DB      102,15,56,220,208
+DB      15,56,202,222
=
+        pxor   = ; xmm4,xmm6

+DB     &= nbsp;15,56,201,238

+     &= nbsp;  movups  xmm0,XMMWORD[((-64))+rcx]

+DB      102,15,56,220,209

+        movdqa  xm= m9,xmm8

+DB      69,1= 5,58,204,194,3

+DB     &nb= sp;68,15,56,200,203

+     =    movups  xmm1,XMMWORD[((-48))+rcx]

+DB      102,15,56,220,208

+DB      15,56,202,227

+        pxor &nbs= p;  xmm5,xmm3

+DB    =   15,56,201,243

+    =     movups  xmm0,XMMWORD[((-32))+rcx]

+DB      102,15,56,220,209

+        movdqa &= nbsp;xmm10,xmm8

+DB     &n= bsp;69,15,58,204,193,3

+DB    &= nbsp; 68,15,56,200,212

+DB   &n= bsp;  15,56,202,236

+   &n= bsp;    pxor    xmm6,xmm4
=
+        movups  xmm= 1,XMMWORD[((-16))+rcx]

+DB    &= nbsp; 102,15,56,220,208

+   &nb= sp;    movdqa  xmm9,xmm8

+DB      69,15,58,204,194,3
<= br class=3D"">+DB      68,15,56,200,205

+DB      15,56,202,245

+        movups =  xmm0,XMMWORD[rcx]

+DB    =   102,15,56,220,209

+   &n= bsp;    movdqa  xmm5,xmm12

+        movdqa  xmm10,xmm8<= br class=3D"">
+DB      69,15,58,204= ,193,3

+DB      68,15= ,56,200,214

+      &n= bsp; movups  xmm1,XMMWORD[16+rcx]

+D= B      102,15,56,220,208

+        movdqa  xmm9,xmm8
+DB      69,15,58,204,= 194,3

+DB      68,15,= 56,200,205

+      &nb= sp; movups  xmm0,XMMWORD[32+rcx]

+DB=      102,15,56,220,209

+        movups  xmm1,XMMWORD[48= +rcx]

+DB      102,15= ,56,220,208

+      &n= bsp; cmp     r11d,11

= +        jb     &nbs= p;NEAR $L$aesenclast9

+    &nbs= p;   movups  xmm0,XMMWORD[64+rcx]

+DB      102,15,56,220,209
<= br class=3D"">+        movups  xmm1= ,XMMWORD[80+rcx]

+DB     &= nbsp;102,15,56,220,208

+    &nb= sp;   je      NEAR $L$aesenclast9
+        mov= ups  xmm0,XMMWORD[96+rcx]

+DB   = ;   102,15,56,220,209

+  &= nbsp;     movups  xmm1,XMMWORD[112+rcx]

+DB      102,15,56,220,208=

+$L$aesenclast9:

+DB      102,15,56,221,209

+        movups  xmm0,XMMWOR= D[((16-112))+rcx]

+     &n= bsp;  dec     rdx

+

+       &nbs= p;paddd   xmm8,xmm11

+   &= nbsp;    movups  XMMWORD[48+rdi*1+rsi],xmm2

+        lea &nbs= p;   rdi,[64+rdi]

+   = ;     jnz     NEAR $L$oop_shae= xt

+

+  &nbs= p;     pshufd  xmm8,xmm8,27
+        pshufd  xmm9,x= mm9,27

+       &= nbsp;movups  XMMWORD[r8],xmm2

+  &nb= sp;     movdqu  XMMWORD[r9],xmm8

+        movd  &nb= sp; DWORD[16+r9],xmm9

+    = ;    movaps  xmm6,XMMWORD[((-8-160))+rax]

+        movaps &n= bsp;xmm7,XMMWORD[((-8-144))+rax]

+   = ;     movaps  xmm8,XMMWORD[((-8-128))+rax]
+        mova= ps  xmm9,XMMWORD[((-8-112))+rax]

+  =       movaps  xmm10,XMMWORD[((-8-96))+ra= x]

+        = ;movaps  xmm11,XMMWORD[((-8-80))+rax]

+ &= nbsp;      movaps  xmm12,XMMWORD[((-8-64= ))+rax]

+       =  movaps  xmm13,XMMWORD[((-8-48))+rax]

+        movaps  xmm14,XMMWORD[((= -8-32))+rax]

+      &= nbsp; movaps  xmm15,XMMWORD[((-8-16))+rax]

+        mov    &n= bsp;rsp,rax

+$L$epilogue_shaext:

+        mov   = ;  rdi,QWORD[8+rsp]        ;WI= N64 epilogue

+      &= nbsp; mov     rsi,QWORD[16+rsp]

+        DB    = ;  0F3h,0C3h         &nbs= p;     ;repret

+

+$L$SEH_end_aesni_cbc_sha1_enc_shaext:

+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16

+ssse3_handler:

+   =      push    rsi

+        push   &nb= sp;rdi

+       &= nbsp;push    rbx

+   =      push    rbp

+        push   &nb= sp;r12

+       &= nbsp;push    r13

+   =      push    r14

+        push   &nb= sp;r15

+       &= nbsp;pushfq

+      &n= bsp; sub     rsp,64

+=

+        m= ov     rax,QWORD[120+r8]

+=        mov     rbx,= QWORD[248+r8]

+

+=        mov     rsi,= QWORD[8+r9]

+      &n= bsp; mov     r11,QWORD[56+r9]

+

+      &nb= sp; mov     r10d,DWORD[r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jb    &n= bsp; NEAR $L$common_seh_tail

+

+        mov  = ;   rax,QWORD[152+r8]

+

+        mov  = ;   r10d,DWORD[4+r11]

+  &= nbsp;     lea     r10,[r10*1+r= si]

+       &nbs= p;cmp     rbx,r10

+  =       jae     NEAR $L$com= mon_seh_tail

+      &= nbsp; lea     r10,[aesni_cbc_sha1_enc_shaext]

+        cmp &n= bsp;   rbx,r10

+   &n= bsp;    jb      NEAR $L$seh_no= _shaext

+

+  = ;      lea     rsi,[rax]<= br class=3D"">
+        le= a     rdi,[512+r8]

+  = ;      mov     ecx,20

+        DD &n= bsp;    0xa548f3fc

+  = ;      lea     rax,[168+r= ax]

+       &nbs= p;jmp     NEAR $L$common_seh_tail

+$L$seh_no_shaext:

+    = ;    lea     rsi,[96+rax]

+        lea  = ;   rdi,[512+r8]

+   =      mov     ecx,20

+        DD  =     0xa548f3fc

+  &nb= sp;     lea     rax,[264+rax]<= br class=3D"">
+

+   &= nbsp;    mov     r15,QWORD[rax]

+        mov &= nbsp;   r14,QWORD[8+rax]

+ &nbs= p;      mov     r13,QWORD= [16+rax]

+       = ; mov     r12,QWORD[24+rax]

+        mov    &n= bsp;rbp,QWORD[32+rax]

+    &nbs= p;   mov     rbx,QWORD[40+rax]

+        lea  = ;   rax,[48+rax]

+   =      mov     QWORD[144+r8],rbx=

+        m= ov     QWORD[160+r8],rbp

+=        mov     QWOR= D[216+r8],r12

+      =   mov     QWORD[224+r8],r13
+        mov   &nb= sp; QWORD[232+r8],r14

+    = ;    mov     QWORD[240+r8],r15

+

+$L$common_seh_tail= :

+        = mov     rdi,QWORD[8+rax]

+=        mov     rsi,= QWORD[16+rax]

+      =   mov     QWORD[152+r8],rax
+        mov   &nb= sp; QWORD[168+r8],rsi

+    = ;    mov     QWORD[176+r8],rdi

+

+    = ;    mov     rdi,QWORD[40+r9]

+        mov &nb= sp;   rsi,r8

+   &nbs= p;    mov     ecx,154

+        DD   =    0xa548f3fc

+
<= br class=3D"">+        mov   &= nbsp; rsi,r9

+     &n= bsp;  xor     rcx,rcx

+        mov    &n= bsp;rdx,QWORD[8+rsi]

+     = ;   mov     r8,QWORD[rsi]
=
+        mov   =   r9,QWORD[16+rsi]

+   &nb= sp;    mov     r10,QWORD[40+rsi]
+        lea =     r11,[56+rsi]

+  &= nbsp;     lea     r12,[24+rsi]=

+        m= ov     QWORD[32+rsp],r10

+=        mov     QWOR= D[40+rsp],r11

+      =   mov     QWORD[48+rsp],r12
+        mov   &nb= sp; QWORD[56+rsp],rcx

+    = ;    call    QWORD[__imp_RtlVirtualUnwin= d]

+

+  &nbs= p;     mov     eax,1

+        add  = ;   rsp,64

+    =     popfq

+   &n= bsp;    pop     r15
<= br class=3D"">+        pop   &= nbsp; r14

+      = ;  pop     r13

+=        pop     r12<= br class=3D"">
+        po= p     rbp

+   &n= bsp;    pop     rbx
<= br class=3D"">+        pop   &= nbsp; rdi

+      = ;  pop     rsi

+=        DB      = ;0F3h,0C3h           &nbs= p;   ;repret

+
+

+section .pdata rdata align=3D4=

+ALIGN   4

+        DD    &nb= sp; $L$SEH_begin_aesni_cbc_sha1_enc_ssse3 wrt ..imagebase

+        DD   = ;   $L$SEH_end_aesni_cbc_sha1_enc_ssse3 wrt ..imagebase

+        DD &nb= sp;    $L$SEH_info_aesni_cbc_sha1_enc_ssse3 wrt ..image= base

+       &nb= sp;DD      $L$SEH_begin_aesni_cbc_sha1_enc_shaext = wrt ..imagebase

+     &nbs= p;  DD      $L$SEH_end_aesni_cbc_sha1_en= c_shaext wrt ..imagebase

+    &= nbsp;   DD      $L$SEH_info_aesni_c= bc_sha1_enc_shaext wrt ..imagebase

+section .x= data rdata align=3D8

+ALIGN   8

+$L$SEH_info_aesni_cbc_sha1_enc_ssse3:

+DB      9,0,0,0
<= br class=3D"">+        DD   &n= bsp;  ssse3_handler wrt ..imagebase

= +        DD     &nbs= p;$L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3
wrt ..i= magebase

+$L$SEH_info_aesni_cbc_sha1_enc_shaex= t:

+DB      9,0,0,0
+        DD =      ssse3_handler wrt ..imagebase
<= br class=3D"">+        DD   &n= bsp;  $L$prologue_shaext wrt ..imagebase,$L$epilogue_shaext
wrt ..imagebase

diff --git a/CryptoPk= g/Library/OpensslLib/X64/crypto/aes/aesni-sha256-
x86_64.nasm= b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-
sha256-
x86_64.nasm
new file = mode 100644
index 0000000000..f5c250b904
--- /d= ev/null
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aes= ni-sha256-
x86_64.nasm
@@ -0,0 +1,78 @@
+; WARNING: do not edit!

+; Generated f= rom openssl/crypto/aes/asm/aesni-sha256-x86_64.pl

+;

+; Copyright 2013-2020 The OpenSSL P= roject Authors. All Rights
Reserved.

+;

+; Licensed under the OpenSSL licens= e (the "License").  You may not use

+; th= is file except in compliance with the License.  You can obtain a
copy

+; in the file LICENSE in the so= urce distribution or at

+; https://www.openssl.org/sou= rce/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%defin= e ZMMWORD

+section .text code align=3D64

+

+

+EXTERN  OPENSSL_ia32cap_P

+gl= obal  aesni_cbc_sha256_enc

+

+ALIGN   16

+aesni_= cbc_sha256_enc:

+

+        xor     ea= x,eax

+       &n= bsp;cmp     rcx,0

+  =       je      NEAR $= L$probe

+       =  ud2

+$L$probe:

+        DB    &nb= sp; 0F3h,0C3h          &n= bsp;    ;repret

+

+

+

+ALIGN   64

+

+K256:

+    &nb= sp;   DD      0x428a2f98,0x71374491= ,0xb5c0fbcf,0xe9b5dba5

+    &nb= sp;   DD      0x428a2f98,0x71374491= ,0xb5c0fbcf,0xe9b5dba5

+    &nb= sp;   DD      0x3956c25b,0x59f111f1= ,0x923f82a4,0xab1c5ed5

+    &nb= sp;   DD      0x3956c25b,0x59f111f1= ,0x923f82a4,0xab1c5ed5

+    &nb= sp;   DD      0xd807aa98,0x12835b01= ,0x243185be,0x550c7dc3

+    &nb= sp;   DD      0xd807aa98,0x12835b01= ,0x243185be,0x550c7dc3

+    &nb= sp;   DD      0x72be5d74,0x80deb1fe= ,0x9bdc06a7,0xc19bf174

+    &nb= sp;   DD      0x72be5d74,0x80deb1fe= ,0x9bdc06a7,0xc19bf174

+    &nb= sp;   DD      0xe49b69c1,0xefbe4786= ,0x0fc19dc6,0x240ca1cc

+    &nb= sp;   DD      0xe49b69c1,0xefbe4786= ,0x0fc19dc6,0x240ca1cc

+    &nb= sp;   DD      0x2de92c6f,0x4a7484aa= ,0x5cb0a9dc,0x76f988da

+    &nb= sp;   DD      0x2de92c6f,0x4a7484aa= ,0x5cb0a9dc,0x76f988da

+    &nb= sp;   DD      0x983e5152,0xa831c66d= ,0xb00327c8,0xbf597fc7

+    &nb= sp;   DD      0x983e5152,0xa831c66d= ,0xb00327c8,0xbf597fc7

+    &nb= sp;   DD      0xc6e00bf3,0xd5a79147= ,0x06ca6351,0x14292967

+    &nb= sp;   DD      0xc6e00bf3,0xd5a79147= ,0x06ca6351,0x14292967

+    &nb= sp;   DD      0x27b70a85,0x2e1b2138= ,0x4d2c6dfc,0x53380d13

+    &nb= sp;   DD      0x27b70a85,0x2e1b2138= ,0x4d2c6dfc,0x53380d13

+    &nb= sp;   DD      0x650a7354,0x766a0abb= ,0x81c2c92e,0x92722c85

+    &nb= sp;   DD      0x650a7354,0x766a0abb= ,0x81c2c92e,0x92722c85

+    &nb= sp;   DD      0xa2bfe8a1,0xa81a664b= ,0xc24b8b70,0xc76c51a3

+    &nb= sp;   DD      0xa2bfe8a1,0xa81a664b= ,0xc24b8b70,0xc76c51a3

+    &nb= sp;   DD      0xd192e819,0xd6990624= ,0xf40e3585,0x106aa070

+    &nb= sp;   DD      0xd192e819,0xd6990624= ,0xf40e3585,0x106aa070

+    &nb= sp;   DD      0x19a4c116,0x1e376c08= ,0x2748774c,0x34b0bcb5

+    &nb= sp;   DD      0x19a4c116,0x1e376c08= ,0x2748774c,0x34b0bcb5

+    &nb= sp;   DD      0x391c0cb3,0x4ed8aa4a= ,0x5b9cca4f,0x682e6ff3

+    &nb= sp;   DD      0x391c0cb3,0x4ed8aa4a= ,0x5b9cca4f,0x682e6ff3

+    &nb= sp;   DD      0x748f82ee,0x78a5636f= ,0x84c87814,0x8cc70208

+    &nb= sp;   DD      0x748f82ee,0x78a5636f= ,0x84c87814,0x8cc70208

+    &nb= sp;   DD      0x90befffa,0xa4506ceb= ,0xbef9a3f7,0xc67178f2

+    &nb= sp;   DD      0x90befffa,0xa4506ceb= ,0xbef9a3f7,0xc67178f2

+

+        DD    &n= bsp; 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f

+        DD    &n= bsp; 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f

+        DD    &n= bsp; 0,0,0,0,0,0,0,0,-1,-1,-1,-1

+  =       DD      0,0,0,= 0,0,0,0,0

+DB      65= ,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54

= +DB      32,115,116,105,116,99,104,32,102,111,114,= 32,120,56,54,95

+DB     &n= bsp;54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98

+DB      121,32,60,97,112,112,114,111,64,11= 1,112,101,110,115,115,108

+DB   &nbs= p;  46,111,114,103,62,0

+ALIGN  = ; 64

diff --git a/CryptoPkg/Library/Opens= slLib/X64/crypto/aes/aesni-
x86_64.= nasm
b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-x86_6= 4.nasm
new file mode 100644
index 0000000000..5= 7ee23ea8c
--- /dev/null
+++ b/CryptoPkg/Library= /OpensslLib/X64/crypto/aes/aesni-x86_64.nasm
@@ -0,0 +1,5103 = @@
+; WARNING: do not edit!

+; G= enerated from openssl/crypto/aes/asm/aesni-x86_64.pl

+;

+; Copyright 2009-2020 The OpenSSL P= roject Authors. All Rights
Reserved.

+;

+; Licensed under the OpenSSL licens= e (the "License").  You may not use

+; th= is file except in compliance with the License.  You can obtain a
copy

+; in the file LICENSE in the so= urce distribution or at

+; https://www.openssl.org/sou= rce/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%defin= e ZMMWORD

+section .text code align=3D64

+

+EXTERN  OPENSS= L_ia32cap_P

+global  aesni_encrypt

+

+ALIGN   16=

+aesni_encrypt:

= +

+        = movups  xmm2,XMMWORD[rcx]

+   &= nbsp;    mov     eax,DWORD[240+r8]<= br class=3D"">
+        mo= vups  xmm0,XMMWORD[r8]

+   &nbs= p;    movups  xmm1,XMMWORD[16+r8]
+        lea   &n= bsp; r8,[32+r8]

+     = ;   xorps   xmm2,xmm0

+$L$oop_enc1_1:

+DB     &= nbsp;102,15,56,220,209

+    &nb= sp;   dec     eax

+        movups  xmm1,XMMWOR= D[r8]

+       &n= bsp;lea     r8,[16+r8]

+ &= nbsp;      jnz     NEAR $= L$oop_enc1_1

+DB      = ;102,15,56,221,209

+     &= nbsp;  pxor    xmm0,xmm0

+        pxor    x= mm1,xmm1

+       = ; movups  XMMWORD[rdx],xmm2

+  =       pxor    xmm2,xmm2

+        DB  = ;    0F3h,0C3h       &nbs= p;       ;repret

+

+

+

+global  aesni_decrypt

+

+ALIGN   16
<= br class=3D"">+aesni_decrypt:

+
=
+        movups  xmm= 2,XMMWORD[rcx]

+      = ;  mov     eax,DWORD[240+r8]
+        movups  xmm0,= XMMWORD[r8]

+      &n= bsp; movups  xmm1,XMMWORD[16+r8]

+ &= nbsp;      lea     r8,[32= +r8]

+       &nb= sp;xorps   xmm2,xmm0

+$L$oop_dec1_2:=

+DB      102,15,56,2= 22,209

+       &= nbsp;dec     eax

+  &= nbsp;     movups  xmm1,XMMWORD[r8]

+        lea  = ;   r8,[16+r8]

+   &n= bsp;    jnz     NEAR $L$oop_dec1_2<= br class=3D"">
+DB      102,15,56,22= 3,209

+       &n= bsp;pxor    xmm0,xmm0

+  &= nbsp;     pxor    xmm1,xmm1

+        movups &n= bsp;XMMWORD[rdx],xmm2

+    &nbs= p;   pxor    xmm2,xmm2

+        DB    &nb= sp; 0F3h,0C3h          &n= bsp;    ;repret

+

+

+

+ALIGN   16

+_aesni_encrypt= 2:

+

+  &nbs= p;     movups  xmm0,XMMWORD[rcx]

+        shl  &nbs= p;  eax,4

+     =    movups  xmm1,XMMWORD[16+rcx]

+        xorps   xmm2,x= mm0

+       &nbs= p;xorps   xmm3,xmm0

+   &n= bsp;    movups  xmm0,XMMWORD[32+rcx]

+        lea   = ;  rcx,[32+rax*1+rcx]

+   =      neg     rax

+        add   = ;  rax,16

+

+$L$enc_loop2:

+DB    &n= bsp; 102,15,56,220,209

+DB   &n= bsp;  102,15,56,220,217

+  &nbs= p;     movups  xmm1,XMMWORD[rax*1+rcx]

+        add &nbs= p;   rax,32

+DB   &nb= sp;  102,15,56,220,208

+DB  &nb= sp;   102,15,56,220,216

+  = ;      movups  xmm0,XMMWORD[((-16))+rax*= 1+rcx]

+       &= nbsp;jnz     NEAR $L$enc_loop2

+

+DB      102= ,15,56,220,209

+DB     &nb= sp;102,15,56,220,217

+DB    &nb= sp; 102,15,56,221,208

+DB   &nb= sp;  102,15,56,221,216

+   = ;     DB      0F3h,0C3h &= nbsp;           &nbs= p; ;repret

+

+

+

+ALIGN  = ; 16

+_aesni_decrypt2:

+

+      &= nbsp; movups  xmm0,XMMWORD[rcx]

+ &n= bsp;      shl     eax,4
+        mov= ups  xmm1,XMMWORD[16+rcx]

+   &= nbsp;    xorps   xmm2,xmm0

+        xorps   xm= m3,xmm0

+       =  movups  xmm0,XMMWORD[32+rcx]

+ &nbs= p;      lea     rcx,[32+r= ax*1+rcx]

+      &nbs= p; neg     rax

+ &nbs= p;      add     rax,16
+

+$L$dec_loop2:
+DB      102,15,56,222,= 209

+DB      102,15,5= 6,222,217

+      &nbs= p; movups  xmm1,XMMWORD[rax*1+rcx]

+=        add     rax,= 32

+DB      102,15,56= ,222,208

+DB      102= ,15,56,222,216

+      = ;  movups  xmm0,XMMWORD[((-16))+rax*1+rcx]
+        jnz   &nb= sp; NEAR $L$dec_loop2

+
+DB      102,15,56,222,209

+DB      102,15,56,222,217

+DB      102,15,56,223,208=

+DB      102,15,56,2= 23,216

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+

+

+ALIGN   16

+_aesni_encrypt3:

+

+        movups &n= bsp;xmm0,XMMWORD[rcx]

+    &nbs= p;   shl     eax,4

+        movups  xmm1,XMMWO= RD[16+rcx]

+      &nb= sp; xorps   xmm2,xmm0

+  &= nbsp;     xorps   xmm3,xmm0

+        xorps  &n= bsp;xmm4,xmm0

+      =   movups  xmm0,XMMWORD[32+rcx]

= +        lea     rcx= ,[32+rax*1+rcx]

+     &nbs= p;  neg     rax

= +        add     rax= ,16

+

+$L$enc_loo= p3:

+DB      102,15,5= 6,220,209

+DB      10= 2,15,56,220,217

+DB     &n= bsp;102,15,56,220,225

+    &nbs= p;   movups  xmm1,XMMWORD[rax*1+rcx]

+        add   &nbs= p; rax,32

+DB     &nb= sp;102,15,56,220,208

+DB    &nb= sp; 102,15,56,220,216

+DB   &nb= sp;  102,15,56,220,224

+   = ;     movups  xmm0,XMMWORD[((-16))+rax*1+rcx]=

+        j= nz     NEAR $L$enc_loop3

+=

+DB      102,15,56,2= 20,209

+DB      102,1= 5,56,220,217

+DB      = ;102,15,56,220,225

+DB     = ; 102,15,56,221,208

+DB    = ;  102,15,56,221,216

+DB   = ;   102,15,56,221,224

+  &= nbsp;     DB      0F3h,0C= 3h             =   ;repret

+

+

+

+ALIGN=   16

+_aesni_decrypt3:

+

+     &= nbsp;  movups  xmm0,XMMWORD[rcx]

+        shl     e= ax,4

+       &nb= sp;movups  xmm1,XMMWORD[16+rcx]

+  &= nbsp;     xorps   xmm2,xmm0

+        xorps  &n= bsp;xmm3,xmm0

+      =   xorps   xmm4,xmm0

+ &nbs= p;      movups  xmm0,XMMWORD[32+rcx]

+        lea &= nbsp;   rcx,[32+rax*1+rcx]

+ &n= bsp;      neg     rax

+        add &= nbsp;   rax,16

+
=
+$L$dec_loop3:

+DB   =    102,15,56,222,209

+DB  =     102,15,56,222,217

+DB =      102,15,56,222,225

+        movups  xmm1,XMMWORD[rax= *1+rcx]

+       =  add     rax,32

+DB &= nbsp;    102,15,56,222,208

+DB      102,15,56,222,216

+DB      102,15,56,222,224
+        movups  xmm0,= XMMWORD[((-16))+rax*1+rcx]

+    = ;    jnz     NEAR $L$dec_loop3

+

+DB   &nb= sp;  102,15,56,222,209

+DB  &nb= sp;   102,15,56,222,217

+DB &nb= sp;    102,15,56,222,225

+= DB      102,15,56,223,208

+DB      102,15,56,223,216
+DB      102,15,56,223,224

+        DB  =     0F3h,0C3h        = ;       ;repret

+

+

+

+ALIGN   16

+_aesni_encrypt4:

+

+        movups  xmm0,XMMWOR= D[rcx]

+       &= nbsp;shl     eax,4

+  = ;      movups  xmm1,XMMWORD[16+rcx]

+        xorps =   xmm2,xmm0

+    &nbs= p;   xorps   xmm3,xmm0

+        xorps   xmm4,xmm0
+        xor= ps   xmm5,xmm0

+    &= nbsp;   movups  xmm0,XMMWORD[32+rcx]

+        lea   &nbs= p; rcx,[32+rax*1+rcx]

+    = ;    neg     rax

+DB      0x0f,0x1f,0x00
<= br class=3D"">+        add   &= nbsp; rax,16

+

+$L$enc_loop4:

+DB     =  102,15,56,220,209

+DB    =   102,15,56,220,217

+DB   =    102,15,56,220,225

+DB  =     102,15,56,220,233

+ &n= bsp;      movups  xmm1,XMMWORD[rax*1+rcx= ]

+        = add     rax,32

+DB  &= nbsp;   102,15,56,220,208

+DB &= nbsp;    102,15,56,220,216

+DB      102,15,56,220,224

+DB      102,15,56,220,232
+        movups  xmm0,= XMMWORD[((-16))+rax*1+rcx]

+    = ;    jnz     NEAR $L$enc_loop4

+

+DB   &nb= sp;  102,15,56,220,209

+DB  &nb= sp;   102,15,56,220,217

+DB &nb= sp;    102,15,56,220,225

+= DB      102,15,56,220,233

+DB      102,15,56,221,208
+DB      102,15,56,221,216

+DB      102,15,56,221,224
+DB      102,15,56,221= ,232

+       &nb= sp;DB      0F3h,0C3h      = ;         ;repret

+

+

+

+ALIGN   16
<= br class=3D"">+_aesni_decrypt4:

+

+        movups  x= mm0,XMMWORD[rcx]

+     &nb= sp;  shl     eax,4

+        movups  xmm1,XMMWORD[16= +rcx]

+       &n= bsp;xorps   xmm2,xmm0

+   =      xorps   xmm3,xmm0
+        xorps   x= mm4,xmm0

+       = ; xorps   xmm5,xmm0

+  &nb= sp;     movups  xmm0,XMMWORD[32+rcx]

+        lea  = ;   rcx,[32+rax*1+rcx]

+  =       neg     rax

+DB      0x0f,0x1f,0x00

+        add &n= bsp;   rax,16

+
<= br class=3D"">+$L$dec_loop4:

+DB   &= nbsp;  102,15,56,222,209

+DB  &= nbsp;   102,15,56,222,217

+DB &= nbsp;    102,15,56,222,225

+DB      102,15,56,222,233

+        movups  xmm1,XMMWOR= D[rax*1+rcx]

+      &= nbsp; add     rax,32

= +DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222,224

+DB      102,15,56,222,232
+        mov= ups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+ &n= bsp;      jnz     NEAR $L= $dec_loop4

+

+DB =      102,15,56,222,209

+DB      102,15,56,222,217

+DB      102,15,56,222,225
<= br class=3D"">+DB      102,15,56,222,233

+DB      102,15,56,223,208
+DB      102,15,56,223= ,216

+DB      102,15,= 56,223,224

+DB      1= 02,15,56,223,232

+     &nb= sp;  DB      0F3h,0C3h    = ;           ;repret<= br class=3D"">
+

+

+

+ALIGN   16

+_aesni_encrypt6:

+

+        movup= s  xmm0,XMMWORD[rcx]

+    =     shl     eax,4
+        movups  xmm1,X= MMWORD[16+rcx]

+      = ;  xorps   xmm2,xmm0

+ &nb= sp;      pxor    xmm3,xmm0

+        pxor =    xmm4,xmm0

+DB   &n= bsp;  102,15,56,220,209

+  &nbs= p;     lea     rcx,[32+rax*1+r= cx]

+       &nbs= p;neg     rax

+DB  &n= bsp;   102,15,56,220,217

+ &nbs= p;      pxor    xmm5,xmm0

+        pxor &= nbsp;  xmm6,xmm0

+DB   &nb= sp;  102,15,56,220,225

+   = ;     pxor    xmm7,xmm0

+        movups  = xmm0,XMMWORD[rax*1+rcx]

+    &n= bsp;   add     rax,16

+        jmp   &nbs= p; NEAR $L$enc_loop6_enter

+ALIGN  &= nbsp;16

+$L$enc_loop6:

+DB      102,15,56,220,209
+DB      102,15,56,220,217

+DB      102,15,56,220,225
+$L$enc_loop6_enter:

+DB      102,15,56,220,233

+DB      102,15,56,220,241
=
+DB      102,15,56,220,249

+        movups &n= bsp;xmm1,XMMWORD[rax*1+rcx]

+   &nbs= p;    add     rax,32
=
+DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220= ,224

+DB      102,15,= 56,220,232

+DB      1= 02,15,56,220,240

+DB     &= nbsp;102,15,56,220,248

+    &nb= sp;   movups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+        jnz  = ;   NEAR $L$enc_loop6

+

+DB      102,15,56,220,209
+DB      102,15,56,220= ,217

+DB      102,15,= 56,220,225

+DB      1= 02,15,56,220,233

+DB     &= nbsp;102,15,56,220,241

+DB    &= nbsp; 102,15,56,220,249

+DB   &= nbsp;  102,15,56,221,208

+DB  &= nbsp;   102,15,56,221,216

+DB &= nbsp;    102,15,56,221,224

+DB      102,15,56,221,232

+DB      102,15,56,221,240
+DB      102,15,56,221,248

+        DB  =     0F3h,0C3h        = ;       ;repret

+

+

+

+ALIGN   16

+_aesni_decrypt6:

+

+        movups  xmm0,XMMWOR= D[rcx]

+       &= nbsp;shl     eax,4

+  = ;      movups  xmm1,XMMWORD[16+rcx]

+        xorps =   xmm2,xmm0

+    &nbs= p;   pxor    xmm3,xmm0

+        pxor    x= mm4,xmm0

+DB      102= ,15,56,222,209

+      = ;  lea     rcx,[32+rax*1+rcx]
<= br class=3D"">+        neg   &= nbsp; rax

+DB     &nb= sp;102,15,56,222,217

+     = ;   pxor    xmm5,xmm0

+        pxor    x= mm6,xmm0

+DB      102= ,15,56,222,225

+      = ;  pxor    xmm7,xmm0

= +        movups  xmm0,XMMWORD[rax*1= +rcx]

+       &n= bsp;add     rax,16

+  = ;      jmp     NEAR $L$de= c_loop6_enter

+ALIGN   16

+$L$dec_loop6:

+DB  = ;    102,15,56,222,209

+DB=      102,15,56,222,217

+DB      102,15,56,222,225

+$L$dec_loop6_enter:

+DB   =    102,15,56,222,233

+DB  =     102,15,56,222,241

+DB =      102,15,56,222,249

+        movups  xmm1,XMMWORD[rax= *1+rcx]

+       =  add     rax,32

+DB &= nbsp;    102,15,56,222,208

+DB      102,15,56,222,216

+DB      102,15,56,222,224
+DB      102,15,56,222,232

+DB      102,15,56,222,240
+DB      102,15,56,222= ,248

+       &nb= sp;movups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+        jnz     N= EAR $L$dec_loop6

+

+DB      102,15,56,222,209

+DB      102,15,56,222,217
<= br class=3D"">+DB      102,15,56,222,225

+DB      102,15,56,222,233
+DB      102,15,56,222= ,241

+DB      102,15,= 56,222,249

+DB      1= 02,15,56,223,208

+DB     &= nbsp;102,15,56,223,216

+DB    &= nbsp; 102,15,56,223,224

+DB   &= nbsp;  102,15,56,223,232

+DB  &= nbsp;   102,15,56,223,240

+DB &= nbsp;    102,15,56,223,248

+        DB     &nb= sp;0F3h,0C3h           &n= bsp;   ;repret

+
=
+

+

+ALIGN   16

+_aesni_encrypt8:

+

+    = ;    movups  xmm0,XMMWORD[rcx]

+        shl    = ; eax,4

+      &= nbsp; movups  xmm1,XMMWORD[16+rcx]

+=        xorps   xmm2,xmm0

+        xorps =   xmm3,xmm0

+    &nbs= p;   pxor    xmm4,xmm0

+        pxor    x= mm5,xmm0

+       = ; pxor    xmm6,xmm0

+ &nbs= p;      lea     rcx,[32+r= ax*1+rcx]

+      &nbs= p; neg     rax

+DB &n= bsp;    102,15,56,220,209

= +        pxor    xmm7,xmm= 0

+        = pxor    xmm8,xmm0

+DB  &nb= sp;   102,15,56,220,217

+  = ;      pxor    xmm9,xmm0

+        movups =  xmm0,XMMWORD[rax*1+rcx]

+   &n= bsp;    add     rax,16

+        jmp  &nbs= p;  NEAR $L$enc_loop8_inner

+ALIGN &= nbsp; 16

+$L$enc_loop8:
+DB      102,15,56,220,209

+DB      102,15,56,220,217

+$L$enc_loop8_inner:

+= DB      102,15,56,220,225

+DB      102,15,56,220,233
+DB      102,15,56,220,241

+DB      102,15,56,220,249
+DB      102,68,15,56,= 220,193

+DB      102,= 68,15,56,220,201

+$L$enc_loop8_enter:

+        movups &n= bsp;xmm1,XMMWORD[rax*1+rcx]

+   &nbs= p;    add     rax,32
=
+DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220= ,224

+DB      102,15,= 56,220,232

+DB      1= 02,15,56,220,240

+DB     &= nbsp;102,15,56,220,248

+DB    &= nbsp; 102,68,15,56,220,192

+DB  &nbs= p;   102,68,15,56,220,200

+ &nb= sp;      movups  xmm0,XMMWORD[((-16))+ra= x*1+rcx]

+       = ; jnz     NEAR $L$enc_loop8

+

+DB      102= ,15,56,220,209

+DB     &nb= sp;102,15,56,220,217

+DB    &nb= sp; 102,15,56,220,225

+DB   &nb= sp;  102,15,56,220,233

+DB  &nb= sp;   102,15,56,220,241

+DB &nb= sp;    102,15,56,220,249

+= DB      102,68,15,56,220,193

+DB      102,68,15,56,220,201

+DB      102,15,56,221,208

+DB      102,15,56,221,216<= br class=3D"">
+DB      102,15,56,22= 1,224

+DB      102,15= ,56,221,232

+DB      = 102,15,56,221,240

+DB     =  102,15,56,221,248

+DB    =   102,68,15,56,221,192

+DB  &nb= sp;   102,68,15,56,221,200

+ &n= bsp;      DB      0F= 3h,0C3h            &= nbsp;  ;repret

+

+

+

+AL= IGN   16

+_aesni_decrypt8:

+

+    &n= bsp;   movups  xmm0,XMMWORD[rcx]

+        shl    &n= bsp;eax,4

+      &nbs= p; movups  xmm1,XMMWORD[16+rcx]

+ &n= bsp;      xorps   xmm2,xmm0

+        xorps &nb= sp; xmm3,xmm0

+     &= nbsp;  pxor    xmm4,xmm0

+        pxor    x= mm5,xmm0

+       = ; pxor    xmm6,xmm0

+ &nbs= p;      lea     rcx,[32+r= ax*1+rcx]

+      &nbs= p; neg     rax

+DB &n= bsp;    102,15,56,222,209

= +        pxor    xmm7,xmm= 0

+        = pxor    xmm8,xmm0

+DB  &nb= sp;   102,15,56,222,217

+  = ;      pxor    xmm9,xmm0

+        movups =  xmm0,XMMWORD[rax*1+rcx]

+   &n= bsp;    add     rax,16

+        jmp  &nbs= p;  NEAR $L$dec_loop8_inner

+ALIGN &= nbsp; 16

+$L$dec_loop8:
+DB      102,15,56,222,209

+DB      102,15,56,222,217

+$L$dec_loop8_inner:

+= DB      102,15,56,222,225

+DB      102,15,56,222,233
+DB      102,15,56,222,241

+DB      102,15,56,222,249
+DB      102,68,15,56,= 222,193

+DB      102,= 68,15,56,222,201

+$L$dec_loop8_enter:

+        movups &n= bsp;xmm1,XMMWORD[rax*1+rcx]

+   &nbs= p;    add     rax,32
=
+DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222= ,224

+DB      102,15,= 56,222,232

+DB      1= 02,15,56,222,240

+DB     &= nbsp;102,15,56,222,248

+DB    &= nbsp; 102,68,15,56,222,192

+DB  &nbs= p;   102,68,15,56,222,200

+ &nb= sp;      movups  xmm0,XMMWORD[((-16))+ra= x*1+rcx]

+       = ; jnz     NEAR $L$dec_loop8

+

+DB      102= ,15,56,222,209

+DB     &nb= sp;102,15,56,222,217

+DB    &nb= sp; 102,15,56,222,225

+DB   &nb= sp;  102,15,56,222,233

+DB  &nb= sp;   102,15,56,222,241

+DB &nb= sp;    102,15,56,222,249

+= DB      102,68,15,56,222,193

+DB      102,68,15,56,222,201

+DB      102,15,56,223,208

+DB      102,15,56,223,216<= br class=3D"">
+DB      102,15,56,22= 3,224

+DB      102,15= ,56,223,232

+DB      = 102,15,56,223,240

+DB     =  102,15,56,223,248

+DB    =   102,68,15,56,223,192

+DB  &nb= sp;   102,68,15,56,223,200

+ &n= bsp;      DB      0F= 3h,0C3h            &= nbsp;  ;repret

+

+

+global  aesni_ecb_encrypt
+

+ALIGN  &nbs= p;16

+aesni_ecb_encrypt:

+        mov    &= nbsp;QWORD[8+rsp],rdi        ;WIN64 prol= ogue

+       &nb= sp;mov     QWORD[16+rsp],rsi

+        mov     = rax,rsp

+$L$SEH_begin_aesni_ecb_encrypt:

+        mov &nb= sp;   rdi,rcx

+   &nb= sp;    mov     rsi,rdx

+        mov  &nbs= p;  rdx,r8

+     = ;   mov     rcx,r9

+        mov    &= nbsp;r8,QWORD[40+rsp]

+

+

+

+ &nbs= p;      lea     rsp,[((-8= 8))+rsp]

+       = ; movaps  XMMWORD[rsp],xmm6

+  =       movaps  XMMWORD[16+rsp],xmm7

+        movaps =  XMMWORD[32+rsp],xmm8

+    = ;    movaps  XMMWORD[48+rsp],xmm9
+$L$ecb_enc_body:

+   &= nbsp;    and     rdx,-16

+        jz  =     NEAR $L$ecb_ret

+

+        mov &n= bsp;   eax,DWORD[240+rcx]

+ &nb= sp;      movups  xmm0,XMMWORD[rcx]

+        mov &nb= sp;   r11,rcx

+   &nb= sp;    mov     r10d,eax

+        test  &n= bsp; r8d,r8d

+     &n= bsp;  jz      NEAR $L$ecb_decrypt

+

+    &= nbsp;   cmp     rdx,0x80
<= br class=3D"">+        jb   &n= bsp;  NEAR $L$ecb_enc_tail

+

+        movdqu &n= bsp;xmm2,XMMWORD[rdi]

+    &nbs= p;   movdqu  xmm3,XMMWORD[16+rdi]

+        movdqu  xmm4,XMMWO= RD[32+rdi]

+      &nb= sp; movdqu  xmm5,XMMWORD[48+rdi]

+ &= nbsp;      movdqu  xmm6,XMMWORD[64+rdi]<= br class=3D"">
+        mo= vdqu  xmm7,XMMWORD[80+rdi]

+   =      movdqu  xmm8,XMMWORD[96+rdi]

+        movdqu  = xmm9,XMMWORD[112+rdi]

+    &nbs= p;   lea     rdi,[128+rdi]

+        sub   = ;  rdx,0x80

+    &nbs= p;   jmp     NEAR $L$ecb_enc_loop8_enter=

+ALIGN   16

+$L$ecb_enc_loop8:

+    =     movups  XMMWORD[rsi],xmm2

+        mov    =  rcx,r11

+      =   movdqu  xmm2,XMMWORD[rdi]

+ &= nbsp;      mov     eax,r1= 0d

+        = ;movups  XMMWORD[16+rsi],xmm3

+  &nb= sp;     movdqu  xmm3,XMMWORD[16+rdi]

+        movups &n= bsp;XMMWORD[32+rsi],xmm4

+    &= nbsp;   movdqu  xmm4,XMMWORD[32+rdi]

+        movups  XMMWORD= [48+rsi],xmm5

+      =   movdqu  xmm5,XMMWORD[48+rdi]

= +        movups  XMMWORD[64+rsi],xm= m6

+        = ;movdqu  xmm6,XMMWORD[64+rdi]

+  &nb= sp;     movups  XMMWORD[80+rsi],xmm7

+        movdqu &n= bsp;xmm7,XMMWORD[80+rdi]

+    &= nbsp;   movups  XMMWORD[96+rsi],xmm8

+        movdqu  xmm8,XM= MWORD[96+rdi]

+      =   movups  XMMWORD[112+rsi],xmm9

+        lea     rs= i,[128+rsi]

+      &n= bsp; movdqu  xmm9,XMMWORD[112+rdi]

+=        lea     rdi,= [128+rdi]

+$L$ecb_enc_loop8_enter:

+

+     =    call    _aesni_encrypt8

+

+      &= nbsp; sub     rdx,0x80

+        jnc     N= EAR $L$ecb_enc_loop8

+

+        movups  XMMWORD[rsi= ],xmm2

+       &= nbsp;mov     rcx,r11

+ &nb= sp;      movups  XMMWORD[16+rsi],xmm3
+        mov =     eax,r10d

+   = ;     movups  XMMWORD[32+rsi],xmm4

+        movups &n= bsp;XMMWORD[48+rsi],xmm5

+    &= nbsp;   movups  XMMWORD[64+rsi],xmm6

+        movups  XMMWORD= [80+rsi],xmm7

+      =   movups  XMMWORD[96+rsi],xmm8

= +        movups  XMMWORD[112+rsi],x= mm9

+       &nbs= p;lea     rsi,[128+rsi]

+ =        add     rdx,0= x80

+       &nbs= p;jz      NEAR $L$ecb_ret

+

+$L$ecb_enc_tail:

+        movups  xmm2,XMM= WORD[rdi]

+      &nbs= p; cmp     rdx,0x20

+=        jb      = ;NEAR $L$ecb_enc_one

+     = ;   movups  xmm3,XMMWORD[16+rdi]

+        je    &nb= sp; NEAR $L$ecb_enc_two

+   &nb= sp;    movups  xmm4,XMMWORD[32+rdi]
=
+        cmp   =   rdx,0x40

+     = ;   jb      NEAR $L$ecb_enc_three
+        mov= ups  xmm5,XMMWORD[48+rdi]

+   &= nbsp;    je      NEAR $L$ecb_e= nc_four

+       =  movups  xmm6,XMMWORD[64+rdi]

+ &nbs= p;      cmp     rdx,0x60<= br class=3D"">
+        jb=      NEAR $L$ecb_enc_five

+        movups  xmm7,XMMWOR= D[80+rdi]

+      &nbs= p; je      NEAR $L$ecb_enc_six
=
+        movdqu  xmm= 8,XMMWORD[96+rdi]

+     &n= bsp;  xorps   xmm9,xmm9

+ =        call    _aesni_enc= rypt8

+       &n= bsp;movups  XMMWORD[rsi],xmm2

+  &nb= sp;     movups  XMMWORD[16+rsi],xmm3

+        movups &n= bsp;XMMWORD[32+rsi],xmm4

+    &= nbsp;   movups  XMMWORD[48+rsi],xmm5

+        movups  XMMWORD= [64+rsi],xmm6

+      =   movups  XMMWORD[80+rsi],xmm7

= +        movups  XMMWORD[96+rsi],xm= m8

+        = ;jmp     NEAR $L$ecb_ret

+= ALIGN   16

+$L$ecb_enc_one:

+        movups &n= bsp;xmm0,XMMWORD[rcx]

+    &nbs= p;   movups  xmm1,XMMWORD[16+rcx]

+        lea    &= nbsp;rcx,[32+rcx]

+     &n= bsp;  xorps   xmm2,xmm0

+$= L$oop_enc1_3:

+DB     &nbs= p;102,15,56,220,209

+     =    dec     eax

+        movups  xmm1,XMMWOR= D[rcx]

+       &= nbsp;lea     rcx,[16+rcx]

= +        jnz     NEA= R $L$oop_enc1_3

+DB     &n= bsp;102,15,56,221,209

+    &nbs= p;   movups  XMMWORD[rsi],xmm2

+        jmp    &n= bsp;NEAR $L$ecb_ret

+ALIGN   16

+$L$ecb_enc_two:

+ &n= bsp;      call    _aesni_encry= pt2

+       &nbs= p;movups  XMMWORD[rsi],xmm2

+   = ;     movups  XMMWORD[16+rsi],xmm3

+        jmp  = ;   NEAR $L$ecb_ret

+ALIGN &nbs= p; 16

+$L$ecb_enc_three:
+        call   &= nbsp;_aesni_encrypt3

+     = ;   movups  XMMWORD[rsi],xmm2

+        movups  XMMWORD[16+= rsi],xmm3

+      &nbs= p; movups  XMMWORD[32+rsi],xmm4

+ &n= bsp;      jmp     NEAR $L= $ecb_ret

+ALIGN   16
<= br class=3D"">+$L$ecb_enc_four:

+   =      call    _aesni_encrypt4

+        movups &= nbsp;XMMWORD[rsi],xmm2

+    &nb= sp;   movups  XMMWORD[16+rsi],xmm3

+        movups  XMMWORD[3= 2+rsi],xmm4

+      &n= bsp; movups  XMMWORD[48+rsi],xmm5

+ =        jmp     NEAR = $L$ecb_ret

+ALIGN   16

+$L$ecb_enc_five:

+  &nbs= p;     xorps   xmm7,xmm7
<= br class=3D"">+        call   =  _aesni_encrypt6

+    &nbs= p;   movups  XMMWORD[rsi],xmm2

+        movups  XMMWORD[16+= rsi],xmm3

+      &nbs= p; movups  XMMWORD[32+rsi],xmm4

+ &n= bsp;      movups  XMMWORD[48+rsi],xmm5
+        mov= ups  XMMWORD[64+rsi],xmm6

+   &= nbsp;    jmp     NEAR $L$ecb_ret
+ALIGN   16

+$L$ecb_enc_six:

+     =    call    _aesni_encrypt6

+        movups  XMMWORD= [rsi],xmm2

+      &nb= sp; movups  XMMWORD[16+rsi],xmm3

+ &= nbsp;      movups  XMMWORD[32+rsi],xmm4<= br class=3D"">
+        mo= vups  XMMWORD[48+rsi],xmm5

+   =      movups  XMMWORD[64+rsi],xmm6

+        movups  = XMMWORD[80+rsi],xmm7

+     = ;   jmp     NEAR $L$ecb_ret

+

+ALIGN   16

+$L$ecb_decrypt:

+ &nb= sp;      cmp     rdx,0x80=

+        j= b      NEAR $L$ecb_dec_tail

+

+       = ; movdqu  xmm2,XMMWORD[rdi]

+  =       movdqu  xmm3,XMMWORD[16+rdi]

+        movdqu =  xmm4,XMMWORD[32+rdi]

+    = ;    movdqu  xmm5,XMMWORD[48+rdi]
+        movdqu  xmm6,= XMMWORD[64+rdi]

+     &nbs= p;  movdqu  xmm7,XMMWORD[80+rdi]

+        movdqu  xmm8,XMMWORD[96+= rdi]

+       &nb= sp;movdqu  xmm9,XMMWORD[112+rdi]

+  =       lea     rdi,[128+rd= i]

+        = ;sub     rdx,0x80

+  =       jmp     NEAR $L$ecb= _dec_loop8_enter

+ALIGN   16

+$L$ecb_dec_loop8:

+ &nb= sp;      movups  XMMWORD[rsi],xmm2

+        mov &nb= sp;   rcx,r11

+   &nb= sp;    movdqu  xmm2,XMMWORD[rdi]
+        mov   &nb= sp; eax,r10d

+     &n= bsp;  movups  XMMWORD[16+rsi],xmm3

+        movdqu  xmm3,XMMWOR= D[16+rdi]

+      &nbs= p; movups  XMMWORD[32+rsi],xmm4

+ &n= bsp;      movdqu  xmm4,XMMWORD[32+rdi]
+        mov= ups  XMMWORD[48+rsi],xmm5

+   &= nbsp;    movdqu  xmm5,XMMWORD[48+rdi]

+        movups  X= MMWORD[64+rsi],xmm6

+     =    movdqu  xmm6,XMMWORD[64+rdi]

+        movups  XMMWORD[80+= rsi],xmm7

+      &nbs= p; movdqu  xmm7,XMMWORD[80+rdi]

+ &n= bsp;      movups  XMMWORD[96+rsi],xmm8
+        mov= dqu  xmm8,XMMWORD[96+rdi]

+   &= nbsp;    movups  XMMWORD[112+rsi],xmm9

+        lea  &nb= sp;  rsi,[128+rsi]

+   &nb= sp;    movdqu  xmm9,XMMWORD[112+rdi]

+        lea   = ;  rdi,[128+rdi]

+$L$ecb_dec_loop8_e= nter:

+

+  &= nbsp;     call    _aesni_decrypt8
+

+   &n= bsp;    movups  xmm0,XMMWORD[r11]
+        sub   &n= bsp; rdx,0x80

+     &= nbsp;  jnc     NEAR $L$ecb_dec_loop8

+

+    &n= bsp;   movups  XMMWORD[rsi],xmm2

+        pxor    x= mm2,xmm2

+       = ; mov     rcx,r11

+ &= nbsp;      movups  XMMWORD[16+rsi],xmm3<= br class=3D"">
+        px= or    xmm3,xmm3

+   &= nbsp;    mov     eax,r10d

+        movups &n= bsp;XMMWORD[32+rsi],xmm4

+    &= nbsp;   pxor    xmm4,xmm4

+        movups  XMMWORD[= 48+rsi],xmm5

+      &= nbsp; pxor    xmm5,xmm5

+ =        movups  XMMWORD[64+rsi],xmm6=

+        p= xor    xmm6,xmm6

+   =      movups  XMMWORD[80+rsi],xmm7

+        pxor  &n= bsp; xmm7,xmm7

+     =    movups  XMMWORD[96+rsi],xmm8

+        pxor    x= mm8,xmm8

+       = ; movups  XMMWORD[112+rsi],xmm9

+ &n= bsp;      pxor    xmm9,xmm9
+        lea =     rsi,[128+rsi]

+  =       add     rdx,0x80
+        jz &= nbsp;    NEAR $L$ecb_ret

+=

+$L$ecb_dec_tail:

+        movups  xmm2,XMMWORD[rdi= ]

+        = cmp     rdx,0x20

+  &= nbsp;     jb      NEAR $L= $ecb_dec_one

+      &= nbsp; movups  xmm3,XMMWORD[16+rdi]

+=        je      = ;NEAR $L$ecb_dec_two

+     = ;   movups  xmm4,XMMWORD[32+rdi]

+        cmp    &n= bsp;rdx,0x40

+      &= nbsp; jb      NEAR $L$ecb_dec_three

+        movups &n= bsp;xmm5,XMMWORD[48+rdi]

+    &= nbsp;   je      NEAR $L$ecb_dec_fou= r

+        = movups  xmm6,XMMWORD[64+rdi]

+  &nbs= p;     cmp     rdx,0x60

+        jb  = ;    NEAR $L$ecb_dec_five

= +        movups  xmm7,XMMWORD[80+rd= i]

+        = ;je      NEAR $L$ecb_dec_six

+        movups  xmm8,XMMWO= RD[96+rdi]

+      &nb= sp; movups  xmm0,XMMWORD[rcx]

+ &nbs= p;      xorps   xmm9,xmm9

+        call &nbs= p;  _aesni_decrypt8

+   &n= bsp;    movups  XMMWORD[rsi],xmm2
+        pxor   &= nbsp;xmm2,xmm2

+      = ;  movups  XMMWORD[16+rsi],xmm3

+        pxor    xmm3,xm= m3

+        = ;movups  XMMWORD[32+rsi],xmm4

+  &nb= sp;     pxor    xmm4,xmm4

+        movups &n= bsp;XMMWORD[48+rsi],xmm5

+    &= nbsp;   pxor    xmm5,xmm5

+        movups  XMMWORD[= 64+rsi],xmm6

+      &= nbsp; pxor    xmm6,xmm6

+ =        movups  XMMWORD[80+rsi],xmm7=

+        p= xor    xmm7,xmm7

+   =      movups  XMMWORD[96+rsi],xmm8

+        pxor  &n= bsp; xmm8,xmm8

+     =    pxor    xmm9,xmm9

+        jmp    &n= bsp;NEAR $L$ecb_ret

+ALIGN   16

+$L$ecb_dec_one:

+ &n= bsp;      movups  xmm0,XMMWORD[rcx]

+        movups=  xmm1,XMMWORD[16+rcx]

+   &nbs= p;    lea     rcx,[32+rcx]

+        xorps &nb= sp; xmm2,xmm0

+$L$oop_dec1_4:

+DB      102,15,56,222,209

+        dec &nb= sp;   eax

+    &= nbsp;   movups  xmm1,XMMWORD[rcx]

+        lea    &= nbsp;rcx,[16+rcx]

+     &n= bsp;  jnz     NEAR $L$oop_dec1_4

+DB      102,15,56,223,209

+        movups &= nbsp;XMMWORD[rsi],xmm2

+    &nb= sp;   pxor    xmm2,xmm2

+        jmp    &= nbsp;NEAR $L$ecb_ret

+ALIGN   16

+$L$ecb_dec_two:

+ &= nbsp;      call    _aesni_decr= ypt2

+       &nb= sp;movups  XMMWORD[rsi],xmm2

+  &nbs= p;     pxor    xmm2,xmm2

+        movups &n= bsp;XMMWORD[16+rsi],xmm3

+    &= nbsp;   pxor    xmm3,xmm3

+        jmp    = ; NEAR $L$ecb_ret

+ALIGN   16
+$L$ecb_dec_three:

+        call    _aesni_= decrypt3

+       = ; movups  XMMWORD[rsi],xmm2

+  =       pxor    xmm2,xmm2

+        movups &= nbsp;XMMWORD[16+rsi],xmm3

+    =     pxor    xmm3,xmm3

+        movups  XMMWORD= [32+rsi],xmm4

+      =   pxor    xmm4,xmm4

+=        jmp     NEAR= $L$ecb_ret

+ALIGN   16

+$L$ecb_dec_four:

+  &nb= sp;     call    _aesni_decrypt4

+        movup= s  XMMWORD[rsi],xmm2

+    =     pxor    xmm2,xmm2

+        movups  XMMWORD= [16+rsi],xmm3

+      =   pxor    xmm3,xmm3

+=        movups  XMMWORD[32+rsi],xmm= 4

+        = pxor    xmm4,xmm4

+   = ;     movups  XMMWORD[48+rsi],xmm5

+        pxor &nbs= p;  xmm5,xmm5

+    &n= bsp;   jmp     NEAR $L$ecb_ret

+ALIGN   16

+$= L$ecb_dec_five:

+     &nbs= p;  xorps   xmm7,xmm7

+ &n= bsp;      call    _aesni_decry= pt6

+       &nbs= p;movups  XMMWORD[rsi],xmm2

+   = ;     pxor    xmm2,xmm2

+        movups  = XMMWORD[16+rsi],xmm3

+     = ;   pxor    xmm3,xmm3

+        movups  XMMWORD[32+= rsi],xmm4

+      &nbs= p; pxor    xmm4,xmm4

+ &nb= sp;      movups  XMMWORD[48+rsi],xmm5
+        pxor=    xmm5,xmm5

+   &nb= sp;    movups  XMMWORD[64+rsi],xmm6
=
+        pxor   = ; xmm6,xmm6

+     &nb= sp;  pxor    xmm7,xmm7

+        jmp     N= EAR $L$ecb_ret

+ALIGN   16

+$L$ecb_dec_six:

+  = ;      call    _aesni_decrypt6=

+        m= ovups  XMMWORD[rsi],xmm2

+   &n= bsp;    pxor    xmm2,xmm2
=
+        movups  XMM= WORD[16+rsi],xmm3

+     &n= bsp;  pxor    xmm3,xmm3

+        movups  XMMWORD[32+rsi]= ,xmm4

+       &n= bsp;pxor    xmm4,xmm4

+  &= nbsp;     movups  XMMWORD[48+rsi],xmm5

+        pxor &nb= sp;  xmm5,xmm5

+    &= nbsp;   movups  XMMWORD[64+rsi],xmm6

+        pxor   &nb= sp;xmm6,xmm6

+      &= nbsp; movups  XMMWORD[80+rsi],xmm7

+=        pxor    xmm7,xmm7=

+

+$L$ecb_ret:
+        xor= ps   xmm0,xmm0

+    &= nbsp;   pxor    xmm1,xmm1

+        movaps  xmm6,XMM= WORD[rsp]

+      &nbs= p; movaps  XMMWORD[rsp],xmm0

+  = ;      movaps  xmm7,XMMWORD[16+rsp]

+        movaps=  XMMWORD[16+rsp],xmm0

+   &nbs= p;    movaps  xmm8,XMMWORD[32+rsp]
<= br class=3D"">+        movaps  XMMW= ORD[32+rsp],xmm0

+     &nb= sp;  movaps  xmm9,XMMWORD[48+rsp]

+        movaps  XMMWORD[48+rsp]= ,xmm0

+       &n= bsp;lea     rsp,[88+rsp]

+= $L$ecb_enc_ret:

+     &nbs= p;  mov     rdi,QWORD[8+rsp]   &nbs= p;    ;WIN64 epilogue

+ &n= bsp;      mov     rsi,QWO= RD[16+rsp]

+      &nb= sp; DB      0F3h,0C3h     = ;          ;repret

+

+$L$SEH_end_aesni_ecb= _encrypt:

+global  aesni_ccm64_encrypt_bl= ocks

+

+ALIGN &nb= sp; 16

+aesni_ccm64_encrypt_blocks:

+        mov &nb= sp;   QWORD[8+rsp],rdi       &= nbsp;;WIN64 prologue

+     = ;   mov     QWORD[16+rsp],rsi

+        mov  = ;   rax,rsp

+$L$SEH_begin_aesni= _ccm64_encrypt_blocks:

+    &nb= sp;   mov     rdi,rcx

+        mov   &nbs= p; rsi,rdx

+     &nbs= p;  mov     rdx,r8

+        mov     = rcx,r9

+       &= nbsp;mov     r8,QWORD[40+rsp]

+        mov    &n= bsp;r9,QWORD[48+rsp]

+

+

+

+ &nbs= p;      lea     rsp,[((-8= 8))+rsp]

+       = ; movaps  XMMWORD[rsp],xmm6

+  =       movaps  XMMWORD[16+rsp],xmm7

+        movaps =  XMMWORD[32+rsp],xmm8

+    = ;    movaps  XMMWORD[48+rsp],xmm9
+$L$ccm64_enc_body:

+   = ;     mov     eax,DWORD[240+rc= x]

+        = ;movdqu  xmm6,XMMWORD[r8]

+   &= nbsp;    movdqa  xmm9,XMMWORD[$L$increment64]

+        movdqa=  xmm7,XMMWORD[$L$bswap_mask]

+

+        shl  = ;   eax,4

+    &= nbsp;   mov     r10d,16
+        lea   &n= bsp; r11,[rcx]

+     =    movdqu  xmm3,XMMWORD[r9]

+        movdqa  xmm2,xmm6

+        lea &nbs= p;   rcx,[32+rax*1+rcx]

+DB &nb= sp;    102,15,56,0,247

+ &= nbsp;      sub     r10,ra= x

+        = jmp     NEAR $L$ccm64_enc_outer

+ALIGN   16

+$L$ccm64_enc_out= er:

+       &nbs= p;movups  xmm0,XMMWORD[r11]

+   = ;     mov     rax,r10

+        movups &n= bsp;xmm8,XMMWORD[rdi]

+

+        xorps   xmm2,x= mm0

+       &nbs= p;movups  xmm1,XMMWORD[16+r11]

+  &n= bsp;     xorps   xmm0,xmm8

+        xorps  &nb= sp;xmm3,xmm0

+      &= nbsp; movups  xmm0,XMMWORD[32+r11]

+=

+$L$ccm64_enc2_loop:

+DB      102,15,56,220,209
+DB      102,15,56,220,217

+        movups &n= bsp;xmm1,XMMWORD[rax*1+rcx]

+   &nbs= p;    add     rax,32
=
+DB      102,15,56,220,208

+DB      102,15,56,220,216
+        mov= ups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+ &n= bsp;      jnz     NEAR $L= $ccm64_enc2_loop

+DB     &= nbsp;102,15,56,220,209

+DB    &= nbsp; 102,15,56,220,217

+   &nb= sp;    paddq   xmm6,xmm9

+        dec    =  rdx

+DB      10= 2,15,56,221,208

+DB     &n= bsp;102,15,56,221,216

+

+        lea    &n= bsp;rdi,[16+rdi]

+     &nb= sp;  xorps   xmm8,xmm2

+ &= nbsp;      movdqa  xmm2,xmm6

+        movups  = XMMWORD[rsi],xmm8

+DB     =  102,15,56,0,215

+    &nbs= p;   lea     rsi,[16+rsi]
=
+        jnz   =   NEAR $L$ccm64_enc_outer

+

+        pxor &nbs= p;  xmm0,xmm0

+    &n= bsp;   pxor    xmm1,xmm1

+        pxor    = ;xmm2,xmm2

+      &nb= sp; movups  XMMWORD[r9],xmm3

+  = ;      pxor    xmm3,xmm3

+        pxor &n= bsp;  xmm8,xmm8

+    =     pxor    xmm6,xmm6

+        movaps  xmm6,XM= MWORD[rsp]

+      &nb= sp; movaps  XMMWORD[rsp],xmm0

+ &nbs= p;      movaps  xmm7,XMMWORD[16+rsp]

+        movap= s  XMMWORD[16+rsp],xmm0

+   &nb= sp;    movaps  xmm8,XMMWORD[32+rsp]
=
+        movaps  XMM= WORD[32+rsp],xmm0

+     &n= bsp;  movaps  xmm9,XMMWORD[48+rsp]

+        movaps  XMMWORD[48+= rsp],xmm0

+      &nbs= p; lea     rsp,[88+rsp]

+$L$ccm64_enc_ret:

+    &nbs= p;   mov     rdi,QWORD[8+rsp]  &nbs= p;     ;WIN64 epilogue

+        mov     r= si,QWORD[16+rsp]

+     &nb= sp;  DB      0F3h,0C3h    = ;           ;repret<= br class=3D"">
+

+$L$SEH_end_aes= ni_ccm64_encrypt_blocks:

+global  aesni_c= cm64_decrypt_blocks

+

+ALIGN   16

+aesni_ccm64_decr= ypt_blocks:

+      &n= bsp; mov     QWORD[8+rsp],rdi    &n= bsp;   ;WIN64 prologue

+  =       mov     QWORD[16+rs= p],rsi

+       &= nbsp;mov     rax,rsp

+$L$S= EH_begin_aesni_ccm64_decrypt_blocks:

+  &= nbsp;     mov     rdi,rcx

+        mov &n= bsp;   rsi,rdx

+   &n= bsp;    mov     rdx,r8

+        mov  &nbs= p;  rcx,r9

+     = ;   mov     r8,QWORD[40+rsp]

+        mov  &nb= sp;  r9,QWORD[48+rsp]

+

+

+

+        lea    &n= bsp;rsp,[((-88))+rsp]

+    &nbs= p;   movaps  XMMWORD[rsp],xmm6

+        movaps  XMMWORD[16+= rsp],xmm7

+      &nbs= p; movaps  XMMWORD[32+rsp],xmm8

+ &n= bsp;      movaps  XMMWORD[48+rsp],xmm9
+$L$ccm64_dec_body:

+        mov     e= ax,DWORD[240+rcx]

+     &n= bsp;  movups  xmm6,XMMWORD[r8]

= +        movdqu  xmm3,XMMWORD[r9]
+        mov= dqa  xmm9,XMMWORD[$L$increment64]

+  = ;      movdqa  xmm7,XMMWORD[$L$bswap_mas= k]

+

+  &nbs= p;     movaps  xmm2,xmm6

+        mov    =  r10d,eax

+      = ;  mov     r11,rcx

+DB      102,15,56,0,247

+        movups  xmm0,XMMWOR= D[rcx]

+       &= nbsp;movups  xmm1,XMMWORD[16+rcx]

+  = ;      lea     rcx,[32+rc= x]

+        = ;xorps   xmm2,xmm0

+$L$oop_enc1_5:
+DB      102,15,56,220= ,209

+       &nb= sp;dec     eax

+  &nb= sp;     movups  xmm1,XMMWORD[rcx]

+        lea  &nb= sp;  rcx,[16+rcx]

+   &nbs= p;    jnz     NEAR $L$oop_enc1_5
+DB      102,15,56,221,= 209

+       &nbs= p;shl     r10d,4

+  &= nbsp;     mov     eax,16

+        movups =  xmm8,XMMWORD[rdi]

+    &n= bsp;   paddq   xmm6,xmm9

+        lea    &n= bsp;rdi,[16+rdi]

+     &nb= sp;  sub     rax,r10

+        lea    &n= bsp;rcx,[32+r10*1+r11]

+    &nb= sp;   mov     r10,rax

+        jmp   &nbs= p; NEAR $L$ccm64_dec_outer

+ALIGN  &= nbsp;16

+$L$ccm64_dec_outer:
+        xorps   x= mm8,xmm2

+       = ; movdqa  xmm2,xmm6

+   &n= bsp;    movups  XMMWORD[rsi],xmm8
+        lea   &n= bsp; rsi,[16+rsi]

+DB    &= nbsp; 102,15,56,0,215

+
+        sub   &nb= sp; rdx,1

+      = ;  jz      NEAR $L$ccm64_dec_break

+

+    =     movups  xmm0,XMMWORD[r11]

+        mov    =  rax,r10

+      =   movups  xmm1,XMMWORD[16+r11]

= +        xorps   xmm8,xmm0

+        xorps=   xmm2,xmm0

+    &nb= sp;   xorps   xmm3,xmm8

+        movups  xmm0,XMMWORD[32= +r11]

+       &n= bsp;jmp     NEAR $L$ccm64_dec2_loop

+ALIGN   16

+$L$ccm64_dec2= _loop:

+DB      102,1= 5,56,220,209

+DB      = ;102,15,56,220,217

+     &= nbsp;  movups  xmm1,XMMWORD[rax*1+rcx]

+        add    &= nbsp;rax,32

+DB      = 102,15,56,220,208

+DB     =  102,15,56,220,216

+    &n= bsp;   movups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+        jnz  = ;   NEAR $L$ccm64_dec2_loop

+ &= nbsp;      movups  xmm8,XMMWORD[rdi]

+        paddq=   xmm6,xmm9

+DB    &= nbsp; 102,15,56,220,209

+DB   &= nbsp;  102,15,56,220,217

+DB  &= nbsp;   102,15,56,221,208

+DB &= nbsp;    102,15,56,221,216

+        lea     rd= i,[16+rdi]

+      &nb= sp; jmp     NEAR $L$ccm64_dec_outer
=
+

+ALIGN   16

+$L$ccm64_dec_break:

+
+        mov=     eax,DWORD[240+r11]

+ =        movups  xmm0,XMMWORD[r11]
+        movu= ps  xmm1,XMMWORD[16+r11]

+   &n= bsp;    xorps   xmm8,xmm0

+        lea    = ; r11,[32+r11]

+     =    xorps   xmm3,xmm8

= +$L$oop_enc1_6:

+DB     &n= bsp;102,15,56,220,217

+    &nbs= p;   dec     eax

+        movups  xmm1,XMMWOR= D[r11]

+       &= nbsp;lea     r11,[16+r11]

= +        jnz     NEA= R $L$oop_enc1_6

+DB     &n= bsp;102,15,56,221,217

+    &nbs= p;   pxor    xmm0,xmm0

+        pxor    x= mm1,xmm1

+       = ; pxor    xmm2,xmm2

+ &nbs= p;      movups  XMMWORD[r9],xmm3

+        pxor &nbs= p;  xmm3,xmm3

+    &n= bsp;   pxor    xmm8,xmm8

+        pxor    = ;xmm6,xmm6

+      &nb= sp; movaps  xmm6,XMMWORD[rsp]

+ &nbs= p;      movaps  XMMWORD[rsp],xmm0

+        movaps &= nbsp;xmm7,XMMWORD[16+rsp]

+    =     movaps  XMMWORD[16+rsp],xmm0
+        movaps  xmm8,X= MMWORD[32+rsp]

+      = ;  movaps  XMMWORD[32+rsp],xmm0

+        movaps  xmm9,XMMWORD[48+r= sp]

+       &nbs= p;movaps  XMMWORD[48+rsp],xmm0

+  &n= bsp;     lea     rsp,[88+rsp]<= br class=3D"">
+$L$ccm64_dec_ret:

+        mov     r= di,QWORD[8+rsp]        ;WIN64 epilogue
+        mov=     rsi,QWORD[16+rsp]

+ &= nbsp;      DB      0= F3h,0C3h            =    ;repret

+

+$L$SEH_end_aesni_ccm64_decrypt_blocks:

+global  aesni_ctr32_encrypt_blocks

+

+ALIGN   16

+aesni_ctr32_encrypt_blocks:

+  =       mov     QWORD[8+rsp= ],rdi        ;WIN64 prologue

+        mov  &nb= sp;  QWORD[16+rsp],rsi

+   = ;     mov     rax,rsp

+$L$SEH_begin_aesni_ctr32_encrypt_blocks:

+        mov  &nb= sp;  rdi,rcx

+    &nb= sp;   mov     rsi,rdx

+        mov   &nbs= p; rdx,r8

+      = ;  mov     rcx,r9

+        mov     r= 8,QWORD[40+rsp]

+

+

+

+  &nbs= p;     cmp     rdx,1

+        jne  = ;   NEAR $L$ctr32_bulk

+

+

+

+        movups  xmm2,XMM= WORD[r8]

+       = ; movups  xmm3,XMMWORD[rdi]

+  =       mov     edx,DWORD[2= 40+rcx]

+       =  movups  xmm0,XMMWORD[rcx]

+  &= nbsp;     movups  xmm1,XMMWORD[16+rcx]

+        lea &nbs= p;   rcx,[32+rcx]

+   = ;     xorps   xmm2,xmm0
+$L$oop_enc1_7:

+DB   &= nbsp;  102,15,56,220,209

+  &nb= sp;     dec     edx

+        movups &n= bsp;xmm1,XMMWORD[rcx]

+    &nbs= p;   lea     rcx,[16+rcx]
=
+        jnz   =   NEAR $L$oop_enc1_7

+DB   = ;   102,15,56,221,209

+  &= nbsp;     pxor    xmm0,xmm0

+        pxor &nbs= p;  xmm1,xmm1

+    &n= bsp;   xorps   xmm2,xmm3

+        pxor    x= mm3,xmm3

+       = ; movups  XMMWORD[rsi],xmm2

+  =       xorps   xmm2,xmm2

+        jmp  &nb= sp;  NEAR $L$ctr32_epilogue

+

+ALIGN   16

+= $L$ctr32_bulk:

+      = ;  lea     r11,[rsp]

+

+       = ; push    rbp

+

+        sub  = ;   rsp,288

+    = ;    and     rsp,-16
=
+        movaps  XMM= WORD[(-168)+r11],xmm6

+    &nbs= p;   movaps  XMMWORD[(-152)+r11],xmm7
+        movaps  XMMWOR= D[(-136)+r11],xmm8

+     &= nbsp;  movaps  XMMWORD[(-120)+r11],xmm9

+        movaps  XMMWORD[(= -104)+r11],xmm10

+     &nb= sp;  movaps  XMMWORD[(-88)+r11],xmm11

+        movaps  XMMWORD[(-7= 2)+r11],xmm12

+      =   movaps  XMMWORD[(-56)+r11],xmm13

+        movaps  XMMWORD[(-4= 0)+r11],xmm14

+      =   movaps  XMMWORD[(-24)+r11],xmm15

+$L$ctr32_body:

+

+

+

+

+        movdq= u  xmm2,XMMWORD[r8]

+    &= nbsp;   movdqu  xmm0,XMMWORD[rcx]

+        mov    &= nbsp;r8d,DWORD[12+r8]

+    &nbs= p;   pxor    xmm2,xmm0

+        mov    &n= bsp;ebp,DWORD[12+rcx]

+    &nbs= p;   movdqa  XMMWORD[rsp],xmm2

+        bswap   r8d
+        movd= qa  xmm3,xmm2

+     &= nbsp;  movdqa  xmm4,xmm2

+ &nbs= p;      movdqa  xmm5,xmm2
=
+        movdqa  XMM= WORD[64+rsp],xmm2

+     &n= bsp;  movdqa  XMMWORD[80+rsp],xmm2

+        movdqa  XMMWORD[96+= rsp],xmm2

+      &nbs= p; mov     r10,rdx

+ =        movdqa  XMMWORD[112+rsp],xmm= 2

+

+   = ;     lea     rax,[1+r8]

+        lea &nb= sp;   rdx,[2+r8]

+   =      bswap   eax

+        bswap   edx
+        xor =     eax,ebp

+   =      xor     edx,ebp

+DB      102,15,58,34,216,3<= br class=3D"">
+        le= a     rax,[3+r8]

+  &= nbsp;     movdqa  XMMWORD[16+rsp],xmm3

+DB      102,15,58,34,226,3=

+        b= swap   eax

+     = ;   mov     rdx,r10

+        lea    =  r10,[4+r8]

+     &nb= sp;  movdqa  XMMWORD[32+rsp],xmm4

+        xor     = eax,ebp

+       =  bswap   r10d

+DB   &= nbsp;  102,15,58,34,232,3

+  &n= bsp;     xor     r10d,ebp

+        movdqa=  XMMWORD[48+rsp],xmm5

+   &nbs= p;    lea     r9,[5+r8]

+        mov  &nb= sp;  DWORD[((64+12))+rsp],r10d

+ &nb= sp;      bswap   r9d
=
+        lea   =   r10,[6+r8]

+    &nb= sp;   mov     eax,DWORD[240+rcx]

+        xor  = ;   r9d,ebp

+    = ;    bswap   r10d

+        mov     D= WORD[((80+12))+rsp],r9d

+    &n= bsp;   xor     r10d,ebp
+        lea   &n= bsp; r9,[7+r8]

+     =    mov     DWORD[((96+12))+rsp],r10d

+        bswap=   r9d

+     &nb= sp;  mov     r10d,DWORD[((OPENSSL_ia32cap_P+4= ))]

+       &nbs= p;xor     r9d,ebp

+  =       and     r10d,713031= 68

+        = ;mov     DWORD[((112+12))+rsp],r9d

+

+      &nb= sp; movups  xmm1,XMMWORD[16+rcx]

+
+        mov= dqa  xmm6,XMMWORD[64+rsp]

+   &= nbsp;    movdqa  xmm7,XMMWORD[80+rsp]

+

+     &= nbsp;  cmp     rdx,8

+        jb    &nb= sp; NEAR $L$ctr32_tail

+
+        sub   &n= bsp; rdx,6

+     &nbs= p;  cmp     r10d,4194304

+        je    &= nbsp; NEAR $L$ctr32_6x

+
+        lea   &n= bsp; rcx,[128+rcx]

+    &n= bsp;   sub     rdx,2

+        jmp    = ; NEAR $L$ctr32_loop8

+
+ALIGN   16

+$L$ctr32_6x= :

+        = shl     eax,4

+  &nbs= p;     mov     r10d,48

+        bswap &nb= sp; ebp

+      &= nbsp; lea     rcx,[32+rax*1+rcx]
+        sub   &nb= sp; r10,rax

+     &nb= sp;  jmp     NEAR $L$ctr32_loop6

+

+ALIGN   16

+$L$ctr32_loop6:

+ &nb= sp;      add     r8d,6
+        movu= ps  xmm0,XMMWORD[((-48))+r10*1+rcx]

+DB &= nbsp;    102,15,56,220,209

+        mov     ea= x,r8d

+       &n= bsp;xor     eax,ebp

+DB &n= bsp;    102,15,56,220,217

= +DB      0x0f,0x38,0xf1,0x44,0x24,12

+        lea   = ;  eax,[1+r8]

+DB    =   102,15,56,220,225

+   &n= bsp;    xor     eax,ebp

+DB      0x0f,0x38,0xf1,0x44,0x2= 4,28

+DB      102,15,= 56,220,233

+      &nb= sp; lea     eax,[2+r8]

+        xor     e= ax,ebp

+DB      102,1= 5,56,220,241

+DB      = ;0x0f,0x38,0xf1,0x44,0x24,44

+   &nb= sp;    lea     eax,[3+r8]

+DB      102,15,56,220,249
+        mov= ups  xmm1,XMMWORD[((-32))+r10*1+rcx]

+ &n= bsp;      xor     eax,ebp=

+

+DB  &nbs= p;   102,15,56,220,208

+DB &nbs= p;    0x0f,0x38,0xf1,0x44,0x24,60

+        lea    &= nbsp;eax,[4+r8]

+DB     &n= bsp;102,15,56,220,216

+    &nbs= p;   xor     eax,ebp

+DB      0x0f,0x38,0xf1,0x44,0x24,76

+DB      102,15,56,220,2= 24

+        = ;lea     eax,[5+r8]

+ &nbs= p;      xor     eax,ebp
+DB      102,15,56,220= ,232

+DB      0x0f,0x= 38,0xf1,0x44,0x24,92

+     = ;   mov     rax,r10

+DB      102,15,56,220,240
=
+DB      102,15,56,220,248

+        movups &n= bsp;xmm0,XMMWORD[((-16))+r10*1+rcx]

+

+        call &nbs= p;  $L$enc_loop6

+
+        movdqu  xmm8,X= MMWORD[rdi]

+      &n= bsp; movdqu  xmm9,XMMWORD[16+rdi]

+ =        movdqu  xmm10,XMMWORD[32+rdi= ]

+        = movdqu  xmm11,XMMWORD[48+rdi]

+  &nb= sp;     movdqu  xmm12,XMMWORD[64+rdi]

+        movdqu &n= bsp;xmm13,XMMWORD[80+rdi]

+    =     lea     rdi,[96+rdi]

+        movups &n= bsp;xmm1,XMMWORD[((-64))+r10*1+rcx]

+  &n= bsp;     pxor    xmm8,xmm2

+        movaps &n= bsp;xmm2,XMMWORD[rsp]

+    &nbs= p;   pxor    xmm9,xmm3

+        movaps  xmm3,XMMWOR= D[16+rsp]

+      &nbs= p; pxor    xmm10,xmm4

+ &n= bsp;      movaps  xmm4,XMMWORD[32+rsp]
+        pxo= r    xmm11,xmm5

+   &= nbsp;    movaps  xmm5,XMMWORD[48+rsp]

+        pxor  &nb= sp; xmm12,xmm6

+     =    movaps  xmm6,XMMWORD[64+rsp]

+        pxor    x= mm13,xmm7

+      &nbs= p; movaps  xmm7,XMMWORD[80+rsp]

+ &n= bsp;      movdqu  XMMWORD[rsi],xmm8

+        movdqu=  XMMWORD[16+rsi],xmm9

+   &nbs= p;    movdqu  XMMWORD[32+rsi],xmm10
=
+        movdqu  XMM= WORD[48+rsi],xmm11

+     &= nbsp;  movdqu  XMMWORD[64+rsi],xmm12

+        movdqu  XMMWORD[80+= rsi],xmm13

+      &nb= sp; lea     rsi,[96+rsi]

+

+       = ; sub     rdx,6

+ &nb= sp;      jnc     NEAR $L$= ctr32_loop6

+

+ &= nbsp;      add     rdx,6<= br class=3D"">
+        jz=      NEAR $L$ctr32_done

+

+       = ; lea     eax,[((-48))+r10]

+        lea    &n= bsp;rcx,[((-80))+r10*1+rcx]

+   &nbs= p;    neg     eax
+        shr   &nb= sp; eax,4

+      = ;  jmp     NEAR $L$ctr32_tail
<= br class=3D"">+

+ALIGN   32

+$L$ctr32_loop8:

+  = ;      add     r8d,8

+        movdqa=  xmm8,XMMWORD[96+rsp]

+DB   &n= bsp;  102,15,56,220,209

+  &nbs= p;     mov     r9d,r8d

+        movdqa &n= bsp;xmm9,XMMWORD[112+rsp]

+DB   &nbs= p;  102,15,56,220,217

+   =      bswap   r9d

+        movups  xmm0,XMMWOR= D[((32-128))+rcx]

+DB     =  102,15,56,220,225

+    &n= bsp;   xor     r9d,ebp
+        nop
<= br class=3D"">+DB      102,15,56,220,233

+        mov  = ;   DWORD[((0+12))+rsp],r9d

+ &= nbsp;      lea     r9,[1+= r8]

+DB      102,15,5= 6,220,241

+DB      10= 2,15,56,220,249

+DB     &n= bsp;102,68,15,56,220,193

+DB    = ;  102,68,15,56,220,201

+  &nbs= p;     movups  xmm1,XMMWORD[((48-128))+rcx]
+        bsw= ap   r9d

+DB     = ; 102,15,56,220,208

+DB    = ;  102,15,56,220,216

+   &= nbsp;    xor     r9d,ebp

+DB      0x66,0x90

+DB      102,15,56,220,224
+DB      102,15,56,220= ,232

+       &nb= sp;mov     DWORD[((16+12))+rsp],r9d

+        lea    = ; r9,[2+r8]

+DB     &= nbsp;102,15,56,220,240

+DB    &= nbsp; 102,15,56,220,248

+DB   &= nbsp;  102,68,15,56,220,192

+DB &nbs= p;    102,68,15,56,220,200

+        movups  xmm0,XMMWORD[((64= -128))+rcx]

+      &n= bsp; bswap   r9d

+DB  &nbs= p;   102,15,56,220,209

+DB &nbs= p;    102,15,56,220,217

+ =        xor     r9d,e= bp

+DB      0x66,0x90=

+DB      102,15,56,2= 20,225

+DB      102,1= 5,56,220,233

+      &= nbsp; mov     DWORD[((32+12))+rsp],r9d

+        lea  &nb= sp;  r9,[3+r8]

+DB    = ;  102,15,56,220,241

+DB   = ;   102,15,56,220,249

+DB  = ;    102,68,15,56,220,193

= +DB      102,68,15,56,220,201

+        movups  xmm1,XMMW= ORD[((80-128))+rcx]

+     =    bswap   r9d

+DB &n= bsp;    102,15,56,220,208

= +DB      102,15,56,220,216

+        xor    &n= bsp;r9d,ebp

+DB      = 0x66,0x90

+DB      10= 2,15,56,220,224

+DB     &n= bsp;102,15,56,220,232

+    &nbs= p;   mov     DWORD[((48+12))+rsp],r9d
+        lea =     r9,[4+r8]

+DB  &n= bsp;   102,15,56,220,240

+DB &n= bsp;    102,15,56,220,248

= +DB      102,68,15,56,220,192

+DB      102,68,15,56,220,200

+        movups  = xmm0,XMMWORD[((96-128))+rcx]

+   &nb= sp;    bswap   r9d

+DB      102,15,56,220,209

+DB      102,15,56,220,217
=
+        xor   =   r9d,ebp

+DB    &nbs= p; 0x66,0x90

+DB     =  102,15,56,220,225

+DB    =   102,15,56,220,233

+   &n= bsp;    mov     DWORD[((64+12))+rsp= ],r9d

+       &n= bsp;lea     r9,[5+r8]

+DB =      102,15,56,220,241

+DB      102,15,56,220,249

+DB      102,68,15,56,220,193

+DB      102,68,15,56,220,201

+        movup= s  xmm1,XMMWORD[((112-128))+rcx]

+  =       bswap   r9d
+DB      102,15,56,220,208

+DB      102,15,56,220,216

+        xor &nb= sp;   r9d,ebp

+DB   &= nbsp;  0x66,0x90

+DB   &nb= sp;  102,15,56,220,224

+DB  &nb= sp;   102,15,56,220,232

+  = ;      mov     DWORD[((80= +12))+rsp],r9d

+      = ;  lea     r9,[6+r8]

+DB      102,15,56,220,240
+DB      102,15,56,220,248

+DB      102,68,15,56,220,19= 2

+DB      102,68,15,= 56,220,200

+      &nb= sp; movups  xmm0,XMMWORD[((128-128))+rcx]

+        bswap   r9d
+DB      102,15,56,220,= 209

+DB      102,15,5= 6,220,217

+      &nbs= p; xor     r9d,ebp

+D= B      0x66,0x90

+DB =      102,15,56,220,225

+DB      102,15,56,220,233

+        mov    &= nbsp;DWORD[((96+12))+rsp],r9d

+   &n= bsp;    lea     r9,[7+r8]

+DB      102,15,56,220,241
+DB      102,15,56,220= ,249

+DB      102,68,= 15,56,220,193

+DB     &nbs= p;102,68,15,56,220,201

+    &nb= sp;   movups  xmm1,XMMWORD[((144-128))+rcx]

+        bswap  &= nbsp;r9d

+DB      102= ,15,56,220,208

+DB     &nb= sp;102,15,56,220,216

+DB    &nb= sp; 102,15,56,220,224

+    = ;    xor     r9d,ebp
=
+        movdqu  xmm= 10,XMMWORD[rdi]

+DB     &n= bsp;102,15,56,220,232

+    &nbs= p;   mov     DWORD[((112+12))+rsp],r9d
+        cmp=     eax,11

+DB  &nbs= p;   102,15,56,220,240

+DB &nbs= p;    102,15,56,220,248

+D= B      102,68,15,56,220,192

+DB      102,68,15,56,220,200

+        movups  xm= m0,XMMWORD[((160-128))+rcx]

+
+        jb   &nb= sp;  NEAR $L$ctr32_enc_done

+

+DB      102,15,56,220,209<= br class=3D"">
+DB      102,15,56,22= 0,217

+DB      102,15= ,56,220,225

+DB      = 102,15,56,220,233

+DB     =  102,15,56,220,241

+DB    =   102,15,56,220,249

+DB   =    102,68,15,56,220,193

+DB &nb= sp;    102,68,15,56,220,201

+        movups  xmm1,XMMWORD[((1= 76-128))+rcx]

+

+= DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220,224

+DB      102,15,56,220,232
+DB      102,15,56,220= ,240

+DB      102,15,= 56,220,248

+DB      1= 02,68,15,56,220,192

+DB    &nbs= p; 102,68,15,56,220,200

+   &nb= sp;    movups  xmm0,XMMWORD[((192-128))+rcx]

+        je &nbs= p;    NEAR $L$ctr32_enc_done

+

+DB      102,15,= 56,220,209

+DB      1= 02,15,56,220,217

+DB     &= nbsp;102,15,56,220,225

+DB    &= nbsp; 102,15,56,220,233

+DB   &= nbsp;  102,15,56,220,241

+DB  &= nbsp;   102,15,56,220,249

+DB &= nbsp;    102,68,15,56,220,193

+DB      102,68,15,56,220,201

+        movups  xm= m1,XMMWORD[((208-128))+rcx]

+
+DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220= ,224

+DB      102,15,= 56,220,232

+DB      1= 02,15,56,220,240

+DB     &= nbsp;102,15,56,220,248

+DB    &= nbsp; 102,68,15,56,220,192

+DB  &nbs= p;   102,68,15,56,220,200

+ &nb= sp;      movups  xmm0,XMMWORD[((224-128)= )+rcx]

+       &= nbsp;jmp     NEAR $L$ctr32_enc_done

+

+ALIGN   16

+$L$ctr32_enc_done:

+  &= nbsp;     movdqu  xmm11,XMMWORD[16+rdi]

+        pxor &n= bsp;  xmm10,xmm0

+    = ;    movdqu  xmm12,XMMWORD[32+rdi]
<= br class=3D"">+        pxor   =  xmm11,xmm0

+     &nb= sp;  movdqu  xmm13,XMMWORD[48+rdi]

+        pxor    x= mm12,xmm0

+      &nbs= p; movdqu  xmm14,XMMWORD[64+rdi]

+ &= nbsp;      pxor    xmm13,xmm0<= br class=3D"">
+        mo= vdqu  xmm15,XMMWORD[80+rdi]

+   = ;     pxor    xmm14,xmm0

+        pxor &nbs= p;  xmm15,xmm0

+DB    = ;  102,15,56,220,209

+DB   = ;   102,15,56,220,217

+DB  = ;    102,15,56,220,225

+DB=      102,15,56,220,233

+DB      102,15,56,220,241

+DB      102,15,56,220,249
=
+DB      102,68,15,56,220,193

+DB      102,68,15,56,220,= 201

+       &nbs= p;movdqu  xmm1,XMMWORD[96+rdi]

+  &n= bsp;     lea     rdi,[128+rdi]=

+

+DB  &nbs= p;   102,65,15,56,221,210

+ &nb= sp;      pxor    xmm1,xmm0

+        movdq= u  xmm10,XMMWORD[((112-128))+rdi]

+DB &nb= sp;    102,65,15,56,221,219

+        pxor    xmm10,= xmm0

+       &nb= sp;movdqa  xmm11,XMMWORD[rsp]

+DB  &= nbsp;   102,65,15,56,221,228

+D= B      102,65,15,56,221,237

+        movdqa  xmm12,XMMWO= RD[16+rsp]

+      &nb= sp; movdqa  xmm13,XMMWORD[32+rsp]

+D= B      102,65,15,56,221,246

+DB      102,65,15,56,221,255

+        movdqa  xm= m14,XMMWORD[48+rsp]

+     =    movdqa  xmm15,XMMWORD[64+rsp]

+DB      102,68,15,56,221,193

+        movdqa  xm= m0,XMMWORD[80+rsp]

+     &= nbsp;  movups  xmm1,XMMWORD[((16-128))+rcx]
+DB      102,69,15,56,221,202

+

+    &n= bsp;   movups  XMMWORD[rsi],xmm2

+        movdqa  xmm2,xmm11<= br class=3D"">
+        mo= vups  XMMWORD[16+rsi],xmm3

+   =      movdqa  xmm3,xmm12

+        movups  XMMWORD[32= +rsi],xmm4

+      &nb= sp; movdqa  xmm4,xmm13

+   = ;     movups  XMMWORD[48+rsi],xmm5

+        movdqa &n= bsp;xmm5,xmm14

+      = ;  movups  XMMWORD[64+rsi],xmm6

+        movdqa  xmm6,xmm15

+        movups &= nbsp;XMMWORD[80+rsi],xmm7

+    =     movdqa  xmm7,xmm0

+        movups  XMMWORD[96+rsi],x= mm8

+       &nbs= p;movups  XMMWORD[112+rsi],xmm9

+  &= nbsp;     lea     rsi,[128+rsi= ]

+

+   = ;     sub     rdx,8

+        jnc  = ;   NEAR $L$ctr32_loop8

+

+        add &nb= sp;   rdx,8

+    = ;    jz      NEAR $L$ctr32_don= e

+        = lea     rcx,[((-128))+rcx]

+

+$L$ctr32_tail:

+

+

+  &nb= sp;     lea     rcx,[16+rcx]
+        cmp=     rdx,4

+   &= nbsp;    jb      NEAR $L$ctr32= _loop3

+       &= nbsp;je      NEAR $L$ctr32_loop4
+

+

+=        shl     eax,= 4

+        = movdqa  xmm8,XMMWORD[96+rsp]

+  &nbs= p;     pxor    xmm9,xmm9

+

+    &n= bsp;   movups  xmm0,XMMWORD[16+rcx]

+DB      102,15,56,220,209

+DB      102,15,56,220,217

+        lea  = ;   rcx,[((32-16))+rax*1+rcx]

+=        neg     rax<= br class=3D"">
+DB      102,15,56,22= 0,225

+       &n= bsp;add     rax,16

+  = ;      movups  xmm10,XMMWORD[rdi]

+DB      102,15,56,220,233<= br class=3D"">
+DB      102,15,56,22= 0,241

+       &n= bsp;movups  xmm11,XMMWORD[16+rdi]

+  = ;      movups  xmm12,XMMWORD[32+rdi]

+DB      102,15,56,220,2= 49

+DB      102,68,15= ,56,220,193

+

+ &= nbsp;      call    $L$enc_loop= 8_enter

+

+  = ;      movdqu  xmm13,XMMWORD[48+rdi]

+        pxor =    xmm2,xmm10

+   &nb= sp;    movdqu  xmm10,XMMWORD[64+rdi]

+        pxor  &nbs= p; xmm3,xmm11

+     &= nbsp;  movdqu  XMMWORD[rsi],xmm2

+        pxor    xmm4,x= mm12

+       &nb= sp;movdqu  XMMWORD[16+rsi],xmm3

+  &= nbsp;     pxor    xmm5,xmm13

+        movdqu &= nbsp;XMMWORD[32+rsi],xmm4

+    =     pxor    xmm6,xmm10
+        movdqu  XMMWOR= D[48+rsi],xmm5

+      = ;  movdqu  XMMWORD[64+rsi],xmm6

+        cmp     rd= x,6

+       &nbs= p;jb      NEAR $L$ctr32_done

+

+      &nbs= p; movups  xmm11,XMMWORD[80+rdi]

+ &= nbsp;      xorps   xmm7,xmm11

+        movups =  XMMWORD[80+rsi],xmm7

+    = ;    je      NEAR $L$ctr32_don= e

+

+   = ;     movups  xmm12,XMMWORD[96+rdi]

+        xorps &nb= sp; xmm8,xmm12

+     =    movups  XMMWORD[96+rsi],xmm8

+        jmp    &n= bsp;NEAR $L$ctr32_done

+

+ALIGN   32

+$L$ctr32_loop4:=

+DB      102,15,56,2= 20,209

+       &= nbsp;lea     rcx,[16+rcx]

= +        dec     eax=

+DB      102,15,56,2= 20,217

+DB      102,1= 5,56,220,225

+DB      = ;102,15,56,220,233

+     &= nbsp;  movups  xmm1,XMMWORD[rcx]

+        jnz     N= EAR $L$ctr32_loop4

+DB     = ; 102,15,56,221,209

+DB    = ;  102,15,56,221,217

+   &= nbsp;    movups  xmm10,XMMWORD[rdi]
=
+        movups  xmm= 11,XMMWORD[16+rdi]

+DB     = ; 102,15,56,221,225

+DB    = ;  102,15,56,221,233

+   &= nbsp;    movups  xmm12,XMMWORD[32+rdi]

+        movups  = xmm13,XMMWORD[48+rdi]

+

+        xorps   xmm2,x= mm10

+       &nb= sp;movups  XMMWORD[rsi],xmm2

+  &nbs= p;     xorps   xmm3,xmm11
=
+        movups  XMM= WORD[16+rsi],xmm3

+     &n= bsp;  pxor    xmm4,xmm12

+        movdqu  XMMWORD[32+= rsi],xmm4

+      &nbs= p; pxor    xmm5,xmm13

+ &n= bsp;      movdqu  XMMWORD[48+rsi],xmm5
+        jmp=     NEAR $L$ctr32_done

+<= br class=3D"">
+ALIGN   32

+$L$ctr32_loop3:

+DB    =   102,15,56,220,209

+   &n= bsp;    lea     rcx,[16+rcx]

+        dec &nbs= p;   eax

+DB    =   102,15,56,220,217

+DB   =    102,15,56,220,225

+  &n= bsp;     movups  xmm1,XMMWORD[rcx]

+        jnz  = ;   NEAR $L$ctr32_loop3

+DB &nb= sp;    102,15,56,221,209

+= DB      102,15,56,221,217

+DB      102,15,56,221,225
+

+      = ;  movups  xmm10,XMMWORD[rdi]

+=        xorps   xmm2,xmm10

+        movup= s  XMMWORD[rsi],xmm2

+    =     cmp     rdx,2
+        jb   &nbs= p;  NEAR $L$ctr32_done

+

+        movups  = xmm11,XMMWORD[16+rdi]

+    &nbs= p;   xorps   xmm3,xmm11

+        movups  XMMWORD[16+rsi]= ,xmm3

+       &n= bsp;je      NEAR $L$ctr32_done

+

+      &n= bsp; movups  xmm12,XMMWORD[32+rdi]

+=        xorps   xmm4,xmm12

+        movup= s  XMMWORD[32+rsi],xmm4

+
<= br class=3D"">+$L$ctr32_done:

+   &n= bsp;    xorps   xmm0,xmm0

+        xor    = ; ebp,ebp

+      = ;  pxor    xmm1,xmm1

= +        pxor    xmm2,xmm= 2

+        = pxor    xmm3,xmm3

+   = ;     pxor    xmm4,xmm4

+        pxor  &n= bsp; xmm5,xmm5

+     =    movaps  xmm6,XMMWORD[((-168))+r11]
+        movaps  XMMWOR= D[(-168)+r11],xmm0

+     &= nbsp;  movaps  xmm7,XMMWORD[((-152))+r11]

+        movaps  XMMWORD= [(-152)+r11],xmm0

+     &n= bsp;  movaps  xmm8,XMMWORD[((-136))+r11]

+        movaps  XMMWORD[= (-136)+r11],xmm0

+     &nb= sp;  movaps  xmm9,XMMWORD[((-120))+r11]

+        movaps  XMMWORD[(= -120)+r11],xmm0

+     &nbs= p;  movaps  xmm10,XMMWORD[((-104))+r11]

+        movaps  XMMWORD[(= -104)+r11],xmm0

+     &nbs= p;  movaps  xmm11,XMMWORD[((-88))+r11]

+        movaps  XMMWORD[(-= 88)+r11],xmm0

+      =   movaps  xmm12,XMMWORD[((-72))+r11]

+        movaps  XMMWORD[(-7= 2)+r11],xmm0

+      &= nbsp; movaps  xmm13,XMMWORD[((-56))+r11]

+        movaps  XMMWORD[(-5= 6)+r11],xmm0

+      &= nbsp; movaps  xmm14,XMMWORD[((-40))+r11]

+        movaps  XMMWORD[(-4= 0)+r11],xmm0

+      &= nbsp; movaps  xmm15,XMMWORD[((-24))+r11]

+        movaps  XMMWORD[(-2= 4)+r11],xmm0

+      &= nbsp; movaps  XMMWORD[rsp],xmm0

+ &n= bsp;      movaps  XMMWORD[16+rsp],xmm0
+        mov= aps  XMMWORD[32+rsp],xmm0

+   &= nbsp;    movaps  XMMWORD[48+rsp],xmm0

+        movaps  X= MMWORD[64+rsp],xmm0

+     =    movaps  XMMWORD[80+rsp],xmm0

+        movaps  XMMWORD[96+= rsp],xmm0

+      &nbs= p; movaps  XMMWORD[112+rsp],xmm0

+ &= nbsp;      mov     rbp,QW= ORD[((-8))+r11]

+

+        lea     rs= p,[r11]

+

+$L$ctr= 32_epilogue:

+      &= nbsp; mov     rdi,QWORD[8+rsp]    &= nbsp;   ;WIN64 epilogue

+  = ;      mov     rsi,QWORD[= 16+rsp]

+       =  DB      0F3h,0C3h     &n= bsp;         ;repret

+

+$L$SEH_end_aesni_ctr3= 2_encrypt_blocks:

+global  aesni_xts_encr= ypt

+

+ALIGN &nbs= p; 16

+aesni_xts_encrypt:
<= br class=3D"">+        mov   &= nbsp; QWORD[8+rsp],rdi        ;WIN6= 4 prologue

+      &nb= sp; mov     QWORD[16+rsp],rsi

+        mov    =  rax,rsp

+$L$SEH_begin_aesni_xts_encrypt:=

+        m= ov     rdi,rcx

+  &nb= sp;     mov     rsi,rdx

+        mov &nbs= p;   rdx,r8

+    = ;    mov     rcx,r9
<= br class=3D"">+        mov   &= nbsp; r8,QWORD[40+rsp]

+   &nbs= p;    mov     r9,QWORD[48+rsp]

+

+
+

+      =   lea     r11,[rsp]

+

+       = ; push    rbp

+

+        sub  = ;   rsp,272

+    = ;    and     rsp,-16
=
+        movaps  XMM= WORD[(-168)+r11],xmm6

+    &nbs= p;   movaps  XMMWORD[(-152)+r11],xmm7
+        movaps  XMMWOR= D[(-136)+r11],xmm8

+     &= nbsp;  movaps  XMMWORD[(-120)+r11],xmm9

+        movaps  XMMWORD[(= -104)+r11],xmm10

+     &nb= sp;  movaps  XMMWORD[(-88)+r11],xmm11

+        movaps  XMMWORD[(-7= 2)+r11],xmm12

+      =   movaps  XMMWORD[(-56)+r11],xmm13

+        movaps  XMMWORD[(-4= 0)+r11],xmm14

+      =   movaps  XMMWORD[(-24)+r11],xmm15

+$L$xts_enc_body:

+    &= nbsp;   movups  xmm2,XMMWORD[r9]

+        mov    &n= bsp;eax,DWORD[240+r8]

+    &nbs= p;   mov     r10d,DWORD[240+rcx]

+        movups &n= bsp;xmm0,XMMWORD[r8]

+     = ;   movups  xmm1,XMMWORD[16+r8]

+        lea    &n= bsp;r8,[32+r8]

+      = ;  xorps   xmm2,xmm0

+$L$o= op_enc1_8:

+DB      1= 02,15,56,220,209

+     &nb= sp;  dec     eax

+        movups  xmm1,XMMWORD[r8]<= br class=3D"">
+        le= a     r8,[16+r8]

+  &= nbsp;     jnz     NEAR $L$oop_= enc1_8

+DB      102,1= 5,56,221,209

+      &= nbsp; movups  xmm0,XMMWORD[rcx]

+ &n= bsp;      mov     rbp,rcx=

+        m= ov     eax,r10d

+  &n= bsp;     shl     r10d,4

+        mov &nbs= p;   r9,rdx

+    = ;    and     rdx,-16
=
+

+     &nb= sp;  movups  xmm1,XMMWORD[16+r10*1+rcx]

+

+      &nb= sp; movdqa  xmm8,XMMWORD[$L$xts_magic]

+        movdqa  xmm15,xmm2

+        pshufd=  xmm9,xmm2,0x5f

+    &nbs= p;   pxor    xmm1,xmm0

+        movdqa  xmm14,xmm9<= br class=3D"">
+        pa= ddd   xmm9,xmm9

+    =     movdqa  xmm10,xmm15

+        psrad   xmm14,31
+        pad= dq   xmm15,xmm15

+    = ;    pand    xmm14,xmm8
+        pxor   &= nbsp;xmm10,xmm0

+     &nbs= p;  pxor    xmm15,xmm14

+        movdqa  xmm14,xmm9

+        paddd =   xmm9,xmm9

+    &nbs= p;   movdqa  xmm11,xmm15

+=        psrad   xmm14,31

+        paddq &= nbsp; xmm15,xmm15

+    &nb= sp;   pand    xmm14,xmm8

+        pxor    = ;xmm11,xmm0

+      &n= bsp; pxor    xmm15,xmm14

+=        movdqa  xmm14,xmm9

+        paddd &nb= sp; xmm9,xmm9

+     &= nbsp;  movdqa  xmm12,xmm15

+ &n= bsp;      psrad   xmm14,31

+        paddq &nb= sp; xmm15,xmm15

+     = ;   pand    xmm14,xmm8

+        pxor    x= mm12,xmm0

+      &nbs= p; pxor    xmm15,xmm14

+ &= nbsp;      movdqa  xmm14,xmm9

+        paddd &nb= sp; xmm9,xmm9

+     &= nbsp;  movdqa  xmm13,xmm15

+ &n= bsp;      psrad   xmm14,31

+        paddq &nb= sp; xmm15,xmm15

+     = ;   pand    xmm14,xmm8

+        pxor    x= mm13,xmm0

+      &nbs= p; pxor    xmm15,xmm14

+ &= nbsp;      movdqa  xmm14,xmm15

+        psrad &nb= sp; xmm9,31

+     &nb= sp;  paddq   xmm15,xmm15

+=        pand    xmm9,xmm8=

+        p= xor    xmm14,xmm0

+   = ;     pxor    xmm15,xmm9

+        movaps &n= bsp;XMMWORD[96+rsp],xmm1

+

+        sub    = ; rdx,16*6

+     &nbs= p;  jc      NEAR $L$xts_enc_short

+

+    &= nbsp;   mov     eax,16+96
=
+        lea   =   rcx,[32+r10*1+rbp]

+   &= nbsp;    sub     rax,r10

+        movups &n= bsp;xmm1,XMMWORD[16+rbp]

+    &= nbsp;   mov     r10,rax
+        lea   &n= bsp; r8,[$L$xts_magic]

+   &nbs= p;    jmp     NEAR $L$xts_enc_grand= loop

+

+ALIGN &nb= sp; 32

+$L$xts_enc_grandloop:

+        movdqu  = xmm2,XMMWORD[rdi]

+     &n= bsp;  movdqa  xmm8,xmm0

+  = ;      movdqu  xmm3,XMMWORD[16+rdi]

+        pxor &= nbsp;  xmm2,xmm10

+   &nbs= p;    movdqu  xmm4,XMMWORD[32+rdi]
<= br class=3D"">+        pxor   =  xmm3,xmm11

+DB     &= nbsp;102,15,56,220,209

+    &nb= sp;   movdqu  xmm5,XMMWORD[48+rdi]

+        pxor    = ;xmm4,xmm12

+DB      = 102,15,56,220,217

+     &n= bsp;  movdqu  xmm6,XMMWORD[64+rdi]

+        pxor    x= mm5,xmm13

+DB      10= 2,15,56,220,225

+     &nbs= p;  movdqu  xmm7,XMMWORD[80+rdi]

+        pxor    xmm8,x= mm15

+       &nb= sp;movdqa  xmm9,XMMWORD[96+rsp]

+  &= nbsp;     pxor    xmm6,xmm14

+DB      102,15,56,220,233<= br class=3D"">
+        mo= vups  xmm0,XMMWORD[32+rbp]

+   =      lea     rdi,[96+rdi]

+        pxor &= nbsp;  xmm7,xmm8

+
+        pxor   &n= bsp;xmm10,xmm9

+DB     &nb= sp;102,15,56,220,241

+     = ;   pxor    xmm11,xmm9

+        movdqa  XMMWORD[rsp= ],xmm10

+DB      102,= 15,56,220,249

+      =   movups  xmm1,XMMWORD[48+rbp]

= +        pxor    xmm12,xm= m9

+

+DB  &n= bsp;   102,15,56,220,208

+ &nbs= p;      pxor    xmm13,xmm9

+        movdq= a  XMMWORD[16+rsp],xmm11

+DB   =    102,15,56,220,216

+  &n= bsp;     pxor    xmm14,xmm9

+        movdqa &n= bsp;XMMWORD[32+rsp],xmm12

+DB   &nbs= p;  102,15,56,220,224

+DB  &nbs= p;   102,15,56,220,232

+  =       pxor    xmm8,xmm9

+        movdqa &= nbsp;XMMWORD[64+rsp],xmm14

+DB   &nb= sp;  102,15,56,220,240

+DB  &nb= sp;   102,15,56,220,248

+  = ;      movups  xmm0,XMMWORD[64+rbp]

+        movdqa=  XMMWORD[80+rsp],xmm8

+   &nbs= p;    pshufd  xmm9,xmm15,0x5f

+        jmp    =  NEAR $L$xts_enc_loop6

+ALIGN   = ;32

+$L$xts_enc_loop6:

+DB      102,15,56,220,209
+DB      102,15,56,220,217

+DB      102,15,56,220,225
+DB      102,15,56,220= ,233

+DB      102,15,= 56,220,241

+DB      1= 02,15,56,220,249

+     &nb= sp;  movups  xmm1,XMMWORD[((-64))+rax*1+rcx]
<= br class=3D"">+        add   &= nbsp; rax,32

+

+DB      102,15,56,220,208

+DB      102,15,56,220,216
=
+DB      102,15,56,220,224

+DB      102,15,56,220,232
+DB      102,15,56,220= ,240

+DB      102,15,= 56,220,248

+      &nb= sp; movups  xmm0,XMMWORD[((-80))+rax*1+rcx]

+        jnz    &= nbsp;NEAR $L$xts_enc_loop6

+
+        movdqa  xmm8,X= MMWORD[r8]

+      &nb= sp; movdqa  xmm14,xmm9

+   = ;     paddd   xmm9,xmm9
+DB      102,15,56,220,209

+        paddq &nb= sp; xmm15,xmm15

+     = ;   psrad   xmm14,31

= +DB      102,15,56,220,217

+        pand    x= mm14,xmm8

+      &nbs= p; movups  xmm10,XMMWORD[rbp]

+DB &n= bsp;    102,15,56,220,225

= +DB      102,15,56,220,233

+DB      102,15,56,220,241
+        pxor   &= nbsp;xmm15,xmm14

+     &nb= sp;  movaps  xmm11,xmm10

+DB &n= bsp;    102,15,56,220,249

= +        movups  xmm1,XMMWORD[((-64= ))+rcx]

+

+  = ;      movdqa  xmm14,xmm9
=
+DB      102,15,56,220,208

+        paddd &nb= sp; xmm9,xmm9

+     &= nbsp;  pxor    xmm10,xmm15

+DB      102,15,56,220,216
+        psrad   = xmm14,31

+       = ; paddq   xmm15,xmm15

+DB  = ;    102,15,56,220,224

+DB=      102,15,56,220,232

+        pand    xmm14= ,xmm8

+       &n= bsp;movaps  xmm12,xmm11

+DB   &= nbsp;  102,15,56,220,240

+  &nb= sp;     pxor    xmm15,xmm14

+        movdqa &n= bsp;xmm14,xmm9

+DB     &nb= sp;102,15,56,220,248

+     = ;   movups  xmm0,XMMWORD[((-48))+rcx]
+

+      =   paddd   xmm9,xmm9

+DB &n= bsp;    102,15,56,220,209

= +        pxor    xmm11,xm= m15

+       &nbs= p;psrad   xmm14,31

+DB   &= nbsp;  102,15,56,220,217

+  &nb= sp;     paddq   xmm15,xmm15

+        pand  &nb= sp; xmm14,xmm8

+DB    &nbs= p; 102,15,56,220,225

+DB   &nbs= p;  102,15,56,220,233

+   =      movdqa  XMMWORD[48+rsp],xmm13

+        pxor &nbs= p;  xmm15,xmm14

+DB   &nbs= p;  102,15,56,220,241

+   =      movaps  xmm13,xmm12

+        movdqa  xmm14,xmm= 9

+DB      102,15,56,= 220,249

+       =  movups  xmm1,XMMWORD[((-32))+rcx]

+=

+        p= addd   xmm9,xmm9

+DB   &nb= sp;  102,15,56,220,208

+   = ;     pxor    xmm12,xmm15

+        psrad &nb= sp; xmm14,31

+DB     =  102,15,56,220,216

+    &n= bsp;   paddq   xmm15,xmm15

+        pand    x= mm14,xmm8

+DB      10= 2,15,56,220,224

+DB     &n= bsp;102,15,56,220,232

+DB    &n= bsp; 102,15,56,220,240

+   &nbs= p;    pxor    xmm15,xmm14
=
+        movaps  xmm= 14,xmm13

+DB      102= ,15,56,220,248

+

= +        movdqa  xmm0,xmm9

+        paddd &nb= sp; xmm9,xmm9

+DB     = ; 102,15,56,220,209

+    &= nbsp;   pxor    xmm13,xmm15
+        psrad   x= mm0,31

+DB      102,1= 5,56,220,217

+      &= nbsp; paddq   xmm15,xmm15

+ &nb= sp;      pand    xmm0,xmm8

+DB      102,15,56,220,2= 25

+DB      102,15,56= ,220,233

+       = ; pxor    xmm15,xmm0

+ &nb= sp;      movups  xmm0,XMMWORD[rbp]

+DB      102,15,56,220,241=

+DB      102,15,56,2= 20,249

+       &= nbsp;movups  xmm1,XMMWORD[16+rbp]

+

+        pxor &n= bsp;  xmm14,xmm15

+DB   &n= bsp;  102,15,56,221,84,36,0

+  =       psrad   xmm9,31

+        paddq  &nb= sp;xmm15,xmm15

+DB     &nb= sp;102,15,56,221,92,36,16

+DB   &nbs= p;  102,15,56,221,100,36,32

+  =       pand    xmm9,xmm8

+        mov &nbs= p;   rax,r10

+DB   &n= bsp;  102,15,56,221,108,36,48

+DB &n= bsp;    102,15,56,221,116,36,64

+DB      102,15,56,221,124,36,80

+        pxor &nbs= p;  xmm15,xmm9

+

+        lea    = ; rsi,[96+rsi]

+     =    movups  XMMWORD[(-96)+rsi],xmm2

+        movups  XMMWORD[(= -80)+rsi],xmm3

+      = ;  movups  XMMWORD[(-64)+rsi],xmm4

+        movups  XMMWORD[(-4= 8)+rsi],xmm5

+      &= nbsp; movups  XMMWORD[(-32)+rsi],xmm6

+        movups  XMMWORD[(-16)+rs= i],xmm7

+       =  sub     rdx,16*6

+ &= nbsp;      jnc     NEAR $= L$xts_enc_grandloop

+

+        mov    &n= bsp;eax,16+96

+      =   sub     eax,r10d

+        mov     = rcx,rbp

+       =  shr     eax,4

+

+$L$xts_enc_short:

+<= br class=3D"">
+        mo= v     r10d,eax

+  &nb= sp;     pxor    xmm10,xmm0

+        add  = ;   rdx,16*6

+   &nbs= p;    jz      NEAR $L$xts_enc_= done

+

+  &n= bsp;     pxor    xmm11,xmm0

+        cmp  = ;   rdx,0x20

+   &nbs= p;    jb      NEAR $L$xts_enc_= one

+       &nbs= p;pxor    xmm12,xmm0

+  &n= bsp;     je      NEAR $L$= xts_enc_two

+

+ &= nbsp;      pxor    xmm13,xmm0<= br class=3D"">
+        cm= p     rdx,0x40

+  &nb= sp;     jb      NEAR $L$x= ts_enc_three

+      &= nbsp; pxor    xmm14,xmm0

+=        je      = ;NEAR $L$xts_enc_four

+

+        movdqu  xmm2,XMMWOR= D[rdi]

+       &= nbsp;movdqu  xmm3,XMMWORD[16+rdi]

+  = ;      movdqu  xmm4,XMMWORD[32+rdi]

+        pxor &= nbsp;  xmm2,xmm10

+   &nbs= p;    movdqu  xmm5,XMMWORD[48+rdi]
<= br class=3D"">+        pxor   =  xmm3,xmm11

+     &nb= sp;  movdqu  xmm6,XMMWORD[64+rdi]

+        lea     = rdi,[80+rdi]

+      &= nbsp; pxor    xmm4,xmm12

+=        pxor    xmm5,xmm1= 3

+        = pxor    xmm6,xmm14

+  &nbs= p;     pxor    xmm7,xmm7

+

+    &n= bsp;   call    _aesni_encrypt6
=
+

+     &nb= sp;  xorps   xmm2,xmm10

+ =        movdqa  xmm10,xmm15

+        xorps &nb= sp; xmm3,xmm11

+     =    xorps   xmm4,xmm12

+        movdqu  XMMWORD[rsi],xmm2=

+        x= orps   xmm5,xmm13

+   &nbs= p;    movdqu  XMMWORD[16+rsi],xmm3
<= br class=3D"">+        xorps   = ;xmm6,xmm14

+      &n= bsp; movdqu  XMMWORD[32+rsi],xmm4

+ =        movdqu  XMMWORD[48+rsi],xmm5=

+        m= ovdqu  XMMWORD[64+rsi],xmm6

+   = ;     lea     rsi,[80+rsi]

+        jmp &= nbsp;   NEAR $L$xts_enc_done

+<= br class=3D"">
+ALIGN   16

+$L$xts_enc_one:

+    &n= bsp;   movups  xmm2,XMMWORD[rdi]

+        lea    &n= bsp;rdi,[16+rdi]

+     &nb= sp;  xorps   xmm2,xmm10

+ =        movups  xmm0,XMMWORD[rcx]
+        movu= ps  xmm1,XMMWORD[16+rcx]

+   &n= bsp;    lea     rcx,[32+rcx]

+        xorps &n= bsp; xmm2,xmm0

+$L$oop_enc1_9:

+DB      102,15,56,220,209
+        dec=     eax

+   &nb= sp;    movups  xmm1,XMMWORD[rcx]
+        lea   &nb= sp; rcx,[16+rcx]

+    &nbs= p;   jnz     NEAR $L$oop_enc1_9

+DB      102,15,56,221,209
+        xor= ps   xmm2,xmm10

+    =     movdqa  xmm10,xmm11

+        movups  XMMWORD[rsi],xm= m2

+        = ;lea     rsi,[16+rsi]

+ &n= bsp;      jmp     NEAR $L= $xts_enc_done

+

+= ALIGN   16

+$L$xts_enc_two:

+        movups &n= bsp;xmm2,XMMWORD[rdi]

+    &nbs= p;   movups  xmm3,XMMWORD[16+rdi]

+        lea    &= nbsp;rdi,[32+rdi]

+     &n= bsp;  xorps   xmm2,xmm10

+=        xorps   xmm3,xmm11

+

+   &nbs= p;    call    _aesni_encrypt2

+

+    &n= bsp;   xorps   xmm2,xmm10

+        movdqa  xmm10,xmm12=

+        x= orps   xmm3,xmm11

+   &nbs= p;    movups  XMMWORD[rsi],xmm2

+        movups  XMMWORD= [16+rsi],xmm3

+      =   lea     rsi,[32+rsi]

+        jmp    &n= bsp;NEAR $L$xts_enc_done

+

+ALIGN   16

+$L$xts_enc_th= ree:

+       &nb= sp;movups  xmm2,XMMWORD[rdi]

+  &nbs= p;     movups  xmm3,XMMWORD[16+rdi]

+        movups &n= bsp;xmm4,XMMWORD[32+rdi]

+    &= nbsp;   lea     rdi,[48+rdi]

+        xorps  &= nbsp;xmm2,xmm10

+     &nbs= p;  xorps   xmm3,xmm11

+ &= nbsp;      xorps   xmm4,xmm12

+

+    =     call    _aesni_encrypt3

+

+     &= nbsp;  xorps   xmm2,xmm10

= +        movdqa  xmm10,xmm13

+        xorps &n= bsp; xmm3,xmm11

+     = ;   xorps   xmm4,xmm12

+        movups  XMMWORD[rsi],xmm= 2

+        = movups  XMMWORD[16+rsi],xmm3

+  &nbs= p;     movups  XMMWORD[32+rsi],xmm4

+        lea  = ;   rsi,[48+rsi]

+   =      jmp     NEAR $L$xts_enc_d= one

+

+ALIGN &nbs= p; 16

+$L$xts_enc_four:
+        movups  xmm2,X= MMWORD[rdi]

+      &n= bsp; movups  xmm3,XMMWORD[16+rdi]

+ =        movups  xmm4,XMMWORD[32+rdi]=

+        x= orps   xmm2,xmm10

+   &nbs= p;    movups  xmm5,XMMWORD[48+rdi]
<= br class=3D"">+        lea   &= nbsp; rdi,[64+rdi]

+    &n= bsp;   xorps   xmm3,xmm11

+        xorps   xmm4,x= mm12

+       &nb= sp;xorps   xmm5,xmm13

+

+        call  &nb= sp; _aesni_encrypt4

+

+        pxor   &nbs= p;xmm2,xmm10

+      &= nbsp; movdqa  xmm10,xmm14

+  &n= bsp;     pxor    xmm3,xmm11

+        pxor &nbs= p;  xmm4,xmm12

+    &= nbsp;   movdqu  XMMWORD[rsi],xmm2

+        pxor    = xmm5,xmm13

+      &nb= sp; movdqu  XMMWORD[16+rsi],xmm3

+ &= nbsp;      movdqu  XMMWORD[32+rsi],xmm4<= br class=3D"">
+        mo= vdqu  XMMWORD[48+rsi],xmm5

+   =      lea     rsi,[64+rsi]

+        jmp &n= bsp;   NEAR $L$xts_enc_done

+
+ALIGN   16

+$L$xts_enc_done:

+    &= nbsp;   and     r9,15

+        jz    = ;  NEAR $L$xts_enc_ret

+   = ;     mov     rdx,r9

+

+$L$xts_enc_steal:

+        movzx=   eax,BYTE[rdi]

+    = ;    movzx   ecx,BYTE[((-16))+rsi]

+        lea  = ;   rdi,[1+rdi]

+   &= nbsp;    mov     BYTE[((-16))+rsi],= al

+        = ;mov     BYTE[rsi],cl

+ &n= bsp;      lea     rsi,[1+= rsi]

+       &nb= sp;sub     rdx,1

+  &= nbsp;     jnz     NEAR $L$xts_= enc_steal

+

+ &nb= sp;      sub     rsi,r9
+        mov=     rcx,rbp

+   = ;     mov     eax,r10d

+

+    &n= bsp;   movups  xmm2,XMMWORD[((-16))+rsi]
=
+        xorps  &nbs= p;xmm2,xmm10

+      &= nbsp; movups  xmm0,XMMWORD[rcx]

+ &n= bsp;      movups  xmm1,XMMWORD[16+rcx]
+        lea=     rcx,[32+rcx]

+  =       xorps   xmm2,xmm0

+$L$oop_enc1_10:

+DB  &= nbsp;   102,15,56,220,209

+ &nb= sp;      dec     eax

+        movups=  xmm1,XMMWORD[rcx]

+    &= nbsp;   lea     rcx,[16+rcx]

+        jnz  &nb= sp;  NEAR $L$oop_enc1_10

+DB  &= nbsp;   102,15,56,221,209

+ &nb= sp;      xorps   xmm2,xmm10

+        movups &n= bsp;XMMWORD[(-16)+rsi],xmm2

+
+$L$xts_enc_ret:

+   &n= bsp;    xorps   xmm0,xmm0

+        pxor   &nbs= p;xmm1,xmm1

+      &n= bsp; pxor    xmm2,xmm2

+ &= nbsp;      pxor    xmm3,xmm3
+        pxo= r    xmm4,xmm4

+   &n= bsp;    pxor    xmm5,xmm5
=
+        movaps  xmm= 6,XMMWORD[((-168))+r11]

+    &n= bsp;   movaps  XMMWORD[(-168)+r11],xmm0
<= br class=3D"">+        movaps  xmm7= ,XMMWORD[((-152))+r11]

+    &nb= sp;   movaps  XMMWORD[(-152)+r11],xmm0
+        movaps  xmm8,= XMMWORD[((-136))+r11]

+    &nbs= p;   movaps  XMMWORD[(-136)+r11],xmm0
+        movaps  xmm9,X= MMWORD[((-120))+r11]

+     = ;   movaps  XMMWORD[(-120)+r11],xmm0

+        movaps  xmm10,X= MMWORD[((-104))+r11]

+     = ;   movaps  XMMWORD[(-104)+r11],xmm0

+        movaps  xmm11,X= MMWORD[((-88))+r11]

+     =    movaps  XMMWORD[(-88)+r11],xmm0

+        movaps  xmm12,XMM= WORD[((-72))+r11]

+     &n= bsp;  movaps  XMMWORD[(-72)+r11],xmm0

+        movaps  xmm13,XMMWO= RD[((-56))+r11]

+     &nbs= p;  movaps  XMMWORD[(-56)+r11],xmm0

+        movaps  xmm14,XMMWO= RD[((-40))+r11]

+     &nbs= p;  movaps  XMMWORD[(-40)+r11],xmm0

+        movaps  xmm15,XMMWO= RD[((-24))+r11]

+     &nbs= p;  movaps  XMMWORD[(-24)+r11],xmm0

+        movaps  XMMWORD[rsp= ],xmm0

+       &= nbsp;movaps  XMMWORD[16+rsp],xmm0

+  = ;      movaps  XMMWORD[32+rsp],xmm0

+        movaps=  XMMWORD[48+rsp],xmm0

+   &nbs= p;    movaps  XMMWORD[64+rsp],xmm0
<= br class=3D"">+        movaps  XMMW= ORD[80+rsp],xmm0

+     &nb= sp;  movaps  XMMWORD[96+rsp],xmm0

+        mov     = rbp,QWORD[((-8))+r11]

+

+        lea    &n= bsp;rsp,[r11]

+

+= $L$xts_enc_epilogue:

+     = ;   mov     rdi,QWORD[8+rsp]   = ;     ;WIN64 epilogue

+        mov     rs= i,QWORD[16+rsp]

+     &nbs= p;  DB      0F3h,0C3h    =            ;repret
+

+$L$SEH_end_aesn= i_xts_encrypt:

+global  aesni_xts_decrypt=

+

+ALIGN  &= nbsp;16

+aesni_xts_decrypt:

+        mov   &nbs= p; QWORD[8+rsp],rdi        ;WIN64 p= rologue

+       =  mov     QWORD[16+rsp],rsi

+        mov    &n= bsp;rax,rsp

+$L$SEH_begin_aesni_xts_decrypt:
+        mov=     rdi,rcx

+   = ;     mov     rsi,rdx

+        mov  = ;   rdx,r8

+    =     mov     rcx,r9
+        mov   &n= bsp; r8,QWORD[40+rsp]

+    = ;    mov     r9,QWORD[48+rsp]

+

+

+

+      &= nbsp; lea     r11,[rsp]

+

+       &nb= sp;push    rbp

+
=
+        sub   =   rsp,272

+     =    and     rsp,-16

+        movaps  XMMWORD[(-= 168)+r11],xmm6

+      = ;  movaps  XMMWORD[(-152)+r11],xmm7

+        movaps  XMMWORD[(-1= 36)+r11],xmm8

+      =   movaps  XMMWORD[(-120)+r11],xmm9

+        movaps  XMMWORD[(-1= 04)+r11],xmm10

+      = ;  movaps  XMMWORD[(-88)+r11],xmm11

+        movaps  XMMWORD[(-7= 2)+r11],xmm12

+      =   movaps  XMMWORD[(-56)+r11],xmm13

+        movaps  XMMWORD[(-4= 0)+r11],xmm14

+      =   movaps  XMMWORD[(-24)+r11],xmm15

+$L$xts_dec_body:

+    &= nbsp;   movups  xmm2,XMMWORD[r9]

+        mov    &n= bsp;eax,DWORD[240+r8]

+    &nbs= p;   mov     r10d,DWORD[240+rcx]

+        movups &n= bsp;xmm0,XMMWORD[r8]

+     = ;   movups  xmm1,XMMWORD[16+r8]

+        lea    &n= bsp;r8,[32+r8]

+      = ;  xorps   xmm2,xmm0

+$L$o= op_enc1_11:

+DB      = 102,15,56,220,209

+     &n= bsp;  dec     eax

+        movups  xmm1,XMMWORD[r8]=

+        l= ea     r8,[16+r8]

+  =       jnz     NEAR $L$oop= _enc1_11

+DB      102= ,15,56,221,209

+      = ;  xor     eax,eax

+        test    rdx,1= 5

+        = setnz   al

+     = ;   shl     rax,4

+        sub    &n= bsp;rdx,rax

+

+ &= nbsp;      movups  xmm0,XMMWORD[rcx]

+        mov &= nbsp;   rbp,rcx

+   &= nbsp;    mov     eax,r10d

+        shl  = ;   r10d,4

+    =     mov     r9,rdx
+        and   &n= bsp; rdx,-16

+

+        movups  xmm1,XMMWORD[16= +r10*1+rcx]

+

+ &= nbsp;      movdqa  xmm8,XMMWORD[$L$xts_m= agic]

+       &n= bsp;movdqa  xmm15,xmm2

+   &nbs= p;    pshufd  xmm9,xmm2,0x5f

+        pxor    = xmm1,xmm0

+      &nbs= p; movdqa  xmm14,xmm9

+   =      paddd   xmm9,xmm9
+        movdqa  xmm10,= xmm15

+       &n= bsp;psrad   xmm14,31

+   &= nbsp;    paddq   xmm15,xmm15
+        pand   &= nbsp;xmm14,xmm8

+     &nbs= p;  pxor    xmm10,xmm0

+        pxor    xmm15,= xmm14

+       &n= bsp;movdqa  xmm14,xmm9

+   &nbs= p;    paddd   xmm9,xmm9

+        movdqa  xmm11,xmm1= 5

+        = psrad   xmm14,31

+    = ;    paddq   xmm15,xmm15

+        pand    = ;xmm14,xmm8

+      &n= bsp; pxor    xmm11,xmm0

+ =        pxor    xmm15,xmm1= 4

+        = movdqa  xmm14,xmm9

+    &n= bsp;   paddd   xmm9,xmm9

+        movdqa  xmm12,xmm15=

+        p= srad   xmm14,31

+    =     paddq   xmm15,xmm15

+        pand    = xmm14,xmm8

+      &nb= sp; pxor    xmm12,xmm0

+ &= nbsp;      pxor    xmm15,xmm14=

+        m= ovdqa  xmm14,xmm9

+    &nb= sp;   paddd   xmm9,xmm9

+        movdqa  xmm13,xmm15

+        psrad=   xmm14,31

+    &nbs= p;   paddq   xmm15,xmm15

+        pand    x= mm14,xmm8

+      &nbs= p; pxor    xmm13,xmm0

+ &n= bsp;      pxor    xmm15,xmm14<= br class=3D"">
+        mo= vdqa  xmm14,xmm15

+    &nb= sp;   psrad   xmm9,31

+        paddq   xmm15,xmm15<= br class=3D"">
+        pa= nd    xmm9,xmm8

+   &= nbsp;    pxor    xmm14,xmm0

+        pxor  &nb= sp; xmm15,xmm9

+     =    movaps  XMMWORD[96+rsp],xmm1

+

+       = ; sub     rdx,16*6

+ =        jc      = NEAR $L$xts_dec_short

+

+        mov    &n= bsp;eax,16+96

+      =   lea     rcx,[32+r10*1+rbp]
+        sub   &n= bsp; rax,r10

+     &n= bsp;  movups  xmm1,XMMWORD[16+rbp]

+        mov    &n= bsp;r10,rax

+      &n= bsp; lea     r8,[$L$xts_magic]

+        jmp    = ; NEAR $L$xts_dec_grandloop

+

+ALIGN   32

+$L$xt= s_dec_grandloop:

+     &nb= sp;  movdqu  xmm2,XMMWORD[rdi]

= +        movdqa  xmm8,xmm0

+        movdqu &n= bsp;xmm3,XMMWORD[16+rdi]

+    &= nbsp;   pxor    xmm2,xmm10

+        movdqu  xmm4,XM= MWORD[32+rdi]

+      =   pxor    xmm3,xmm11

= +DB      102,15,56,222,209

+        movdqu  xmm5,XMMWOR= D[48+rdi]

+      &nbs= p; pxor    xmm4,xmm12

+DB =      102,15,56,222,217

+        movdqu  xmm6,XMMWORD[64+= rdi]

+       &nb= sp;pxor    xmm5,xmm13

+DB  = ;    102,15,56,222,225

+ &= nbsp;      movdqu  xmm7,XMMWORD[80+rdi]<= br class=3D"">
+        px= or    xmm8,xmm15

+   =      movdqa  xmm9,XMMWORD[96+rsp]

+        pxor  &n= bsp; xmm6,xmm14

+DB    &nb= sp; 102,15,56,222,233

+    = ;    movups  xmm0,XMMWORD[32+rbp]
+        lea   &n= bsp; rdi,[96+rdi]

+    &nb= sp;   pxor    xmm7,xmm8

+

+      &nbs= p; pxor    xmm10,xmm9

+DB =      102,15,56,222,241

+        pxor    xmm11,= xmm9

+       &nb= sp;movdqa  XMMWORD[rsp],xmm10

+DB  &= nbsp;   102,15,56,222,249

+ &nb= sp;      movups  xmm1,XMMWORD[48+rbp]
+        pxor=    xmm12,xmm9

+
=
+DB      102,15,56,222,208

+        pxor &nbs= p;  xmm13,xmm9

+    &= nbsp;   movdqa  XMMWORD[16+rsp],xmm11
+DB      102,15,56,222,216

+        pxor  &n= bsp; xmm14,xmm9

+     = ;   movdqa  XMMWORD[32+rsp],xmm12

+DB      102,15,56,222,224
<= br class=3D"">+DB      102,15,56,222,232

+        pxor &nbs= p;  xmm8,xmm9

+    &n= bsp;   movdqa  XMMWORD[64+rsp],xmm14

+DB      102,15,56,222,240

+DB      102,15,56,222,248

+        movups &= nbsp;xmm0,XMMWORD[64+rbp]

+    =     movdqa  XMMWORD[80+rsp],xmm8
+        pshufd  xmm9,x= mm15,0x5f

+      &nbs= p; jmp     NEAR $L$xts_dec_loop6
+ALIGN   32

+$L$xts_dec_= loop6:

+DB      102,1= 5,56,222,209

+DB      = ;102,15,56,222,217

+DB     = ; 102,15,56,222,225

+DB    = ;  102,15,56,222,233

+DB   = ;   102,15,56,222,241

+DB  = ;    102,15,56,222,249

+ &= nbsp;      movups  xmm1,XMMWORD[((-64))+= rax*1+rcx]

+      &nb= sp; add     rax,32

+<= br class=3D"">
+DB      102,15,56,22= 2,208

+DB      102,15= ,56,222,216

+DB      = 102,15,56,222,224

+DB     =  102,15,56,222,232

+DB    =   102,15,56,222,240

+DB   =    102,15,56,222,248

+  &n= bsp;     movups  xmm0,XMMWORD[((-80))+rax*1+r= cx]

+       &nbs= p;jnz     NEAR $L$xts_dec_loop6

+

+       = ; movdqa  xmm8,XMMWORD[r8]

+  &= nbsp;     movdqa  xmm14,xmm9
+        paddd   = xmm9,xmm9

+DB      10= 2,15,56,222,209

+     &nbs= p;  paddq   xmm15,xmm15

+ =        psrad   xmm14,31

+DB      102,15,56,222,217<= br class=3D"">
+        pa= nd    xmm14,xmm8

+   =      movups  xmm10,XMMWORD[rbp]

+DB      102,15,56,222,225

+DB      102,15,56,222,233
+DB      102,15,56,222= ,241

+       &nb= sp;pxor    xmm15,xmm14

+  =       movaps  xmm11,xmm10
=
+DB      102,15,56,222,249

+        movups &n= bsp;xmm1,XMMWORD[((-64))+rcx]

+
=
+        movdqa  xmm= 14,xmm9

+DB      102,= 15,56,222,208

+      =   paddd   xmm9,xmm9

+ &nbs= p;      pxor    xmm10,xmm15
+DB      102,15,56,222,= 216

+       &nbs= p;psrad   xmm14,31

+   &nb= sp;    paddq   xmm15,xmm15

+DB      102,15,56,222,224

+DB      102,15,56,222,232

+        pand &nb= sp;  xmm14,xmm8

+    =     movaps  xmm12,xmm11

+DB      102,15,56,222,240

+        pxor    = ;xmm15,xmm14

+      &= nbsp; movdqa  xmm14,xmm9

+DB  &= nbsp;   102,15,56,222,248

+ &nb= sp;      movups  xmm0,XMMWORD[((-48))+rc= x]

+

+  &nbs= p;     paddd   xmm9,xmm9
<= br class=3D"">+DB      102,15,56,222,209

+        pxor &nbs= p;  xmm11,xmm15

+    =     psrad   xmm14,31

+DB      102,15,56,222,217
+        paddq   = xmm15,xmm15

+      &n= bsp; pand    xmm14,xmm8

+D= B      102,15,56,222,225

+DB      102,15,56,222,233
+        movdqa  XMMWO= RD[48+rsp],xmm13

+     &nb= sp;  pxor    xmm15,xmm14

+DB      102,15,56,222,241
+        movaps  xmm13= ,xmm12

+       &= nbsp;movdqa  xmm14,xmm9

+DB   &= nbsp;  102,15,56,222,249

+  &nb= sp;     movups  xmm1,XMMWORD[((-32))+rcx]

+

+   &nbs= p;    paddd   xmm9,xmm9

+DB      102,15,56,222,208
<= br class=3D"">+        pxor   =  xmm12,xmm15

+     &n= bsp;  psrad   xmm14,31

+DB=      102,15,56,222,216

+        paddq   xmm15,xmm1= 5

+        = pand    xmm14,xmm8

+DB  &n= bsp;   102,15,56,222,224

+DB &n= bsp;    102,15,56,222,232

= +DB      102,15,56,222,240

+        pxor    x= mm15,xmm14

+      &nb= sp; movaps  xmm14,xmm13

+DB  &n= bsp;   102,15,56,222,248

+

+        movdqa=  xmm0,xmm9

+     &nb= sp;  paddd   xmm9,xmm9

+DB=      102,15,56,222,209

+        pxor    xmm13= ,xmm15

+       &= nbsp;psrad   xmm0,31

+DB   = ;   102,15,56,222,217

+  &= nbsp;     paddq   xmm15,xmm15

+        pand &nbs= p;  xmm0,xmm8

+DB    =   102,15,56,222,225

+DB   =    102,15,56,222,233

+  &n= bsp;     pxor    xmm15,xmm0

+        movups &n= bsp;xmm0,XMMWORD[rbp]

+DB    &n= bsp; 102,15,56,222,241

+DB   &n= bsp;  102,15,56,222,249

+  &nbs= p;     movups  xmm1,XMMWORD[16+rbp]

+

+    &n= bsp;   pxor    xmm14,xmm15

+DB      102,15,56,223,84,36,0

+        psrad &nb= sp; xmm9,31

+     &nb= sp;  paddq   xmm15,xmm15

+= DB      102,15,56,223,92,36,16

+DB      102,15,56,223,100,36,32

+        pand &nbs= p;  xmm9,xmm8

+    &n= bsp;   mov     rax,r10
+DB      102,15,56,223,108,36,48

+DB      102,15,56,223,116= ,36,64

+DB      102,1= 5,56,223,124,36,80

+     &= nbsp;  pxor    xmm15,xmm9

+

+       = ; lea     rsi,[96+rsi]

+        movups  XMMWORD[(-96)+rs= i],xmm2

+       =  movups  XMMWORD[(-80)+rsi],xmm3

+ &= nbsp;      movups  XMMWORD[(-64)+rsi],xm= m4

+        = ;movups  XMMWORD[(-48)+rsi],xmm5

+  =       movups  XMMWORD[(-32)+rsi],xmm6
+        movu= ps  XMMWORD[(-16)+rsi],xmm7

+   = ;     sub     rdx,16*6

+        jnc  = ;   NEAR $L$xts_dec_grandloop

+=

+        m= ov     eax,16+96

+  &= nbsp;     sub     eax,r10d

+        mov &= nbsp;   rcx,rbp

+   &= nbsp;    shr     eax,4

+

+$L$xts_dec_short:

+

+    &n= bsp;   mov     r10d,eax
+        pxor   &= nbsp;xmm10,xmm0

+     &nbs= p;  pxor    xmm11,xmm0

+        add     r= dx,16*6

+       =  jz      NEAR $L$xts_dec_done
<= br class=3D"">+

+     &nbs= p;  pxor    xmm12,xmm0

+        cmp     r= dx,0x20

+       =  jb      NEAR $L$xts_dec_one
+        pxor   &= nbsp;xmm13,xmm0

+     &nbs= p;  je      NEAR $L$xts_dec_two

+

+    &n= bsp;   pxor    xmm14,xmm0

+        cmp    = ; rdx,0x40

+     &nbs= p;  jb      NEAR $L$xts_dec_three

+        je  = ;    NEAR $L$xts_dec_four

= +

+        = movdqu  xmm2,XMMWORD[rdi]

+   &= nbsp;    movdqu  xmm3,XMMWORD[16+rdi]

+        movdqu  x= mm4,XMMWORD[32+rdi]

+     =    pxor    xmm2,xmm10

+        movdqu  xmm5,XMMWOR= D[48+rdi]

+      &nbs= p; pxor    xmm3,xmm11

+ &n= bsp;      movdqu  xmm6,XMMWORD[64+rdi]
+        lea=     rdi,[80+rdi]

+  =       pxor    xmm4,xmm12

+        pxor &n= bsp;  xmm5,xmm13

+    = ;    pxor    xmm6,xmm14
+

+      = ;  call    _aesni_decrypt6

+

+       = ; xorps   xmm2,xmm10

+  &n= bsp;     xorps   xmm3,xmm11

+        xorps  &n= bsp;xmm4,xmm12

+      = ;  movdqu  XMMWORD[rsi],xmm2

+ =        xorps   xmm5,xmm13

+        movdqu=  XMMWORD[16+rsi],xmm3

+   &nbs= p;    xorps   xmm6,xmm14

+        movdqu  XMMWORD[3= 2+rsi],xmm4

+      &n= bsp; pxor    xmm14,xmm14

+=        movdqu  XMMWORD[48+rsi],xmm= 5

+        = pcmpgtd xmm14,xmm15

+     =    movdqu  XMMWORD[64+rsi],xmm6

+        lea    &n= bsp;rsi,[80+rsi]

+     &nb= sp;  pshufd  xmm11,xmm14,0x13

+=        and     r9,1= 5

+        = jz      NEAR $L$xts_dec_ret

+

+       = ; movdqa  xmm10,xmm15

+   =      paddq   xmm15,xmm15
<= br class=3D"">+        pand   =  xmm11,xmm8

+     &nb= sp;  pxor    xmm11,xmm15

+        jmp    &n= bsp;NEAR $L$xts_dec_done2

+

+ALIGN   16

+$L$xts_dec_o= ne:

+       &nbs= p;movups  xmm2,XMMWORD[rdi]

+   = ;     lea     rdi,[16+rdi]

+        xorps=   xmm2,xmm10

+    &n= bsp;   movups  xmm0,XMMWORD[rcx]

+        movups  xmm1,XMMWOR= D[16+rcx]

+      &nbs= p; lea     rcx,[32+rcx]

+        xorps   xmm2,xmm0<= br class=3D"">
+$L$oop_dec1_12:

= +DB      102,15,56,222,209

+        dec    &n= bsp;eax

+       =  movups  xmm1,XMMWORD[rcx]

+  &= nbsp;     lea     rcx,[16+rcx]=

+        j= nz     NEAR $L$oop_dec1_12

+DB      102,15,56,223,209

+        xorps   xmm2,x= mm10

+       &nb= sp;movdqa  xmm10,xmm11

+   &nbs= p;    movups  XMMWORD[rsi],xmm2

+        movdqa  xmm11,x= mm12

+       &nb= sp;lea     rsi,[16+rsi]

+ =        jmp     NEAR = $L$xts_dec_done

+

+ALIGN   16

+$L$xts_dec_two:

+        movups &= nbsp;xmm2,XMMWORD[rdi]

+    &nb= sp;   movups  xmm3,XMMWORD[16+rdi]

+        lea    =  rdi,[32+rdi]

+     &= nbsp;  xorps   xmm2,xmm10

= +        xorps   xmm3,xmm11
+

+   &nb= sp;    call    _aesni_decrypt2

+

+    &n= bsp;   xorps   xmm2,xmm10

+        movdqa  xmm10,xmm12=

+        x= orps   xmm3,xmm11

+   &nbs= p;    movdqa  xmm11,xmm13

+        movups  XMMWORD[rsi= ],xmm2

+       &= nbsp;movups  XMMWORD[16+rsi],xmm3

+  = ;      lea     rsi,[32+rs= i]

+        = ;jmp     NEAR $L$xts_dec_done

+

+ALIGN   16
<= br class=3D"">+$L$xts_dec_three:

+   = ;     movups  xmm2,XMMWORD[rdi]

+        movups  xm= m3,XMMWORD[16+rdi]

+     &= nbsp;  movups  xmm4,XMMWORD[32+rdi]

+        lea    &n= bsp;rdi,[48+rdi]

+     &nb= sp;  xorps   xmm2,xmm10

+ =        xorps   xmm3,xmm11

+        xorps =   xmm4,xmm12

+

+        call    = _aesni_decrypt3

+

+        xorps   xmm2,xmm10
+        mov= dqa  xmm10,xmm13

+    &nbs= p;   xorps   xmm3,xmm11

+        movdqa  xmm11,xmm14

+        xorps=   xmm4,xmm12

+    &n= bsp;   movups  XMMWORD[rsi],xmm2

+        movups  XMMWORD[16+= rsi],xmm3

+      &nbs= p; movups  XMMWORD[32+rsi],xmm4

+ &n= bsp;      lea     rsi,[48= +rsi]

+       &n= bsp;jmp     NEAR $L$xts_dec_done

+

+ALIGN   16
<= br class=3D"">+$L$xts_dec_four:

+   =      movups  xmm2,XMMWORD[rdi]
=
+        movups  xmm= 3,XMMWORD[16+rdi]

+     &n= bsp;  movups  xmm4,XMMWORD[32+rdi]

+        xorps   xmm2,x= mm10

+       &nb= sp;movups  xmm5,XMMWORD[48+rdi]

+  &= nbsp;     lea     rdi,[64+rdi]=

+        x= orps   xmm3,xmm11

+   &nbs= p;    xorps   xmm4,xmm12

+        xorps   xmm5= ,xmm13

+

+  =       call    _aesni_decrypt4<= br class=3D"">
+

+   &= nbsp;    pxor    xmm2,xmm10

+        movdqa  x= mm10,xmm14

+      &nb= sp; pxor    xmm3,xmm11

+ &= nbsp;      movdqa  xmm11,xmm15

+        pxor &nbs= p;  xmm4,xmm12

+    &= nbsp;   movdqu  XMMWORD[rsi],xmm2

+        pxor    = xmm5,xmm13

+      &nb= sp; movdqu  XMMWORD[16+rsi],xmm3

+ &= nbsp;      movdqu  XMMWORD[32+rsi],xmm4<= br class=3D"">
+        mo= vdqu  XMMWORD[48+rsi],xmm5

+   =      lea     rsi,[64+rsi]

+        jmp &n= bsp;   NEAR $L$xts_dec_done

+
+ALIGN   16

+$L$xts_dec_done:

+    &= nbsp;   and     r9,15

+        jz    = ;  NEAR $L$xts_dec_ret

+$L$xts_dec_d= one2:

+       &n= bsp;mov     rdx,r9

+  = ;      mov     rcx,rbp
+        mov =     eax,r10d

+

+        movups  = xmm2,XMMWORD[rdi]

+     &n= bsp;  xorps   xmm2,xmm11

+=        movups  xmm0,XMMWORD[rcx]
+        mov= ups  xmm1,XMMWORD[16+rcx]

+   &= nbsp;    lea     rcx,[32+rcx]

+        xorps &= nbsp; xmm2,xmm0

+$L$oop_dec1_13:

+DB      102,15,56,222,209
+        dec=     eax

+   &nb= sp;    movups  xmm1,XMMWORD[rcx]
+        lea   &nb= sp; rcx,[16+rcx]

+    &nbs= p;   jnz     NEAR $L$oop_dec1_13

+DB      102,15,56,223,209
+        xor= ps   xmm2,xmm11

+    =     movups  XMMWORD[rsi],xmm2

+

+$L$xts_dec_steal:
+        movzx   = eax,BYTE[16+rdi]

+     &nb= sp;  movzx   ecx,BYTE[rsi]

+        lea     rd= i,[1+rdi]

+      &nbs= p; mov     BYTE[rsi],al

+        mov     = BYTE[16+rsi],cl

+     &nbs= p;  lea     rsi,[1+rsi]

+        sub    &= nbsp;rdx,1

+      &nb= sp; jnz     NEAR $L$xts_dec_steal
+

+      = ;  sub     rsi,r9

+        mov     r= cx,rbp

+       &= nbsp;mov     eax,r10d

+
+        movu= ps  xmm2,XMMWORD[rsi]

+    = ;    xorps   xmm2,xmm10

+        movups  xmm0,XMMWO= RD[rcx]

+       =  movups  xmm1,XMMWORD[16+rcx]

+ &nbs= p;      lea     rcx,[32+r= cx]

+       &nbs= p;xorps   xmm2,xmm0

+$L$oop_dec1_14:=

+DB      102,15,56,2= 22,209

+       &= nbsp;dec     eax

+  &= nbsp;     movups  xmm1,XMMWORD[rcx]

+        lea  = ;   rcx,[16+rcx]

+   =      jnz     NEAR $L$oop_dec1_= 14

+DB      102,15,56= ,223,209

+       = ; xorps   xmm2,xmm10

+  &n= bsp;     movups  XMMWORD[rsi],xmm2

+

+$L$xts_dec_ret:

+        xorps &= nbsp; xmm0,xmm0

+     = ;   pxor    xmm1,xmm1

+        pxor    x= mm2,xmm2

+       = ; pxor    xmm3,xmm3

+ &nbs= p;      pxor    xmm4,xmm4

+        pxor &= nbsp;  xmm5,xmm5

+    = ;    movaps  xmm6,XMMWORD[((-168))+r11]

+        movaps &n= bsp;XMMWORD[(-168)+r11],xmm0

+   &nb= sp;    movaps  xmm7,XMMWORD[((-152))+r11]

+        movaps &n= bsp;XMMWORD[(-152)+r11],xmm0

+   &nb= sp;    movaps  xmm8,XMMWORD[((-136))+r11]

+        movaps &n= bsp;XMMWORD[(-136)+r11],xmm0

+   &nb= sp;    movaps  xmm9,XMMWORD[((-120))+r11]

+        movaps &n= bsp;XMMWORD[(-120)+r11],xmm0

+   &nb= sp;    movaps  xmm10,XMMWORD[((-104))+r11]

+        movaps &n= bsp;XMMWORD[(-104)+r11],xmm0

+   &nb= sp;    movaps  xmm11,XMMWORD[((-88))+r11]

+        movaps &n= bsp;XMMWORD[(-88)+r11],xmm0

+   &nbs= p;    movaps  xmm12,XMMWORD[((-72))+r11]

+        movaps &n= bsp;XMMWORD[(-72)+r11],xmm0

+   &nbs= p;    movaps  xmm13,XMMWORD[((-56))+r11]

+        movaps &n= bsp;XMMWORD[(-56)+r11],xmm0

+   &nbs= p;    movaps  xmm14,XMMWORD[((-40))+r11]

+        movaps &n= bsp;XMMWORD[(-40)+r11],xmm0

+   &nbs= p;    movaps  xmm15,XMMWORD[((-24))+r11]

+        movaps &n= bsp;XMMWORD[(-24)+r11],xmm0

+   &nbs= p;    movaps  XMMWORD[rsp],xmm0

+        movaps  XMMWORD= [16+rsp],xmm0

+      =   movaps  XMMWORD[32+rsp],xmm0

= +        movaps  XMMWORD[48+rsp],xm= m0

+        = ;movaps  XMMWORD[64+rsp],xmm0

+  &nb= sp;     movaps  XMMWORD[80+rsp],xmm0

+        movaps &n= bsp;XMMWORD[96+rsp],xmm0

+    &= nbsp;   mov     rbp,QWORD[((-8))+r11]
+

+   &nb= sp;    lea     rsp,[r11]

+

+$L$xts_dec_epilogue:<= br class=3D"">
+        mo= v     rdi,QWORD[8+rsp]      &n= bsp; ;WIN64 epilogue

+    =     mov     rsi,QWORD[16+rsp]

+        DB &nbs= p;    0F3h,0C3h       &nb= sp;       ;repret

+

+$L$SEH_end_aesni_xts_decrypt:

+global  aesni_ocb_encrypt

+

+ALIGN   32

+aesni_ocb_encrypt:

+  &n= bsp;     mov     QWORD[8+rsp],= rdi        ;WIN64 prologue

+        mov   = ;  QWORD[16+rsp],rsi

+   &= nbsp;    mov     rax,rsp

+$L$SEH_begin_aesni_ocb_encrypt:

+        mov    =  rdi,rcx

+      =   mov     rsi,rdx

+        mov     r= dx,r8

+       &n= bsp;mov     rcx,r9

+  = ;      mov     r8,QWORD[4= 0+rsp]

+       &= nbsp;mov     r9,QWORD[48+rsp]

+

+

+

+        lea &n= bsp;   rax,[rsp]

+   =      push    rbx

+

+      &= nbsp; push    rbp

+

+        push &nb= sp;  r12

+

+        push    r= 13

+

+  &nbs= p;     push    r14
+

+      = ;  lea     rsp,[((-160))+rsp]
<= br class=3D"">+        movaps  XMMW= ORD[rsp],xmm6

+      =   movaps  XMMWORD[16+rsp],xmm7

= +        movaps  XMMWORD[32+rsp],xm= m8

+        = ;movaps  XMMWORD[48+rsp],xmm9

+  &nb= sp;     movaps  XMMWORD[64+rsp],xmm10

+        movaps &n= bsp;XMMWORD[80+rsp],xmm11

+    =     movaps  XMMWORD[96+rsp],xmm12
+        movaps  XMMWO= RD[112+rsp],xmm13

+     &n= bsp;  movaps  XMMWORD[128+rsp],xmm14

+        movaps  XMMWORD[144= +rsp],xmm15

+$L$ocb_enc_body:
+        mov   &n= bsp; rbx,QWORD[56+rax]

+   &nbs= p;    mov     rbp,QWORD[((56+8))+ra= x]

+

+  &nbs= p;     mov     r10d,DWORD[240+= rcx]

+       &nb= sp;mov     r11,rcx

+  = ;      shl     r10d,4

+        movup= s  xmm9,XMMWORD[rcx]

+    =     movups  xmm1,XMMWORD[16+r10*1+rcx]

+

+     =    movdqu  xmm15,XMMWORD[r9]

+        pxor    xmm9,= xmm1

+       &nb= sp;pxor    xmm15,xmm1

+

+        mov  = ;   eax,16+32

+   &nb= sp;    lea     rcx,[32+r10*1+r11]
+        mov= ups  xmm1,XMMWORD[16+r11]

+   &= nbsp;    sub     rax,r10

+        mov  = ;   r10,rax

+
+        movdqu  xmm10,= XMMWORD[rbx]

+      &= nbsp; movdqu  xmm8,XMMWORD[rbp]

+
+        test=    r8,1

+    &n= bsp;   jnz     NEAR $L$ocb_enc_odd

+

+    =     bsf     r12,r8
+        add   &n= bsp; r8,1

+      = ;  shl     r12,4

+        movdqu  xmm7,XMMWORD[r12*= 1+rbx]

+       &= nbsp;movdqu  xmm2,XMMWORD[rdi]

+  &n= bsp;     lea     rdi,[16+rdi]<= br class=3D"">
+

+   &= nbsp;    call    __ocb_encrypt1

+

+    &n= bsp;   movdqa  xmm15,xmm7

= +        movups  XMMWORD[rsi],xmm2<= br class=3D"">
+        le= a     rsi,[16+rsi]

+  = ;      sub     rdx,1

+        jz &nb= sp;    NEAR $L$ocb_enc_done

+

+$L$ocb_enc_odd:

+        lea    &n= bsp;r12,[1+r8]

+      = ;  lea     r13,[3+r8]

+        lea    &n= bsp;r14,[5+r8]

+      = ;  lea     r8,[6+r8]

+        bsf    &n= bsp;r12,r12

+      &n= bsp; bsf     r13,r13

= +        bsf     r14= ,r14

+       &nb= sp;shl     r12,4

+  &= nbsp;     shl     r13,4

+        shl &nbs= p;   r14,4

+

+        sub   &nbs= p; rdx,6

+      =   jc      NEAR $L$ocb_enc_short

+        jmp  = ;   NEAR $L$ocb_enc_grandloop

+=

+ALIGN   32

+$L$ocb_enc_grandloop:

+   &n= bsp;    movdqu  xmm2,XMMWORD[rdi]
+        movdqu  xmm3,= XMMWORD[16+rdi]

+     &nbs= p;  movdqu  xmm4,XMMWORD[32+rdi]

+        movdqu  xmm5,XMMWORD[48+= rdi]

+       &nb= sp;movdqu  xmm6,XMMWORD[64+rdi]

+  &= nbsp;     movdqu  xmm7,XMMWORD[80+rdi]

+        lea &nbs= p;   rdi,[96+rdi]

+

+        call  &n= bsp; __ocb_encrypt6

+

+        movups  XMMWORD[= rsi],xmm2

+      &nbs= p; movups  XMMWORD[16+rsi],xmm3

+ &n= bsp;      movups  XMMWORD[32+rsi],xmm4
+        mov= ups  XMMWORD[48+rsi],xmm5

+   &= nbsp;    movups  XMMWORD[64+rsi],xmm6

+        movups  X= MMWORD[80+rsi],xmm7

+     =    lea     rsi,[96+rsi]
+        sub   &n= bsp; rdx,6

+     &nbs= p;  jnc     NEAR $L$ocb_enc_grandloop

+

+$L$ocb_enc_short:

+        add &= nbsp;   rdx,6

+   &nb= sp;    jz      NEAR $L$ocb_enc= _done

+

+  &= nbsp;     movdqu  xmm2,XMMWORD[rdi]

+        cmp  = ;   rdx,2

+    &= nbsp;   jb      NEAR $L$ocb_enc_one=

+        m= ovdqu  xmm3,XMMWORD[16+rdi]

+   = ;     je      NEAR $L$ocb= _enc_two

+

+ &nbs= p;      movdqu  xmm4,XMMWORD[32+rdi]

+        cmp &= nbsp;   rdx,4

+   &nb= sp;    jb      NEAR $L$ocb_enc= _three

+       &= nbsp;movdqu  xmm5,XMMWORD[48+rdi]

+  = ;      je      NEAR = $L$ocb_enc_four

+

+        movdqu  xmm6,XMMWORD[64+r= di]

+       &nbs= p;pxor    xmm7,xmm7

+

+        call &nbs= p;  __ocb_encrypt6

+
<= br class=3D"">+        movdqa  xmm1= 5,xmm14

+       =  movups  XMMWORD[rsi],xmm2

+  &= nbsp;     movups  XMMWORD[16+rsi],xmm3

+        movups &= nbsp;XMMWORD[32+rsi],xmm4

+    =     movups  XMMWORD[48+rsi],xmm5
+        movups  XMMWOR= D[64+rsi],xmm6

+

= +        jmp     NEA= R $L$ocb_enc_done

+

+ALIGN   16

+$L$ocb_enc_one:

+        movdqa=  xmm7,xmm10

+

+        call    __ocb= _encrypt1

+

+ &nb= sp;      movdqa  xmm15,xmm7

+        movups  X= MMWORD[rsi],xmm2

+     &nb= sp;  jmp     NEAR $L$ocb_enc_done

+

+ALIGN   16

+$L$ocb_enc_two:

+ &n= bsp;      pxor    xmm4,xmm4
+        pxor=    xmm5,xmm5

+
<= br class=3D"">+        call   =  __ocb_encrypt4

+

+        movdqa  xmm15,xmm11=

+        m= ovups  XMMWORD[rsi],xmm2

+   &n= bsp;    movups  XMMWORD[16+rsi],xmm3

+

+     &n= bsp;  jmp     NEAR $L$ocb_enc_done

+

+ALIGN   16<= br class=3D"">
+$L$ocb_enc_three:

+        pxor    xmm5,x= mm5

+

+  &nb= sp;     call    __ocb_encrypt4

+

+    = ;    movdqa  xmm15,xmm12

+        movups  XMMWORD[rsi= ],xmm2

+       &= nbsp;movups  XMMWORD[16+rsi],xmm3

+  = ;      movups  XMMWORD[32+rsi],xmm4

+

+    = ;    jmp     NEAR $L$ocb_enc_done
+

+ALIGN  &nb= sp;16

+$L$ocb_enc_four:

+        call    _= _ocb_encrypt4

+

+=        movdqa  xmm15,xmm13

+        movups &n= bsp;XMMWORD[rsi],xmm2

+    &nbs= p;   movups  XMMWORD[16+rsi],xmm3

+        movups  XMMWORD[32= +rsi],xmm4

+      &nb= sp; movups  XMMWORD[48+rsi],xmm5

+
+$L$ocb_enc_done:

= +        pxor    xmm15,xm= m0

+        = ;movdqu  XMMWORD[rbp],xmm8

+   =      movdqu  XMMWORD[r9],xmm15
=
+

+     &nb= sp;  xorps   xmm0,xmm0

+ &= nbsp;      pxor    xmm1,xmm1
+        pxo= r    xmm2,xmm2

+   &n= bsp;    pxor    xmm3,xmm3
=
+        pxor   = ; xmm4,xmm4

+     &nb= sp;  pxor    xmm5,xmm5

+        movaps  xmm6,XMMWORD[rsp= ]

+        = movaps  XMMWORD[rsp],xmm0

+   &= nbsp;    movaps  xmm7,XMMWORD[16+rsp]

+        movaps  X= MMWORD[16+rsp],xmm0

+     =    movaps  xmm8,XMMWORD[32+rsp]

+        movaps  XMMWORD[32+= rsp],xmm0

+      &nbs= p; movaps  xmm9,XMMWORD[48+rsp]

+ &n= bsp;      movaps  XMMWORD[48+rsp],xmm0
+        mov= aps  xmm10,XMMWORD[64+rsp]

+   =      movaps  XMMWORD[64+rsp],xmm0

+        movaps  = xmm11,XMMWORD[80+rsp]

+    &nbs= p;   movaps  XMMWORD[80+rsp],xmm0

+        movaps  xmm12,XMMW= ORD[96+rsp]

+      &n= bsp; movaps  XMMWORD[96+rsp],xmm0

+ =        movaps  xmm13,XMMWORD[112+rs= p]

+        = ;movaps  XMMWORD[112+rsp],xmm0

+  &n= bsp;     movaps  xmm14,XMMWORD[128+rsp]

+        movaps =  XMMWORD[128+rsp],xmm0

+   &nbs= p;    movaps  xmm15,XMMWORD[144+rsp]

+        movaps  XM= MWORD[144+rsp],xmm0

+     =    lea     rax,[((160+40))+rsp]

+$L$ocb_enc_pop:

+  = ;      mov     r14,QWORD[= ((-40))+rax]

+

+ =        mov     r13,Q= WORD[((-32))+rax]

+

+        mov     = r12,QWORD[((-24))+rax]

+

+        mov    &= nbsp;rbp,QWORD[((-16))+rax]

+
+        mov   &n= bsp; rbx,QWORD[((-8))+rax]

+

+        lea  &nbs= p;  rsp,[rax]

+

+$L$ocb_enc_epilogue:

+   &= nbsp;    mov     rdi,QWORD[8+rsp] &= nbsp;      ;WIN64 epilogue

+        mov   &nbs= p; rsi,QWORD[16+rsp]

+    =     DB      0F3h,0C3h  &n= bsp;            = ;;repret

+

+$L$SE= H_end_aesni_ocb_encrypt:

+

+

+ALIGN   32

+__ocb_encrypt6:

+

+        pxor &nbs= p;  xmm15,xmm9

+    &= nbsp;   movdqu  xmm11,XMMWORD[r12*1+rbx]
=
+        movdqa  xmm= 12,xmm10

+       = ; movdqu  xmm13,XMMWORD[r13*1+rbx]

+=        movdqa  xmm14,xmm10

+        pxor &nbs= p;  xmm10,xmm15

+    =     movdqu  xmm15,XMMWORD[r14*1+rbx]

+        pxor  &nbs= p; xmm11,xmm10

+     =    pxor    xmm8,xmm2

+        pxor    x= mm2,xmm10

+      &nbs= p; pxor    xmm12,xmm11

+ &= nbsp;      pxor    xmm8,xmm3
+        pxo= r    xmm3,xmm11

+   &= nbsp;    pxor    xmm13,xmm12

+        pxor  &n= bsp; xmm8,xmm4

+     =    pxor    xmm4,xmm12

+        pxor    x= mm14,xmm13

+      &nb= sp; pxor    xmm8,xmm5

+ &n= bsp;      pxor    xmm5,xmm13
+        pxo= r    xmm15,xmm14

+   =      pxor    xmm8,xmm6

+        pxor  &nb= sp; xmm6,xmm14

+     =    pxor    xmm8,xmm7

+        pxor    x= mm7,xmm15

+      &nbs= p; movups  xmm0,XMMWORD[32+r11]

+
+        lea =     r12,[1+r8]

+  &nb= sp;     lea     r13,[3+r8]

+        lea &= nbsp;   r14,[5+r8]

+  &nbs= p;     add     r8,6

+        pxor &nbs= p;  xmm10,xmm9

+    &= nbsp;   bsf     r12,r12
+        bsf   &n= bsp; r13,r13

+     &n= bsp;  bsf     r14,r14

+

+DB      102= ,15,56,220,209

+DB     &nb= sp;102,15,56,220,217

+DB    &nb= sp; 102,15,56,220,225

+DB   &nb= sp;  102,15,56,220,233

+   = ;     pxor    xmm11,xmm9

+        pxor &nbs= p;  xmm12,xmm9

+DB    = ;  102,15,56,220,241

+   &= nbsp;    pxor    xmm13,xmm9

+        pxor  &nb= sp; xmm14,xmm9

+DB    &nbs= p; 102,15,56,220,249

+    =     movups  xmm1,XMMWORD[48+r11]
+        pxor   &n= bsp;xmm15,xmm9

+

= +DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220,224

+DB      102,15,56,220,232
+DB      102,15,56,220= ,240

+DB      102,15,= 56,220,248

+      &nb= sp; movups  xmm0,XMMWORD[64+r11]

+ &= nbsp;      shl     r12,4<= br class=3D"">
+        sh= l     r13,4

+   =      jmp     NEAR $L$ocb_enc_l= oop6

+

+ALIGN &nb= sp; 32

+$L$ocb_enc_loop6:
<= br class=3D"">+DB      102,15,56,220,209

+DB      102,15,56,220,217
+DB      102,15,56,220= ,225

+DB      102,15,= 56,220,233

+DB      1= 02,15,56,220,241

+DB     &= nbsp;102,15,56,220,249

+    &nb= sp;   movups  xmm1,XMMWORD[rax*1+rcx]
+        add   &nb= sp; rax,32

+

+DB      102,15,56,220,208

+DB      102,15,56,220,216
+DB      102,15,56,220,224

+DB      102,15,56,220,232
+DB      102,15,56,220= ,240

+DB      102,15,= 56,220,248

+      &nb= sp; movups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+        jnz    &= nbsp;NEAR $L$ocb_enc_loop6

+
+DB      102,15,56,220,209

+DB      102,15,56,220,217

+DB      102,15,56,220,225=

+DB      102,15,56,2= 20,233

+DB      102,1= 5,56,220,241

+DB      = ;102,15,56,220,249

+     &= nbsp;  movups  xmm1,XMMWORD[16+r11]

+        shl    &n= bsp;r14,4

+

+DB &= nbsp;    102,65,15,56,221,210

+        movdqu  xmm10,XMMWO= RD[rbx]

+       =  mov     rax,r10

+DB =      102,65,15,56,221,219

+DB      102,65,15,56,221,228

+DB      102,65,15,56,221,237

+DB      102,65,15,56,221= ,246

+DB      102,65,= 15,56,221,255

+      =   DB      0F3h,0C3h    &n= bsp;          ;repret

+

+
+

+

= +ALIGN   32

+__ocb_encrypt4:

+

+    &n= bsp;   pxor    xmm15,xmm9

+        movdqu  xmm11,XM= MWORD[r12*1+rbx]

+     &nb= sp;  movdqa  xmm12,xmm10

+ &nbs= p;      movdqu  xmm13,XMMWORD[r13*1+rbx]=

+        p= xor    xmm10,xmm15

+  &nbs= p;     pxor    xmm11,xmm10

+        pxor &nbs= p;  xmm8,xmm2

+    &n= bsp;   pxor    xmm2,xmm10

+        pxor   &nbs= p;xmm12,xmm11

+      =   pxor    xmm8,xmm3

+=        pxor    xmm3,xmm1= 1

+        = pxor    xmm13,xmm12

+  &nb= sp;     pxor    xmm8,xmm4

+        pxor &nbs= p;  xmm4,xmm12

+    &= nbsp;   pxor    xmm8,xmm5

+        pxor   &nbs= p;xmm5,xmm13

+      &= nbsp; movups  xmm0,XMMWORD[32+r11]

+=

+        p= xor    xmm10,xmm9

+   = ;     pxor    xmm11,xmm9

+        pxor &nbs= p;  xmm12,xmm9

+    &= nbsp;   pxor    xmm13,xmm9

+

+DB      = ;102,15,56,220,209

+DB     = ; 102,15,56,220,217

+DB    = ;  102,15,56,220,225

+DB   = ;   102,15,56,220,233

+  &= nbsp;     movups  xmm1,XMMWORD[48+r11]

+

+DB    = ;  102,15,56,220,208

+DB   = ;   102,15,56,220,216

+DB  = ;    102,15,56,220,224

+DB=      102,15,56,220,232

+        movups  xmm0,XMMWORD[64= +r11]

+       &n= bsp;jmp     NEAR $L$ocb_enc_loop4

+

+ALIGN   32
=
+$L$ocb_enc_loop4:

+DB  &n= bsp;   102,15,56,220,209

+DB &n= bsp;    102,15,56,220,217

= +DB      102,15,56,220,225

+DB      102,15,56,220,233
+        movups  xmm1,= XMMWORD[rax*1+rcx]

+     &= nbsp;  add     rax,32

+

+DB      102= ,15,56,220,208

+DB     &nb= sp;102,15,56,220,216

+DB    &nb= sp; 102,15,56,220,224

+DB   &nb= sp;  102,15,56,220,232

+   = ;     movups  xmm0,XMMWORD[((-16))+rax*1+rcx]=

+        j= nz     NEAR $L$ocb_enc_loop4

+

+DB      102,15,= 56,220,209

+DB      1= 02,15,56,220,217

+DB     &= nbsp;102,15,56,220,225

+DB    &= nbsp; 102,15,56,220,233

+   &nb= sp;    movups  xmm1,XMMWORD[16+r11]
=
+        mov   =   rax,r10

+

+DB      102,65,15,56,221,210

+DB      102,65,15,56,221,219

+DB      102,65,15,56,221= ,228

+DB      102,65,= 15,56,221,237

+      =   DB      0F3h,0C3h    &n= bsp;          ;repret

+

+
+

+

= +ALIGN   32

+__ocb_encrypt1:

+

+    &n= bsp;   pxor    xmm7,xmm15

+        pxor   &nbs= p;xmm7,xmm9

+      &n= bsp; pxor    xmm8,xmm2

+ &= nbsp;      pxor    xmm2,xmm7
+        mov= ups  xmm0,XMMWORD[32+r11]

+

+DB      102,15,56,220,209

+        movups &n= bsp;xmm1,XMMWORD[48+r11]

+    &= nbsp;   pxor    xmm7,xmm9

+

+DB      = 102,15,56,220,208

+     &n= bsp;  movups  xmm0,XMMWORD[64+r11]

+        jmp    &n= bsp;NEAR $L$ocb_enc_loop1

+

+ALIGN   32

+$L$ocb_enc_l= oop1:

+DB      102,15= ,56,220,209

+      &n= bsp; movups  xmm1,XMMWORD[rax*1+rcx]

+        add     ra= x,32

+

+DB  =     102,15,56,220,208

+ &n= bsp;      movups  xmm0,XMMWORD[((-16))+r= ax*1+rcx]

+      &nbs= p; jnz     NEAR $L$ocb_enc_loop1
+

+DB     &nbs= p;102,15,56,220,209

+     =    movups  xmm1,XMMWORD[16+r11]

+        mov    &n= bsp;rax,r10

+

+DB=      102,15,56,221,215

+        DB     &= nbsp;0F3h,0C3h           =     ;repret

+

+

+

+global  aesni_ocb_decrypt

+

+ALIGN   32

= +aesni_ocb_decrypt:

+     =    mov     QWORD[8+rsp],rdi   =      ;WIN64 prologue

= +        mov     QWO= RD[16+rsp],rsi

+      = ;  mov     rax,rsp

+$L$SEH_begin_aesni_ocb_decrypt:

+  &n= bsp;     mov     rdi,rcx

+        mov &nb= sp;   rsi,rdx

+   &nb= sp;    mov     rdx,r8

+        mov   = ;  rcx,r9

+     =    mov     r8,QWORD[40+rsp]

+        mov  &nbs= p;  r9,QWORD[48+rsp]

+

+

+

+        lea     = rax,[rsp]

+      &nbs= p; push    rbx

+

+        push &nbs= p;  rbp

+

+        push    r12
+

+   &n= bsp;    push    r13

+

+      &nb= sp; push    r14

+

+        lea  = ;   rsp,[((-160))+rsp]

+  =       movaps  XMMWORD[rsp],xmm6

+        movaps &n= bsp;XMMWORD[16+rsp],xmm7

+    &= nbsp;   movaps  XMMWORD[32+rsp],xmm8

+        movaps  XMMWORD= [48+rsp],xmm9

+      =   movaps  XMMWORD[64+rsp],xmm10

+        movaps  XMMWORD[80+rsp],x= mm11

+       &nb= sp;movaps  XMMWORD[96+rsp],xmm12

+  =       movaps  XMMWORD[112+rsp],xmm13

+        movap= s  XMMWORD[128+rsp],xmm14

+   &= nbsp;    movaps  XMMWORD[144+rsp],xmm15

+$L$ocb_dec_body:

+ &nbs= p;      mov     rbx,QWORD= [56+rax]

+       = ; mov     rbp,QWORD[((56+8))+rax]
+

+      = ;  mov     r10d,DWORD[240+rcx]
=
+        mov   =   r11,rcx

+     =    shl     r10d,4

+        movups  xmm9,XMMWOR= D[rcx]

+       &= nbsp;movups  xmm1,XMMWORD[16+r10*1+rcx]

+=

+        m= ovdqu  xmm15,XMMWORD[r9]

+   &n= bsp;    pxor    xmm9,xmm1
=
+        pxor   = ; xmm15,xmm1

+

+        mov     = eax,16+32

+      &nbs= p; lea     rcx,[32+r10*1+r11]

+        movups  xmm1,XMMW= ORD[16+r11]

+      &n= bsp; sub     rax,r10

= +        mov     r10= ,rax

+

+  &n= bsp;     movdqu  xmm10,XMMWORD[rbx]

+        movdqu &n= bsp;xmm8,XMMWORD[rbp]

+

+        test    r= 8,1

+       &nbs= p;jnz     NEAR $L$ocb_dec_odd

+

+       = ; bsf     r12,r8

+ &n= bsp;      add     r8,1
+        shl =     r12,4

+   &n= bsp;    movdqu  xmm7,XMMWORD[r12*1+rbx]

+        movdqu &n= bsp;xmm2,XMMWORD[rdi]

+    &nbs= p;   lea     rdi,[16+rdi]
=
+

+     &nb= sp;  call    __ocb_decrypt1

+

+       = ; movdqa  xmm15,xmm7

+   &= nbsp;    movups  XMMWORD[rsi],xmm2
<= br class=3D"">+        xorps   = ;xmm8,xmm2

+      &nb= sp; lea     rsi,[16+rsi]

+        sub    &n= bsp;rdx,1

+      &nbs= p; jz      NEAR $L$ocb_dec_done

+

+$L$ocb_dec_odd:

+        lea  &nb= sp;  r12,[1+r8]

+    =     lea     r13,[3+r8]

+        lea  &nbs= p;  r14,[5+r8]

+    &= nbsp;   lea     r8,[6+r8]
=
+        bsf   =   r12,r12

+     =    bsf     r13,r13

+        bsf    &= nbsp;r14,r14

+      &= nbsp; shl     r12,4

+=        shl     r13,= 4

+        = shl     r14,4

+

+        sub  = ;   rdx,6

+    &= nbsp;   jc      NEAR $L$ocb_dec_sho= rt

+        = ;jmp     NEAR $L$ocb_dec_grandloop

+

+ALIGN   32

+$L$ocb_dec_grandloop:

+  = ;      movdqu  xmm2,XMMWORD[rdi]

+        movdqu &n= bsp;xmm3,XMMWORD[16+rdi]

+    &= nbsp;   movdqu  xmm4,XMMWORD[32+rdi]

+        movdqu  xmm5,XM= MWORD[48+rdi]

+      =   movdqu  xmm6,XMMWORD[64+rdi]

= +        movdqu  xmm7,XMMWORD[80+rd= i]

+        = ;lea     rdi,[96+rdi]

+
+        call=    __ocb_decrypt6

+

+        movups &n= bsp;XMMWORD[rsi],xmm2

+    &nbs= p;   pxor    xmm8,xmm2

+        movups  XMMWORD[16+= rsi],xmm3

+      &nbs= p; pxor    xmm8,xmm3

+ &nb= sp;      movups  XMMWORD[32+rsi],xmm4
+        pxor=    xmm8,xmm4

+   &nb= sp;    movups  XMMWORD[48+rsi],xmm5
=
+        pxor   = ; xmm8,xmm5

+     &nb= sp;  movups  XMMWORD[64+rsi],xmm6

+        pxor    xmm8,= xmm6

+       &nb= sp;movups  XMMWORD[80+rsi],xmm7

+  &= nbsp;     pxor    xmm8,xmm7

+        lea  = ;   rsi,[96+rsi]

+   =      sub     rdx,6

+        jnc  &nb= sp;  NEAR $L$ocb_dec_grandloop

+

+$L$ocb_dec_short:

+=        add     rdx,= 6

+        = jz      NEAR $L$ocb_dec_done

+

+      &nbs= p; movdqu  xmm2,XMMWORD[rdi]

+  = ;      cmp     rdx,2

+        jb &nb= sp;    NEAR $L$ocb_dec_one

+        movdqu  xmm3,XMMWORD[16+r= di]

+       &nbs= p;je      NEAR $L$ocb_dec_two

+

+      &nb= sp; movdqu  xmm4,XMMWORD[32+rdi]

+ &= nbsp;      cmp     rdx,4<= br class=3D"">
+        jb=      NEAR $L$ocb_dec_three

+        movdqu  xmm5,XMMWOR= D[48+rdi]

+      &nbs= p; je      NEAR $L$ocb_dec_four

+

+     &n= bsp;  movdqu  xmm6,XMMWORD[64+rdi]

+        pxor    x= mm7,xmm7

+

+ &nbs= p;      call    __ocb_decrypt6=

+

+   =      movdqa  xmm15,xmm14

+        movups  XMMWORD[r= si],xmm2

+       = ; pxor    xmm8,xmm2

+ &nbs= p;      movups  XMMWORD[16+rsi],xmm3

+        pxor =    xmm8,xmm3

+   &nbs= p;    movups  XMMWORD[32+rsi],xmm4
<= br class=3D"">+        pxor   =  xmm8,xmm4

+     &nbs= p;  movups  XMMWORD[48+rsi],xmm5

+        pxor    xmm8,x= mm5

+       &nbs= p;movups  XMMWORD[64+rsi],xmm6

+  &n= bsp;     pxor    xmm8,xmm6

+

+    &n= bsp;   jmp     NEAR $L$ocb_dec_done

+

+ALIGN   = 16

+$L$ocb_dec_one:

+        movdqa  xmm7,xmm10

+

+    = ;    call    __ocb_decrypt1

+

+     &= nbsp;  movdqa  xmm15,xmm7

+ &nb= sp;      movups  XMMWORD[rsi],xmm2

+        xorps &= nbsp; xmm8,xmm2

+     = ;   jmp     NEAR $L$ocb_dec_done

+

+ALIGN   16<= br class=3D"">
+$L$ocb_dec_two:

= +        pxor    xmm4,xmm= 4

+        = pxor    xmm5,xmm5

+

+        call  &n= bsp; __ocb_decrypt4

+

+        movdqa  xmm15,xm= m11

+       &nbs= p;movups  XMMWORD[rsi],xmm2

+   = ;     xorps   xmm8,xmm2
+        movups  XMMWO= RD[16+rsi],xmm3

+     &nbs= p;  xorps   xmm8,xmm3

+
+        jmp =     NEAR $L$ocb_dec_done

+=

+ALIGN   16

+$L$ocb_dec_three:

+    =     pxor    xmm5,xmm5

+

+      &= nbsp; call    __ocb_decrypt4

+

+       &nb= sp;movdqa  xmm15,xmm12

+   &nbs= p;    movups  XMMWORD[rsi],xmm2

+        xorps   xm= m8,xmm2

+       =  movups  XMMWORD[16+rsi],xmm3

+ &nbs= p;      xorps   xmm8,xmm3

+        movups &n= bsp;XMMWORD[32+rsi],xmm4

+    &= nbsp;   xorps   xmm8,xmm4

+

+       = ; jmp     NEAR $L$ocb_dec_done

+

+ALIGN   16

+$L$ocb_dec_four:

+  &nb= sp;     call    __ocb_decrypt4

+

+    = ;    movdqa  xmm15,xmm13

+        movups  XMMWORD[rsi= ],xmm2

+       &= nbsp;pxor    xmm8,xmm2

+  =       movups  XMMWORD[16+rsi],xmm3

+        pxor &n= bsp;  xmm8,xmm3

+    =     movups  XMMWORD[32+rsi],xmm4
+        pxor   &n= bsp;xmm8,xmm4

+      =   movups  XMMWORD[48+rsi],xmm5

= +        pxor    xmm8,xmm= 5

+

+$L$ocb_dec_d= one:

+       &nb= sp;pxor    xmm15,xmm0

+  &= nbsp;     movdqu  XMMWORD[rbp],xmm8

+        movdqu &n= bsp;XMMWORD[r9],xmm15

+

+        xorps   xmm0,x= mm0

+       &nbs= p;pxor    xmm1,xmm1

+  &nb= sp;     pxor    xmm2,xmm2

+        pxor &nbs= p;  xmm3,xmm3

+    &n= bsp;   pxor    xmm4,xmm4

+        pxor    = ;xmm5,xmm5

+      &nb= sp; movaps  xmm6,XMMWORD[rsp]

+ &nbs= p;      movaps  XMMWORD[rsp],xmm0

+        movaps &= nbsp;xmm7,XMMWORD[16+rsp]

+    =     movaps  XMMWORD[16+rsp],xmm0
+        movaps  xmm8,X= MMWORD[32+rsp]

+      = ;  movaps  XMMWORD[32+rsp],xmm0

+        movaps  xmm9,XMMWORD[48+r= sp]

+       &nbs= p;movaps  XMMWORD[48+rsp],xmm0

+  &n= bsp;     movaps  xmm10,XMMWORD[64+rsp]

+        movaps &= nbsp;XMMWORD[64+rsp],xmm0

+    =     movaps  xmm11,XMMWORD[80+rsp]
+        movaps  XMMWO= RD[80+rsp],xmm0

+     &nbs= p;  movaps  xmm12,XMMWORD[96+rsp]

+        movaps  XMMWORD[96+rsp]= ,xmm0

+       &n= bsp;movaps  xmm13,XMMWORD[112+rsp]

+ &nbs= p;      movaps  XMMWORD[112+rsp],xmm0
+        mova= ps  xmm14,XMMWORD[128+rsp]

+   =      movaps  XMMWORD[128+rsp],xmm0

+        movaps &n= bsp;xmm15,XMMWORD[144+rsp]

+    = ;    movaps  XMMWORD[144+rsp],xmm0
<= br class=3D"">+        lea   &= nbsp; rax,[((160+40))+rsp]

+$L$ocb_dec_po= p:

+        = ;mov     r14,QWORD[((-40))+rax]

+

+       = ; mov     r13,QWORD[((-32))+rax]
+

+      =   mov     r12,QWORD[((-24))+rax]

+

+     &= nbsp;  mov     rbp,QWORD[((-16))+rax]

+

+    &n= bsp;   mov     rbx,QWORD[((-8))+rax]

+

+   &nbs= p;    lea     rsp,[rax]

+

+$L$ocb_dec_epilogue:

+        mov &n= bsp;   rdi,QWORD[8+rsp]       =  ;WIN64 epilogue

+    &nbs= p;   mov     rsi,QWORD[16+rsp]

+        DB  =     0F3h,0C3h        = ;       ;repret

+

+$L$SEH_end_aesni_ocb_decrypt:

+

+

+ALIGN   32

+__ocb_decrypt= 6:

+

+  &nbs= p;     pxor    xmm15,xmm9

+        movdqu &n= bsp;xmm11,XMMWORD[r12*1+rbx]

+   &nb= sp;    movdqa  xmm12,xmm10

+        movdqu  xmm13,XMMWO= RD[r13*1+rbx]

+      =   movdqa  xmm14,xmm10

+  &= nbsp;     pxor    xmm10,xmm15

+        movdqu =  xmm15,XMMWORD[r14*1+rbx]

+   &= nbsp;    pxor    xmm11,xmm10

+        pxor  &n= bsp; xmm2,xmm10

+     = ;   pxor    xmm12,xmm11

+        pxor    = xmm3,xmm11

+      &nb= sp; pxor    xmm13,xmm12

+ =        pxor    xmm4,xmm12=

+        p= xor    xmm14,xmm13

+  &nbs= p;     pxor    xmm5,xmm13

+        pxor &nbs= p;  xmm15,xmm14

+    =     pxor    xmm6,xmm14
+        pxor   &n= bsp;xmm7,xmm15

+      = ;  movups  xmm0,XMMWORD[32+r11]

+

+        = ;lea     r12,[1+r8]

+ &nbs= p;      lea     r13,[3+r8= ]

+        = lea     r14,[5+r8]

+  = ;      add     r8,6

+        pxor &n= bsp;  xmm10,xmm9

+    = ;    bsf     r12,r12
=
+        bsf   =   r13,r13

+     =    bsf     r14,r14

+

+DB      10= 2,15,56,222,209

+DB     &n= bsp;102,15,56,222,217

+DB    &n= bsp; 102,15,56,222,225

+DB   &n= bsp;  102,15,56,222,233

+  &nbs= p;     pxor    xmm11,xmm9

+        pxor &nbs= p;  xmm12,xmm9

+DB    = ;  102,15,56,222,241

+   &= nbsp;    pxor    xmm13,xmm9

+        pxor  &nb= sp; xmm14,xmm9

+DB    &nbs= p; 102,15,56,222,249

+    =     movups  xmm1,XMMWORD[48+r11]
+        pxor   &n= bsp;xmm15,xmm9

+

= +DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222,224

+DB      102,15,56,222,232
+DB      102,15,56,222= ,240

+DB      102,15,= 56,222,248

+      &nb= sp; movups  xmm0,XMMWORD[64+r11]

+ &= nbsp;      shl     r12,4<= br class=3D"">
+        sh= l     r13,4

+   =      jmp     NEAR $L$ocb_dec_l= oop6

+

+ALIGN &nb= sp; 32

+$L$ocb_dec_loop6:
<= br class=3D"">+DB      102,15,56,222,209

+DB      102,15,56,222,217
+DB      102,15,56,222= ,225

+DB      102,15,= 56,222,233

+DB      1= 02,15,56,222,241

+DB     &= nbsp;102,15,56,222,249

+    &nb= sp;   movups  xmm1,XMMWORD[rax*1+rcx]
+        add   &nb= sp; rax,32

+

+DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222,224

+DB      102,15,56,222,232
+DB      102,15,56,222= ,240

+DB      102,15,= 56,222,248

+      &nb= sp; movups  xmm0,XMMWORD[((-16))+rax*1+rcx]

+        jnz    &= nbsp;NEAR $L$ocb_dec_loop6

+
+DB      102,15,56,222,209

+DB      102,15,56,222,217

+DB      102,15,56,222,225=

+DB      102,15,56,2= 22,233

+DB      102,1= 5,56,222,241

+DB      = ;102,15,56,222,249

+     &= nbsp;  movups  xmm1,XMMWORD[16+r11]

+        shl    &n= bsp;r14,4

+

+DB &= nbsp;    102,65,15,56,223,210

+        movdqu  xmm10,XMMWO= RD[rbx]

+       =  mov     rax,r10

+DB =      102,65,15,56,223,219

+DB      102,65,15,56,223,228

+DB      102,65,15,56,223,237

+DB      102,65,15,56,223= ,246

+DB      102,65,= 15,56,223,255

+      =   DB      0F3h,0C3h    &n= bsp;          ;repret

+

+
+

+

= +ALIGN   32

+__ocb_decrypt4:

+

+    &n= bsp;   pxor    xmm15,xmm9

+        movdqu  xmm11,XM= MWORD[r12*1+rbx]

+     &nb= sp;  movdqa  xmm12,xmm10

+ &nbs= p;      movdqu  xmm13,XMMWORD[r13*1+rbx]=

+        p= xor    xmm10,xmm15

+  &nbs= p;     pxor    xmm11,xmm10

+        pxor &nbs= p;  xmm2,xmm10

+    &= nbsp;   pxor    xmm12,xmm11
+        pxor   &n= bsp;xmm3,xmm11

+      = ;  pxor    xmm13,xmm12

+        pxor    xmm4,x= mm12

+       &nb= sp;pxor    xmm5,xmm13

+  &= nbsp;     movups  xmm0,XMMWORD[32+r11]

+

+    &= nbsp;   pxor    xmm10,xmm9

+        pxor   &nb= sp;xmm11,xmm9

+      =   pxor    xmm12,xmm9

= +        pxor    xmm13,xm= m9

+

+DB  &n= bsp;   102,15,56,222,209

+DB &n= bsp;    102,15,56,222,217

= +DB      102,15,56,222,225

+DB      102,15,56,222,233
+        movups  xmm1,= XMMWORD[48+r11]

+

+DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222,224

+DB      102,15,56,222,232
+        mov= ups  xmm0,XMMWORD[64+r11]

+   &= nbsp;    jmp     NEAR $L$ocb_dec_lo= op4

+

+ALIGN &nbs= p; 32

+$L$ocb_dec_loop4:
+DB      102,15,56,222,209

+DB      102,15,56,222,217
+DB      102,15,56,222= ,225

+DB      102,15,= 56,222,233

+      &nb= sp; movups  xmm1,XMMWORD[rax*1+rcx]

= +        add     rax= ,32

+

+DB  &= nbsp;   102,15,56,222,208

+DB &= nbsp;    102,15,56,222,216

+DB      102,15,56,222,224

+DB      102,15,56,222,232
+        movups  xmm0,= XMMWORD[((-16))+rax*1+rcx]

+    = ;    jnz     NEAR $L$ocb_dec_loop4<= br class=3D"">
+

+DB   = ;   102,15,56,222,209

+DB  = ;    102,15,56,222,217

+DB=      102,15,56,222,225

+DB      102,15,56,222,233

+        movups  xmm1,XMMW= ORD[16+r11]

+      &n= bsp; mov     rax,r10

= +

+DB      102,65,15,= 56,223,210

+DB      1= 02,65,15,56,223,219

+DB    &nbs= p; 102,65,15,56,223,228

+DB   &= nbsp;  102,65,15,56,223,237

+  =       DB      0F3h,0= C3h             = ;  ;repret

+

+

+

+

+ALIGN   32

+__ocb_decrypt1:

+

+        pxor    xmm7,= xmm15

+       &n= bsp;pxor    xmm7,xmm9

+  &= nbsp;     pxor    xmm2,xmm7

+        movups &n= bsp;xmm0,XMMWORD[32+r11]

+

+DB      102,15,56,222,209

+        movups  xm= m1,XMMWORD[48+r11]

+     &= nbsp;  pxor    xmm7,xmm9

+

+DB      102= ,15,56,222,208

+      = ;  movups  xmm0,XMMWORD[64+r11]

+        jmp     NE= AR $L$ocb_dec_loop1

+

+ALIGN   32

+$L$ocb_dec_loop1= :

+DB      102,15,56,= 222,209

+       =  movups  xmm1,XMMWORD[rax*1+rcx]

+ &= nbsp;      add     rax,32=

+

+DB  &nbs= p;   102,15,56,222,208

+  =       movups  xmm0,XMMWORD[((-16))+rax*1= +rcx]

+       &n= bsp;jnz     NEAR $L$ocb_dec_loop1

+

+DB      10= 2,15,56,222,209

+     &nbs= p;  movups  xmm1,XMMWORD[16+r11]

+        mov     r= ax,r10

+

+DB &nbs= p;    102,15,56,223,215

+ =        DB      = 0F3h,0C3h            = ;   ;repret

+
+

+global  aesni_cbc_encrypt<= br class=3D"">
+

+ALIGN  &n= bsp;16

+aesni_cbc_encrypt:

+        mov    = ; QWORD[8+rsp],rdi        ;WIN64 pr= ologue

+       &= nbsp;mov     QWORD[16+rsp],rsi

+        mov    &n= bsp;rax,rsp

+$L$SEH_begin_aesni_cbc_encrypt:
+        mov=     rdi,rcx

+   = ;     mov     rsi,rdx

+        mov  = ;   rdx,r8

+    =     mov     rcx,r9
+        mov   &n= bsp; r8,QWORD[40+rsp]

+    = ;    mov     r9,QWORD[48+rsp]

+

+

+

+      &= nbsp; test    rdx,rdx

+ &n= bsp;      jz      NE= AR $L$cbc_ret

+

+=        mov     r10d= ,DWORD[240+rcx]

+     &nbs= p;  mov     r11,rcx

+        test    r= 9d,r9d

+       &= nbsp;jz      NEAR $L$cbc_decrypt
+

+      =   movups  xmm2,XMMWORD[r8]

+ &n= bsp;      mov     eax,r10= d

+        = cmp     rdx,16

+  &nb= sp;     jb      NEAR $L$c= bc_enc_tail

+      &n= bsp; sub     rdx,16

+=        jmp     NEAR= $L$cbc_enc_loop

+ALIGN   16

+$L$cbc_enc_loop:

+ &nbs= p;      movups  xmm3,XMMWORD[rdi]

+        lea &nbs= p;   rdi,[16+rdi]

+

+        movups  = xmm0,XMMWORD[rcx]

+     &n= bsp;  movups  xmm1,XMMWORD[16+rcx]

+        xorps   xmm3,x= mm0

+       &nbs= p;lea     rcx,[32+rcx]

+ &= nbsp;      xorps   xmm2,xmm3

+$L$oop_enc1_15:

+DB &n= bsp;    102,15,56,220,209

= +        dec     eax=

+        m= ovups  xmm1,XMMWORD[rcx]

+   &n= bsp;    lea     rcx,[16+rcx]

+        jnz &nbs= p;   NEAR $L$oop_enc1_15

+DB &n= bsp;    102,15,56,221,209

= +        mov     eax= ,r10d

+       &n= bsp;mov     rcx,r11

+ &nbs= p;      movups  XMMWORD[rsi],xmm2

+        lea &nbs= p;   rsi,[16+rsi]

+   = ;     sub     rdx,16

+        jnc  = ;   NEAR $L$cbc_enc_loop

+ &nbs= p;      add     rdx,16
+        jnz =     NEAR $L$cbc_enc_tail

+=        pxor    xmm0,xmm0=

+        p= xor    xmm1,xmm1

+   =      movups  XMMWORD[r8],xmm2
<= br class=3D"">+        pxor   =  xmm2,xmm2

+     &nbs= p;  pxor    xmm3,xmm3

+        jmp     NE= AR $L$cbc_ret

+

+= $L$cbc_enc_tail:

+     &nb= sp;  mov     rcx,rdx

+        xchg    r= si,rdi

+       &= nbsp;DD      0x9066A4F3

+        mov     = ecx,16

+       &= nbsp;sub     rcx,rdx

+ &nb= sp;      xor     eax,eax<= br class=3D"">
+        DD=      0x9066AAF3

+ &n= bsp;      lea     rdi,[((= -16))+rdi]

+      &nb= sp; mov     eax,r10d

= +        mov     rsi= ,rdi

+       &nb= sp;mov     rcx,r11

+  = ;      xor     rdx,rdx
+        jmp =     NEAR $L$cbc_enc_loop

+=

+ALIGN   16

+$L$cbc_decrypt:

+    &n= bsp;   cmp     rdx,16

+        jne   &nbs= p; NEAR $L$cbc_decrypt_bulk

+

+

+

+        movdqu  xmm2,XMMWOR= D[rdi]

+       &= nbsp;movdqu  xmm3,XMMWORD[r8]

+  &nb= sp;     movdqa  xmm4,xmm2

+        movups  xmm0,XMM= WORD[rcx]

+      &nbs= p; movups  xmm1,XMMWORD[16+rcx]

+ &n= bsp;      lea     rcx,[32= +rcx]

+       &n= bsp;xorps   xmm2,xmm0

+$L$oop_dec1_1= 6:

+DB      102,15,56= ,222,209

+       = ; dec     r10d

+ &nbs= p;      movups  xmm1,XMMWORD[rcx]

+        lea &nbs= p;   rcx,[16+rcx]

+   = ;     jnz     NEAR $L$oop_dec1= _16

+DB      102,15,5= 6,223,209

+      &nbs= p; pxor    xmm0,xmm0

+ &nb= sp;      pxor    xmm1,xmm1

+        movdq= u  XMMWORD[r8],xmm4

+    &= nbsp;   xorps   xmm2,xmm3

+        pxor    x= mm3,xmm3

+       = ; movups  XMMWORD[rsi],xmm2

+  =       pxor    xmm2,xmm2

+        jmp &nbs= p;   NEAR $L$cbc_ret

+ALIGN &nb= sp; 16

+$L$cbc_decrypt_bulk:

+        lea  &nbs= p;  r11,[rsp]

+

+        push    = ;rbp

+

+  &n= bsp;     sub     rsp,176

+        and &nb= sp;   rsp,-16

+   &nb= sp;    movaps  XMMWORD[16+rsp],xmm6
=
+        movaps  XMM= WORD[32+rsp],xmm7

+     &n= bsp;  movaps  XMMWORD[48+rsp],xmm8

+        movaps  XMMWORD[64+= rsp],xmm9

+      &nbs= p; movaps  XMMWORD[80+rsp],xmm10

+ &= nbsp;      movaps  XMMWORD[96+rsp],xmm11=

+        m= ovaps  XMMWORD[112+rsp],xmm12

+  &nb= sp;     movaps  XMMWORD[128+rsp],xmm13

+        movaps &= nbsp;XMMWORD[144+rsp],xmm14

+   &nbs= p;    movaps  XMMWORD[160+rsp],xmm15

+$L$cbc_decrypt_body:

+  =       mov     rbp,rcx

+        movup= s  xmm10,XMMWORD[r8]

+    =     mov     eax,r10d
=
+        cmp   =   rdx,0x50

+     = ;   jbe     NEAR $L$cbc_dec_tail

+

+    &n= bsp;   movups  xmm0,XMMWORD[rcx]

+        movdqu  xmm2,XMMWOR= D[rdi]

+       &= nbsp;movdqu  xmm3,XMMWORD[16+rdi]

+  = ;      movdqa  xmm11,xmm2
=
+        movdqu  xmm= 4,XMMWORD[32+rdi]

+     &n= bsp;  movdqa  xmm12,xmm3

+ &nbs= p;      movdqu  xmm5,XMMWORD[48+rdi]

+        movdq= a  xmm13,xmm4

+     &= nbsp;  movdqu  xmm6,XMMWORD[64+rdi]

+        movdqa  xmm14,xmm5<= br class=3D"">
+        mo= vdqu  xmm7,XMMWORD[80+rdi]

+   =      movdqa  xmm15,xmm6

+        mov    &= nbsp;r9d,DWORD[((OPENSSL_ia32cap_P+4))]

+ &nbs= p;      cmp     rdx,0x70<= br class=3D"">
+        jb= e     NEAR $L$cbc_dec_six_or_seven

+

+      &nb= sp; and     r9d,71303168

+        sub    &n= bsp;rdx,0x50

+      &= nbsp; cmp     r9d,4194304

+        je    &nb= sp; NEAR $L$cbc_dec_loop6_enter

+  &= nbsp;     sub     rdx,0x20

+        lea &= nbsp;   rcx,[112+rcx]

+  &= nbsp;     jmp     NEAR $L$cbc_= dec_loop8_enter

+ALIGN   16

+$L$cbc_dec_loop8:

+ &nb= sp;      movups  XMMWORD[rsi],xmm9

+        lea &nb= sp;   rsi,[16+rsi]

+$L$cbc_dec_= loop8_enter:

+      &= nbsp; movdqu  xmm8,XMMWORD[96+rdi]

+=        pxor    xmm2,xmm0=

+        m= ovdqu  xmm9,XMMWORD[112+rdi]

+  &nbs= p;     pxor    xmm3,xmm0

+        movups &n= bsp;xmm1,XMMWORD[((16-112))+rcx]

+   = ;     pxor    xmm4,xmm0

+        mov  &nb= sp;  rbp,-1

+    &nbs= p;   cmp     rdx,0x70

+        pxor   &nb= sp;xmm5,xmm0

+      &= nbsp; pxor    xmm6,xmm0

+ =        pxor    xmm7,xmm0<= br class=3D"">
+        px= or    xmm8,xmm0

+

+DB      102,15,56,222,209

+        pxor &nbs= p;  xmm9,xmm0

+    &n= bsp;   movups  xmm0,XMMWORD[((32-112))+rcx]

+DB      102,15,56,222,217

+DB      102,15,56,222,225=

+DB      102,15,56,2= 22,233

+DB      102,1= 5,56,222,241

+DB      = ;102,15,56,222,249

+DB     = ; 102,68,15,56,222,193

+   &nbs= p;    adc     rbp,0
<= br class=3D"">+        and   &= nbsp; rbp,128

+DB     = ; 102,68,15,56,222,201

+   &nbs= p;    add     rbp,rdi

+        movups  xm= m1,XMMWORD[((48-112))+rcx]

+DB   &nb= sp;  102,15,56,222,208

+DB  &nb= sp;   102,15,56,222,216

+DB &nb= sp;    102,15,56,222,224

+= DB      102,15,56,222,232

+DB      102,15,56,222,240
+DB      102,15,56,222,248

+DB      102,68,15,56,222,19= 2

+DB      102,68,15,= 56,222,200

+      &nb= sp; movups  xmm0,XMMWORD[((64-112))+rcx]

+        nop

+DB      102,15,56,222,209
=
+DB      102,15,56,222,217

+DB      102,15,56,222,225
+DB      102,15,56,222= ,233

+DB      102,15,= 56,222,241

+DB      1= 02,15,56,222,249

+DB     &= nbsp;102,68,15,56,222,193

+DB   &nbs= p;  102,68,15,56,222,201

+  &nb= sp;     movups  xmm1,XMMWORD[((80-112))+rcx]<= br class=3D"">
+        no= p

+DB      102,15,56,= 222,208

+DB      102,= 15,56,222,216

+DB     &nbs= p;102,15,56,222,224

+DB    &nbs= p; 102,15,56,222,232

+DB   &nbs= p;  102,15,56,222,240

+DB  &nbs= p;   102,15,56,222,248

+DB &nbs= p;    102,68,15,56,222,192

+DB      102,68,15,56,222,200

+        movups  xmm0,XMM= WORD[((96-112))+rcx]

+     = ;   nop

+DB    &= nbsp; 102,15,56,222,209

+DB   &= nbsp;  102,15,56,222,217

+DB  &= nbsp;   102,15,56,222,225

+DB &= nbsp;    102,15,56,222,233

+DB      102,15,56,222,241

+DB      102,15,56,222,249
+DB      102,68,15,56,222,193

+DB      102,68,15,56,222,20= 1

+        = movups  xmm1,XMMWORD[((112-112))+rcx]

+ &= nbsp;      nop

+= DB      102,15,56,222,208

+DB      102,15,56,222,216
+DB      102,15,56,222,224

+DB      102,15,56,222,232
+DB      102,15,56,222= ,240

+DB      102,15,= 56,222,248

+DB      1= 02,68,15,56,222,192

+DB    &nbs= p; 102,68,15,56,222,200

+   &nb= sp;    movups  xmm0,XMMWORD[((128-112))+rcx]

+        nop

+DB      102,15,56,222,2= 09

+DB      102,15,56= ,222,217

+DB      102= ,15,56,222,225

+DB     &nb= sp;102,15,56,222,233

+DB    &nb= sp; 102,15,56,222,241

+DB   &nb= sp;  102,15,56,222,249

+DB  &nb= sp;   102,68,15,56,222,193

+DB =      102,68,15,56,222,201

+        movups  xmm1,XMMWOR= D[((144-112))+rcx]

+     &= nbsp;  cmp     eax,11

+DB      102,15,56,222,208
+DB      102,15,56,222,216

+DB      102,15,56,222,224
+DB      102,15,56,222= ,232

+DB      102,15,= 56,222,240

+DB      1= 02,15,56,222,248

+DB     &= nbsp;102,68,15,56,222,192

+DB   &nbs= p;  102,68,15,56,222,200

+  &nb= sp;     movups  xmm0,XMMWORD[((160-112))+rcx]=

+        j= b      NEAR $L$cbc_dec_done

+DB      102,15,56,222,209
+DB      102,15,56,222,217

+DB      102,15,56,222,225
+DB      102,15,56,222= ,233

+DB      102,15,= 56,222,241

+DB      1= 02,15,56,222,249

+DB     &= nbsp;102,68,15,56,222,193

+DB   &nbs= p;  102,68,15,56,222,201

+  &nb= sp;     movups  xmm1,XMMWORD[((176-112))+rcx]=

+        n= op

+DB      102,15,56= ,222,208

+DB      102= ,15,56,222,216

+DB     &nb= sp;102,15,56,222,224

+DB    &nb= sp; 102,15,56,222,232

+DB   &nb= sp;  102,15,56,222,240

+DB  &nb= sp;   102,15,56,222,248

+DB &nb= sp;    102,68,15,56,222,192

+DB      102,68,15,56,222,200

+        movups  xmm0,XM= MWORD[((192-112))+rcx]

+    &nb= sp;   je      NEAR $L$cbc_dec_done<= br class=3D"">
+DB      102,15,56,22= 2,209

+DB      102,15= ,56,222,217

+DB      = 102,15,56,222,225

+DB     =  102,15,56,222,233

+DB    =   102,15,56,222,241

+DB   =    102,15,56,222,249

+DB  =     102,68,15,56,222,193

+= DB      102,68,15,56,222,201

+        movups  xmm1,XMMWO= RD[((208-112))+rcx]

+     =    nop

+DB    &n= bsp; 102,15,56,222,208

+DB   &n= bsp;  102,15,56,222,216

+DB  &n= bsp;   102,15,56,222,224

+DB &n= bsp;    102,15,56,222,232

= +DB      102,15,56,222,240

+DB      102,15,56,222,248
+DB      102,68,15,56,222,192

+DB      102,68,15,56,222,20= 0

+        = movups  xmm0,XMMWORD[((224-112))+rcx]

+ &= nbsp;      jmp     NEAR $= L$cbc_dec_done

+ALIGN   16

+$L$cbc_dec_done:

+DB &n= bsp;    102,15,56,222,209

= +DB      102,15,56,222,217

+        pxor    x= mm10,xmm0

+      &nbs= p; pxor    xmm11,xmm0

+DB =      102,15,56,222,225

+DB      102,15,56,222,233

+        pxor    = xmm12,xmm0

+      &nb= sp; pxor    xmm13,xmm0

+DB=      102,15,56,222,241

+DB      102,15,56,222,249

+        pxor    = ;xmm14,xmm0

+      &n= bsp; pxor    xmm15,xmm0

+D= B      102,68,15,56,222,193

+DB      102,68,15,56,222,201

+        movdqu  xm= m1,XMMWORD[80+rdi]

+

+DB      102,65,15,56,223,210

+        movdqu  xm= m10,XMMWORD[96+rdi]

+     =    pxor    xmm1,xmm0

+DB      102,65,15,56,223,219

+        pxor  &nbs= p; xmm10,xmm0

+     &= nbsp;  movdqu  xmm0,XMMWORD[112+rdi]

+DB      102,65,15,56,223,228

+        lea   = ;  rdi,[128+rdi]

+    = ;    movdqu  xmm11,XMMWORD[rbp]

+DB      102,65,15,56,223,237

+DB      102,65,15,56,223,24= 6

+        = movdqu  xmm12,XMMWORD[16+rbp]

+  &nb= sp;     movdqu  xmm13,XMMWORD[32+rbp]

+DB      102,65,15,56,223,25= 5

+DB      102,68,15,= 56,223,193

+      &nb= sp; movdqu  xmm14,XMMWORD[48+rbp]

+ =        movdqu  xmm15,XMMWORD[64+rbp= ]

+DB      102,69,15,= 56,223,202

+      &nb= sp; movdqa  xmm10,xmm0

+   = ;     movdqu  xmm1,XMMWORD[80+rbp]

+        movups &n= bsp;xmm0,XMMWORD[((-112))+rcx]

+

+        movups  XM= MWORD[rsi],xmm2

+     &nbs= p;  movdqa  xmm2,xmm11

+  =       movups  XMMWORD[16+rsi],xmm3

+        movdqa =  xmm3,xmm12

+     &nb= sp;  movups  XMMWORD[32+rsi],xmm4

+        movdqa  xmm4,xmm13

+        movups=  XMMWORD[48+rsi],xmm5

+   &nbs= p;    movdqa  xmm5,xmm14

+        movups  XMMWORD[64+= rsi],xmm6

+      &nbs= p; movdqa  xmm6,xmm15

+   =      movups  XMMWORD[80+rsi],xmm7

+        movdqa  = xmm7,xmm1

+      &nbs= p; movups  XMMWORD[96+rsi],xmm8

+ &n= bsp;      lea     rsi,[11= 2+rsi]

+

+  =       sub     rdx,0x80
+        ja &= nbsp;    NEAR $L$cbc_dec_loop8

+

+       = ; movaps  xmm2,xmm9

+   &n= bsp;    lea     rcx,[((-112))+rcx]<= br class=3D"">
+        ad= d     rdx,0x70

+  &nb= sp;     jle     NEAR $L$cbc_de= c_clear_tail_collected

+    &nb= sp;   movups  XMMWORD[rsi],xmm9

+        lea    &n= bsp;rsi,[16+rsi]

+     &nb= sp;  cmp     rdx,0x50

+        jbe    &n= bsp;NEAR $L$cbc_dec_tail

+

+        movaps  xmm2,xmm= 11

+$L$cbc_dec_six_or_seven:
+        cmp   &nb= sp; rdx,0x60

+     &n= bsp;  ja      NEAR $L$cbc_dec_seven

+

+    = ;    movaps  xmm8,xmm7

+        call    _aesni= _decrypt6

+      &nbs= p; pxor    xmm2,xmm10

+ &n= bsp;      movaps  xmm10,xmm8

+        pxor  &n= bsp; xmm3,xmm11

+     = ;   movdqu  XMMWORD[rsi],xmm2

+        pxor    x= mm4,xmm12

+      &nbs= p; movdqu  XMMWORD[16+rsi],xmm3

+ &n= bsp;      pxor    xmm3,xmm3
+        pxor=    xmm5,xmm13

+   &n= bsp;    movdqu  XMMWORD[32+rsi],xmm4

+        pxor  &nbs= p; xmm4,xmm4

+     &n= bsp;  pxor    xmm6,xmm14

+        movdqu  XMMWORD[48+= rsi],xmm5

+      &nbs= p; pxor    xmm5,xmm5

+ &nb= sp;      pxor    xmm7,xmm15
+        movd= qu  XMMWORD[64+rsi],xmm6

+   &n= bsp;    pxor    xmm6,xmm6
=
+        lea   =   rsi,[80+rsi]

+    &= nbsp;   movdqa  xmm2,xmm7

= +        pxor    xmm7,xmm= 7

+        = jmp     NEAR $L$cbc_dec_tail_collected
+

+ALIGN   16

+$L$cbc_dec_seven:

+ &nb= sp;      movups  xmm8,XMMWORD[96+rdi]
+        xorp= s   xmm9,xmm9

+    &n= bsp;   call    _aesni_decrypt8
=
+        movups  xmm= 9,XMMWORD[80+rdi]

+     &n= bsp;  pxor    xmm2,xmm10

+        movups  xmm10,XMMWO= RD[96+rdi]

+      &nb= sp; pxor    xmm3,xmm11

+ &= nbsp;      movdqu  XMMWORD[rsi],xmm2

+        pxor =    xmm4,xmm12

+   &nb= sp;    movdqu  XMMWORD[16+rsi],xmm3
=
+        pxor   = ; xmm3,xmm3

+     &nb= sp;  pxor    xmm5,xmm13

+        movdqu  XMMWORD[32+rsi]= ,xmm4

+       &n= bsp;pxor    xmm4,xmm4

+  &= nbsp;     pxor    xmm6,xmm14

+        movdqu &= nbsp;XMMWORD[48+rsi],xmm5

+    =     pxor    xmm5,xmm5

+        pxor   &nb= sp;xmm7,xmm15

+      =   movdqu  XMMWORD[64+rsi],xmm6

= +        pxor    xmm6,xmm= 6

+        = pxor    xmm8,xmm9

+   = ;     movdqu  XMMWORD[80+rsi],xmm7

+        pxor &nbs= p;  xmm7,xmm7

+    &n= bsp;   lea     rsi,[96+rsi]

+        movdqa  x= mm2,xmm8

+       = ; pxor    xmm8,xmm8

+ &nbs= p;      pxor    xmm9,xmm9

+        jmp &n= bsp;   NEAR $L$cbc_dec_tail_collected

+

+ALIGN   16
<= br class=3D"">+$L$cbc_dec_loop6:

+   = ;     movups  XMMWORD[rsi],xmm7

+        lea   = ;  rsi,[16+rsi]

+    =     movdqu  xmm2,XMMWORD[rdi]

+        movdqu  xmm3,XMMW= ORD[16+rdi]

+      &n= bsp; movdqa  xmm11,xmm2

+  &nbs= p;     movdqu  xmm4,XMMWORD[32+rdi]

+        movdqa &n= bsp;xmm12,xmm3

+      = ;  movdqu  xmm5,XMMWORD[48+rdi]

+        movdqa  xmm13,xmm4

+        movdqu &= nbsp;xmm6,XMMWORD[64+rdi]

+    =     movdqa  xmm14,xmm5

+        movdqu  xmm7,XMMWORD[80+= rdi]

+       &nb= sp;movdqa  xmm15,xmm6

+$L$cbc_dec_loop6_e= nter:

+       &n= bsp;lea     rdi,[96+rdi]

+=        movdqa  xmm8,xmm7

+

+    &n= bsp;   call    _aesni_decrypt6
=
+

+     &nb= sp;  pxor    xmm2,xmm10

+        movdqa  xmm10,xmm8

+        pxor &= nbsp;  xmm3,xmm11

+   &nbs= p;    movdqu  XMMWORD[rsi],xmm2

+        pxor   &nb= sp;xmm4,xmm12

+      =   movdqu  XMMWORD[16+rsi],xmm3

= +        pxor    xmm5,xmm= 13

+        = ;movdqu  XMMWORD[32+rsi],xmm4

+  &nb= sp;     pxor    xmm6,xmm14

+        mov  = ;   rcx,rbp

+    = ;    movdqu  XMMWORD[48+rsi],xmm5
+        pxor   &= nbsp;xmm7,xmm15

+     &nbs= p;  mov     eax,r10d

+        movdqu  XMMWORD[64+= rsi],xmm6

+      &nbs= p; lea     rsi,[80+rsi]

+        sub     = rdx,0x60

+       = ; ja      NEAR $L$cbc_dec_loop6

+

+     &n= bsp;  movdqa  xmm2,xmm7

+  = ;      add     rdx,0x50
+        jle=     NEAR $L$cbc_dec_clear_tail_collected

+        movups  XM= MWORD[rsi],xmm7

+     &nbs= p;  lea     rsi,[16+rsi]

+

+$L$cbc_dec_tail:
+        movups  xmm2,X= MMWORD[rdi]

+      &n= bsp; sub     rdx,0x10

+        jbe     NE= AR $L$cbc_dec_one

+

+        movups  xmm3,XMMWORD[16= +rdi]

+       &n= bsp;movaps  xmm11,xmm2

+   &nbs= p;    sub     rdx,0x10

+        jbe  &nbs= p;  NEAR $L$cbc_dec_two

+

+        movups &n= bsp;xmm4,XMMWORD[32+rdi]

+    &= nbsp;   movaps  xmm12,xmm3

+        sub     rd= x,0x10

+       &= nbsp;jbe     NEAR $L$cbc_dec_three

+

+      &nb= sp; movups  xmm5,XMMWORD[48+rdi]

+ &= nbsp;      movaps  xmm13,xmm4

+        sub  = ;   rdx,0x10

+   &nbs= p;    jbe     NEAR $L$cbc_dec_four<= br class=3D"">
+

+   &= nbsp;    movups  xmm6,XMMWORD[64+rdi]

+        movaps  x= mm14,xmm5

+      &nbs= p; movaps  xmm15,xmm6

+   =      xorps   xmm7,xmm7
+        call   &n= bsp;_aesni_decrypt6

+     =    pxor    xmm2,xmm10

+        movaps  xmm10,xmm15=

+        p= xor    xmm3,xmm11

+   = ;     movdqu  XMMWORD[rsi],xmm2

+        pxor  &nbs= p; xmm4,xmm12

+     &= nbsp;  movdqu  XMMWORD[16+rsi],xmm3

+        pxor    x= mm3,xmm3

+       = ; pxor    xmm5,xmm13

+ &nb= sp;      movdqu  XMMWORD[32+rsi],xmm4
+        pxor=    xmm4,xmm4

+   &nb= sp;    pxor    xmm6,xmm14
=
+        movdqu  XMM= WORD[48+rsi],xmm5

+     &n= bsp;  pxor    xmm5,xmm5

+        lea     = rsi,[64+rsi]

+      &= nbsp; movdqa  xmm2,xmm6

+  &nbs= p;     pxor    xmm6,xmm6

+        pxor &nbs= p;  xmm7,xmm7

+    &n= bsp;   sub     rdx,0x10
+        jmp   &n= bsp; NEAR $L$cbc_dec_tail_collected

+

+ALIGN   16

+$L$cbc_dec_one:

+     &= nbsp;  movaps  xmm11,xmm2

+ &nb= sp;      movups  xmm0,XMMWORD[rcx]

+        movups =  xmm1,XMMWORD[16+rcx]

+    = ;    lea     rcx,[32+rcx]

+        xorps &nb= sp; xmm2,xmm0

+$L$oop_dec1_17:

+DB      102,15,56,222,209
+        dec=     eax

+   &nb= sp;    movups  xmm1,XMMWORD[rcx]
+        lea   &nb= sp; rcx,[16+rcx]

+    &nbs= p;   jnz     NEAR $L$oop_dec1_17

+DB      102,15,56,223,209
+        xor= ps   xmm2,xmm10

+    =     movaps  xmm10,xmm11

+        jmp     = NEAR $L$cbc_dec_tail_collected

+ALIGN  &n= bsp;16

+$L$cbc_dec_two:

+        movaps  xmm12,xmm3<= br class=3D"">
+        ca= ll    _aesni_decrypt2

+  &= nbsp;     pxor    xmm2,xmm10

+        movaps &= nbsp;xmm10,xmm12

+     &nb= sp;  pxor    xmm3,xmm11

+        movdqu  XMMWORD[rsi],xm= m2

+        = ;movdqa  xmm2,xmm3

+    &n= bsp;   pxor    xmm3,xmm3

+        lea    =  rsi,[16+rsi]

+     &= nbsp;  jmp     NEAR $L$cbc_dec_tail_collected=

+ALIGN   16

+$L$cbc_dec_three:

+    =     movaps  xmm13,xmm4

+        call    _aesni= _decrypt3

+      &nbs= p; pxor    xmm2,xmm10

+ &n= bsp;      movaps  xmm10,xmm13

+        pxor &nbs= p;  xmm3,xmm11

+    &= nbsp;   movdqu  XMMWORD[rsi],xmm2

+        pxor    = xmm4,xmm12

+      &nb= sp; movdqu  XMMWORD[16+rsi],xmm3

+ &= nbsp;      pxor    xmm3,xmm3
+        mov= dqa  xmm2,xmm4

+     =    pxor    xmm4,xmm4

+        lea    &n= bsp;rsi,[32+rsi]

+     &nb= sp;  jmp     NEAR $L$cbc_dec_tail_collected
+ALIGN   16

+$L$cbc_dec_four:

+    &= nbsp;   movaps  xmm14,xmm5

+        call    _aesni_= decrypt4

+       = ; pxor    xmm2,xmm10

+ &nb= sp;      movaps  xmm10,xmm14

+        pxor  &n= bsp; xmm3,xmm11

+     = ;   movdqu  XMMWORD[rsi],xmm2

+        pxor    x= mm4,xmm12

+      &nbs= p; movdqu  XMMWORD[16+rsi],xmm3

+ &n= bsp;      pxor    xmm3,xmm3
+        pxor=    xmm5,xmm13

+   &n= bsp;    movdqu  XMMWORD[32+rsi],xmm4

+        pxor  &nbs= p; xmm4,xmm4

+     &n= bsp;  movdqa  xmm2,xmm5

+  = ;      pxor    xmm5,xmm5

+        lea &nb= sp;   rsi,[48+rsi]

+  &nbs= p;     jmp     NEAR $L$cbc_dec= _tail_collected

+

+ALIGN   16

+$L$cbc_dec_clear_tail_= collected:

+      &nb= sp; pxor    xmm3,xmm3

+ &n= bsp;      pxor    xmm4,xmm4
+        pxor=    xmm5,xmm5

+$L$cbc_dec_tail_= collected:

+      &nb= sp; movups  XMMWORD[r8],xmm10

+ &nbs= p;      and     rdx,15
+        jnz =     NEAR $L$cbc_dec_tail_partial

+        movups  XMMWORD[rsi= ],xmm2

+       &= nbsp;pxor    xmm2,xmm2

+  =       jmp     NEAR $L$cbc= _dec_ret

+ALIGN   16
<= br class=3D"">+$L$cbc_dec_tail_partial:

+ &nbs= p;      movaps  XMMWORD[rsp],xmm2

+        pxor &nb= sp;  xmm2,xmm2

+    &= nbsp;   mov     rcx,16
+        mov   &nb= sp; rdi,rsi

+     &nb= sp;  sub     rcx,rdx

+        lea    &n= bsp;rsi,[rsp]

+      =   DD      0x9066A4F3

+        movdqa  XMMWORD[= rsp],xmm2

+

+$L$c= bc_dec_ret:

+      &n= bsp; xorps   xmm0,xmm0

+  =       pxor    xmm1,xmm1

+        movaps &= nbsp;xmm6,XMMWORD[16+rsp]

+    =     movaps  XMMWORD[16+rsp],xmm0
+        movaps  xmm7,X= MMWORD[32+rsp]

+      = ;  movaps  XMMWORD[32+rsp],xmm0

+        movaps  xmm8,XMMWORD[48+r= sp]

+       &nbs= p;movaps  XMMWORD[48+rsp],xmm0

+  &n= bsp;     movaps  xmm9,XMMWORD[64+rsp]

+        movaps &n= bsp;XMMWORD[64+rsp],xmm0

+    &= nbsp;   movaps  xmm10,XMMWORD[80+rsp]
+        movaps  XMMWOR= D[80+rsp],xmm0

+      = ;  movaps  xmm11,XMMWORD[96+rsp]

+        movaps  XMMWORD[96+rsp],= xmm0

+       &nb= sp;movaps  xmm12,XMMWORD[112+rsp]

+  = ;      movaps  XMMWORD[112+rsp],xmm0

+        movap= s  xmm13,XMMWORD[128+rsp]

+   &= nbsp;    movaps  XMMWORD[128+rsp],xmm0

+        movaps  = xmm14,XMMWORD[144+rsp]

+    &nb= sp;   movaps  XMMWORD[144+rsp],xmm0

+        movaps  xmm15,XM= MWORD[160+rsp]

+      = ;  movaps  XMMWORD[160+rsp],xmm0

+        mov     r= bp,QWORD[((-8))+r11]

+

+        lea    &n= bsp;rsp,[r11]

+

+= $L$cbc_ret:

+      &n= bsp; mov     rdi,QWORD[8+rsp]    &n= bsp;   ;WIN64 epilogue

+  =       mov     rsi,QWORD[1= 6+rsp]

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+$L$SEH_end_aesni_cbc_= encrypt:

+global  aesni_set_decrypt_key
+

+ALIGN  &nb= sp;16

+aesni_set_decrypt_key:
+

+DB     &nb= sp;0x48,0x83,0xEC,0x08

+

+        call    = __aesni_set_encrypt_key

+    &n= bsp;   shl     edx,4

+        test   &nbs= p;eax,eax

+      &nbs= p; jnz     NEAR $L$dec_key_ret

+        lea    = ; rcx,[16+rdx*1+r8]

+

+        movups  xmm0,XMM= WORD[r8]

+       = ; movups  xmm1,XMMWORD[rcx]

+  =       movups  XMMWORD[rcx],xmm0

+        movups &n= bsp;XMMWORD[r8],xmm1

+     = ;   lea     r8,[16+r8]
+        lea   &nb= sp; rcx,[((-16))+rcx]

+
+$L$dec_key_inverse:

+   = ;     movups  xmm0,XMMWORD[r8]
=
+        movups  xmm= 1,XMMWORD[rcx]

+DB     &nb= sp;102,15,56,219,192

+DB    &nb= sp; 102,15,56,219,201

+    = ;    lea     r8,[16+r8]

+        lea  &nb= sp;  rcx,[((-16))+rcx]

+   = ;     movups  XMMWORD[16+rcx],xmm0

+        movups &n= bsp;XMMWORD[(-16)+r8],xmm1

+    = ;    cmp     rcx,r8
<= br class=3D"">+        ja   &n= bsp;  NEAR $L$dec_key_inverse

+

+        movups=  xmm0,XMMWORD[r8]

+DB    =   102,15,56,219,192

+   &n= bsp;    pxor    xmm1,xmm1
=
+        movups  XMM= WORD[rcx],xmm0

+      = ;  pxor    xmm0,xmm0

= +$L$dec_key_ret:

+     &nb= sp;  add     rsp,8

+

+       &nb= sp;DB      0F3h,0C3h      = ;         ;repret

+

+$L$SEH_end_set_decrypt_key= :

+

+global  = ;aesni_set_encrypt_key

+

+ALIGN   16

+aesni_set_encry= pt_key:

+__aesni_set_encrypt_key:

+

+DB     = ; 0x48,0x83,0xEC,0x08

+
+        mov   &nb= sp; rax,-1

+     &nbs= p;  test    rcx,rcx

+=        jz      = ;NEAR $L$enc_key_ret

+     = ;   test    r8,r8

+        jz     &n= bsp;NEAR $L$enc_key_ret

+

+        mov    =  r10d,268437504

+     = ;   movups  xmm0,XMMWORD[rcx]

+        xorps   xmm4,x= mm4

+       &nbs= p;and     r10d,DWORD[((OPENSSL_ia32cap_P+4))]

+        lea  = ;   rax,[16+r8]

+   &= nbsp;    cmp     edx,256

+        je  =     NEAR $L$14rounds

+ &nb= sp;      cmp     edx,192<= br class=3D"">
+        je=      NEAR $L$12rounds

+        cmp     e= dx,128

+       &= nbsp;jne     NEAR $L$bad_keybits

+

+$L$10rounds:

+        mov    &n= bsp;edx,9

+      &nbs= p; cmp     r10d,268435456

+        je    &nb= sp; NEAR $L$10rounds_alt

+
=
+        movups  XMM= WORD[r8],xmm0

+DB     &nbs= p;102,15,58,223,200,1

+    &nbs= p;   call    $L$key_expansion_128_cold

+DB      102,15,58,223,200,= 2

+        = call    $L$key_expansion_128

+D= B      102,15,58,223,200,4

+        call    $= L$key_expansion_128

+DB    &nbs= p; 102,15,58,223,200,8

+   &nbs= p;    call    $L$key_expansion_128

+DB      102,15,58,223,200= ,16

+       &nbs= p;call    $L$key_expansion_128

= +DB      102,15,58,223,200,32

+        call    = ;$L$key_expansion_128

+DB    &n= bsp; 102,15,58,223,200,64

+   &= nbsp;    call    $L$key_expansion_128
+DB      102,15,58,223,= 200,128

+       =  call    $L$key_expansion_128

+DB      102,15,58,223,200,27

+        call  &nbs= p; $L$key_expansion_128

+DB   &= nbsp;  102,15,58,223,200,54

+  =       call    $L$key_expansion= _128

+       &nb= sp;movups  XMMWORD[rax],xmm0

+  &nbs= p;     mov     DWORD[80+rax],e= dx

+        = ;xor     eax,eax

+  &= nbsp;     jmp     NEAR $L$enc_= key_ret

+

+ALIGN =   16

+$L$10rounds_alt:

+        movdqa  xm= m5,XMMWORD[$L$key_rotate]

+    =     mov     r10d,8
+        movdqa  xmm4,= XMMWORD[$L$key_rcon1]

+    &nbs= p;   movdqa  xmm2,xmm0

+ &= nbsp;      movdqu  XMMWORD[r8],xmm0

+        jmp &n= bsp;   NEAR $L$oop_key128

+

+ALIGN   16

+$L$oop_key128:

+DB     =  102,15,56,0,197

+DB    &n= bsp; 102,15,56,221,196

+   &nbs= p;    pslld   xmm4,1

+        lea    &n= bsp;rax,[16+rax]

+

+        movdqa  xmm3,xmm2

+        pslldq &= nbsp;xmm2,4

+      &n= bsp; pxor    xmm3,xmm2

+ &= nbsp;      pslldq  xmm2,4
=
+        pxor   = ; xmm3,xmm2

+     &nb= sp;  pslldq  xmm2,4

+  &nb= sp;     pxor    xmm2,xmm3

+

+    &n= bsp;   pxor    xmm0,xmm2

+        movdqu  XMMWORD[(= -16)+rax],xmm0

+      = ;  movdqa  xmm2,xmm0

+

+        dec  = ;   r10d

+    &n= bsp;   jnz     NEAR $L$oop_key128

+

+    &= nbsp;   movdqa  xmm4,XMMWORD[$L$key_rcon1b]

+

+DB    &nbs= p; 102,15,56,0,197

+DB    =   102,15,56,221,196

+   &n= bsp;    pslld   xmm4,1

+

+       = ; movdqa  xmm3,xmm2

+   &n= bsp;    pslldq  xmm2,4

+        pxor    xmm3,x= mm2

+       &nbs= p;pslldq  xmm2,4

+    &nbs= p;   pxor    xmm3,xmm2

+        pslldq  xmm2,4

+        pxor &= nbsp;  xmm2,xmm3

+
+        pxor   &n= bsp;xmm0,xmm2

+      =   movdqu  XMMWORD[rax],xmm0

+
+        mov= dqa  xmm2,xmm0

+DB    &nbs= p; 102,15,56,0,197

+DB    =   102,15,56,221,196

+
=
+        movdqa  xmm= 3,xmm2

+       &= nbsp;pslldq  xmm2,4

+    &= nbsp;   pxor    xmm3,xmm2

+        pslldq  xmm2,4
+        pxo= r    xmm3,xmm2

+   &n= bsp;    pslldq  xmm2,4

+        pxor    xmm2,x= mm3

+

+  &nb= sp;     pxor    xmm0,xmm2

+        movdqu &n= bsp;XMMWORD[16+rax],xmm0

+

+        mov    = ; DWORD[96+rax],edx

+    &= nbsp;   xor     eax,eax
+        jmp   &n= bsp; NEAR $L$enc_key_ret

+
=
+ALIGN   16

+$L$12rou= nds:

+       &nb= sp;movq    xmm2,QWORD[16+rcx]

+=        mov     edx,= 11

+        = ;cmp     r10d,268435456

+ =        je      = NEAR $L$12rounds_alt

+

+        movups  XMMWORD[r8]= ,xmm0

+DB      102,15= ,58,223,202,1

+      =   call    $L$key_expansion_192a_cold

+DB      102,15,58,223,202,2

+        call &n= bsp;  $L$key_expansion_192b

+DB &nbs= p;    102,15,58,223,202,4

= +        call    $L$key_e= xpansion_192a

+DB     &nbs= p;102,15,58,223,202,8

+    &nbs= p;   call    $L$key_expansion_192b

+DB      102,15,58,223,202,1= 6

+        = call    $L$key_expansion_192a

+= DB      102,15,58,223,202,32

+        call    = $L$key_expansion_192b

+DB    &n= bsp; 102,15,58,223,202,64

+   &= nbsp;    call    $L$key_expansion_192a
+DB      102,15,58,223= ,202,128

+       = ; call    $L$key_expansion_192b

+        movups  XMMWORD[rax= ],xmm0

+       &= nbsp;mov     DWORD[48+rax],edx

+        xor    &n= bsp;rax,rax

+      &n= bsp; jmp     NEAR $L$enc_key_ret
+

+ALIGN   16

+$L$12rounds_alt:

+ &nbs= p;      movdqa  xmm5,XMMWORD[$L$key_rota= te192]

+       &= nbsp;movdqa  xmm4,XMMWORD[$L$key_rcon1]

+=        mov     r10d= ,8

+        = ;movdqu  XMMWORD[r8],xmm0

+   &= nbsp;    jmp     NEAR $L$oop_key192=

+

+ALIGN  &= nbsp;16

+$L$oop_key192:

+        movq    Q= WORD[rax],xmm2

+      = ;  movdqa  xmm1,xmm2

+DB  =     102,15,56,0,213

+DB &n= bsp;    102,15,56,221,212

= +        pslld   xmm4,1

+        lea &nbs= p;   rax,[24+rax]

+

+        movdqa  = xmm3,xmm0

+      &nbs= p; pslldq  xmm0,4

+   &nbs= p;    pxor    xmm3,xmm0
+        pslldq  xmm0,= 4

+        = pxor    xmm3,xmm0

+   = ;     pslldq  xmm0,4

+        pxor    x= mm0,xmm3

+

+ &nbs= p;      pshufd  xmm3,xmm0,0xff

+        pxor &nbs= p;  xmm3,xmm1

+    &n= bsp;   pslldq  xmm1,4

+ &n= bsp;      pxor    xmm3,xmm1
+

+   &nb= sp;    pxor    xmm0,xmm2
<= br class=3D"">+        pxor   =  xmm2,xmm3

+     &nbs= p;  movdqu  XMMWORD[(-16)+rax],xmm0

+

+       = ; dec     r10d

+ &nbs= p;      jnz     NEAR $L$o= op_key192

+

+ &nb= sp;      mov     DWORD[32= +rax],edx

+      &nbs= p; xor     eax,eax

+ =        jmp     NEAR = $L$enc_key_ret

+

= +ALIGN   16

+$L$14rounds:

+        movups &n= bsp;xmm2,XMMWORD[16+rcx]

+    &= nbsp;   mov     edx,13
+        lea   &nb= sp; rax,[16+rax]

+    &nbs= p;   cmp     r10d,268435456

+        je   = ;   NEAR $L$14rounds_alt

+

+        movups=  XMMWORD[r8],xmm0

+    &n= bsp;   movups  XMMWORD[16+r8],xmm2

+DB      102,15,58,223,202,1

+        call  &nb= sp; $L$key_expansion_256a_cold

+DB  =     102,15,58,223,200,1

+ =        call    $L$key_exp= ansion_256b

+DB      = 102,15,58,223,202,2

+     =    call    $L$key_expansion_256a

+DB      102,15,58,223,200,2

+        call &= nbsp;  $L$key_expansion_256b

+DB &nb= sp;    102,15,58,223,202,4

+        call    $L$key_= expansion_256a

+DB     &nb= sp;102,15,58,223,200,4

+    &nb= sp;   call    $L$key_expansion_256b

+DB      102,15,58,223,202,8=

+        c= all    $L$key_expansion_256a

+D= B      102,15,58,223,200,8

+        call    $= L$key_expansion_256b

+DB    &nb= sp; 102,15,58,223,202,16

+   &n= bsp;    call    $L$key_expansion_256a
+DB      102,15,58,223,= 200,16

+       &= nbsp;call    $L$key_expansion_256b

+DB      102,15,58,223,202,32

+        call  &nbs= p; $L$key_expansion_256a

+DB   =    102,15,58,223,200,32

+  = ;      call    $L$key_expansio= n_256b

+DB      102,1= 5,58,223,202,64

+     &nbs= p;  call    $L$key_expansion_256a
+        movups  XMMWO= RD[rax],xmm0

+      &= nbsp; mov     DWORD[16+rax],edx

+        xor   &nbs= p; rax,rax

+     &nbs= p;  jmp     NEAR $L$enc_key_ret

+

+ALIGN   16

+$L$14rounds_alt:

+ &nb= sp;      movdqa  xmm5,XMMWORD[$L$key_rot= ate]

+       &nb= sp;movdqa  xmm4,XMMWORD[$L$key_rcon1]

+ &= nbsp;      mov     r10d,7=

+        m= ovdqu  XMMWORD[r8],xmm0

+   &nb= sp;    movdqa  xmm1,xmm2

+        movdqu  XMMWORD[16+= r8],xmm2

+       = ; jmp     NEAR $L$oop_key256

+

+ALIGN   16
=
+$L$oop_key256:

+DB   = ;   102,15,56,0,213

+DB  &= nbsp;   102,15,56,221,212

+

+        movdq= a  xmm3,xmm0

+     &n= bsp;  pslldq  xmm0,4

+  &n= bsp;     pxor    xmm3,xmm0

+        pslldq &n= bsp;xmm0,4

+      &nb= sp; pxor    xmm3,xmm0

+ &n= bsp;      pslldq  xmm0,4
<= br class=3D"">+        pxor   =  xmm0,xmm3

+     &nbs= p;  pslld   xmm4,1

+

+        pxor &n= bsp;  xmm0,xmm2

+    =     movdqu  XMMWORD[rax],xmm0

+

+      &nb= sp; dec     r10d

+ &n= bsp;      jz      NE= AR $L$done_key256

+

+        pshufd  xmm2,xmm0,0xff<= br class=3D"">
+        px= or    xmm3,xmm3

+DB   = ;   102,15,56,221,211

+

+        movdqa &n= bsp;xmm3,xmm1

+      =   pslldq  xmm1,4

+   =      pxor    xmm3,xmm1

+        pslldq  x= mm1,4

+       &n= bsp;pxor    xmm3,xmm1

+  &= nbsp;     pslldq  xmm1,4

+        pxor    = ;xmm1,xmm3

+

+ &n= bsp;      pxor    xmm2,xmm1
+        movd= qu  XMMWORD[16+rax],xmm2

+   &n= bsp;    lea     rax,[32+rax]

+        movdqa &= nbsp;xmm1,xmm2

+

= +        jmp     NEA= R $L$oop_key256

+

+$L$done_key256:

+     &n= bsp;  mov     DWORD[16+rax],edx

+        xor   = ;  eax,eax

+     = ;   jmp     NEAR $L$enc_key_ret

+

+ALIGN   16<= br class=3D"">
+$L$bad_keybits:

= +        mov     rax= ,-2

+$L$enc_key_ret:

+        pxor    x= mm0,xmm0

+       = ; pxor    xmm1,xmm1

+ &nbs= p;      pxor    xmm2,xmm2

+        pxor &= nbsp;  xmm3,xmm3

+    = ;    pxor    xmm4,xmm4
+        pxor   &n= bsp;xmm5,xmm5

+      =   add     rsp,8

= +

+        = DB      0F3h,0C3h      &n= bsp;        ;repret
<= br class=3D"">+$L$SEH_end_set_encrypt_key:

+
+ALIGN   16

+$L$key_expansion_128:

+   &n= bsp;    movups  XMMWORD[rax],xmm0
+        lea   &n= bsp; rax,[16+rax]

+$L$key_expansion_128_c= old:

+       &nb= sp;shufps  xmm4,xmm0,16

+   &nb= sp;    xorps   xmm0,xmm4

+        shufps  xmm4,xmm0= ,140

+       &nb= sp;xorps   xmm0,xmm4

+   &= nbsp;    shufps  xmm1,xmm1,255

+        xorps   xmm= 0,xmm1

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+ALIGN   16<= br class=3D"">
+$L$key_expansion_192a:

+        movups  XMMWORD[rax= ],xmm0

+       &= nbsp;lea     rax,[16+rax]

= +$L$key_expansion_192a_cold:

+   &nb= sp;    movaps  xmm5,xmm2

+$L$key_expansion_192b_warm:

+  &n= bsp;     shufps  xmm4,xmm0,16
<= br class=3D"">+        movdqa  xmm3= ,xmm2

+       &n= bsp;xorps   xmm0,xmm4

+   =      shufps  xmm4,xmm0,140

+        pslldq  xmm3,4<= br class=3D"">
+        xo= rps   xmm0,xmm4

+    =     pshufd  xmm1,xmm1,85

+        pxor    x= mm2,xmm3

+       = ; pxor    xmm0,xmm1

+ &nbs= p;      pshufd  xmm3,xmm0,255

+        pxor &nbs= p;  xmm2,xmm3

+    &n= bsp;   DB      0F3h,0C3h  &nbs= p;            ;= repret

+

+ALIGN &= nbsp; 16

+$L$key_expansion_192b:

+        movaps &n= bsp;xmm3,xmm0

+      =   shufps  xmm5,xmm0,68

+  =       movups  XMMWORD[rax],xmm5

+        shufps &n= bsp;xmm3,xmm2,78

+     &nb= sp;  movups  XMMWORD[16+rax],xmm3

+        lea     = rax,[32+rax]

+      &= nbsp; jmp     NEAR $L$key_expansion_192b_warm

+

+ALIGN   = 16

+$L$key_expansion_256a:

+        movups  XMMWORD[= rax],xmm2

+      &nbs= p; lea     rax,[16+rax]

+$L$key_expansion_256a_cold:

+   =      shufps  xmm4,xmm0,16

+        xorps   xmm= 0,xmm4

+       &= nbsp;shufps  xmm4,xmm0,140

+   =      xorps   xmm0,xmm4
+        shufps  xmm1,x= mm1,255

+       =  xorps   xmm0,xmm1

+  &nbs= p;     DB      0F3h,0C3h =             &nb= sp; ;repret

+

+ALIGN   16

+$L$key_expansion_256b= :

+        = movups  XMMWORD[rax],xmm0

+   &= nbsp;    lea     rax,[16+rax]

+

+    =     shufps  xmm4,xmm2,16

+        xorps   xmm2,x= mm4

+       &nbs= p;shufps  xmm4,xmm2,140

+   &nb= sp;    xorps   xmm2,xmm4

+        shufps  xmm1,xmm1= ,170

+       &nb= sp;xorps   xmm2,xmm1

+   &= nbsp;    DB      0F3h,0C3h &nb= sp;            =  ;repret

+

+=

+

+ALIGN  &= nbsp;64

+$L$bswap_mask:

+DB      15,14,13,12,11,10,9,8,7,6,5,4,3,2,= 1,0

+$L$increment32:

+        DD    &nb= sp; 6,6,6,0

+$L$increment64:

+        DD   = ;   1,0,0,0

+$L$xts_magic:

+        DD &nb= sp;    0x87,0,1,0

+$L$incr= ement1:

+DB      0,0,= 0,0,0,0,0,0,0,0,0,0,0,0,0,1

+$L$key_rotate:
+        DD &= nbsp;    0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d
+$L$key_rotate192:

= +        DD     &nbs= p;0x04070605,0x04070605,0x04070605,0x04070605

= +$L$key_rcon1:

+      = ;  DD      1,1,1,1

+$L$key_rcon1b:

+    &n= bsp;   DD      0x1b,0x1b,0x1b,0x1b<= br class=3D"">
+

+DB   = ;   65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69
+DB      83,45,78,73,4= 4,32,67,82,89,80,84,79,71,65,77,83

+DB  &= nbsp;   32,98,121,32,60,97,112,112,114,111,64,111,112,101,11= 0,115

+DB      115,10= 8,46,111,114,103,62,0

+ALIGN   64
+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16

+ecb_ccm64_se_handler:

+        push    rsi
+        push=    rdi

+    &nb= sp;   push    rbx

+        push    rbp
+        push=    r12

+    &nb= sp;   push    r13

+        push    r14
+        push=    r15

+    &nb= sp;   pushfq

+   &nbs= p;    sub     rsp,64
=
+

+     &nb= sp;  mov     rax,QWORD[120+r8]
=
+        mov   =   rbx,QWORD[248+r8]

+
=
+        mov   =   rsi,QWORD[8+r9]

+   &nbs= p;    mov     r11,QWORD[56+r9]

+

+    = ;    mov     r10d,DWORD[r11]

+        lea &nbs= p;   r10,[r10*1+rsi]

+  &n= bsp;     cmp     rbx,r10

+        jb &nbs= p;    NEAR $L$common_seh_tail

+

+       = ; mov     rax,QWORD[152+r8]

+

+       = ; mov     r10d,DWORD[4+r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jae    &= nbsp;NEAR $L$common_seh_tail

+
<= br class=3D"">+        lea   &= nbsp; rsi,[rax]

+     = ;   lea     rdi,[512+r8]
<= br class=3D"">+        mov   &= nbsp; ecx,8

+     &nb= sp;  DD      0xa548f3fc
+        lea   &n= bsp; rax,[88+rax]

+

+        jmp    &= nbsp;NEAR $L$common_seh_tail

+
<= br class=3D"">+

+

+ALIGN   16

+ctr_xts_se_handler:
+        push=    rsi

+    &nb= sp;   push    rdi

+        push    rbx
+        push=    rbp

+    &nb= sp;   push    r12

+        push    r13
+        push=    r14

+    &nb= sp;   push    r15

+        pushfq

+        sub    &n= bsp;rsp,64

+

+ &n= bsp;      mov     rax,QWO= RD[120+r8]

+      &nb= sp; mov     rbx,QWORD[248+r8]

+

+      &nb= sp; mov     rsi,QWORD[8+r9]

+        mov    &n= bsp;r11,QWORD[56+r9]

+

+        mov    &n= bsp;r10d,DWORD[r11]

+     =    lea     r10,[r10*1+rsi]

+        cmp   = ;  rbx,r10

+     = ;   jb      NEAR $L$common_seh_tail=

+

+   =      mov     rax,QWORD[152+r8]=

+

+   =      mov     r10d,DWORD[4+r11]=

+        l= ea     r10,[r10*1+rsi]

+ &= nbsp;      cmp     rbx,r1= 0

+        = jae     NEAR $L$common_seh_tail

+

+       = ; mov     rax,QWORD[208+r8]

+

+       = ; lea     rsi,[((-168))+rax]

+        lea    &= nbsp;rdi,[512+r8]

+     &n= bsp;  mov     ecx,20

+        DD    &nb= sp; 0xa548f3fc

+

+        mov    &n= bsp;rbp,QWORD[((-8))+rax]

+    =     mov     QWORD[160+r8],rbp

+        jmp &nb= sp;   NEAR $L$common_seh_tail

+=

+

+

+ALIGN   16

+ocb_se= _handler:

+      &nbs= p; push    rsi

+  &nb= sp;     push    rdi
<= br class=3D"">+        push   =  rbx

+      &nbs= p; push    rbp

+  &nb= sp;     push    r12
<= br class=3D"">+        push   =  r13

+      &nbs= p; push    r14

+  &nb= sp;     push    r15
<= br class=3D"">+        pushfq

+        sub  = ;   rsp,64

+

+        mov   &nbs= p; rax,QWORD[120+r8]

+    =     mov     rbx,QWORD[248+r8]

+

+    =     mov     rsi,QWORD[8+r9]

+        mov  = ;   r11,QWORD[56+r9]

+

+        mov  = ;   r10d,DWORD[r11]

+  &nb= sp;     lea     r10,[r10*1+rsi= ]

+        = cmp     rbx,r10

+  &n= bsp;     jb      NEAR $L$= common_seh_tail

+

+        mov     r1= 0d,DWORD[4+r11]

+     &nbs= p;  lea     r10,[r10*1+rsi]
+        cmp   &nb= sp; rbx,r10

+     &nb= sp;  jae     NEAR $L$common_seh_tail

+

+    &n= bsp;   mov     r10d,DWORD[8+r11]

+        lea  = ;   r10,[r10*1+rsi]

+  &nb= sp;     cmp     rbx,r10

+        jae &nbs= p;   NEAR $L$ocb_no_xmm

+

+        mov &nb= sp;   rax,QWORD[152+r8]

+

+        lea &nb= sp;   rsi,[rax]

+   &= nbsp;    lea     rdi,[512+r8]

+        mov &nb= sp;   ecx,20

+   &nbs= p;    DD      0xa548f3fc

+        lea &nb= sp;   rax,[((160+40))+rax]

+
+$L$ocb_no_xmm:

+ &= nbsp;      mov     rbx,QW= ORD[((-8))+rax]

+     &nbs= p;  mov     rbp,QWORD[((-16))+rax]

+        mov  = ;   r12,QWORD[((-24))+rax]

+ &n= bsp;      mov     r13,QWO= RD[((-32))+rax]

+     &nbs= p;  mov     r14,QWORD[((-40))+rax]

+

+    &n= bsp;   mov     QWORD[144+r8],rbx

+        mov  = ;   QWORD[160+r8],rbp

+  &= nbsp;     mov     QWORD[216+r8= ],r12

+       &n= bsp;mov     QWORD[224+r8],r13

+        mov    &n= bsp;QWORD[232+r8],r14

+

+        jmp    &n= bsp;NEAR $L$common_seh_tail

+
+

+ALIGN   16

+cbc_se_handler:

+  = ;      push    rsi

+        push  &n= bsp; rdi

+      =   push    rbx

+  = ;      push    rbp

+        push  &n= bsp; r12

+      =   push    r13

+  = ;      push    r14

+        push  &n= bsp; r15

+      =   pushfq

+     &= nbsp;  sub     rsp,64

+

+       = ; mov     rax,QWORD[152+r8]

+        mov    &n= bsp;rbx,QWORD[248+r8]

+

+        lea    &n= bsp;r10,[$L$cbc_decrypt_bulk]

+   &n= bsp;    cmp     rbx,r10

+        jb  &nbs= p;   NEAR $L$common_seh_tail

+<= br class=3D"">
+        mo= v     rax,QWORD[120+r8]

+<= br class=3D"">
+        le= a     r10,[$L$cbc_decrypt_body]

+        cmp    &n= bsp;rbx,r10

+      &n= bsp; jb      NEAR $L$common_seh_tail

+

+    &n= bsp;   mov     rax,QWORD[152+r8]

+

+    &n= bsp;   lea     r10,[$L$cbc_ret]

+        cmp  = ;   rbx,r10

+    = ;    jae     NEAR $L$common_seh_tai= l

+

+   = ;     lea     rsi,[16+rax]

+        lea &= nbsp;   rdi,[512+r8]

+  &n= bsp;     mov     ecx,20

+        DD  = ;    0xa548f3fc

+

+        mov  = ;   rax,QWORD[208+r8]

+

+        mov  = ;   rbp,QWORD[((-8))+rax]

+ &nb= sp;      mov     QWORD[16= 0+r8],rbp

+

+$L$c= ommon_seh_tail:

+     &nbs= p;  mov     rdi,QWORD[8+rax]
+        mov   &n= bsp; rsi,QWORD[16+rax]

+   &nbs= p;    mov     QWORD[152+r8],rax

+        mov &= nbsp;   QWORD[168+r8],rsi

+ &nb= sp;      mov     QWORD[17= 6+r8],rdi

+

+ &nb= sp;      mov     rdi,QWOR= D[40+r9]

+       = ; mov     rsi,r8

+ &n= bsp;      mov     ecx,154=

+        D= D      0xa548f3fc

+
+        mov=     rsi,r9

+   =      xor     rcx,rcx

+        mov  = ;   rdx,QWORD[8+rsi]

+  &n= bsp;     mov     r8,QWORD[rsi]=

+        m= ov     r9,QWORD[16+rsi]

+ =        mov     r10,Q= WORD[40+rsi]

+      &= nbsp; lea     r11,[56+rsi]

+        lea    &n= bsp;r12,[24+rsi]

+     &nb= sp;  mov     QWORD[32+rsp],r10
=
+        mov   =   QWORD[40+rsp],r11

+   &n= bsp;    mov     QWORD[48+rsp],r12
+        mov=     QWORD[56+rsp],rcx

+ &= nbsp;      call    QWORD[__imp= _RtlVirtualUnwind]

+

+        mov    &n= bsp;eax,1

+      &nbs= p; add     rsp,64

+ &= nbsp;      popfq

+        pop     r1= 5

+        = pop     r14

+   =      pop     r13

+        pop   = ;  r12

+     &nb= sp;  pop     rbp

+        pop     rb= x

+        = pop     rdi

+   =      pop     rsi

+        DB   =    0F3h,0C3h         = ;      ;repret

+=

+

+section .pdat= a rdata align=3D4

+ALIGN   4

+        DD  =     $L$SEH_begin_aesni_ecb_encrypt wrt ..imagebase

+        DD &nb= sp;    $L$SEH_end_aesni_ecb_encrypt wrt ..imagebase

+        DD &n= bsp;    $L$SEH_info_ecb wrt ..imagebase
<= br class=3D"">+

+     &nbs= p;  DD      $L$SEH_begin_aesni_ccm64_enc= rypt_blocks wrt
..imag= ebase

+=        DD      = ;$L$SEH_end_aesni_ccm64_encrypt_blocks wrt ..imagebase

+        DD    &= nbsp; $L$SEH_info_ccm64_enc wrt ..imagebase

+

+       &nb= sp;DD      $L$SEH_begin_aesni_ccm64_decrypt_blocks= wrt
..imagebase

+   &= nbsp;    DD      $L$SEH_end_ae= sni_ccm64_decrypt_blocks wrt ..imagebase

+ &nb= sp;      DD      $L$= SEH_info_ccm64_dec wrt ..imagebase

+

+        DD  =     $L$SEH_begin_aesni_ctr32_encrypt_blocks wrt
..imagebase

+     &= nbsp;  DD      $L$SEH_end_aesni_ctr32_en= crypt_blocks wrt ..imagebase

+   &nb= sp;    DD      $L$SEH_info_ctr= 32 wrt ..imagebase

+

+        DD    &nb= sp; $L$SEH_begin_aesni_xts_encrypt wrt ..imagebase

+        DD    =   $L$SEH_end_aesni_xts_encrypt wrt ..imagebase

+        DD    = ;  $L$SEH_info_xts_enc wrt ..imagebase

+

+       &nb= sp;DD      $L$SEH_begin_aesni_xts_decrypt wrt ..im= agebase

+       =  DD      $L$SEH_end_aesni_xts_decrypt wrt ..i= magebase

+       = ; DD      $L$SEH_info_xts_dec wrt ..imagebase=

+

+   =      DD      $L$SEH_begin= _aesni_ocb_encrypt wrt ..imagebase

+  &nb= sp;     DD      $L$SEH_en= d_aesni_ocb_encrypt wrt ..imagebase

+  &n= bsp;     DD      $L$SEH_i= nfo_ocb_enc wrt ..imagebase

+
+        DD   &nb= sp;  $L$SEH_begin_aesni_ocb_decrypt wrt ..imagebase

+        DD   =    $L$SEH_end_aesni_ocb_decrypt wrt ..imagebase

+        DD   = ;   $L$SEH_info_ocb_dec wrt ..imagebase

+        DD    &= nbsp; $L$SEH_begin_aesni_cbc_encrypt wrt ..imagebase
+        DD   &nbs= p;  $L$SEH_end_aesni_cbc_encrypt wrt ..imagebase
+        DD   &nb= sp;  $L$SEH_info_cbc wrt ..imagebase

+

+        = ;DD      aesni_set_decrypt_key wrt ..imagebase

+        DD &n= bsp;    $L$SEH_end_set_decrypt_key wrt ..imagebase

+        DD &nb= sp;    $L$SEH_info_key wrt ..imagebase
+

+      = ;  DD      aesni_set_encrypt_key wrt ..i= magebase

+       = ; DD      $L$SEH_end_set_encrypt_key wrt ..im= agebase

+       =  DD      $L$SEH_info_key wrt ..imagebase

+section .xdata rdata align=3D8

+ALIGN   8

+$L$SEH_info_e= cb:

+DB      9,0,0,0<= br class=3D"">
+        DD=      ecb_ccm64_se_handler wrt ..imagebase

+        DD  =     $L$ecb_enc_body wrt ..imagebase,$L$ecb_enc_ret
wrt ..imagebase

+$L$SEH_info_ccm64_enc:

+DB   = ;   9,0,0,0

+    = ;    DD      ecb_ccm64_se_hand= ler wrt ..imagebase

+     =    DD      $L$ccm64_enc_body wrt ..= imagebase,$L$ccm64_enc_ret
wrt ..imagebase

+$L$SEH_info_ccm64_dec:

+DB  &= nbsp;   9,0,0,0

+   &= nbsp;    DD      ecb_ccm64_se_= handler wrt ..imagebase

+    &n= bsp;   DD      $L$ccm64_dec_body wr= t ..imagebase,$L$ccm64_dec_ret
wrt ..imagebase
=
+$L$SEH_info_ctr32:

+DB  &= nbsp;   9,0,0,0

+   &= nbsp;    DD      ctr_xts_se_ha= ndler wrt ..imagebase

+    &nbs= p;   DD      $L$ctr32_body wrt ..im= agebase,$L$ctr32_epilogue
wrt ..ima= gebase

+$L$SEH_info_xts_enc:
+DB      9,0,0,0

+        DD    &= nbsp; ctr_xts_se_handler wrt ..imagebase

= +        DD     &nbs= p;$L$xts_enc_body wrt ..imagebase,$L$xts_enc_epilogue
wrt ..i= magebase

+$L$SEH_info_xts_dec:
<= br class=3D"">+DB      9,0,0,0

+        DD    =   ctr_xts_se_handler wrt ..imagebase

+        DD     &nb= sp;$L$xts_dec_body wrt ..imagebase,$L$xts_dec_epilogue
wrt ..= imagebase

+$L$SEH_info_ocb_enc:
=
+DB      9,0,0,0

+        DD    = ;  ocb_se_handler wrt ..imagebase

+ =        DD      = $L$ocb_enc_body wrt ..imagebase,$L$ocb_enc_epilogue
wrt ..ima= gebase

+       &= nbsp;DD      $L$ocb_enc_pop wrt ..imagebase

+        DD  = ;    0

+$L$SEH_info_ocb_de= c:

+DB      9,0,0,0
+        DD =      ocb_se_handler wrt ..imagebase
=
+        DD   &= nbsp;  $L$ocb_dec_body wrt ..imagebase,$L$ocb_dec_epilogue
wrt ..imagebase

+    &n= bsp;   DD      $L$ocb_dec_pop wrt .= .imagebase

+      &nb= sp; DD      0

+$= L$SEH_info_cbc:

+DB     &n= bsp;9,0,0,0

+      &n= bsp; DD      cbc_se_handler wrt ..imagebase
+$L$SEH_info_key:

= +DB      0x01,0x04,0x01,0x00

+DB      0x04,0x02,0x00,0x00

diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/vp= aes-
x86_64.nasm
b/Cry= ptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes-x86_64.nasm
ne= w file mode 100644
index 0000000000..1c911fa294
--- /dev/null
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/= aes/vpaes-x86_64.nasm
@@ -0,0 +1,1173 @@
+; WAR= NING: do not edit!

+; Generated from openssl/c= rypto/aes/asm/vpaes-x86_64.pl

+;

+; Copyright 2011-2020 The OpenSSL Project Authors. All Rig= hts
Reserved.

+;

+; Licensed under the OpenSSL license (the "License"). &nbs= p;You may not use

+; this file except in compl= iance with the License.  You can obtain a
<= /blockquote>
copy

+; in the file LICENSE in the source distribution or = at

+; https://www.openssl.org/source/license.html<= br class=3D"">
+

+default rel
+%define XMMWORD

+%= define YMMWORD

+%define ZMMWORD
=
+section .text code align=3D64

= +

+

+

+

+

+

+

+

+

+
+

+

+=

+

+

+

+

+

+ALIGN   16
<= br class=3D"">+_vpaes_encrypt_core:

+

+        mov  = ;   r9,rdx

+    =     mov     r11,16
+        mov   &n= bsp; eax,DWORD[240+rdx]

+   &nb= sp;    movdqa  xmm1,xmm9

+        movdqa  xmm2,XMMWOR= D[$L$k_ipt]

+      &n= bsp; pandn   xmm1,xmm0

+  =       movdqu  xmm5,XMMWORD[r9]

+        psrld &nb= sp; xmm1,4

+     &nbs= p;  pand    xmm0,xmm9

+DB      102,15,56,0,208

+        movdqa  xmm0,XMMWOR= D[(($L$k_ipt+16))]

+DB     = ; 102,15,56,0,193

+    &nb= sp;   pxor    xmm2,xmm5

+        add    &= nbsp;r9,16

+      &nb= sp; pxor    xmm0,xmm2

+ &n= bsp;      lea     r10,[$L= $k_mc_backward]

+     &nbs= p;  jmp     NEAR $L$enc_entry
<= br class=3D"">+

+ALIGN   16

+$L$enc_loop:

+

+        movdqa &n= bsp;xmm4,xmm13

+      = ;  movdqa  xmm0,xmm12

+DB  = ;    102,15,56,0,226

+DB &= nbsp;    102,15,56,0,195

+=        pxor    xmm4,xmm5=

+        m= ovdqa  xmm5,xmm15

+    &nb= sp;   pxor    xmm0,xmm4

+        movdqa  xmm1,XMMWO= RD[((-64))+r10*1+r11]

+DB    &n= bsp; 102,15,56,0,234

+    =     movdqa  xmm4,XMMWORD[r10*1+r11]
=
+        movdqa  xmm= 2,xmm14

+DB      102,= 15,56,0,211

+      &n= bsp; movdqa  xmm3,xmm0

+   = ;     pxor    xmm2,xmm5

+DB      102,15,56,0,193

+        add  = ;   r9,16

+    &= nbsp;   pxor    xmm0,xmm2

+DB      102,15,56,0,220
<= br class=3D"">+        add   &= nbsp; r11,16

+     &n= bsp;  pxor    xmm3,xmm0

+DB      102,15,56,0,193

+        and    &n= bsp;r11,0x30

+      &= nbsp; sub     rax,1

+=        pxor    xmm0,xmm3=

+

+$L$enc_entry:=

+

+   =      movdqa  xmm1,xmm9

+        movdqa  xmm5,xmm11<= br class=3D"">
+        pa= ndn   xmm1,xmm0

+    =     psrld   xmm1,4

+        pand    xmm0,= xmm9

+DB      102,15,= 56,0,232

+       = ; movdqa  xmm3,xmm10

+   &= nbsp;    pxor    xmm0,xmm1

+DB      102,15,56,0,217

+        movdqa &n= bsp;xmm4,xmm10

+      = ;  pxor    xmm3,xmm5

= +DB      102,15,56,0,224

+        movdqa  xmm2,xmm10<= br class=3D"">
+        px= or    xmm4,xmm5

+DB   = ;   102,15,56,0,211

+  &nb= sp;     movdqa  xmm3,xmm10

+        pxor   &nb= sp;xmm2,xmm0

+DB      = ;102,15,56,0,220

+     &nb= sp;  movdqu  xmm5,XMMWORD[r9]

+=        pxor    xmm3,xmm1=

+        j= nz     NEAR $L$enc_loop

+<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm4,XMMWORD[((-96))+r10]

+        movdqa &n= bsp;xmm0,XMMWORD[((-80))+r10]

+DB   =    102,15,56,0,226

+  &nbs= p;     pxor    xmm4,xmm5

+DB      102,15,56,0,195

+        movdq= a  xmm1,XMMWORD[64+r10*1+r11]

+  &nb= sp;     pxor    xmm0,xmm4

+DB      102,15,56,0,193

+        DB &n= bsp;    0F3h,0C3h       &= nbsp;       ;repret

+

+

+
+

+
<= br class=3D"">+

+

+

+

+ALIGN  = ; 16

+_vpaes_decrypt_core:
=
+

+     &nb= sp;  mov     r9,rdx

+        mov    &n= bsp;eax,DWORD[240+rdx]

+    &nb= sp;   movdqa  xmm1,xmm9

+ =        movdqa  xmm2,XMMWORD[$L$k_di= pt]

+       &nbs= p;pandn   xmm1,xmm0

+   &n= bsp;    mov     r11,rax

+        psrld  &= nbsp;xmm1,4

+      &n= bsp; movdqu  xmm5,XMMWORD[r9]

+ &nbs= p;      shl     r11,4

+        pand =    xmm0,xmm9

+DB   &n= bsp;  102,15,56,0,208

+   =      movdqa  xmm0,XMMWORD[(($L$k_dipt+16))]
+        xor=     r11,0x30

+  &nbs= p;     lea     r10,[$L$k_dsbd]=

+DB      102,15,56,0= ,193

+       &nb= sp;and     r11,0x30

+ &nbs= p;      pxor    xmm2,xmm5

+        movdqa=  xmm5,XMMWORD[(($L$k_mc_forward+48))]

+ =        pxor    xmm0,xmm2<= br class=3D"">
+        ad= d     r9,16

+   =      add     r11,r10

+        jmp  = ;   NEAR $L$dec_entry

+

+ALIGN   16

+$= L$dec_loop:

+

+
+

+   &n= bsp;    movdqa  xmm4,XMMWORD[((-32))+r10]

+        movdqa &n= bsp;xmm1,XMMWORD[((-16))+r10]

+DB   =    102,15,56,0,226

+DB  &n= bsp;   102,15,56,0,203

+  =       pxor    xmm0,xmm4

+        movdqa &= nbsp;xmm4,XMMWORD[r10]

+    &nb= sp;   pxor    xmm0,xmm1

+        movdqa  xmm1,XMMWO= RD[16+r10]

+

+DB =      102,15,56,0,226

= +DB      102,15,56,0,197

+DB      102,15,56,0,203

+        pxor   &nb= sp;xmm0,xmm4

+      &= nbsp; movdqa  xmm4,XMMWORD[32+r10]

+=        pxor    xmm0,xmm1=

+        m= ovdqa  xmm1,XMMWORD[48+r10]

+

+DB      102,15,56,0,226

+DB      102,15,56,0,197

+DB      102,15,56,0,203=

+        p= xor    xmm0,xmm4

+   =      movdqa  xmm4,XMMWORD[64+r10]

+        pxor  &n= bsp; xmm0,xmm1

+     =    movdqa  xmm1,XMMWORD[80+r10]

+

+DB      102= ,15,56,0,226

+DB      = ;102,15,56,0,197

+DB     &= nbsp;102,15,56,0,203

+     = ;   pxor    xmm0,xmm4

+        add    &n= bsp;r9,16

+DB      10= 2,15,58,15,237,12

+     &n= bsp;  pxor    xmm0,xmm1

+        sub     = rax,1

+

+$L$dec_e= ntry:

+

+  &= nbsp;     movdqa  xmm1,xmm9
+        pandn   x= mm1,xmm0

+       = ; movdqa  xmm2,xmm11

+   &= nbsp;    psrld   xmm1,4

+        pand    = xmm0,xmm9

+DB      10= 2,15,56,0,208

+      =   movdqa  xmm3,xmm10

+  &n= bsp;     pxor    xmm0,xmm1

+DB      102,15,56,0,217

+        movdq= a  xmm4,xmm10

+     &= nbsp;  pxor    xmm3,xmm2

+DB      102,15,56,0,224

+        pxor   &nb= sp;xmm4,xmm2

+      &= nbsp; movdqa  xmm2,xmm10

+DB  &= nbsp;   102,15,56,0,211

+  = ;      movdqa  xmm3,xmm10
=
+        pxor   = ; xmm2,xmm0

+DB     &= nbsp;102,15,56,0,220

+     = ;   movdqu  xmm0,XMMWORD[r9]

+        pxor    xmm3,= xmm1

+       &nb= sp;jnz     NEAR $L$dec_loop

+

+

+  &nb= sp;     movdqa  xmm4,XMMWORD[96+r10]

+DB      102,15,56,0,226

+        pxor =    xmm4,xmm0

+   &nbs= p;    movdqa  xmm0,XMMWORD[112+r10]
=
+        movdqa  xmm= 2,XMMWORD[((-352))+r11]

+DB    =   102,15,56,0,195

+   &nbs= p;    pxor    xmm0,xmm4
+DB      102,15,56,0,194

+        DB   = ;   0F3h,0C3h        &nbs= p;      ;repret

= +

+

+

+

+

+

+

+

+

+ALIGN   = 16

+_vpaes_schedule_core:

+

+

+
+

+
<= br class=3D"">+

+     &nbs= p;  call    _vpaes_preheat

+        movdqa  xmm8,XMMWOR= D[$L$k_rcon]

+      &= nbsp; movdqu  xmm0,XMMWORD[rdi]

+
+

+   &nb= sp;    movdqa  xmm3,xmm0

+        lea    &n= bsp;r11,[$L$k_ipt]

+     &= nbsp;  call    _vpaes_schedule_transform

+        movdqa &n= bsp;xmm7,xmm0

+

+=        lea     r10,= [$L$k_sr]

+      &nbs= p; test    rcx,rcx

+  = ;      jnz     NEAR $L$sc= hedule_am_decrypting

+

+

+       = ; movdqu  XMMWORD[rdx],xmm0

+  =       jmp     NEAR $L$sch= edule_go

+

+$L$sc= hedule_am_decrypting:

+

+        movdqa  xmm1,XMMWOR= D[r10*1+r8]

+DB      = 102,15,56,0,217

+     &nbs= p;  movdqu  XMMWORD[rdx],xmm3

+=        xor     r8,0= x30

+

+$L$schedul= e_go:

+       &n= bsp;cmp     esi,192

+ &nbs= p;      ja      NEAR= $L$schedule_256

+     &nb= sp;  je      NEAR $L$schedule_192

+

+

+

+

+
+

+
=
+

+

+

+$L$schedule_128:

+        mov    &n= bsp;esi,10

+

+$L$= oop_schedule_128:

+     &n= bsp;  call    _vpaes_schedule_round
=
+        dec   =   rsi

+     &nbs= p;  jz      NEAR $L$schedule_mangle_last=

+        c= all    _vpaes_schedule_mangle

+=        jmp     NEAR= $L$oop_schedule_128

+

+

+

+

+

+
+

+

+=

+

+

+

+

+

+

+

+ALIGN   16

+$L$schedule_192:

+     &= nbsp;  movdqu  xmm0,XMMWORD[8+rdi]

+        call    _= vpaes_schedule_transform

+    &= nbsp;   movdqa  xmm6,xmm0

= +        pxor    xmm4,xmm= 4

+        = movhlps xmm6,xmm4

+     &n= bsp;  mov     esi,4

+

+$L$oop_schedule_192:
<= br class=3D"">+        call   =  _vpaes_schedule_round

+DB   &n= bsp;  102,15,58,15,198,8

+  &nb= sp;     call    _vpaes_schedule_man= gle

+       &nbs= p;call    _vpaes_schedule_192_smear

+        call    _= vpaes_schedule_mangle

+    &nbs= p;   call    _vpaes_schedule_round

+        dec  = ;   rsi

+    &nb= sp;   jz      NEAR $L$schedule_mang= le_last

+       =  call    _vpaes_schedule_mangle

+        call    _= vpaes_schedule_192_smear

+    &= nbsp;   jmp     NEAR $L$oop_schedule_192=

+

+

+

+

+

+

+

+

+
+

+

+= ALIGN   16

+$L$schedule_256:

+        movdqu &n= bsp;xmm0,XMMWORD[16+rdi]

+    &= nbsp;   call    _vpaes_schedule_transform

+        mov &= nbsp;   esi,7

+
<= br class=3D"">+$L$oop_schedule_256:

+  &n= bsp;     call    _vpaes_schedule_ma= ngle

+       &nb= sp;movdqa  xmm6,xmm0

+

+

+      &= nbsp; call    _vpaes_schedule_round

+        dec    = ; rsi

+      &nb= sp; jz      NEAR $L$schedule_mangle_last

+        call &= nbsp;  _vpaes_schedule_mangle

+

+

+    = ;    pshufd  xmm0,xmm0,0xFF

+        movdqa  xmm5,xmm7
+        mov= dqa  xmm7,xmm6

+     =    call    _vpaes_schedule_low_round

+        movdqa &n= bsp;xmm7,xmm5

+

+=        jmp     NEAR= $L$oop_schedule_256

+

+

+

+

+

+
+

+

+=

+

+

+

+ALIGN   16

+$L$schedule_mangle_last:

+

+       = ; lea     r11,[$L$k_deskew]

+        test    r= cx,rcx

+       &= nbsp;jnz     NEAR $L$schedule_mangle_last_dec

+

+

+        movdqa  xmm1,XMMW= ORD[r10*1+r8]

+DB     &nbs= p;102,15,56,0,193

+     &n= bsp;  lea     r11,[$L$k_opt]
+        add   &n= bsp; rdx,32

+

+$L$schedule_mangle_last_dec:

+   =      add     rdx,-16

+        pxor &nbs= p;  xmm0,XMMWORD[$L$k_s63]

+  &= nbsp;     call    _vpaes_schedule_t= ransform

+       = ; movdqu  XMMWORD[rdx],xmm0

+

+

+    &= nbsp;   pxor    xmm0,xmm0

+        pxor   &nbs= p;xmm1,xmm1

+      &n= bsp; pxor    xmm2,xmm2

+ &= nbsp;      pxor    xmm3,xmm3
+        pxo= r    xmm4,xmm4

+   &n= bsp;    pxor    xmm5,xmm5
=
+        pxor   = ; xmm6,xmm6

+     &nb= sp;  pxor    xmm7,xmm7

+        DB     &n= bsp;0F3h,0C3h           &= nbsp;   ;repret

+

+

+

+

+

+

+

+

+

+

+
+

+
<= br class=3D"">+

+

+

+

+

+ALIGN   16

+_= vpaes_schedule_192_smear:

+

+        pshufd  xmm1,xm= m6,0x80

+       =  pshufd  xmm0,xmm7,0xFE

+  &nbs= p;     pxor    xmm6,xmm1

+        pxor &nbs= p;  xmm1,xmm1

+    &n= bsp;   pxor    xmm6,xmm0

+        movdqa  xmm0,xmm6=

+        m= ovhlps xmm6,xmm1

+     &nb= sp;  DB      0F3h,0C3h    = ;           ;repret<= br class=3D"">
+

+

+

+

+

+

+

+

+

+

+

+
+

+
<= br class=3D"">+

+

+

+

+

+

+

+

+ALIGN   16

+_vpaes_schedule_round:

+

+

+    = ;    pxor    xmm1,xmm1
+DB      102,65,15,58,15,200,15

+DB      102,69,15,58,15,19= 2,15

+       &nb= sp;pxor    xmm7,xmm1

+

+

+    &n= bsp;   pshufd  xmm0,xmm0,0xFF

+DB      102,15,58,15,192,1
<= br class=3D"">+

+

+

+

+_vpaes_sche= dule_low_round:

+

+        movdqa  xmm1,xmm7

+        pslldq &n= bsp;xmm7,4

+      &nb= sp; pxor    xmm7,xmm1

+ &n= bsp;      movdqa  xmm1,xmm7

+        pslldq  x= mm7,8

+       &n= bsp;pxor    xmm7,xmm1

+  &= nbsp;     pxor    xmm7,XMMWORD[$L$k= _s63]

+

+

+        movdqa &n= bsp;xmm1,xmm9

+      =   pandn   xmm1,xmm0

+ &nbs= p;      psrld   xmm1,4

+        pand  &nb= sp; xmm0,xmm9

+     &= nbsp;  movdqa  xmm2,xmm11

+DB &= nbsp;    102,15,56,0,208

+=        pxor    xmm0,xmm1=

+        m= ovdqa  xmm3,xmm10

+DB    &= nbsp; 102,15,56,0,217

+    = ;    pxor    xmm3,xmm2
+        movdqa  xmm4,x= mm10

+DB      102,15,= 56,0,224

+       = ; pxor    xmm4,xmm2

+ &nbs= p;      movdqa  xmm2,xmm10

+DB      102,15,56,0,211

+        pxor &nbs= p;  xmm2,xmm0

+    &n= bsp;   movdqa  xmm3,xmm10

= +DB      102,15,56,0,220

+        pxor    x= mm3,xmm1

+       = ; movdqa  xmm4,xmm13

+DB   = ;   102,15,56,0,226

+  &nb= sp;     movdqa  xmm0,xmm12

+DB      102,15,56,0,195
=
+        pxor   = ; xmm0,xmm4

+

+

+       &nbs= p;pxor    xmm0,xmm7

+  &nb= sp;     movdqa  xmm7,xmm0

+        DB    =   0F3h,0C3h          = ;     ;repret

+

+

+

+

+

+<= br class=3D"">
+

+

+

+

+

+

+

+ALIGN   16

+_= vpaes_schedule_transform:

+

+        movdqa  xmm1,xm= m9

+        = ;pandn   xmm1,xmm0

+   &nb= sp;    psrld   xmm1,4

+        pand    x= mm0,xmm9

+       = ; movdqa  xmm2,XMMWORD[r11]

+DB &nbs= p;    102,15,56,0,208

+ &n= bsp;      movdqa  xmm0,XMMWORD[16+r11]
+DB      102,15,56,0,1= 93

+        = ;pxor    xmm0,xmm2

+  &nbs= p;     DB      0F3h,0C3h =             &nb= sp; ;repret

+

+

+

+

+

+

+

+

+
+

+
<= br class=3D"">+

+

+

+

+

+

+

+

+

+
+

+
<= br class=3D"">+

+

+

+

+ALIGN  = ; 16

+_vpaes_schedule_mangle:

+

+     =    movdqa  xmm4,xmm0

+ &nb= sp;      movdqa  xmm5,XMMWORD[$L$k_mc_fo= rward]

+       &= nbsp;test    rcx,rcx

+  &n= bsp;     jnz     NEAR $L$sched= ule_mangle_dec

+

= +

+        = add     rdx,16

+  &nb= sp;     pxor    xmm4,XMMWORD[$L$k_s= 63]

+DB      102,15,5= 6,0,229

+       =  movdqa  xmm3,xmm4

+DB   &= nbsp;  102,15,56,0,229

+   = ;     pxor    xmm3,xmm4

+DB      102,15,56,0,229

+        pxor &nbs= p;  xmm3,xmm4

+

+        jmp    =  NEAR $L$schedule_mangle_both

+ALIGN &nbs= p; 16

+$L$schedule_mangle_dec:

+

+    &n= bsp;   lea     r11,[$L$k_dksd]

+        movdqa &n= bsp;xmm1,xmm9

+      =   pandn   xmm1,xmm4

+ &nbs= p;      psrld   xmm1,4

+        pand  &nb= sp; xmm4,xmm9

+

+        movdqa  xmm2,XMMWOR= D[r11]

+DB      102,1= 5,56,0,212

+      &nb= sp; movdqa  xmm3,XMMWORD[16+r11]

+DB=      102,15,56,0,217

+        pxor    xmm3,xm= m2

+DB      102,15,56= ,0,221

+

+  =       movdqa  xmm2,XMMWORD[32+r11]

+DB      102,15,56,0,212
+        pxo= r    xmm2,xmm3

+   &n= bsp;    movdqa  xmm3,XMMWORD[48+r11]

+DB      102,15,56,0,217

+        pxor &nbs= p;  xmm3,xmm2

+DB    =   102,15,56,0,221

+
+        movdqa  xmm2,= XMMWORD[64+r11]

+DB     &n= bsp;102,15,56,0,212

+     =    pxor    xmm2,xmm3

+        movdqa  xmm3,XMMWOR= D[80+r11]

+DB      10= 2,15,56,0,217

+      =   pxor    xmm3,xmm2

+= DB      102,15,56,0,221

+

+       &nb= sp;movdqa  xmm2,XMMWORD[96+r11]

+DB  = ;    102,15,56,0,212

+ &nb= sp;      pxor    xmm2,xmm3

+        movdq= a  xmm3,XMMWORD[112+r11]

+DB   =    102,15,56,0,217

+  &nbs= p;     pxor    xmm3,xmm2

+

+    &n= bsp;   add     rdx,-16
+

+$L$schedule_mangle_both:

+        movdqa &= nbsp;xmm1,XMMWORD[r10*1+r8]

+DB   &n= bsp;  102,15,56,0,217

+   =      add     r8,-16

+        and  = ;   r8,0x30

+    = ;    movdqu  XMMWORD[rdx],xmm3

+        DB    =   0F3h,0C3h          = ;     ;repret

+

+

+

+

+

+<= br class=3D"">
+global  vpaes_set_encrypt_key

+

+ALIGN   16<= br class=3D"">
+vpaes_set_encrypt_key:

+        mov    &n= bsp;QWORD[8+rsp],rdi        ;WIN64 prolo= gue

+       &nbs= p;mov     QWORD[16+rsp],rsi

+        mov     r= ax,rsp

+$L$SEH_begin_vpaes_set_encrypt_key:
+        mov =     rdi,rcx

+   =      mov     rsi,rdx

+        mov  = ;   rdx,r8

+

+

+

+ =        lea     rsp,[= ((-184))+rsp]

+      =   movaps  XMMWORD[16+rsp],xmm6

= +        movaps  XMMWORD[32+rsp],xm= m7

+        = ;movaps  XMMWORD[48+rsp],xmm8

+  &nb= sp;     movaps  XMMWORD[64+rsp],xmm9

+        movaps &n= bsp;XMMWORD[80+rsp],xmm10

+    =     movaps  XMMWORD[96+rsp],xmm11
+        movaps  XMMWO= RD[112+rsp],xmm12

+     &n= bsp;  movaps  XMMWORD[128+rsp],xmm13

+        movaps  XMMWORD[144= +rsp],xmm14

+      &n= bsp; movaps  XMMWORD[160+rsp],xmm15

= +$L$enc_key_body:

+     &n= bsp;  mov     eax,esi

+        shr    &n= bsp;eax,5

+      &nbs= p; add     eax,5

+ &n= bsp;      mov     DWORD[2= 40+rdx],eax

+

+ &= nbsp;      mov     ecx,0<= br class=3D"">
+        mo= v     r8d,0x30

+  &nb= sp;     call    _vpaes_schedule_cor= e

+        = movaps  xmm6,XMMWORD[16+rsp]

+  &nbs= p;     movaps  xmm7,XMMWORD[32+rsp]

+        movaps &n= bsp;xmm8,XMMWORD[48+rsp]

+    &= nbsp;   movaps  xmm9,XMMWORD[64+rsp]

+        movaps  xmm10,X= MMWORD[80+rsp]

+      = ;  movaps  xmm11,XMMWORD[96+rsp]

+        movaps  xmm12,XMMWORD[11= 2+rsp]

+       &= nbsp;movaps  xmm13,XMMWORD[128+rsp]

+ &nb= sp;      movaps  xmm14,XMMWORD[144+rsp]<= br class=3D"">
+        mo= vaps  xmm15,XMMWORD[160+rsp]

+  &nbs= p;     lea     rsp,[184+rsp]
+$L$enc_key_epilogue:

+        xor    &n= bsp;eax,eax

+      &n= bsp; mov     rdi,QWORD[8+rsp]    &n= bsp;   ;WIN64 epilogue

+  =       mov     rsi,QWORD[1= 6+rsp]

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+$L$SEH_end_vpaes_set_= encrypt_key:

+

+g= lobal  vpaes_set_decrypt_key

+

+ALIGN   16

+v= paes_set_decrypt_key:

+    &nbs= p;   mov     QWORD[8+rsp],rdi  &nbs= p;     ;WIN64 prologue

+        mov     Q= WORD[16+rsp],rsi

+     &nb= sp;  mov     rax,rsp

+$L$SEH_begin_vpaes_set_decrypt_key:

+ =        mov     rdi,r= cx

+        = ;mov     rsi,rdx

+  &= nbsp;     mov     rdx,r8

+

+

+

+      &= nbsp; lea     rsp,[((-184))+rsp]
+        movaps  XMMWOR= D[16+rsp],xmm6

+      = ;  movaps  XMMWORD[32+rsp],xmm7

+        movaps  XMMWORD[48+rsp],x= mm8

+       &nbs= p;movaps  XMMWORD[64+rsp],xmm9

+  &n= bsp;     movaps  XMMWORD[80+rsp],xmm10

+        movaps &= nbsp;XMMWORD[96+rsp],xmm11

+    = ;    movaps  XMMWORD[112+rsp],xmm12
=
+        movaps  XMM= WORD[128+rsp],xmm13

+     =    movaps  XMMWORD[144+rsp],xmm14

+        movaps  XMMWORD[16= 0+rsp],xmm15

+$L$dec_key_body:
<= br class=3D"">+        mov   &= nbsp; eax,esi

+     &= nbsp;  shr     eax,5

+        add    &n= bsp;eax,5

+      &nbs= p; mov     DWORD[240+rdx],eax

+        shl    =  eax,4

+      &n= bsp; lea     rdx,[16+rax*1+rdx]

+

+      &= nbsp; mov     ecx,1

+=        mov     r8d,= esi

+       &nbs= p;shr     r8d,1

+  &n= bsp;     and     r8d,32

+        xor &nbs= p;   r8d,32

+    = ;    call    _vpaes_schedule_core

+        movaps &= nbsp;xmm6,XMMWORD[16+rsp]

+    =     movaps  xmm7,XMMWORD[32+rsp]
+        movaps  xmm8,X= MMWORD[48+rsp]

+      = ;  movaps  xmm9,XMMWORD[64+rsp]

+        movaps  xmm10,XMMWORD[80+= rsp]

+       &nb= sp;movaps  xmm11,XMMWORD[96+rsp]

+  =       movaps  xmm12,XMMWORD[112+rsp]

+        movap= s  xmm13,XMMWORD[128+rsp]

+   &= nbsp;    movaps  xmm14,XMMWORD[144+rsp]

+        movaps &n= bsp;xmm15,XMMWORD[160+rsp]

+    = ;    lea     rsp,[184+rsp]

+$L$dec_key_epilogue:

+ =        xor     eax,e= ax

+        = ;mov     rdi,QWORD[8+rsp]      = ;  ;WIN64 epilogue

+   &nb= sp;    mov     rsi,QWORD[16+rsp]
+        DB &= nbsp;    0F3h,0C3h       =         ;repret

+

+$L$SEH_end_vpaes_set_decrypt_key:=

+

+global  = vpaes_encrypt

+

+= ALIGN   16

+vpaes_encrypt:

+        mov  = ;   QWORD[8+rsp],rdi       &nb= sp;;WIN64 prologue

+     &= nbsp;  mov     QWORD[16+rsp],rsi

+        mov  &nbs= p;  rax,rsp

+$L$SEH_begin_vpaes_encr= ypt:

+       &nb= sp;mov     rdi,rcx

+  = ;      mov     rsi,rdx
+        mov =     rdx,r8

+

+

+

+        lea     = rsp,[((-184))+rsp]

+     &= nbsp;  movaps  XMMWORD[16+rsp],xmm6

+        movaps  XMMWORD[32+= rsp],xmm7

+      &nbs= p; movaps  XMMWORD[48+rsp],xmm8

+ &n= bsp;      movaps  XMMWORD[64+rsp],xmm9
+        mov= aps  XMMWORD[80+rsp],xmm10

+   =      movaps  XMMWORD[96+rsp],xmm11

+        movaps &n= bsp;XMMWORD[112+rsp],xmm12

+    = ;    movaps  XMMWORD[128+rsp],xmm13
=
+        movaps  XMM= WORD[144+rsp],xmm14

+     =    movaps  XMMWORD[160+rsp],xmm15

+$L$enc_body:

+    &nbs= p;   movdqu  xmm0,XMMWORD[rdi]

+        call    _= vpaes_preheat

+      =   call    _vpaes_encrypt_core

+        movdqu  XMMWORD[r= si],xmm0

+       = ; movaps  xmm6,XMMWORD[16+rsp]

+ &nb= sp;      movaps  xmm7,XMMWORD[32+rsp]
+        mova= ps  xmm8,XMMWORD[48+rsp]

+   &n= bsp;    movaps  xmm9,XMMWORD[64+rsp]

+        movaps  xm= m10,XMMWORD[80+rsp]

+     =    movaps  xmm11,XMMWORD[96+rsp]

+        movaps  xmm12,XMMWO= RD[112+rsp]

+      &n= bsp; movaps  xmm13,XMMWORD[128+rsp]

= +        movaps  xmm14,XMMWORD[144+= rsp]

+       &nb= sp;movaps  xmm15,XMMWORD[160+rsp]

+  = ;      lea     rsp,[184+r= sp]

+$L$enc_epilogue:

+        mov    &n= bsp;rdi,QWORD[8+rsp]        ;WIN64 epilo= gue

+       &nbs= p;mov     rsi,QWORD[16+rsp]

+        DB     &n= bsp;0F3h,0C3h           &= nbsp;   ;repret

+

+$L$SEH_end_vpaes_encrypt:

+
+global  vpaes_decrypt

+

+ALIGN   16

+vpaes_decrypt:

+   = ;     mov     QWORD[8+rsp],rdi=        ;WIN64 prologue
+        mov   &n= bsp; QWORD[16+rsp],rsi

+   &nbs= p;    mov     rax,rsp

+$L$SEH_begin_vpaes_decrypt:

+=        mov     rdi,= rcx

+       &nbs= p;mov     rsi,rdx

+  =       mov     rdx,r8

+

+
+

+      =   lea     rsp,[((-184))+rsp]
+        movaps  XMMWO= RD[16+rsp],xmm6

+     &nbs= p;  movaps  XMMWORD[32+rsp],xmm7

+        movaps  XMMWORD[48+rsp],= xmm8

+       &nb= sp;movaps  XMMWORD[64+rsp],xmm9

+  &= nbsp;     movaps  XMMWORD[80+rsp],xmm10

+        movaps =  XMMWORD[96+rsp],xmm11

+   &nbs= p;    movaps  XMMWORD[112+rsp],xmm12

+        movaps  XM= MWORD[128+rsp],xmm13

+     = ;   movaps  XMMWORD[144+rsp],xmm14

+        movaps  XMMWORD[1= 60+rsp],xmm15

+$L$dec_body:

+        movdqu  xmm0,XM= MWORD[rdi]

+      &nb= sp; call    _vpaes_preheat

+        call    _vpaes_= decrypt_core

+      &= nbsp; movdqu  XMMWORD[rsi],xmm0

+ &n= bsp;      movaps  xmm6,XMMWORD[16+rsp]
+        mov= aps  xmm7,XMMWORD[32+rsp]

+   &= nbsp;    movaps  xmm8,XMMWORD[48+rsp]

+        movaps  x= mm9,XMMWORD[64+rsp]

+     =    movaps  xmm10,XMMWORD[80+rsp]

+        movaps  xmm11,XMMWO= RD[96+rsp]

+      &nb= sp; movaps  xmm12,XMMWORD[112+rsp]

+=        movaps  xmm13,XMMWORD[128+r= sp]

+       &nbs= p;movaps  xmm14,XMMWORD[144+rsp]

+  =       movaps  xmm15,XMMWORD[160+rsp]

+        lea &= nbsp;   rsp,[184+rsp]

+$L$dec_e= pilogue:

+       = ; mov     rdi,QWORD[8+rsp]     = ;   ;WIN64 epilogue

+  &nb= sp;     mov     rsi,QWORD[16+r= sp]

+       &nbs= p;DB      0F3h,0C3h      =          ;repret

+

+$L$SEH_end_vpaes_decrypt:
+global  vpaes_cbc_encrypt
<= br class=3D"">+

+ALIGN   16

+vpaes_cbc_encrypt:

+ &n= bsp;      mov     QWORD[8= +rsp],rdi        ;WIN64 prologue

+        mov  = ;   QWORD[16+rsp],rsi

+  &= nbsp;     mov     rax,rsp

+$L$SEH_begin_vpaes_cbc_encrypt:
+        mov   &nb= sp; rdi,rcx

+     &nb= sp;  mov     rsi,rdx

+        mov    &n= bsp;rdx,r8

+      &nb= sp; mov     rcx,r9

+ =        mov     r8,QW= ORD[40+rsp]

+      &n= bsp; mov     r9,QWORD[48+rsp]

+

+

+
+        xchg=    rdx,rcx

+    = ;    sub     rcx,16
<= br class=3D"">+        jc   &n= bsp;  NEAR $L$cbc_abort

+  &nbs= p;     lea     rsp,[((-184))+r= sp]

+       &nbs= p;movaps  XMMWORD[16+rsp],xmm6

+  &n= bsp;     movaps  XMMWORD[32+rsp],xmm7

+        movaps &n= bsp;XMMWORD[48+rsp],xmm8

+    &= nbsp;   movaps  XMMWORD[64+rsp],xmm9

+        movaps  XMMWORD= [80+rsp],xmm10

+      = ;  movaps  XMMWORD[96+rsp],xmm11

+        movaps  XMMWORD[112+rsp]= ,xmm12

+       &= nbsp;movaps  XMMWORD[128+rsp],xmm13

+ &nb= sp;      movaps  XMMWORD[144+rsp],xmm14<= br class=3D"">
+        mo= vaps  XMMWORD[160+rsp],xmm15

+$L$cbc_body= :

+        = movdqu  xmm6,XMMWORD[r8]

+   &n= bsp;    sub     rsi,rdi

+        call  &n= bsp; _vpaes_preheat

+    &= nbsp;   cmp     r9d,0

+        je    = ;  NEAR $L$cbc_dec_loop

+  &nbs= p;     jmp     NEAR $L$cbc_enc= _loop

+ALIGN   16

+$L$cbc_enc_loop:

+   &nb= sp;    movdqu  xmm0,XMMWORD[rdi]
+        pxor   &n= bsp;xmm0,xmm6

+      =   call    _vpaes_encrypt_core

+        movdqa  xmm6,xmm0=

+        m= ovdqu  XMMWORD[rdi*1+rsi],xmm0

+  &n= bsp;     lea     rdi,[16+rdi]<= br class=3D"">
+        su= b     rcx,16

+   = ;     jnc     NEAR $L$cbc_enc_= loop

+       &nb= sp;jmp     NEAR $L$cbc_done

+ALIGN   16

+$L$cbc_dec_loop:

+        movdqu=  xmm0,XMMWORD[rdi]

+    &= nbsp;   movdqa  xmm7,xmm0

= +        call    _vpaes_d= ecrypt_core

+      &n= bsp; pxor    xmm0,xmm6

+ &= nbsp;      movdqa  xmm6,xmm7

+        movdqu  = XMMWORD[rdi*1+rsi],xmm0

+    &n= bsp;   lea     rdi,[16+rdi]

+        sub  &nbs= p;  rcx,16

+     = ;   jnc     NEAR $L$cbc_dec_loop

+$L$cbc_done:

+  &n= bsp;     movdqu  XMMWORD[r8],xmm6

+        movaps  = xmm6,XMMWORD[16+rsp]

+     = ;   movaps  xmm7,XMMWORD[32+rsp]

+        movaps  xmm8,XMMWOR= D[48+rsp]

+      &nbs= p; movaps  xmm9,XMMWORD[64+rsp]

+ &n= bsp;      movaps  xmm10,XMMWORD[80+rsp]<= br class=3D"">
+        mo= vaps  xmm11,XMMWORD[96+rsp]

+   = ;     movaps  xmm12,XMMWORD[112+rsp]

+        movaps &n= bsp;xmm13,XMMWORD[128+rsp]

+    = ;    movaps  xmm14,XMMWORD[144+rsp]
=
+        movaps  xmm= 15,XMMWORD[160+rsp]

+     =    lea     rsp,[184+rsp]
<= br class=3D"">+$L$cbc_epilogue:

+$L$cbc_abort:=

+        m= ov     rdi,QWORD[8+rsp]      &= nbsp; ;WIN64 epilogue

+    = ;    mov     rsi,QWORD[16+rsp]

+        DB &nb= sp;    0F3h,0C3h       &n= bsp;       ;repret

+

+$L$SEH_end_vpaes_cbc_encrypt:

+

+

+

+

+<= br class=3D"">
+

+

+ALIGN   16

+_vpaes_= preheat:

+

+ &nbs= p;      lea     r10,[$L$k= _s0F]

+       &n= bsp;movdqa  xmm10,XMMWORD[((-32))+r10]

+ =        movdqa  xmm11,XMMWORD[((-16)= )+r10]

+       &= nbsp;movdqa  xmm9,XMMWORD[r10]

+  &n= bsp;     movdqa  xmm13,XMMWORD[48+r10]

+        movdqa &= nbsp;xmm12,XMMWORD[64+r10]

+    = ;    movdqa  xmm15,XMMWORD[80+r10]
<= br class=3D"">+        movdqa  xmm1= 4,XMMWORD[96+r10]

+     &n= bsp;  DB      0F3h,0C3h   &nbs= p;           ;repret=

+

+

+

+

+

+

+

+

+ALIGN   = 64

+_vpaes_consts:

+$L$k_inv:

+      &= nbsp; DQ      0x0E05060F0D080180,0x040703090A= 0B0C02

+       &= nbsp;DQ      0x01040A060F0B0780,0x030D0E0C02050809=

+

+$L$k_s0F:

+        DQ &n= bsp;    0x0F0F0F0F0F0F0F0F,0x0F0F0F0F0F0F0F0F

+

+$L$k_ipt:

+        DQ  &nbs= p;   0xC2B2E8985A2A7000,0xCABAE09052227808
+        DQ   &nbs= p;  0x4C01307D317C4D00,0xCD80B1FCB0FDCC81

+

+$L$k_sb1:

+        DQ     &= nbsp;0xB19BE18FCB503E00,0xA5DF7A6E142AF544

+ &= nbsp;      DQ      0= x3618D415FAE22300,0x3BF7CCC10D2ED9EF

+$L$k_sb2= :

+        = DQ      0xE27A93C60B712400,0x5EB7E955BC982FCD

+        DQ &nb= sp;    0x69EB88400AE12900,0xC2A163C8AB82234A

+$L$k_sbo:

+   = ;     DQ      0xD0D26D176= FBDC700,0x15AABF7AC502A878

+    = ;    DQ      0xCFE474A55FBB6A0= 0,0x8E1E90D1412B35FA

+

+$L$k_mc_forward:

+    &= nbsp;   DQ      0x0407060500030201,= 0x0C0F0E0D080B0A09

+     &= nbsp;  DQ      0x080B0A0904070605,0x0003= 02010C0F0E0D

+      &= nbsp; DQ      0x0C0F0E0D080B0A09,0x0407060500= 030201

+       &= nbsp;DQ      0x000302010C0F0E0D,0x080B0A0904070605=

+

+$L$k_mc_backw= ard:

+       &nb= sp;DQ      0x0605040702010003,0x0E0D0C0F0A09080B
+        DQ =      0x020100030E0D0C0F,0x0A09080B06050407

+        DQ  =     0x0E0D0C0F0A09080B,0x0605040702010003

+        DQ   =    0x0A09080B06050407,0x020100030E0D0C0F

+

+$L$k_sr:

+        DQ    &nb= sp; 0x0706050403020100,0x0F0E0D0C0B0A0908

+        DQ     &nb= sp;0x030E09040F0A0500,0x0B06010C07020D08

+ &nb= sp;      DQ      0x0= F060D040B020900,0x070E050C030A0108

+  &nb= sp;     DQ      0x0B0E010= 4070A0D00,0x0306090C0F020508

+
<= br class=3D"">+$L$k_rcon:

+    =     DQ      0x1F8391B9AF9DEEB6= ,0x702A98084D7C7D81

+

+$L$k_s63:

+     &n= bsp;  DQ      0x5B5B5B5B5B5B5B5B,0x5B5B5= B5B5B5B5B5B

+

+$L= $k_opt:

+       =  DQ      0xFF9F4929D6B66000,0xF7974121DEBE680= 8

+        = DQ      0x01EDBD5150BCEC00,0xE10D5DB1B05C0CE0

+

+$L$k_deskew:

+        DQ &nbs= p;    0x07E4A34047A4E300,0x1DFEB95A5DBEF91A

+        DQ  &nbs= p;   0x5F36B5DC83EA6900,0x2841C2ABF49D1E77
+

+

+=

+

+

+$L$k_dksd:

+   &nb= sp;    DQ      0xFEB91A5DA3E44= 700,0x0740E3A45A1DBEF9

+    &nb= sp;   DQ      0x41C277F4B5368300,0x= 5FDC69EAAB289D1E

+$L$k_dksb:
+        DQ   &nbs= p;  0x9A4FCA1F8550D500,0x03D653861CC94C99

+        DQ    &nb= sp; 0x115BEDA7B6FC4A00,0xD993256F7E3482C8

+$L$k_dkse:

+      &= nbsp; DQ      0xD5031CCA1FC9D600,0x53859A4C99= 4F5086

+       &= nbsp;DQ      0xA23196054FDC7BE8,0xCD5EF96A20B31487=

+$L$k_dks9:

+ &n= bsp;      DQ      0x= B6116FC87ED9A700,0x4AED933482255BFC

+  &n= bsp;     DQ      0x457651= 6227143300,0x8BB89FACE9DAFDCE

+
=
+

+

+

+

+$L$k_dipt:=

+        D= Q      0x0F505B040B545F00,0x154A411E114E451A

+        DQ &nbs= p;    0x86E383E660056500,0x12771772F491F194

+

+$L$k_dsb9:
=
+        DQ   &= nbsp;  0x851C03539A86D600,0xCAD51F504F994CC9

+        DQ    &= nbsp; 0xC03B1789ECD74900,0x725E2C9EB2FBA565

+$L$k_dsbd:

+      = ;  DQ      0x7D57CCDFE6B1A200,0xF56E9B13= 882A4439

+       = ; DQ      0x3CE2FAF724C6CB00,0x2931180D15DEEF= D3

+$L$k_dsbb:

+ =        DQ      = 0xD022649296B44200,0x602646F6B0F2D404

+  =       DQ      0xC194= 98A6CD596700,0xF3FF0C3E3255AA6B

+$L$k_dsbe:
+        DQ &= nbsp;    0x46F2929626D4D000,0x2242600464B4F6B0

+        DQ  =     0x0C55A6CDFFAAC100,0x9467F36B98593E32

+$L$k_dsbo:

+   &nbs= p;    DQ      0x1387EA537EF940= 00,0xC7AA6DB9D4943E2D

+    &nbs= p;   DQ      0x12D7560F93441D00,0xC= A4B8159D8C58E9C

+DB     &n= bsp;86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105

+DB      111,110,32,65,69,83,32,1= 02,111,114,32,120,56,54,95,54

+DB   =    52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97

+DB      109,98,117,114,103= ,32,40,83,116,97,110,102,111,114,100,32

+DB &n= bsp;    85,110,105,118,101,114,115,105,116,121,41,0

+ALIGN   64

+

+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   1= 6

+se_handler:

+ =        push    rsi

+        push &nb= sp;  rdi

+     &= nbsp;  push    rbx

+ =        push    rbp

+        push &nb= sp;  r12

+     &= nbsp;  push    r13

+ =        push    r14

+        push &nb= sp;  r15

+     &= nbsp;  pushfq

+    &n= bsp;   sub     rsp,64

+

+      &= nbsp; mov     rax,QWORD[120+r8]

+        mov   &nbs= p; rbx,QWORD[248+r8]

+

+        mov   &nbs= p; rsi,QWORD[8+r9]

+    &n= bsp;   mov     r11,QWORD[56+r9]

+

+    &n= bsp;   mov     r10d,DWORD[r11]

+        lea  = ;   r10,[r10*1+rsi]

+  &nb= sp;     cmp     rbx,r10

+        jb  = ;    NEAR $L$in_prologue

+=

+        m= ov     rax,QWORD[152+r8]

+=

+        m= ov     r10d,DWORD[4+r11]

+=        lea     r10,= [r10*1+rsi]

+      &n= bsp; cmp     rbx,r10

= +        jae     NEA= R $L$in_prologue

+

+        lea     r= si,[16+rax]

+      &n= bsp; lea     rdi,[512+r8]

+        mov    &n= bsp;ecx,20

+      &nb= sp; DD      0xa548f3fc

+        lea    &n= bsp;rax,[184+rax]

+

+$L$in_prologue:

+     =    mov     rdi,QWORD[8+rax]

+        mov  &nbs= p;  rsi,QWORD[16+rax]

+   =      mov     QWORD[152+r8],rax=

+        m= ov     QWORD[168+r8],rsi

+=        mov     QWOR= D[176+r8],rdi

+

+=        mov     rdi,= QWORD[40+r9]

+      &= nbsp; mov     rsi,r8

= +        mov     ecx= ,154

+       &nb= sp;DD      0xa548f3fc

+

+        = ;mov     rsi,r9

+  &n= bsp;     xor     rcx,rcx

+        mov &nb= sp;   rdx,QWORD[8+rsi]

+  =       mov     r8,QWORD[rs= i]

+        = ;mov     r9,QWORD[16+rsi]

= +        mov     r10= ,QWORD[40+rsi]

+      = ;  lea     r11,[56+rsi]

+        lea    &= nbsp;r12,[24+rsi]

+     &n= bsp;  mov     QWORD[32+rsp],r10

+        mov   = ;  QWORD[40+rsp],r11

+   &= nbsp;    mov     QWORD[48+rsp],r12<= br class=3D"">
+        mo= v     QWORD[56+rsp],rcx

+ =        call    QWORD[__im= p_RtlVirtualUnwind]

+

+        mov    &n= bsp;eax,1

+      &nbs= p; add     rsp,64

+ &= nbsp;      popfq

+        pop     r1= 5

+        = pop     r14

+   =      pop     r13

+        pop   = ;  r12

+     &nb= sp;  pop     rbp

+        pop     rb= x

+        = pop     rdi

+   =      pop     rsi

+        DB   =    0F3h,0C3h         = ;      ;repret

+=

+

+section .pdat= a rdata align=3D4

+ALIGN   4

+        DD  =     $L$SEH_begin_vpaes_set_encrypt_key wrt ..imagebase<= br class=3D"">
+        DD=      $L$SEH_end_vpaes_set_encrypt_key wrt ..image= base

+       &nb= sp;DD      $L$SEH_info_vpaes_set_encrypt_key wrt .= .imagebase

+

+ &n= bsp;      DD      $L= $SEH_begin_vpaes_set_decrypt_key wrt ..imagebase

+        DD     &= nbsp;$L$SEH_end_vpaes_set_decrypt_key wrt ..imagebase

+        DD    &n= bsp; $L$SEH_info_vpaes_set_decrypt_key wrt ..imagebase
<= br class=3D"">+

+     &nbs= p;  DD      $L$SEH_begin_vpaes_encrypt w= rt ..imagebase

+      = ;  DD      $L$SEH_end_vpaes_encrypt wrt = ..imagebase

+      &n= bsp; DD      $L$SEH_info_vpaes_encrypt wrt ..= imagebase

+

+ &nb= sp;      DD      $L$= SEH_begin_vpaes_decrypt wrt ..imagebase

+ &nbs= p;      DD      $L$S= EH_end_vpaes_decrypt wrt ..imagebase

+  &= nbsp;     DD      $L$SEH_= info_vpaes_decrypt wrt ..imagebase

+

+        DD  =     $L$SEH_begin_vpaes_cbc_encrypt wrt ..imagebase

+        DD &nb= sp;    $L$SEH_end_vpaes_cbc_encrypt wrt ..imagebase

+        DD &n= bsp;    $L$SEH_info_vpaes_cbc_encrypt wrt ..imagebase
+

+section .xdata = rdata align=3D8

+ALIGN   8

+$L$SEH_info_vpaes_set_encrypt_key:
+DB      9,0,0,0

+        DD    &n= bsp; se_handler wrt ..imagebase

+  &= nbsp;     DD      $L$enc_= key_body wrt ..imagebase,$L$enc_key_epilogue
wrt ..imagebase<= br class=3D"">
+$L$SEH_info_vpaes_set_decrypt_key:

+DB      9,0,0,0

+        DD  &nbs= p;   se_handler wrt ..imagebase

+        DD     &nb= sp;$L$dec_key_body wrt ..imagebase,$L$dec_key_epilogue
wrt ..= imagebase

+$L$SEH_info_vpaes_encrypt:

+DB      9,0,0,0

+        DD  &nbs= p;   se_handler wrt ..imagebase

+        DD     &nb= sp;$L$enc_body wrt ..imagebase,$L$enc_epilogue wrt
..imagebase

+$L$SEH_info_vpaes_decrypt:
+DB      9,0,0,0

+        DD    &= nbsp; se_handler wrt ..imagebase

+  =       DD      $L$dec= _body wrt ..imagebase,$L$dec_epilogue wrt
..imagebase

+$L$SEH_info_vpaes_cbc_encrypt:

+DB      9,0,0,0

+        DD    &nb= sp; se_handler wrt ..imagebase

+  &n= bsp;     DD      $L$cbc_b= ody wrt ..imagebase,$L$cbc_epilogue wrt
..imagebase

diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/= modes/ghash-
x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/c= rypto/modes/ghash-
x86_64.nasm
new file mode 10= 0644
index 0000000000..60f283d5fb
--- /dev/null=
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash-
x86_64.nas= m
@@ -0,0 +1,1569 @@
+; WARNING: do not edit!

+; Generated from openssl/crypto/modes/asm/ghash-= x86_64.pl

+;

+; C= opyright 2010-2020 The OpenSSL Project Authors. All Rights
Reserved.

+;

+; Lic= ensed under the OpenSSL license (the "License").  You may not use

+; this file except in compliance with the License= .  You can obtain a
copy

+= ; in the file LICENSE in the source distribution or at

+; https://www.openssl.org/source/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%define ZMMWORD

+sect= ion .text code align=3D64

+

+EXTERN  OPENSSL_ia32cap_P

+
+global  gcm_gmult_4bit

+

+ALIGN   16

+gcm_gmult_4bit:

+  &nb= sp;     mov     QWORD[8+rsp],r= di        ;WIN64 prologue
=
+        mov   =   QWORD[16+rsp],rsi

+   &n= bsp;    mov     rax,rsp

+$L$SEH_begin_gcm_gmult_4bit:

+        mov     r= di,rcx

+       &= nbsp;mov     rsi,rdx

+

+

+
+        push   &= nbsp;rbx

+

+ &nbs= p;      push    rbp

+

+    &n= bsp;   push    r12

+

+       &nb= sp;push    r13

+
=
+        push   = ; r14

+

+ &n= bsp;      push    r15

+

+    &n= bsp;   sub     rsp,280
+

+$L$gmult_prologue:

+

+     &= nbsp;  movzx   r8,BYTE[15+rdi]

+        lea    &n= bsp;r11,[$L$rem_4bit]

+    &nbs= p;   xor     rax,rax

+        xor    = ; rbx,rbx

+      = ;  mov     al,r8b

+        mov     b= l,r8b

+       &n= bsp;shl     al,4

+  &= nbsp;     mov     rcx,14

+        mov &nb= sp;   r8,QWORD[8+rax*1+rsi]

+ &= nbsp;      mov     r9,QWO= RD[rax*1+rsi]

+      =   and     bl,0xf0

+        mov     r= dx,r8

+       &n= bsp;jmp     NEAR $L$oop1

+=

+ALIGN   16

+$L$oop1:

+     &nb= sp;  shr     r8,4

+        and     r= dx,0xf

+       &= nbsp;mov     r10,r9

+ &nbs= p;      mov     al,BYTE[r= cx*1+rdi]

+      &nbs= p; shr     r9,4

+ &nb= sp;      xor     r8,QWORD= [8+rbx*1+rsi]

+      =   shl     r10,60

+        xor     r9= ,QWORD[rbx*1+rsi]

+     &n= bsp;  mov     bl,al

+        xor    &n= bsp;r9,QWORD[rdx*8+r11]

+    &n= bsp;   mov     rdx,r8

+        shl   &nbs= p; al,4

+      &= nbsp; xor     r8,r10

= +        dec     rcx=

+        j= s      NEAR $L$break1

+

+        = ;shr     r8,4

+  &nbs= p;     and     rdx,0xf

+        mov  = ;   r10,r9

+    =     shr     r9,4

+        xor   &nbs= p; r8,QWORD[8+rax*1+rsi]

+   &n= bsp;    shl     r10,60

+        xor  &nbs= p;  r9,QWORD[rax*1+rsi]

+  &nbs= p;     and     bl,0xf0

+        xor  = ;   r9,QWORD[rdx*8+r11]

+  = ;      mov     rdx,r8

+        xor &= nbsp;   r8,r10

+   &n= bsp;    jmp     NEAR $L$oop1

+

+ALIGN   16=

+$L$break1:

+ &n= bsp;      shr     r8,4
+        and =     rdx,0xf

+   =      mov     r10,r9

+        shr  = ;   r9,4

+    &n= bsp;   xor     r8,QWORD[8+rax*1+rsi]

+        shl &= nbsp;   r10,60

+   &n= bsp;    xor     r9,QWORD[rax*1+rsi]=

+        a= nd     bl,0xf0

+  &nb= sp;     xor     r9,QWORD[rdx*8= +r11]

+       &n= bsp;mov     rdx,r8

+  = ;      xor     r8,r10

+

+   &nbs= p;    shr     r8,4
+        and   &n= bsp; rdx,0xf

+     &n= bsp;  mov     r10,r9

+        shr    &n= bsp;r9,4

+       = ; xor     r8,QWORD[8+rbx*1+rsi]

+        shl   &nbs= p; r10,60

+      = ;  xor     r9,QWORD[rbx*1+rsi]
=
+        xor   =   r8,r10

+     &= nbsp;  xor     r9,QWORD[rdx*8+r11]

+

+    &n= bsp;   bswap   r8

+ &= nbsp;      bswap   r9

+        mov   = ;  QWORD[8+rdi],r8

+   &nb= sp;    mov     QWORD[rdi],r9

+

+    &= nbsp;   lea     rsi,[((280+48))+rsp]

+

+   &nbs= p;    mov     rbx,QWORD[((-8))+rsi]=

+

+   =      lea     rsp,[rsi]

+

+$L$gmult_epilogue:
+        mov =     rdi,QWORD[8+rsp]      &nbs= p; ;WIN64 epilogue

+    &n= bsp;   mov     rsi,QWORD[16+rsp]

+        DB  =     0F3h,0C3h        = ;       ;repret

+

+$L$SEH_end_gcm_gmult_4bit:

+global  gcm_ghash_4bit

+

+ALIGN   16
<= br class=3D"">+gcm_ghash_4bit:

+   &= nbsp;    mov     QWORD[8+rsp],rdi &= nbsp;      ;WIN64 prologue

+        mov   &nbs= p; QWORD[16+rsp],rsi

+    =     mov     rax,rsp
<= br class=3D"">+$L$SEH_begin_gcm_ghash_4bit:

+ =        mov     rdi,r= cx

+        = ;mov     rsi,rdx

+  &= nbsp;     mov     rdx,r8

+        mov &nb= sp;   rcx,r9

+
+

+

= +        push    rbx

+

+    = ;    push    rbp

+

+       = ; push    r12

+

+        push &nbs= p;  r13

+

+        push    r14
+

+   &n= bsp;    push    r15

+

+      &nb= sp; sub     rsp,280

+=

+$L$ghash_prologue:

+        mov    &n= bsp;r14,rdx

+      &n= bsp; mov     r15,rcx

= +        sub     rsi= ,-128

+       &n= bsp;lea     rbp,[((16+128))+rsp]

+        xor    &n= bsp;edx,edx

+      &n= bsp; mov     r8,QWORD[((0+0-128))+rsi]

+        mov  &nb= sp;  rax,QWORD[((0+8-128))+rsi]

+ &n= bsp;      mov     dl,al
+        shr=     rax,4

+   &= nbsp;    mov     r10,r8

+        shr  &nb= sp;  r8,4

+     =    mov     r9,QWORD[((16+0-128))+rsi]
+        shl =     dl,4

+   &nb= sp;    mov     rbx,QWORD[((16+8-128= ))+rsi]

+       =  shl     r10,60

+ &nb= sp;      mov     BYTE[rsp= ],dl

+       &nb= sp;or      rax,r10

+ =        mov     dl,bl=

+        s= hr     rbx,4

+   = ;     mov     r10,r9

+        shr  = ;   r9,4

+    &n= bsp;   mov     QWORD[rbp],r8

+        mov  &nb= sp;  r8,QWORD[((32+0-128))+rsi]

+ &n= bsp;      shl     dl,4
+        mov =     QWORD[((0-128))+rbp],rax

+        mov     = rax,QWORD[((32+8-128))+rsi]

+   &nbs= p;    shl     r10,60
=
+        mov   =   BYTE[1+rsp],dl

+    = ;    or      rbx,r10

+        mov  = ;   dl,al

+    &= nbsp;   shr     rax,4

+        mov   &nbs= p; r10,r8

+      = ;  shr     r8,4

= +        mov     QWO= RD[8+rbp],r9

+      &= nbsp; mov     r9,QWORD[((48+0-128))+rsi]

+        shl  = ;   dl,4

+    &n= bsp;   mov     QWORD[((8-128))+rbp],rbx<= br class=3D"">
+        mo= v     rbx,QWORD[((48+8-128))+rsi]

+        shl    &= nbsp;r10,60

+      &n= bsp; mov     BYTE[2+rsp],dl

+        or    &nb= sp; rax,r10

+     &nb= sp;  mov     dl,bl

+        shr     = rbx,4

+       &n= bsp;mov     r10,r9

+  = ;      shr     r9,4

+        mov &nb= sp;   QWORD[16+rbp],r8

+  =       mov     r8,QWORD[((= 64+0-128))+rsi]

+     &nbs= p;  shl     dl,4

+        mov     QW= ORD[((16-128))+rbp],rax

+    &n= bsp;   mov     rax,QWORD[((64+8-128))+rs= i]

+        = ;shl     r10,60

+  &n= bsp;     mov     BYTE[3+rsp],d= l

+        = or      rbx,r10

+ &nb= sp;      mov     dl,al
+        shr =     rax,4

+   &n= bsp;    mov     r10,r8

+        shr  &nbs= p;  r8,4

+     &= nbsp;  mov     QWORD[24+rbp],r9

+        mov   = ;  r9,QWORD[((80+0-128))+rsi]

+ &nbs= p;      shl     dl,4

+        mov &n= bsp;   QWORD[((24-128))+rbp],rbx

+        mov     r= bx,QWORD[((80+8-128))+rsi]

+    = ;    shl     r10,60
<= br class=3D"">+        mov   &= nbsp; BYTE[4+rsp],dl

+    =     or      rax,r10

+        mov  = ;   dl,bl

+    &= nbsp;   shr     rbx,4

+        mov   &nbs= p; r10,r9

+      = ;  shr     r9,4

= +        mov     QWO= RD[32+rbp],r8

+      =   mov     r8,QWORD[((96+0-128))+rsi]

+        shl  = ;   dl,4

+    &n= bsp;   mov     QWORD[((32-128))+rbp],rax=

+        m= ov     rax,QWORD[((96+8-128))+rsi]

+        shl    =  r10,60

+      &= nbsp; mov     BYTE[5+rsp],dl

+        or    &n= bsp; rbx,r10

+     &n= bsp;  mov     dl,al

+        shr    &n= bsp;rax,4

+      &nbs= p; mov     r10,r8

+ &= nbsp;      shr     r8,4
+        mov=     QWORD[40+rbp],r9

+ &n= bsp;      mov     r9,QWOR= D[((112+0-128))+rsi]

+     = ;   shl     dl,4

+        mov    &n= bsp;QWORD[((40-128))+rbp],rbx

+   &n= bsp;    mov     rbx,QWORD[((112+8-1= 28))+rsi]

+      &nbs= p; shl     r10,60

+ &= nbsp;      mov     BYTE[6= +rsp],dl

+       = ; or      rax,r10

+        mov     d= l,bl

+       &nb= sp;shr     rbx,4

+  &= nbsp;     mov     r10,r9

+        shr &nb= sp;   r9,4

+    =     mov     QWORD[48+rbp],r8

+        mov &nbs= p;   r8,QWORD[((128+0-128))+rsi]

+        shl     d= l,4

+       &nbs= p;mov     QWORD[((48-128))+rbp],rax

+        mov    = ; rax,QWORD[((128+8-128))+rsi]

+  &n= bsp;     shl     r10,60

+        mov &nbs= p;   BYTE[7+rsp],dl

+  &nb= sp;     or      rbx,r10
+        mov=     dl,al

+   &= nbsp;    shr     rax,4

+        mov  &nbs= p;  r10,r8

+     = ;   shr     r8,4

+        mov    &n= bsp;QWORD[56+rbp],r9

+     = ;   mov     r9,QWORD[((144+0-128))+rsi]<= br class=3D"">
+        sh= l     dl,4

+   &= nbsp;    mov     QWORD[((56-128))+r= bp],rbx

+       =  mov     rbx,QWORD[((144+8-128))+rsi]

+        shl  &nbs= p;  r10,60

+     = ;   mov     BYTE[8+rsp],dl

+        or   =    rax,r10

+    =     mov     dl,bl
+        shr   &nb= sp; rbx,4

+      = ;  mov     r10,r9

+        shr     r= 9,4

+       &nbs= p;mov     QWORD[64+rbp],r8

+        mov     r8= ,QWORD[((160+0-128))+rsi]

+    =     shl     dl,4

+        mov   &nbs= p; QWORD[((64-128))+rbp],rax

+  &nbs= p;     mov     rax,QWORD[((160= +8-128))+rsi]

+      =   shl     r10,60

+        mov     BY= TE[9+rsp],dl

+      &= nbsp; or      rbx,r10

+        mov    &n= bsp;dl,al

+      &nbs= p; shr     rax,4

+ &n= bsp;      mov     r10,r8<= br class=3D"">
+        sh= r     r8,4

+   &= nbsp;    mov     QWORD[72+rbp],r9
+        mov=     r9,QWORD[((176+0-128))+rsi]

+        shl    &n= bsp;dl,4

+       = ; mov     QWORD[((72-128))+rbp],rbx
=
+        mov   =   rbx,QWORD[((176+8-128))+rsi]

+ &nb= sp;      shl     r10,60
+        mov=     BYTE[10+rsp],dl

+ &nb= sp;      or      rax= ,r10

+       &nb= sp;mov     dl,bl

+  &= nbsp;     shr     rbx,4

+        mov &nbs= p;   r10,r9

+    = ;    shr     r9,4
+        mov   &nb= sp; QWORD[80+rbp],r8

+    =     mov     r8,QWORD[((192+0-128))+= rsi]

+       &nb= sp;shl     dl,4

+  &n= bsp;     mov     QWORD[((80-12= 8))+rbp],rax

+      &= nbsp; mov     rax,QWORD[((192+8-128))+rsi]

+        shl  = ;   r10,60

+    =     mov     BYTE[11+rsp],dl

+        or  =     rbx,r10

+   =      mov     dl,al

+        shr  &nb= sp;  rax,4

+     = ;   mov     r10,r8

+        shr    &= nbsp;r8,4

+      &nbs= p; mov     QWORD[88+rbp],r9

+        mov    &n= bsp;r9,QWORD[((208+0-128))+rsi]

+   =      shl     dl,4

+        mov  &nbs= p;  QWORD[((88-128))+rbp],rbx

+ &nbs= p;      mov     rbx,QWORD= [((208+8-128))+rsi]

+     =    shl     r10,60

+        mov    &n= bsp;BYTE[12+rsp],dl

+     =    or      rax,r10
+        mov   &n= bsp; dl,bl

+     &nbs= p;  shr     rbx,4

+        mov     r= 10,r9

+       &n= bsp;shr     r9,4

+  &= nbsp;     mov     QWORD[96+rbp= ],r8

+       &nb= sp;mov     r8,QWORD[((224+0-128))+rsi]
+        shl   &n= bsp; dl,4

+      = ;  mov     QWORD[((96-128))+rbp],rax

+        mov  = ;   rax,QWORD[((224+8-128))+rsi]

+        shl     r= 10,60

+       &n= bsp;mov     BYTE[13+rsp],dl

+        or     &n= bsp;rbx,r10

+      &n= bsp; mov     dl,al

+ =        shr     rax,4=

+        m= ov     r10,r8

+  &nbs= p;     shr     r8,4

+        mov  = ;   QWORD[104+rbp],r9

+  &= nbsp;     mov     r9,QWORD[((2= 40+0-128))+rsi]

+     &nbs= p;  shl     dl,4

+        mov     QW= ORD[((104-128))+rbp],rbx

+    &= nbsp;   mov     rbx,QWORD[((240+8-128))+= rsi]

+       &nb= sp;shl     r10,60

+  =       mov     BYTE[14+rsp= ],dl

+       &nb= sp;or      rax,r10

+ =        mov     dl,bl=

+        s= hr     rbx,4

+   = ;     mov     r10,r9

+        shr  = ;   r9,4

+    &n= bsp;   mov     QWORD[112+rbp],r8

+        shl  = ;   dl,4

+    &n= bsp;   mov     QWORD[((112-128))+rbp],ra= x

+        = shl     r10,60

+  &nb= sp;     mov     BYTE[15+rsp],d= l

+        = or      rbx,r10

+ &nb= sp;      mov     QWORD[12= 0+rbp],r9

+      &nbs= p; mov     QWORD[((120-128))+rbp],rbx

+        add  &nbs= p;  rsi,-128

+    &nb= sp;   mov     r8,QWORD[8+rdi]

+        mov  = ;   r9,QWORD[rdi]

+   = ;     add     r15,r14

+        lea  = ;   r11,[$L$rem_8bit]

+  &= nbsp;     jmp     NEAR $L$oute= r_loop

+ALIGN   16
+$L$outer_loop:

+   &nbs= p;    xor     r9,QWORD[r14]

+        mov  = ;   rdx,QWORD[8+r14]

+  &n= bsp;     lea     r14,[16+r14]<= br class=3D"">
+        xo= r     rdx,r8

+   = ;     mov     QWORD[rdi],r9
+        mov =     QWORD[8+rdi],rdx

+ &nb= sp;      shr     rdx,32
+        xor=     rax,rax

+   = ;     rol     edx,8

+        mov  = ;   al,dl

+    &= nbsp;   movzx   ebx,dl

+        shl     a= l,4

+       &nbs= p;shr     ebx,4

+  &n= bsp;     rol     edx,8

+        mov  = ;   r8,QWORD[8+rax*1+rsi]

+ &nb= sp;      mov     r9,QWORD= [rax*1+rsi]

+      &n= bsp; mov     al,dl

+ =        movzx   ecx,dl

+        shl  = ;   al,4

+    &n= bsp;   movzx   r12,BYTE[rbx*1+rsp]
<= br class=3D"">+        shr   &= nbsp; ecx,4

+     &nb= sp;  xor     r12,r8

+        mov    &n= bsp;r10,r9

+      &nb= sp; shr     r8,8

+ &n= bsp;      movzx   r12,r12b

+        shr  = ;   r9,8

+    &n= bsp;   xor     r8,QWORD[((-128))+rbx*8+r= bp]

+       &nbs= p;shl     r10,56

+  &= nbsp;     xor     r9,QWORD[rbx= *8+rbp]

+       =  rol     edx,8

+ &nbs= p;      xor     r8,QWORD[= 8+rax*1+rsi]

+      &= nbsp; xor     r9,QWORD[rax*1+rsi]
+        mov   &n= bsp; al,dl

+     &nbs= p;  xor     r8,r10

+        movzx   r12,WORD[r= 12*2+r11]

+      &nbs= p; movzx   ebx,dl

+   = ;     shl     al,4

+        movzx  &= nbsp;r13,BYTE[rcx*1+rsp]

+    &= nbsp;   shr     ebx,4

+        shl   &nbs= p; r12,48

+      = ;  xor     r13,r8

+        mov     r= 10,r9

+       &n= bsp;xor     r9,r12

+  = ;      shr     r8,8

+        movzx &= nbsp; r13,r13b

+     =    shr     r9,8

+        xor    &n= bsp;r8,QWORD[((-128))+rcx*8+rbp]

+   = ;     shl     r10,56

+        xor  = ;   r9,QWORD[rcx*8+rbp]

+  = ;      rol     edx,8

+        xor &n= bsp;   r8,QWORD[8+rax*1+rsi]

+ =        xor     r9,QW= ORD[rax*1+rsi]

+      = ;  mov     al,dl

+        xor     r8= ,r10

+       &nb= sp;movzx   r13,WORD[r13*2+r11]

+ &nb= sp;      movzx   ecx,dl

+        shl  &nb= sp;  al,4

+     =    movzx   r12,BYTE[rbx*1+rsp]

+        shr    = ; ecx,4

+      &= nbsp; shl     r13,48

= +        xor     r12= ,r8

+       &nbs= p;mov     r10,r9

+  &= nbsp;     xor     r9,r13

+        shr &nb= sp;   r8,8

+    =     movzx   r12,r12b

+        mov    &n= bsp;edx,DWORD[8+rdi]

+     = ;   shr     r9,8

+        xor    &n= bsp;r8,QWORD[((-128))+rbx*8+rbp]

+   = ;     shl     r10,56

+        xor  = ;   r9,QWORD[rbx*8+rbp]

+  = ;      rol     edx,8

+        xor &n= bsp;   r8,QWORD[8+rax*1+rsi]

+ =        xor     r9,QW= ORD[rax*1+rsi]

+      = ;  mov     al,dl

+        xor     r8= ,r10

+       &nb= sp;movzx   r12,WORD[r12*2+r11]

+ &nb= sp;      movzx   ebx,dl

+        shl  &nb= sp;  al,4

+     =    movzx   r13,BYTE[rcx*1+rsp]

+        shr    = ; ebx,4

+      &= nbsp; shl     r12,48

= +        xor     r13= ,r8

+       &nbs= p;mov     r10,r9

+  &= nbsp;     xor     r9,r12

+        shr &nb= sp;   r8,8

+    =     movzx   r13,r13b

+        shr    &n= bsp;r9,8

+       = ; xor     r8,QWORD[((-128))+rcx*8+rbp]

+        shl  &nb= sp;  r10,56

+    &nbs= p;   xor     r9,QWORD[rcx*8+rbp]

+        rol  = ;   edx,8

+    &= nbsp;   xor     r8,QWORD[8+rax*1+rsi]
+        xor =     r9,QWORD[rax*1+rsi]

+ =        mov     al,dl=

+        x= or     r8,r10

+  &nbs= p;     movzx   r13,WORD[r13*2+r11]

+        movzx &= nbsp; ecx,dl

+     &n= bsp;  shl     al,4

+        movzx   r12,BYTE[r= bx*1+rsp]

+      &nbs= p; shr     ecx,4

+ &n= bsp;      shl     r13,48<= br class=3D"">
+        xo= r     r12,r8

+   = ;     mov     r10,r9

+        xor  = ;   r9,r13

+    =     shr     r8,8

+        movzx   r1= 2,r12b

+       &= nbsp;shr     r9,8

+  =       xor     r8,QWORD[((= -128))+rbx*8+rbp]

+     &n= bsp;  shl     r10,56

+        xor    &n= bsp;r9,QWORD[rbx*8+rbp]

+    &n= bsp;   rol     edx,8

+        xor    = ; r8,QWORD[8+rax*1+rsi]

+   &nb= sp;    xor     r9,QWORD[rax*1+rsi]<= br class=3D"">
+        mo= v     al,dl

+   =      xor     r8,r10

+        movzx &nb= sp; r12,WORD[r12*2+r11]

+   &nb= sp;    movzx   ebx,dl

+        shl    &n= bsp;al,4

+       = ; movzx   r13,BYTE[rcx*1+rsp]

+=        shr     ebx,= 4

+        = shl     r12,48

+  &nb= sp;     xor     r13,r8

+        mov  = ;   r10,r9

+    =     xor     r9,r12
+        shr   &n= bsp; r8,8

+      = ;  movzx   r13,r13b

+ &nbs= p;      shr     r9,8

+        xor &n= bsp;   r8,QWORD[((-128))+rcx*8+rbp]

+        shl    &n= bsp;r10,56

+      &nb= sp; xor     r9,QWORD[rcx*8+rbp]

+        rol   &nbs= p; edx,8

+      =   xor     r8,QWORD[8+rax*1+rsi]

+        xor   = ;  r9,QWORD[rax*1+rsi]

+   = ;     mov     al,dl

+        xor  = ;   r8,r10

+    =     movzx   r13,WORD[r13*2+r11]

+        movzx  &nb= sp;ecx,dl

+      &nbs= p; shl     al,4

+ &nb= sp;      movzx   r12,BYTE[rbx*1+rsp= ]

+        = shr     ecx,4

+  &nbs= p;     shl     r13,48

+        xor  = ;   r12,r8

+    =     mov     r10,r9
+        xor   &n= bsp; r9,r13

+     &nb= sp;  shr     r8,8

+        movzx   r12,r12b
+        mov =     edx,DWORD[4+rdi]

+ &nb= sp;      shr     r9,8

+        xor &= nbsp;   r8,QWORD[((-128))+rbx*8+rbp]

+        shl    &n= bsp;r10,56

+      &nb= sp; xor     r9,QWORD[rbx*8+rbp]

+        rol   &nbs= p; edx,8

+      =   xor     r8,QWORD[8+rax*1+rsi]

+        xor   = ;  r9,QWORD[rax*1+rsi]

+   = ;     mov     al,dl

+        xor  = ;   r8,r10

+    =     movzx   r12,WORD[r12*2+r11]

+        movzx  &nb= sp;ebx,dl

+      &nbs= p; shl     al,4

+ &nb= sp;      movzx   r13,BYTE[rcx*1+rsp= ]

+        = shr     ebx,4

+  &nbs= p;     shl     r12,48

+        xor  = ;   r13,r8

+    =     mov     r10,r9
+        xor   &n= bsp; r9,r12

+     &nb= sp;  shr     r8,8

+        movzx   r13,r13b
+        shr =     r9,8

+   &nb= sp;    xor     r8,QWORD[((-128))+rc= x*8+rbp]

+       = ; shl     r10,56

+ &n= bsp;      xor     r9,QWOR= D[rcx*8+rbp]

+      &= nbsp; rol     edx,8

+=        xor     r8,Q= WORD[8+rax*1+rsi]

+     &n= bsp;  xor     r9,QWORD[rax*1+rsi]

+        mov  &nb= sp;  al,dl

+     = ;   xor     r8,r10

+        movzx   r13,W= ORD[r13*2+r11]

+      = ;  movzx   ecx,dl

+  =       shl     al,4

+        movzx &n= bsp; r12,BYTE[rbx*1+rsp]

+   &n= bsp;    shr     ecx,4

+        shl   = ;  r13,48

+     =    xor     r12,r8

+        mov    &n= bsp;r10,r9

+      &nb= sp; xor     r9,r13

+ =        shr     r8,8<= br class=3D"">
+        mo= vzx   r12,r12b

+    &= nbsp;   shr     r9,8

+        xor    = ; r8,QWORD[((-128))+rbx*8+rbp]

+  &n= bsp;     shl     r10,56

+        xor &nbs= p;   r9,QWORD[rbx*8+rbp]

+ &nbs= p;      rol     edx,8

+        xor &= nbsp;   r8,QWORD[8+rax*1+rsi]

+=        xor     r9,Q= WORD[rax*1+rsi]

+     &nbs= p;  mov     al,dl

+        xor     r= 8,r10

+       &n= bsp;movzx   r12,WORD[r12*2+r11]

+ &n= bsp;      movzx   ebx,dl

+        shl  = ;   al,4

+    &n= bsp;   movzx   r13,BYTE[rcx*1+rsp]
<= br class=3D"">+        shr   &= nbsp; ebx,4

+     &nb= sp;  shl     r12,48

+        xor    &n= bsp;r13,r8

+      &nb= sp; mov     r10,r9

+ =        xor     r9,r1= 2

+        = shr     r8,8

+   = ;     movzx   r13,r13b
+        shr   &nb= sp; r9,8

+      =   xor     r8,QWORD[((-128))+rcx*8+rbp]

+        shl &nbs= p;   r10,56

+    = ;    xor     r9,QWORD[rcx*8+rbp]
+        rol =     edx,8

+   &n= bsp;    xor     r8,QWORD[8+rax*1+rs= i]

+        = ;xor     r9,QWORD[rax*1+rsi]

+        mov     = al,dl

+       &n= bsp;xor     r8,r10

+  = ;      movzx   r13,WORD[r13*2+r11]<= br class=3D"">
+        mo= vzx   ecx,dl

+    &nb= sp;   shl     al,4

+        movzx   r12,B= YTE[rbx*1+rsp]

+      = ;  shr     ecx,4

+        shl     r1= 3,48

+       &nb= sp;xor     r12,r8

+  =       mov     r10,r9

+        xor &n= bsp;   r9,r13

+   &nb= sp;    shr     r8,8
<= br class=3D"">+        movzx   = ;r12,r12b

+      &nbs= p; mov     edx,DWORD[rdi]

+        shr    &n= bsp;r9,8

+       = ; xor     r8,QWORD[((-128))+rbx*8+rbp]

+        shl  &nb= sp;  r10,56

+    &nbs= p;   xor     r9,QWORD[rbx*8+rbp]

+        rol  = ;   edx,8

+    &= nbsp;   xor     r8,QWORD[8+rax*1+rsi]
+        xor =     r9,QWORD[rax*1+rsi]

+ =        mov     al,dl=

+        x= or     r8,r10

+  &nbs= p;     movzx   r12,WORD[r12*2+r11]

+        movzx &= nbsp; ebx,dl

+     &n= bsp;  shl     al,4

+        movzx   r13,BYTE[r= cx*1+rsp]

+      &nbs= p; shr     ebx,4

+ &n= bsp;      shl     r12,48<= br class=3D"">
+        xo= r     r13,r8

+   = ;     mov     r10,r9

+        xor  = ;   r9,r12

+    =     shr     r8,8

+        movzx   r1= 3,r13b

+       &= nbsp;shr     r9,8

+  =       xor     r8,QWORD[((= -128))+rcx*8+rbp]

+     &n= bsp;  shl     r10,56

+        xor    &n= bsp;r9,QWORD[rcx*8+rbp]

+    &n= bsp;   rol     edx,8

+        xor    = ; r8,QWORD[8+rax*1+rsi]

+   &nb= sp;    xor     r9,QWORD[rax*1+rsi]<= br class=3D"">
+        mo= v     al,dl

+   =      xor     r8,r10

+        movzx &nb= sp; r13,WORD[r13*2+r11]

+   &nb= sp;    movzx   ecx,dl

+        shl    &n= bsp;al,4

+       = ; movzx   r12,BYTE[rbx*1+rsp]

+=        shr     ecx,= 4

+        = shl     r13,48

+  &nb= sp;     xor     r12,r8

+        mov  = ;   r10,r9

+    =     xor     r9,r13
+        shr   &n= bsp; r8,8

+      = ;  movzx   r12,r12b

+ &nbs= p;      shr     r9,8

+        xor &n= bsp;   r8,QWORD[((-128))+rbx*8+rbp]

+        shl    &n= bsp;r10,56

+      &nb= sp; xor     r9,QWORD[rbx*8+rbp]

+        rol   &nbs= p; edx,8

+      =   xor     r8,QWORD[8+rax*1+rsi]

+        xor   = ;  r9,QWORD[rax*1+rsi]

+   = ;     mov     al,dl

+        xor  = ;   r8,r10

+    =     movzx   r12,WORD[r12*2+r11]

+        movzx  &nb= sp;ebx,dl

+      &nbs= p; shl     al,4

+ &nb= sp;      movzx   r13,BYTE[rcx*1+rsp= ]

+        = shr     ebx,4

+  &nbs= p;     shl     r12,48

+        xor  = ;   r13,r8

+    =     mov     r10,r9
+        xor   &n= bsp; r9,r12

+     &nb= sp;  shr     r8,8

+        movzx   r13,r13b
+        shr =     r9,8

+   &nb= sp;    xor     r8,QWORD[((-128))+rc= x*8+rbp]

+       = ; shl     r10,56

+ &n= bsp;      xor     r9,QWOR= D[rcx*8+rbp]

+      &= nbsp; rol     edx,8

+=        xor     r8,Q= WORD[8+rax*1+rsi]

+     &n= bsp;  xor     r9,QWORD[rax*1+rsi]

+        mov  &nb= sp;  al,dl

+     = ;   xor     r8,r10

+        movzx   r13,W= ORD[r13*2+r11]

+      = ;  movzx   ecx,dl

+  =       shl     al,4

+        movzx &n= bsp; r12,BYTE[rbx*1+rsp]

+   &n= bsp;    and     ecx,240

+        shl  &nb= sp;  r13,48

+    &nbs= p;   xor     r12,r8

+        mov    =  r10,r9

+      &= nbsp; xor     r9,r13

= +        shr     r8,= 8

+        = movzx   r12,r12b

+    = ;    mov     edx,DWORD[((-4))+rdi]<= br class=3D"">
+        sh= r     r9,8

+   &= nbsp;    xor     r8,QWORD[((-128))+= rbx*8+rbp]

+      &nb= sp; shl     r10,56

+ =        xor     r9,QW= ORD[rbx*8+rbp]

+      = ;  movzx   r12,WORD[r12*2+r11]

+        xor    &n= bsp;r8,QWORD[8+rax*1+rsi]

+    =     xor     r9,QWORD[rax*1+rsi]

+        shl &= nbsp;   r12,48

+   &n= bsp;    xor     r8,r10

+        xor  &nbs= p;  r9,r12

+     = ;   movzx   r13,r8b

+=        shr     r8,4=

+        m= ov     r10,r9

+  &nbs= p;     shl     r13b,4

+        shr  = ;   r9,4

+    &n= bsp;   xor     r8,QWORD[8+rcx*1+rsi]

+        movzx=   r13,WORD[r13*2+r11]

+   = ;     shl     r10,60

+        xor  = ;   r9,QWORD[rcx*1+rsi]

+  = ;      xor     r8,r10

+        shl &= nbsp;   r13,48

+   &n= bsp;    bswap   r8

+        xor     = r9,r13

+       &= nbsp;bswap   r9

+    =     cmp     r14,r15
<= br class=3D"">+        jb   &n= bsp;  NEAR $L$outer_loop

+  &nb= sp;     mov     QWORD[8+rdi],r= 8

+        = mov     QWORD[rdi],r9

+
+        lea =     rsi,[((280+48))+rsp]

+=

+        m= ov     r15,QWORD[((-48))+rsi]

+

+       = ; mov     r14,QWORD[((-40))+rsi]
+

+      =   mov     r13,QWORD[((-32))+rsi]

+

+     &= nbsp;  mov     r12,QWORD[((-24))+rsi]

+

+    &n= bsp;   mov     rbp,QWORD[((-16))+rsi]
+

+   &nb= sp;    mov     rbx,QWORD[((-8))+rsi= ]

+

+   = ;     lea     rsp,[rsi]

+

+$L$ghash_epilogue:
+        mov=     rdi,QWORD[8+rsp]      &nb= sp; ;WIN64 epilogue

+    &= nbsp;   mov     rsi,QWORD[16+rsp]

+        DB  = ;    0F3h,0C3h       &nbs= p;       ;repret

+

+$L$SEH_end_gcm_ghash_4bit:

+global  gcm_init_clmul

+

+ALIGN   16
<= br class=3D"">+gcm_init_clmul:

+

+$L$_init_clmul:

+$L$SEH_begin= _gcm_init_clmul:

+

+DB      0x48,0x83,0xec,0x18

+DB      0x0f,0x29,0x34,0x24

+        movdqu  = xmm2,XMMWORD[rdx]

+     &n= bsp;  pshufd  xmm2,xmm2,78

+
+

+   &nb= sp;    pshufd  xmm4,xmm2,255

+        movdqa  xmm3,xmm2<= br class=3D"">
+        ps= llq   xmm2,1

+    &nb= sp;   pxor    xmm5,xmm5

+        psrlq   xmm3,= 63

+        = ;pcmpgtd xmm5,xmm4

+     &= nbsp;  pslldq  xmm3,8

+  &= nbsp;     por     xmm2,xmm3
+

+
<= br class=3D"">+        pand   =  xmm5,XMMWORD[$L$0x1c2_polynomial]

+ &nbs= p;      pxor    xmm2,xmm5

+

+
+        pshufd  xmm6,x= mm2,78

+       &= nbsp;movdqa  xmm0,xmm2

+   &nbs= p;    pxor    xmm6,xmm2
+        movdqa  xmm1,= xmm0

+       &nb= sp;pshufd  xmm3,xmm0,78

+   &nb= sp;    pxor    xmm3,xmm0
<= br class=3D"">+DB      102,15,58,68,194,0

+DB      102,15,58,68,202,17=

+DB      102,15,58,6= 8,222,0

+       =  pxor    xmm3,xmm0

+  = ;      pxor    xmm3,xmm1

+

+    =     movdqa  xmm4,xmm3

+        psrldq  xmm3,8

+        pslldq &n= bsp;xmm4,8

+      &nb= sp; pxor    xmm1,xmm3

+ &n= bsp;      pxor    xmm0,xmm4
+

+   &nb= sp;    movdqa  xmm4,xmm0

+        movdqa  xmm3,xmm0
+        psl= lq   xmm0,5

+    &nbs= p;   pxor    xmm3,xmm0

+        psllq   xmm0,1=

+        p= xor    xmm0,xmm3

+   =      psllq   xmm0,57

+        movdqa  xmm3,xmm= 0

+        = pslldq  xmm0,8

+     =    psrldq  xmm3,8

+  =       pxor    xmm0,xmm4

+        pxor &nb= sp;  xmm1,xmm3

+

+

+      &n= bsp; movdqa  xmm4,xmm0

+   = ;     psrlq   xmm0,1

+        pxor   &nbs= p;xmm1,xmm4

+      &n= bsp; pxor    xmm4,xmm0

+ &= nbsp;      psrlq   xmm0,5

+        pxor &nbs= p;  xmm0,xmm4

+    &n= bsp;   psrlq   xmm0,1

+        pxor    xmm0,xm= m1

+        = ;pshufd  xmm3,xmm2,78

+    = ;    pshufd  xmm4,xmm0,78

+        pxor    x= mm3,xmm2

+       = ; movdqu  XMMWORD[rcx],xmm2

+  =       pxor    xmm4,xmm0

+        movdqu &= nbsp;XMMWORD[16+rcx],xmm0

+DB   &nbs= p;  102,15,58,15,227,8

+   = ;     movdqu  XMMWORD[32+rcx],xmm4

+        movdqa &n= bsp;xmm1,xmm0

+      =   pshufd  xmm3,xmm0,78

+  =       pxor    xmm3,xmm0

+DB      102,15,58,68,194,0=

+DB      102,15,58,6= 8,202,17

+DB      102= ,15,58,68,222,0

+     &nbs= p;  pxor    xmm3,xmm0

+        pxor    xmm3,xm= m1

+

+  &nbs= p;     movdqa  xmm4,xmm3

+        psrldq  xmm3,8
+        psll= dq  xmm4,8

+     &nbs= p;  pxor    xmm1,xmm3

+        pxor    xmm0,xm= m4

+

+  &nbs= p;     movdqa  xmm4,xmm0

+        movdqa  xmm3,xmm0=

+        p= sllq   xmm0,5

+    &n= bsp;   pxor    xmm3,xmm0

+        psllq   xmm0= ,1

+        = ;pxor    xmm0,xmm3

+  &nbs= p;     psllq   xmm0,57
+        movdqa  xmm3,x= mm0

+       &nbs= p;pslldq  xmm0,8

+    &nbs= p;   psrldq  xmm3,8

+ &nbs= p;      pxor    xmm0,xmm4

+        pxor &= nbsp;  xmm1,xmm3

+
+

+      =   movdqa  xmm4,xmm0

+  &nb= sp;     psrlq   xmm0,1
+        pxor   &n= bsp;xmm1,xmm4

+      =   pxor    xmm4,xmm0

+=        psrlq   xmm0,5

+        pxor &nbs= p;  xmm0,xmm4

+    &n= bsp;   psrlq   xmm0,1

+        pxor    xmm0,xm= m1

+        = ;movdqa  xmm5,xmm0

+    &n= bsp;   movdqa  xmm1,xmm0

+=        pshufd  xmm3,xmm0,78

+        pxor &nb= sp;  xmm3,xmm0

+DB    = ;  102,15,58,68,194,0

+DB  &nbs= p;   102,15,58,68,202,17

+DB &n= bsp;    102,15,58,68,222,0

+        pxor    xmm3,xm= m0

+        = ;pxor    xmm3,xmm1

+

+        movdqa &n= bsp;xmm4,xmm3

+      =   psrldq  xmm3,8

+   =      pslldq  xmm4,8

+        pxor    x= mm1,xmm3

+       = ; pxor    xmm0,xmm4

+

+        movdqa=  xmm4,xmm0

+     &nb= sp;  movdqa  xmm3,xmm0

+  =       psllq   xmm0,5
=
+        pxor   = ; xmm3,xmm0

+     &nb= sp;  psllq   xmm0,1

+ &nbs= p;      pxor    xmm0,xmm3

+        psllq =   xmm0,57

+     =    movdqa  xmm3,xmm0

+ &nb= sp;      pslldq  xmm0,8
+        psrldq  xmm3,= 8

+        = pxor    xmm0,xmm4

+   = ;     pxor    xmm1,xmm3

+

+

+        movdqa  xmm4,xmm0
+        psr= lq   xmm0,1

+    &nbs= p;   pxor    xmm1,xmm4

+        pxor    x= mm4,xmm0

+       = ; psrlq   xmm0,5

+   =      pxor    xmm0,xmm4

+        psrlq  &n= bsp;xmm0,1

+      &nb= sp; pxor    xmm0,xmm1

+ &n= bsp;      pshufd  xmm3,xmm5,78

+        pshufd &n= bsp;xmm4,xmm0,78

+     &nb= sp;  pxor    xmm3,xmm5

+        movdqu  XMMWORD[48+rcx],= xmm5

+       &nb= sp;pxor    xmm4,xmm0

+  &n= bsp;     movdqu  XMMWORD[64+rcx],xmm0

+DB      102,15,58,15,227,8<= br class=3D"">
+        mo= vdqu  XMMWORD[80+rcx],xmm4

+   =      movaps  xmm6,XMMWORD[rsp]
=
+        lea   =   rsp,[24+rsp]

+$L$SEH_end_gcm_init_= clmul:

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+

+global  gcm_gmult_clmul

+

+ALIGN   16

= +gcm_gmult_clmul:

+

+$L$_gmult_clmul:

+     = ;   movdqu  xmm0,XMMWORD[rcx]

+        movdqa  xmm5,XMMWOR= D[$L$bswap_mask]

+     &nb= sp;  movdqu  xmm2,XMMWORD[rdx]

= +        movdqu  xmm4,XMMWORD[32+rd= x]

+DB      102,15,56= ,0,197

+       &= nbsp;movdqa  xmm1,xmm0

+   &nbs= p;    pshufd  xmm3,xmm0,78

+        pxor    x= mm3,xmm0

+DB      102= ,15,58,68,194,0

+DB     &n= bsp;102,15,58,68,202,17

+DB    =   102,15,58,68,220,0

+   &= nbsp;    pxor    xmm3,xmm0

+        pxor  &nbs= p; xmm3,xmm1

+

+        movdqa  xmm4,xmm3

+        psrldq =  xmm3,8

+      &= nbsp; pslldq  xmm4,8

+   &= nbsp;    pxor    xmm1,xmm3

+        pxor  &nbs= p; xmm0,xmm4

+

+        movdqa  xmm4,xmm0

+        movdqa =  xmm3,xmm0

+     &nbs= p;  psllq   xmm0,5

+  = ;      pxor    xmm3,xmm0

+        psllq &= nbsp; xmm0,1

+     &n= bsp;  pxor    xmm0,xmm3

+        psllq   xmm0,57
+        movd= qa  xmm3,xmm0

+     &= nbsp;  pslldq  xmm0,8

+  &= nbsp;     psrldq  xmm3,8

+        pxor    = ;xmm0,xmm4

+      &nb= sp; pxor    xmm1,xmm3

+
+

+   &nb= sp;    movdqa  xmm4,xmm0

+        psrlq   xmm0,1=

+        p= xor    xmm1,xmm4

+   =      pxor    xmm4,xmm0

+        psrlq  &n= bsp;xmm0,5

+      &nb= sp; pxor    xmm0,xmm4

+ &n= bsp;      psrlq   xmm0,1

+        pxor &nbs= p;  xmm0,xmm1

+DB    =   102,15,56,0,197

+   &nbs= p;    movdqu  XMMWORD[rcx],xmm0

+        DB    = ;  0F3h,0C3h         &nbs= p;     ;repret

+

+

+global  gcm_g= hash_clmul

+

+ALI= GN   32

+gcm_ghash_clmul:

+

+$L$_ghash_clmul:

+        lea &n= bsp;   rax,[((-136))+rsp]

+$L$S= EH_begin_gcm_ghash_clmul:

+

+DB      0x48,0x8d,0x60,0xe0

+DB      0x0f,0x29,0x70,0xe0=

+DB      0x0f,0x29,0= x78,0xf0

+DB      0x4= 4,0x0f,0x29,0x00

+DB     &= nbsp;0x44,0x0f,0x29,0x48,0x10

+DB   =    0x44,0x0f,0x29,0x50,0x20

+DB=      0x44,0x0f,0x29,0x58,0x30

+DB      0x44,0x0f,0x29,0x60,0x40

+DB      0x44,0x0f,0x29,0x6= 8,0x50

+DB      0x44,= 0x0f,0x29,0x70,0x60

+DB    &nbs= p; 0x44,0x0f,0x29,0x78,0x70

+   = ;     movdqa  xmm10,XMMWORD[$L$bswap_mask]
+

+   &nb= sp;    movdqu  xmm0,XMMWORD[rcx]
+        movdqu  xmm2,X= MMWORD[rdx]

+      &n= bsp; movdqu  xmm7,XMMWORD[32+rdx]

+D= B      102,65,15,56,0,194

+

+       = ; sub     r9,0x10

+ &= nbsp;      jz      N= EAR $L$odd_tail

+

+        movdqu  xmm6,XMMWORD[16+r= dx]

+       &nbs= p;mov     eax,DWORD[((OPENSSL_ia32cap_P+4))]

+        cmp  = ;   r9,0x30

+    = ;    jb      NEAR $L$skip4x
+

+   &nb= sp;    and     eax,71303168

+        cmp  = ;   eax,4194304

+   &= nbsp;    je      NEAR $L$skip4= x

+

+   = ;     sub     r9,0x30

+        mov  = ;   rax,0xA040608020C0E000

+ &n= bsp;      movdqu  xmm14,XMMWORD[48+rdx]<= br class=3D"">
+        mo= vdqu  xmm15,XMMWORD[64+rdx]

+

+

+

+

+       = ; movdqu  xmm3,XMMWORD[48+r8]

+ &nbs= p;      movdqu  xmm11,XMMWORD[32+r8]

+DB      102,65,15,56,0,= 218

+DB      102,69,1= 5,56,0,218

+      &nb= sp; movdqa  xmm5,xmm3

+   =      pshufd  xmm4,xmm3,78

+        pxor   &nbs= p;xmm4,xmm3

+DB      = 102,15,58,68,218,0

+DB     = ; 102,15,58,68,234,17

+DB   &nb= sp;  102,15,58,68,231,0

+

+        movdqa &n= bsp;xmm13,xmm11

+     &nbs= p;  pshufd  xmm12,xmm11,78

+ &n= bsp;      pxor    xmm12,xmm11<= br class=3D"">
+DB      102,68,15,58= ,68,222,0

+DB      10= 2,68,15,58,68,238,17

+DB    &nb= sp; 102,68,15,58,68,231,16

+   =      xorps   xmm3,xmm11
+        xorps   = xmm5,xmm13

+      &nb= sp; movups  xmm7,XMMWORD[80+rdx]

+ &= nbsp;      xorps   xmm4,xmm12

+

+    =     movdqu  xmm11,XMMWORD[16+r8]
+        movdqu  xmm8,X= MMWORD[r8]

+DB      1= 02,69,15,56,0,218

+DB     =  102,69,15,56,0,194

+    &= nbsp;   movdqa  xmm13,xmm11

+        pshufd  xmm12,xmm11,78
+        pxo= r    xmm0,xmm8

+   &n= bsp;    pxor    xmm12,xmm11

+DB      102,69,15,58,68,222,0
+        movd= qa  xmm1,xmm0

+     &= nbsp;  pshufd  xmm8,xmm0,78

+ &= nbsp;      pxor    xmm8,xmm0
+DB      102,69,15,58,= 68,238,17

+DB      10= 2,68,15,58,68,231,0

+     =    xorps   xmm3,xmm11

+        xorps   xmm5,xmm13
+

+   &n= bsp;    lea     r8,[64+r8]

+        sub  = ;   r9,0x40

+    = ;    jc      NEAR $L$tail4x
+

+   &nb= sp;    jmp     NEAR $L$mod4_loop
+ALIGN   32

+$L$mod4_loop:

+DB     =  102,65,15,58,68,199,0

+   &nbs= p;    xorps   xmm4,xmm12

+        movdqu  xmm11,XMM= WORD[48+r8]

+DB      = 102,69,15,56,0,218

+DB     = ; 102,65,15,58,68,207,17

+   &n= bsp;    xorps   xmm0,xmm3

+        movdqu  xmm3,XMM= WORD[32+r8]

+      &n= bsp; movdqa  xmm13,xmm11

+DB  &= nbsp;   102,68,15,58,68,199,16

= +        pshufd  xmm12,xmm11,78

+        xorps=   xmm1,xmm5

+    &nb= sp;   pxor    xmm12,xmm11

+DB      102,65,15,56,0,218

+        movups  x= mm7,XMMWORD[32+rdx]

+     =    xorps   xmm8,xmm4

= +DB      102,68,15,58,68,218,0

+        pshufd  xmm4,xmm= 3,78

+

+  &n= bsp;     pxor    xmm8,xmm0

+        movdqa &n= bsp;xmm5,xmm3

+      =   pxor    xmm8,xmm1

+=        pxor    xmm4,xmm3=

+        m= ovdqa  xmm9,xmm8

+DB    &n= bsp; 102,68,15,58,68,234,17

+   = ;     pslldq  xmm8,8

+        psrldq  xmm9,8

+        pxor &= nbsp;  xmm0,xmm8

+    = ;    movdqa  xmm8,XMMWORD[$L$7_mask]

+        pxor  &nbs= p; xmm1,xmm9

+DB     =  102,76,15,110,200

+

+        pand    = ;xmm8,xmm0

+DB      1= 02,69,15,56,0,200

+     &n= bsp;  pxor    xmm9,xmm0

+DB      102,68,15,58,68,231,0
+        psllq   = xmm9,57

+       =  movdqa  xmm8,xmm9

+   &nb= sp;    pslldq  xmm9,8

+DB      102,15,58,68,222,0

+        psrldq  xmm8,8

+        pxor =    xmm0,xmm9

+   &nbs= p;    pxor    xmm1,xmm8
+        movdqu  xmm8,= XMMWORD[r8]

+

+ &= nbsp;      movdqa  xmm9,xmm0

+        psrlq  &= nbsp;xmm0,1

+DB      = 102,15,58,68,238,17

+     =    xorps   xmm3,xmm11

+        movdqu  xmm11,XMMWORD[16+= r8]

+DB      102,69,1= 5,56,0,218

+DB      1= 02,15,58,68,231,16

+     &= nbsp;  xorps   xmm5,xmm13

= +        movups  xmm7,XMMWORD[80+rd= x]

+DB      102,69,15= ,56,0,194

+      &nbs= p; pxor    xmm1,xmm9

+ &nb= sp;      pxor    xmm9,xmm0

+        psrlq=   xmm0,5

+

+        movdqa  xmm13,xmm11=

+        p= xor    xmm4,xmm12

+   = ;     pshufd  xmm12,xmm11,78
+        pxor   &= nbsp;xmm0,xmm9

+      = ;  pxor    xmm1,xmm8

= +        pxor    xmm12,xm= m11

+DB      102,69,1= 5,58,68,222,0

+      =   psrlq   xmm0,1

+  &= nbsp;     pxor    xmm0,xmm1

+        movdqa &n= bsp;xmm1,xmm0

+DB     &nbs= p;102,69,15,58,68,238,17

+    &= nbsp;   xorps   xmm3,xmm11

+        pshufd  xmm8,xmm0,7= 8

+        = pxor    xmm8,xmm0

+

+DB      102,68,15,58,68,231,0
+        xor= ps   xmm5,xmm13

+

+        lea   &nbs= p; r8,[64+r8]

+     &= nbsp;  sub     r9,0x40

+        jnc    &n= bsp;NEAR $L$mod4_loop

+

+$L$tail4x:

+DB     = ; 102,65,15,58,68,199,0

+DB   &= nbsp;  102,65,15,58,68,207,17

+DB &n= bsp;    102,68,15,58,68,199,16

+        xorps   xmm4,x= mm12

+       &nb= sp;xorps   xmm0,xmm3

+   &= nbsp;    xorps   xmm1,xmm5

+        pxor   &nb= sp;xmm1,xmm0

+      &= nbsp; pxor    xmm8,xmm4

+<= br class=3D"">
+        px= or    xmm8,xmm1

+   &= nbsp;    pxor    xmm1,xmm0

+

+     &n= bsp;  movdqa  xmm9,xmm8

+  = ;      psrldq  xmm8,8

+        pslldq  xmm9,8<= br class=3D"">
+        px= or    xmm1,xmm8

+   &= nbsp;    pxor    xmm0,xmm9

+

+     &n= bsp;  movdqa  xmm4,xmm0

+  = ;      movdqa  xmm3,xmm0
<= br class=3D"">+        psllq   = ;xmm0,5

+       =  pxor    xmm3,xmm0

+  = ;      psllq   xmm0,1

+        pxor  &nbs= p; xmm0,xmm3

+     &n= bsp;  psllq   xmm0,57

+ &n= bsp;      movdqa  xmm3,xmm0

+        pslldq  x= mm0,8

+       &n= bsp;psrldq  xmm3,8

+    &n= bsp;   pxor    xmm0,xmm4

+        pxor    = ;xmm1,xmm3

+

+
+        movd= qa  xmm4,xmm0

+     &= nbsp;  psrlq   xmm0,1

+ &n= bsp;      pxor    xmm1,xmm4
+        pxor=    xmm4,xmm0

+   &nb= sp;    psrlq   xmm0,5

+        pxor    x= mm0,xmm4

+       = ; psrlq   xmm0,1

+   =      pxor    xmm0,xmm1

+        add  &nbs= p;  r9,0x40

+    &nbs= p;   jz      NEAR $L$done

+        movdqu &n= bsp;xmm7,XMMWORD[32+rdx]

+    &= nbsp;   sub     r9,0x10
+        jz   &nb= sp;  NEAR $L$odd_tail

+$L$skip4x:
+

+
<= br class=3D"">+

+

+

+        = ;movdqu  xmm8,XMMWORD[r8]

+   &= nbsp;    movdqu  xmm3,XMMWORD[16+r8]

+DB      102,69,15,56,0,194

+DB      102,65,15,56,0,218=

+        p= xor    xmm0,xmm8

+

+        movdqa  x= mm5,xmm3

+       = ; pshufd  xmm4,xmm3,78

+   = ;     pxor    xmm4,xmm3

+DB      102,15,58,68,218,0

+DB      102,15,58,68,234= ,17

+DB      102,15,5= 8,68,231,0

+

+ &n= bsp;      lea     r8,[32+= r8]

+       &nbs= p;nop

+       &n= bsp;sub     r9,0x20

+ &nbs= p;      jbe     NEAR $L$e= ven_tail

+       = ; nop

+      &nb= sp; jmp     NEAR $L$mod_loop

+

+ALIGN   32
=
+$L$mod_loop:

+   &nb= sp;    movdqa  xmm1,xmm0

+        movdqa  xmm8,xmm4
+        psh= ufd  xmm4,xmm0,78

+    &nb= sp;   pxor    xmm4,xmm0

+

+DB      10= 2,15,58,68,198,0

+DB     &= nbsp;102,15,58,68,206,17

+DB    = ;  102,15,58,68,231,16

+

+        pxor  &n= bsp; xmm0,xmm3

+     =    pxor    xmm1,xmm5

+        movdqu  xmm9,XMMWOR= D[r8]

+       &n= bsp;pxor    xmm8,xmm0

+DB  = ;    102,69,15,56,0,202

+ =        movdqu  xmm3,XMMWORD[16+r8]<= br class=3D"">
+

+   &= nbsp;    pxor    xmm8,xmm1

+        pxor  &nbs= p; xmm1,xmm9

+     &n= bsp;  pxor    xmm4,xmm8

+DB      102,65,15,56,0,218

+        movdqa  xmm8,xmm= 4

+        = psrldq  xmm8,8

+     =    pslldq  xmm4,8

+  =       pxor    xmm1,xmm8

+        pxor &nb= sp;  xmm0,xmm4

+

+        movdqa  xmm5,xmm= 3

+

+   = ;     movdqa  xmm9,xmm0

+        movdqa  xmm8,xmm0<= br class=3D"">
+        ps= llq   xmm0,5

+    &nb= sp;   pxor    xmm8,xmm0

+DB      102,15,58,68,218,0
=
+        psllq  &nbs= p;xmm0,1

+       = ; pxor    xmm0,xmm8

+ &nbs= p;      psllq   xmm0,57

+        movdqa  = xmm8,xmm0

+      &nbs= p; pslldq  xmm0,8

+   &nbs= p;    psrldq  xmm8,8

= +        pxor    xmm0,xmm= 9

+        = pshufd  xmm4,xmm5,78

+    =     pxor    xmm1,xmm8

+        pxor   &nb= sp;xmm4,xmm5

+

+ =        movdqa  xmm9,xmm0

+        psrlq &nb= sp; xmm0,1

+DB     &n= bsp;102,15,58,68,234,17

+    &n= bsp;   pxor    xmm1,xmm9

+        pxor    = ;xmm9,xmm0

+      &nb= sp; psrlq   xmm0,5

+  &nbs= p;     pxor    xmm0,xmm9

+        lea  = ;   r8,[32+r8]

+   &n= bsp;    psrlq   xmm0,1

+DB      102,15,58,68,231,0
<= br class=3D"">+        pxor   =  xmm0,xmm1

+

+        sub     r9= ,0x20

+       &n= bsp;ja      NEAR $L$mod_loop

+

+$L$even_tail:

+        movdqa  xmm1,xmm0<= br class=3D"">
+        mo= vdqa  xmm8,xmm4

+     = ;   pshufd  xmm4,xmm0,78

+=        pxor    xmm4,xmm0=

+

+DB  &nbs= p;   102,15,58,68,198,0

+DB &nb= sp;    102,15,58,68,206,17

+DB      102,15,58,68,231,16

+

+      &nb= sp; pxor    xmm0,xmm3

+ &n= bsp;      pxor    xmm1,xmm5
+        pxor=    xmm8,xmm0

+   &nb= sp;    pxor    xmm8,xmm1
<= br class=3D"">+        pxor   =  xmm4,xmm8

+     &nbs= p;  movdqa  xmm8,xmm4

+  &= nbsp;     psrldq  xmm8,8

+        pslldq  xmm4,8
+        pxor=    xmm1,xmm8

+   &nb= sp;    pxor    xmm0,xmm4
<= br class=3D"">+

+     &nbs= p;  movdqa  xmm4,xmm0

+  &= nbsp;     movdqa  xmm3,xmm0
+        psllq   x= mm0,5

+       &n= bsp;pxor    xmm3,xmm0

+  &= nbsp;     psllq   xmm0,1
<= br class=3D"">+        pxor   =  xmm0,xmm3

+     &nbs= p;  psllq   xmm0,57

+ &nbs= p;      movdqa  xmm3,xmm0
=
+        pslldq  xmm= 0,8

+       &nbs= p;psrldq  xmm3,8

+    &nbs= p;   pxor    xmm0,xmm4

+        pxor    x= mm1,xmm3

+

+

+        movdqa=  xmm4,xmm0

+     &nb= sp;  psrlq   xmm0,1

+ &nbs= p;      pxor    xmm1,xmm4

+        pxor &= nbsp;  xmm4,xmm0

+    = ;    psrlq   xmm0,5

+        pxor    x= mm0,xmm4

+       = ; psrlq   xmm0,1

+   =      pxor    xmm0,xmm1

+        test  &nb= sp; r9,r9

+      = ;  jnz     NEAR $L$done

+

+$L$odd_tail:

+        movdqu  xmm8,XMMWOR= D[r8]

+DB      102,69= ,15,56,0,194

+      &= nbsp; pxor    xmm0,xmm8

+ =        movdqa  xmm1,xmm0

+        pshufd &n= bsp;xmm3,xmm0,78

+     &nb= sp;  pxor    xmm3,xmm0

+DB      102,15,58,68,194,0

+DB      102,15,58,68,202,17

+DB      102,15,58,68,223,0

+        pxor &n= bsp;  xmm3,xmm0

+    =     pxor    xmm3,xmm1

+

+      &= nbsp; movdqa  xmm4,xmm3

+  &nbs= p;     psrldq  xmm3,8

+        pslldq  xmm4,8

+        pxor &= nbsp;  xmm1,xmm3

+    = ;    pxor    xmm0,xmm4
+

+      =   movdqa  xmm4,xmm0

+  &nb= sp;     movdqa  xmm3,xmm0

+        psllq   xmm= 0,5

+       &nbs= p;pxor    xmm3,xmm0

+  &nb= sp;     psllq   xmm0,1
+        pxor   &n= bsp;xmm0,xmm3

+      =   psllq   xmm0,57

+  =       movdqa  xmm3,xmm0
+        pslldq  xmm0,= 8

+        = psrldq  xmm3,8

+     =    pxor    xmm0,xmm4

+        pxor    x= mm1,xmm3

+

+

+        movdqa=  xmm4,xmm0

+     &nb= sp;  psrlq   xmm0,1

+ &nbs= p;      pxor    xmm1,xmm4

+        pxor &= nbsp;  xmm4,xmm0

+    = ;    psrlq   xmm0,5

+        pxor    x= mm0,xmm4

+       = ; psrlq   xmm0,1

+   =      pxor    xmm0,xmm1

+$L$done:

+DB   &nb= sp;  102,65,15,56,0,194

+  &nbs= p;     movdqu  XMMWORD[rcx],xmm0

+        movaps  x= mm6,XMMWORD[rsp]

+     &nb= sp;  movaps  xmm7,XMMWORD[16+rsp]

+        movaps  xmm8,XMMWORD[32= +rsp]

+       &n= bsp;movaps  xmm9,XMMWORD[48+rsp]

+  =       movaps  xmm10,XMMWORD[64+rsp]

+        movaps=  xmm11,XMMWORD[80+rsp]

+   &nb= sp;    movaps  xmm12,XMMWORD[96+rsp]

+        movaps  xm= m13,XMMWORD[112+rsp]

+     = ;   movaps  xmm14,XMMWORD[128+rsp]

+        movaps  xmm15,XMM= WORD[144+rsp]

+      =   lea     rsp,[168+rsp]

+$L$SEH_end_gcm_ghash_clmul:

+  &= nbsp;     DB      0F3h,0C= 3h             =   ;repret

+

+

+global  gcm_init_avx

+

+ALIGN   32<= br class=3D"">
+gcm_init_avx:

+<= br class=3D"">
+        jm= p     NEAR $L$_init_clmul

= +

+

+global  = ;gcm_gmult_avx

+

= +ALIGN   32

+gcm_gmult_avx:

+

+    &n= bsp;   jmp     NEAR $L$_gmult_clmul

+

+
+global  gcm_ghash_avx

+

+ALIGN   32

+gcm_ghash_avx:

+

+        jmp     N= EAR $L$_ghash_clmul

+

+

+ALIGN   64
<= br class=3D"">+$L$bswap_mask:

+DB   =    15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0

+$L$0x1c2_polynomial:

+DB  &nbs= p;   1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2

+$L$7_mask:

+     = ;   DD      7,0,7,0
<= br class=3D"">+$L$7_mask_poly:

+   &= nbsp;    DD      7,0,450,0

+ALIGN   64

+

+$L$rem_4bit:

+        DD     &nb= sp;0,0,0,471859200,0,943718400,0,610271232

+ &= nbsp;      DD      0= ,1887436800,0,1822425088,0,1220542464,0,1423966208

+        DD    &nb= sp; 0,3774873600,0,4246732800,0,3644850176,0,3311403008
=
+        DD   &= nbsp;  0,2441084928,0,2376073216,0,2847932416,0,3051356160

+

+$L$rem_8bit:

+        DW
0x0000,0x01C2,0x0384,0x0246,= 0x0708,0x06CA,0x048C,0x054E

+        DW
0x0E10,0x0FD2,0x0D94,0x0C56,= 0x0918,0x08DA,0x0A9C,0x0B5E

+        DW
0x1C20,0x1DE2,0x1FA4,0x1E66,= 0x1B28,0x1AEA,0x18AC,0x196E

+        DW
0x1230,0x13F2,0x11B4,0x1076,= 0x1538,0x14FA,0x16BC,0x177E

+        DW
0x3840,0x3982,0x3BC4,0x3A06,= 0x3F48,0x3E8A,0x3CCC,0x3D0E

+        DW
0x3650,0x3792,0x35D4,0x3416,= 0x3158,0x309A,0x32DC,0x331E

+        DW
0x2460,0x25A2,0x27E4,0x2626,= 0x2368,0x22AA,0x20EC,0x212E

+        DW
0x2A70,0x2BB2,0x29F4,0x2836,= 0x2D78,0x2CBA,0x2EFC,0x2F3E

+        DW
0x7080,0x7142,0x7304,0x72C6,= 0x7788,0x764A,0x740C,0x75CE

+        DW
0x7E90,0x7F52,0x7D14,0x7CD6,= 0x7998,0x785A,0x7A1C,0x7BDE

+        DW
0x6CA0,0x6D62,0x6F24,0x6EE6,= 0x6BA8,0x6A6A,0x682C,0x69EE

+        DW
0x62B0,0x6372,0x6134,0x60F6,= 0x65B8,0x647A,0x663C,0x67FE

+        DW
0x48C0,0x4902,0x4B44,0x4A86,= 0x4FC8,0x4E0A,0x4C4C,0x4D8E

+        DW
0x46D0,0x4712,0x4554,0x4496,= 0x41D8,0x401A,0x425C,0x439E

+        DW
0x54E0,0x5522,0x5764,0x56A6,= 0x53E8,0x522A,0x506C,0x51AE

+        DW
0x5AF0,0x5B32,0x5974,0x58B6,= 0x5DF8,0x5C3A,0x5E7C,0x5FBE

+        DW
0xE100,0xE0C2,0xE284,0xE346,= 0xE608,0xE7CA,0xE58C,0xE44E

+        DW
0xEF10,0xEED2,0xEC94,0xED56,= 0xE818,0xE9DA,0xEB9C,0xEA5E

+        DW
0xFD20,0xFCE2,0xFEA4,0xFF66,= 0xFA28,0xFBEA,0xF9AC,0xF86E

+        DW
0xF330,0xF2F2,0xF0B4,0xF176,= 0xF438,0xF5FA,0xF7BC,0xF67E

+        DW
0xD940,0xD882,0xDAC4,0xDB06,0xDE48,0xDF8A= ,0xDDCC,0xDC0E

+      =   DW
0xD750,0xD692,0xD4D4= ,0xD516,0xD058,0xD19A,0xD3DC,0xD21E

+  &nb= sp;     DW
0xC560,0xC4A2,0xC6E4,0xC726,0xC268,0xC3AA,0xC1EC,0xC02E

+        DW
0xCB70,0xCAB2,0xC8F4,0xC936,0xCC78,0xCDBA,0xCFFC,0xCE= 3E

+        = DW
0x9180,0x9042,0x920= 4,0x93C6,0x9688,0x974A,0x950C,0x94CE

+        DW
0x9F90,0x9E52,0x9C14,0x= 9DD6,0x9898,0x995A,0x9B1C,0x9ADE

+        DW
0x8DA0,0x8C62,0x8E24,0x8FE6= ,0x8AA8,0x8B6A,0x892C,0x88EE

+        DW
0x83B0,0x8272,0x8034,0x81F6,= 0x84B8,0x857A,0x873C,0x86FE

+        DW
0xA9C0,0xA802,0xAA44,0xAB86,0xAEC8,0xAF0A= ,0xAD4C,0xAC8E

+      =   DW
0xA7D0,0xA612,0xA454= ,0xA596,0xA0D8,0xA11A,0xA35C,0xA29E

+  &nb= sp;     DW
0xB5E0,0xB422,0xB664,0xB7A6,0xB2E8,0xB32A,0xB16C,0xB0AE

+        DW
0xBBF0,0xBA32,0xB874,0xB9B6,0xBCF8,0xBD3A,0xBF7C,0xBE= BE

+

+DB  &nb= sp;   71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52
+DB      44,32,67,82,89= ,80,84,79,71,65,77,83,32,98,121,32

+DB  &= nbsp;   60,97,112,112,114,111,64,111,112,101,110,115,115,108= ,46,111

+DB      114,= 103,62,0

+ALIGN   64
<= br class=3D"">+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16
<= br class=3D"">+se_handler:

+    = ;    push    rsi

+        push    r= di

+        = ;push    rbx

+   &nbs= p;    push    rbp

+        push    r= 12

+        = ;push    r13

+   &nbs= p;    push    r14

+        push    r= 15

+        = ;pushfq

+       =  sub     rsp,64

+

+        mov &= nbsp;   rax,QWORD[120+r8]

+ &nb= sp;      mov     rbx,QWOR= D[248+r8]

+

+ &nb= sp;      mov     rsi,QWOR= D[8+r9]

+       =  mov     r11,QWORD[56+r9]

+

+       = ; mov     r10d,DWORD[r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jb    &n= bsp; NEAR $L$in_prologue

+
=
+        mov   =   rax,QWORD[152+r8]

+
=
+        mov   =   r10d,DWORD[4+r11]

+   &n= bsp;    lea     r10,[r10*1+rsi]

+        cmp &= nbsp;   rbx,r10

+   &= nbsp;    jae     NEAR $L$in_prologu= e

+

+   = ;     lea     rax,[((48+280))+= rax]

+

+  &n= bsp;     mov     rbx,QWORD[((-= 8))+rax]

+       = ; mov     rbp,QWORD[((-16))+rax]
+        mov   &nb= sp; r12,QWORD[((-24))+rax]

+   =      mov     r13,QWORD[((-32))= +rax]

+       &n= bsp;mov     r14,QWORD[((-40))+rax]

+        mov    =  r15,QWORD[((-48))+rax]

+   &nb= sp;    mov     QWORD[144+r8],rbx
+        mov =     QWORD[160+r8],rbp

+ &n= bsp;      mov     QWORD[2= 16+r8],r12

+      &nb= sp; mov     QWORD[224+r8],r13

+        mov    =  QWORD[232+r8],r14

+    &n= bsp;   mov     QWORD[240+r8],r15

+

+$L$in_prologue:

+        mov &nb= sp;   rdi,QWORD[8+rax]

+  =       mov     rsi,QWORD[1= 6+rax]

+       &= nbsp;mov     QWORD[152+r8],rax

+        mov    &n= bsp;QWORD[168+r8],rsi

+    &nbs= p;   mov     QWORD[176+r8],rdi

+

+    &n= bsp;   mov     rdi,QWORD[40+r9]

+        mov  = ;   rsi,r8

+    =     mov     ecx,154
<= br class=3D"">+        DD   &n= bsp;  0xa548f3fc

+
+        mov   &nb= sp; rsi,r9

+     &nbs= p;  xor     rcx,rcx

+        mov    &n= bsp;rdx,QWORD[8+rsi]

+     = ;   mov     r8,QWORD[rsi]
=
+        mov   =   r9,QWORD[16+rsi]

+   &nb= sp;    mov     r10,QWORD[40+rsi]
+        lea =     r11,[56+rsi]

+  &= nbsp;     lea     r12,[24+rsi]=

+        m= ov     QWORD[32+rsp],r10

+=        mov     QWOR= D[40+rsp],r11

+      =   mov     QWORD[48+rsp],r12
+        mov   &nb= sp; QWORD[56+rsp],rcx

+    = ;    call    QWORD[__imp_RtlVirtualUnwin= d]

+

+  &nbs= p;     mov     eax,1

+        add  = ;   rsp,64

+    =     popfq

+   &n= bsp;    pop     r15
<= br class=3D"">+        pop   &= nbsp; r14

+      = ;  pop     r13

+=        pop     r12<= br class=3D"">
+        po= p     rbp

+   &n= bsp;    pop     rbx
<= br class=3D"">+        pop   &= nbsp; rdi

+      = ;  pop     rsi

+=        DB      = ;0F3h,0C3h           &nbs= p;   ;repret

+
+

+section .pdata rdata align=3D4=

+ALIGN   4

+        DD    &nb= sp; $L$SEH_begin_gcm_gmult_4bit wrt ..imagebase

+        DD    &nb= sp; $L$SEH_end_gcm_gmult_4bit wrt ..imagebase

+        DD    &nb= sp; $L$SEH_info_gcm_gmult_4bit wrt ..imagebase

+

+       = ; DD      $L$SEH_begin_gcm_ghash_4bit wrt ..i= magebase

+       = ; DD      $L$SEH_end_gcm_ghash_4bit wrt ..ima= gebase

+       &= nbsp;DD      $L$SEH_info_gcm_ghash_4bit wrt ..imag= ebase

+

+  &= nbsp;     DD      $L$SEH_= begin_gcm_init_clmul wrt ..imagebase

+  &= nbsp;     DD      $L$SEH_= end_gcm_init_clmul wrt ..imagebase

+  &nb= sp;     DD      $L$SEH_in= fo_gcm_init_clmul wrt ..imagebase

+

+        DD  =     $L$SEH_begin_gcm_ghash_clmul wrt ..imagebase

+        DD  = ;    $L$SEH_end_gcm_ghash_clmul wrt ..imagebase

+        DD  =     $L$SEH_info_gcm_ghash_clmul wrt ..imagebase

+section .xdata rdata align=3D8

+ALIGN   8

+$L$SEH_info_gcm_= gmult_4bit:

+DB      = 9,0,0,0

+       =  DD      se_handler wrt ..imagebase

+        DD  =     $L$gmult_prologue wrt ..imagebase,$L$gmult_epilogue=
wrt ..imagebase

+$L$SEH_info_gc= m_ghash_4bit:

+DB     &nbs= p;9,0,0,0

+      &nbs= p; DD      se_handler wrt ..imagebase

+        DD  =     $L$ghash_prologue wrt ..imagebase,$L$ghash_epilogue=
wrt ..imagebase

+$L$SEH_info_gc= m_init_clmul:

+DB     &nbs= p;0x01,0x08,0x03,0x00

+DB    &n= bsp; 0x08,0x68,0x00,0x00

+DB   =    0x04,0x22,0x00,0x00

+$L$SEH_= info_gcm_ghash_clmul:

+DB    &n= bsp; 0x01,0x33,0x16,0x00

+DB   =    0x33,0xf8,0x09,0x00

+DB &nbs= p;    0x2e,0xe8,0x08,0x00

= +DB      0x29,0xd8,0x07,0x00

+DB      0x24,0xc8,0x06,0x00

+DB      0x1f,0xb8,0x05,0x00

+DB      0x1a,0xa8,0x04,0x= 00

+DB      0x15,0x98= ,0x03,0x00

+DB      0= x10,0x88,0x02,0x00

+DB     = ; 0x0c,0x78,0x01,0x00

+DB   &nb= sp;  0x08,0x68,0x00,0x00

+DB  &= nbsp;   0x04,0x01,0x15,0x00

dif= f --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb-
x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb-
x86_64.nasm
new file mode 100644
index = 0000000000..f3b7b0e35e
--- /dev/null
+++ b/Cryp= toPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb-
x86_64.nasm
@@ -0,0 +1,= 3137 @@
+; WARNING: do not edit!

+; Generated from openssl/crypto/sha/asm/sha1-mb-x86_64.pl
<= br class=3D"">+;

+; Copyright 2013-2020 The Op= enSSL Project Authors. All Rights
<= /blockquote>Reserved.
+;

+; Licensed under the OpenSSL l= icense (the "License").  You may not use

= +; this file except in compliance with the License.  You can obtain a<= br class=3D"">
copy

+; in the file LICENSE in t= he source distribution or at

+; https://www.openssl.or= g/source/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%def= ine ZMMWORD

+section .text code align=3D64

+

+
+EXTERN  OPENSSL_ia32cap_P

+=

+global  sha1_multi_block
=
+

+ALIGN   32

+sha1_multi_block:

+ &nb= sp;      mov     QWORD[8+= rsp],rdi        ;WIN64 prologue

+        mov  = ;   QWORD[16+rsp],rsi

+  &= nbsp;     mov     rax,rsp

+$L$SEH_begin_sha1_multi_block:

+        mov   &nbs= p; rdi,rcx

+     &nbs= p;  mov     rsi,rdx

+        mov    &n= bsp;rdx,r8

+

+
+

+   &nb= sp;    mov     rcx,QWORD[((OPENSSL_= ia32cap_P+4))]

+      = ;  bt      rcx,61

+        jc    &nb= sp; NEAR _shaext_shortcut

+   &= nbsp;    mov     rax,rsp

+

+    &n= bsp;   push    rbx

+

+       &nb= sp;push    rbp

+
=
+        lea   =   rsp,[((-168))+rsp]

+   &= nbsp;    movaps  XMMWORD[rsp],xmm6
<= br class=3D"">+        movaps  XMMW= ORD[16+rsp],xmm7

+     &nb= sp;  movaps  XMMWORD[32+rsp],xmm8

+        movaps  XMMWORD[48+rsp]= ,xmm9

+       &n= bsp;movaps  XMMWORD[(-120)+rax],xmm10

+ &= nbsp;      movaps  XMMWORD[(-104)+rax],x= mm11

+       &nb= sp;movaps  XMMWORD[(-88)+rax],xmm12

+ &nb= sp;      movaps  XMMWORD[(-72)+rax],xmm1= 3

+        = movaps  XMMWORD[(-56)+rax],xmm14

+  =       movaps  XMMWORD[(-40)+rax],xmm15
+        sub=     rsp,288

+   = ;     and     rsp,-256

+        mov  = ;   QWORD[272+rsp],rax

+

+$L$body:

+   = ;     lea     rbp,[K_XX_XX]
+        lea =     rbx,[256+rsp]

+

+$L$oop_grande:

+  = ;      mov     DWORD[280+= rsp],edx

+       = ; xor     edx,edx

+ &= nbsp;      mov     r8,QWO= RD[rsi]

+       =  mov     ecx,DWORD[8+rsi]

+        cmp    &n= bsp;ecx,edx

+      &n= bsp; cmovg   edx,ecx

+  &n= bsp;     test    ecx,ecx

+        mov  = ;   DWORD[rbx],ecx

+  &nbs= p;     cmovle  r8,rbp

+        mov    &n= bsp;r9,QWORD[16+rsi]

+     = ;   mov     ecx,DWORD[24+rsi]

+        cmp  = ;   ecx,edx

+    = ;    cmovg   edx,ecx

+        test    e= cx,ecx

+       &= nbsp;mov     DWORD[4+rbx],ecx

+        cmovle  r9,rbp

+        mov &n= bsp;   r10,QWORD[32+rsi]

+ &nbs= p;      mov     ecx,DWORD= [40+rsi]

+       = ; cmp     ecx,edx

+ &= nbsp;      cmovg   edx,ecx

+        test &nbs= p;  ecx,ecx

+    &nbs= p;   mov     DWORD[8+rbx],ecx

+        cmovle &n= bsp;r10,rbp

+      &n= bsp; mov     r11,QWORD[48+rsi]

+        mov    = ; ecx,DWORD[56+rsi]

+    &= nbsp;   cmp     ecx,edx
+        cmovg   = edx,ecx

+       =  test    ecx,ecx

+  &= nbsp;     mov     DWORD[12+rbx= ],ecx

+       &n= bsp;cmovle  r11,rbp

+    &= nbsp;   test    edx,edx

+        jz    &n= bsp; NEAR $L$done

+

+        movdqu  xmm10,XMMW= ORD[rdi]

+       = ; lea     rax,[128+rsp]

+        movdqu  xmm11,XMMWORD[3= 2+rdi]

+       &= nbsp;movdqu  xmm12,XMMWORD[64+rdi]

+ &nbs= p;      movdqu  xmm13,XMMWORD[96+rdi]
+        movd= qu  xmm14,XMMWORD[128+rdi]

+   =      movdqa  xmm5,XMMWORD[96+rbp]

+        movdqa  = xmm15,XMMWORD[((-32))+rbp]

+    = ;    jmp     NEAR $L$oop

+

+ALIGN   32<= br class=3D"">
+$L$oop:

+  =       movd    xmm0,DWORD[r8]
+        lea=     r8,[64+r8]

+  &n= bsp;     movd    xmm2,DWORD[r9]

+        lea &= nbsp;   r9,[64+r9]

+  &nbs= p;     movd    xmm3,DWORD[r10]

+        lea &n= bsp;   r10,[64+r10]

+  &nb= sp;     movd    xmm4,DWORD[r11]

+        lea &= nbsp;   r11,[64+r11]

+  &n= bsp;     punpckldq      &= nbsp;xmm0,xmm3

+      = ;  movd    xmm1,DWORD[((-60))+r8]
+        punpckldq  &n= bsp;    xmm2,xmm4

+  =       movd    xmm9,DWORD[((-60= ))+r9]

+       &= nbsp;punpckldq       xmm0,xmm2
=
+        movd   = ; xmm8,DWORD[((-60))+r10]

+DB   = ;   102,15,56,0,197

+  &nb= sp;     movd    xmm7,DWORD[((-60))+= r11]

+       &nb= sp;punpckldq       xmm1,xmm8
+        movdqa  xmm8,= xmm10

+       &n= bsp;paddd   xmm14,xmm15

+  &nbs= p;     punpckldq      &nb= sp;xmm9,xmm7

+      &= nbsp; movdqa  xmm7,xmm11

+  &nb= sp;     movdqa  xmm6,xmm11

+        pslld   xm= m8,5

+       &nb= sp;pandn   xmm7,xmm13

+   =      pand    xmm6,xmm12

+        punpckldq &nb= sp;     xmm1,xmm9

+ &= nbsp;      movdqa  xmm9,xmm10

+

+    &n= bsp;   movdqa  XMMWORD[(0-128)+rax],xmm0
=
+        paddd  &nbs= p;xmm14,xmm0

+      &= nbsp; movd    xmm2,DWORD[((-56))+r8]

+        psrld   xm= m9,27

+       &n= bsp;pxor    xmm6,xmm7

+  &= nbsp;     movdqa  xmm7,xmm11
+

+      = ;  por     xmm8,xmm9

+        movd    x= mm9,DWORD[((-56))+r9]

+    &nbs= p;   pslld   xmm7,30

= +        paddd   xmm14,xmm6
+

+   &nb= sp;    psrld   xmm11,2

+        paddd   xmm14,= xmm8

+DB      102,15,= 56,0,205

+       = ; movd    xmm8,DWORD[((-56))+r10]

+        por    &= nbsp;xmm11,xmm7

+     &nbs= p;  movd    xmm7,DWORD[((-56))+r11]
=
+        punpckldq  =      xmm2,xmm8

+ &nbs= p;      movdqa  xmm8,xmm14

+        paddd  &nb= sp;xmm13,xmm15

+      = ;  punpckldq       xmm9,xmm7

+        movdqa &= nbsp;xmm7,xmm10

+     &nbs= p;  movdqa  xmm6,xmm10

+  =       pslld   xmm8,5
=
+        pandn  &nbs= p;xmm7,xmm12

+      &= nbsp; pand    xmm6,xmm11

+=        punpckldq    &nbs= p;  xmm2,xmm9

+    &n= bsp;   movdqa  xmm9,xmm14

= +

+        = movdqa  XMMWORD[(16-128)+rax],xmm1

+ &nbs= p;      paddd   xmm13,xmm1

+        movd &nbs= p;  xmm3,DWORD[((-52))+r8]

+  &= nbsp;     psrld   xmm9,27
=
+        pxor   = ; xmm6,xmm7

+     &nb= sp;  movdqa  xmm7,xmm10

+

+        por &nb= sp;   xmm8,xmm9

+   &= nbsp;    movd    xmm9,DWORD[((-52))+r9]<= br class=3D"">
+        ps= lld   xmm7,30

+    &n= bsp;   paddd   xmm13,xmm6

+

+       = ; psrld   xmm10,2

+   = ;     paddd   xmm13,xmm8
<= br class=3D"">+DB      102,15,56,0,213

+        movd  &n= bsp; xmm8,DWORD[((-52))+r10]

+  &nbs= p;     por     xmm10,xmm7

+        movd &= nbsp;  xmm7,DWORD[((-52))+r11]

+ &nb= sp;      punpckldq     &n= bsp; xmm3,xmm8

+     =    movdqa  xmm8,xmm13

+ &n= bsp;      paddd   xmm12,xmm15

+        punpckl= dq       xmm9,xmm7

+        movdqa  xmm7,xmm14

+        movdqa=  xmm6,xmm14

+     &n= bsp;  pslld   xmm8,5

+ &nb= sp;      pandn   xmm7,xmm11

+        pand &nbs= p;  xmm6,xmm10

+    &= nbsp;   punpckldq       xmm3,x= mm9

+       &nbs= p;movdqa  xmm9,xmm13

+

+        movdqa  XMMWORD= [(32-128)+rax],xmm2

+     =    paddd   xmm12,xmm2

+        movd    xmm4,DW= ORD[((-48))+r8]

+     &nbs= p;  psrld   xmm9,27

+ &nbs= p;      pxor    xmm6,xmm7

+        movdqa=  xmm7,xmm14

+

+        por     = xmm8,xmm9

+      &nbs= p; movd    xmm9,DWORD[((-48))+r9]

+        pslld   xmm7,= 30

+        = ;paddd   xmm12,xmm6

+
=
+        psrld  &nbs= p;xmm14,2

+      &nbs= p; paddd   xmm12,xmm8

+DB  = ;    102,15,56,0,221

+ &nb= sp;      movd    xmm8,DWORD[((= -48))+r10]

+      &nb= sp; por     xmm14,xmm7

+        movd    xmm7,D= WORD[((-48))+r11]

+     &n= bsp;  punpckldq       xmm4,xmm8

+        movdq= a  xmm8,xmm12

+     &= nbsp;  paddd   xmm11,xmm15

+        punpckldq    &n= bsp;  xmm9,xmm7

+    =     movdqa  xmm7,xmm13

+        movdqa  xmm6,xmm13

+        pslld &= nbsp; xmm8,5

+     &n= bsp;  pandn   xmm7,xmm10

+=        pand    xmm6,xmm1= 4

+        = punpckldq       xmm4,xmm9

+        movdqa  xmm9,xmm= 12

+

+  &nbs= p;     movdqa  XMMWORD[(48-128)+rax],xmm3

+        paddd=   xmm11,xmm3

+    &n= bsp;   movd    xmm0,DWORD[((-44))+r8]

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm7

+        movdqa  xmm7,xmm13

+

+    =     por     xmm8,xmm9

+        movd  &nbs= p; xmm9,DWORD[((-44))+r9]

+   &= nbsp;    pslld   xmm7,30

+        paddd   xmm1= 1,xmm6

+

+  =       psrld   xmm13,2

+        paddd  &nb= sp;xmm11,xmm8

+DB     &nbs= p;102,15,56,0,229

+     &n= bsp;  movd    xmm8,DWORD[((-44))+r10]

+        por  &nbs= p;  xmm13,xmm7

+    &= nbsp;   movd    xmm7,DWORD[((-44))+r11]

+        punpckl= dq       xmm0,xmm8

+        movdqa  xmm8,xmm11

+        paddd =   xmm10,xmm15

+    &n= bsp;   punpckldq       xmm9,xm= m7

+        = ;movdqa  xmm7,xmm12

+    &= nbsp;   movdqa  xmm6,xmm12

+        pslld   xmm8,5

+        pandn &= nbsp; xmm7,xmm14

+    &nbs= p;   pand    xmm6,xmm13

+        punpckldq   &= nbsp;   xmm0,xmm9

+   = ;     movdqa  xmm9,xmm11

+

+      &nb= sp; movdqa  XMMWORD[(64-128)+rax],xmm4

+        paddd   xmm10,xmm4=

+        m= ovd    xmm1,DWORD[((-40))+r8]

+=        psrld   xmm9,27

+        pxor &nb= sp;  xmm6,xmm7

+    &= nbsp;   movdqa  xmm7,xmm12

+

+        = ;por     xmm8,xmm9

+  = ;      movd    xmm9,DWORD[((-4= 0))+r9]

+       =  pslld   xmm7,30

+   =      paddd   xmm10,xmm6
+

+      = ;  psrld   xmm12,2

+  = ;      paddd   xmm10,xmm8

+DB      102,15,56,0,197

+        movd =    xmm8,DWORD[((-40))+r10]

+ &n= bsp;      por     xmm12,x= mm7

+       &nbs= p;movd    xmm7,DWORD[((-40))+r11]

+        punpckldq    =    xmm1,xmm8

+   &nbs= p;    movdqa  xmm8,xmm10

+        paddd   xmm14,= xmm15

+       &n= bsp;punpckldq       xmm9,xmm7
<= br class=3D"">+        movdqa  xmm7= ,xmm11

+       &= nbsp;movdqa  xmm6,xmm11

+   &nb= sp;    pslld   xmm8,5

+        pandn   xmm7,x= mm13

+       &nb= sp;pand    xmm6,xmm12

+  &= nbsp;     punpckldq      =  xmm1,xmm9

+     &nbs= p;  movdqa  xmm9,xmm10

+

+        movdqa &= nbsp;XMMWORD[(80-128)+rax],xmm0

+   =      paddd   xmm14,xmm0
+        movd   &= nbsp;xmm2,DWORD[((-36))+r8]

+   &nbs= p;    psrld   xmm9,27

+        pxor    x= mm6,xmm7

+       = ; movdqa  xmm7,xmm11

+

+        por   = ;  xmm8,xmm9

+    &nb= sp;   movd    xmm9,DWORD[((-36))+r9]

+        pslld &nb= sp; xmm7,30

+     &nb= sp;  paddd   xmm14,xmm6

+<= br class=3D"">
+        ps= rld   xmm11,2

+    &n= bsp;   paddd   xmm14,xmm8

+DB      102,15,56,0,205

+        movd   &nb= sp;xmm8,DWORD[((-36))+r10]

+    = ;    por     xmm11,xmm7

+        movd  &n= bsp; xmm7,DWORD[((-36))+r11]

+  &nbs= p;     punpckldq      &nb= sp;xmm2,xmm8

+      &= nbsp; movdqa  xmm8,xmm14

+  &nb= sp;     paddd   xmm13,xmm15

+        punpckldq &nbs= p;     xmm9,xmm7

+ &n= bsp;      movdqa  xmm7,xmm10

+        movdqa  = xmm6,xmm10

+      &nb= sp; pslld   xmm8,5

+  &nbs= p;     pandn   xmm7,xmm12
=
+        pand   = ; xmm6,xmm11

+     &n= bsp;  punpckldq       xmm2,xmm9

+        movdq= a  xmm9,xmm14

+

+        movdqa  XMMWORD[(96= -128)+rax],xmm1

+     &nbs= p;  paddd   xmm13,xmm1

+ &= nbsp;      movd    xmm3,DWORD[= ((-32))+r8]

+      &n= bsp; psrld   xmm9,27

+  &n= bsp;     pxor    xmm6,xmm7

+        movdqa &n= bsp;xmm7,xmm10

+

= +        por     xmm= 8,xmm9

+       &= nbsp;movd    xmm9,DWORD[((-32))+r9]

+        pslld   xmm7,3= 0

+        = paddd   xmm13,xmm6

+
<= br class=3D"">+        psrld   = ;xmm10,2

+       = ; paddd   xmm13,xmm8

+DB  =     102,15,56,0,213

+ &nbs= p;      movd    xmm8,DWORD[((-= 32))+r10]

+      &nbs= p; por     xmm10,xmm7

+        movd    xmm7,DW= ORD[((-32))+r11]

+     &nb= sp;  punpckldq       xmm3,xmm8

+        movdqa=  xmm8,xmm13

+     &n= bsp;  paddd   xmm12,xmm15

= +        punpckldq    &nb= sp;  xmm9,xmm7

+    &= nbsp;   movdqa  xmm7,xmm14

+        movdqa  xmm6,xmm14

+        pslld &n= bsp; xmm8,5

+     &nb= sp;  pandn   xmm7,xmm11

+ =        pand    xmm6,xmm10=

+        p= unpckldq       xmm3,xmm9

+        movdqa  xmm9,xmm1= 3

+

+   = ;     movdqa  XMMWORD[(112-128)+rax],xmm2

+        paddd=   xmm12,xmm2

+    &n= bsp;   movd    xmm4,DWORD[((-28))+r8]

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm7

+        movdqa  xmm7,xmm14

+

+    =     por     xmm8,xmm9

+        movd  &nbs= p; xmm9,DWORD[((-28))+r9]

+   &= nbsp;    pslld   xmm7,30

+        paddd   xmm1= 2,xmm6

+

+  =       psrld   xmm14,2

+        paddd  &nb= sp;xmm12,xmm8

+DB     &nbs= p;102,15,56,0,221

+     &n= bsp;  movd    xmm8,DWORD[((-28))+r10]

+        por  &nbs= p;  xmm14,xmm7

+    &= nbsp;   movd    xmm7,DWORD[((-28))+r11]

+        punpckl= dq       xmm4,xmm8

+        movdqa  xmm8,xmm12

+        paddd =   xmm11,xmm15

+    &n= bsp;   punpckldq       xmm9,xm= m7

+        = ;movdqa  xmm7,xmm13

+    &= nbsp;   movdqa  xmm6,xmm13

+        pslld   xmm8,5

+        pandn &= nbsp; xmm7,xmm10

+    &nbs= p;   pand    xmm6,xmm14

+        punpckldq   &= nbsp;   xmm4,xmm9

+   = ;     movdqa  xmm9,xmm12

+

+      &nb= sp; movdqa  XMMWORD[(128-128)+rax],xmm3

+        paddd   xmm11,= xmm3

+       &nb= sp;movd    xmm0,DWORD[((-24))+r8]

+        psrld   xmm9,27
+        pxor=    xmm6,xmm7

+   &nb= sp;    movdqa  xmm7,xmm13

+

+       = ; por     xmm8,xmm9

+=        movd    xmm9,DWOR= D[((-24))+r9]

+      =   pslld   xmm7,30

+  =       paddd   xmm11,xmm6

+

+    &n= bsp;   psrld   xmm13,2

+        paddd   xmm11,xmm8<= br class=3D"">
+DB      102,15,56,0,= 229

+       &nbs= p;movd    xmm8,DWORD[((-24))+r10]

+        por     = xmm13,xmm7

+      &nb= sp; movd    xmm7,DWORD[((-24))+r11]

+        punpckldq   = ;    xmm0,xmm8

+  &nb= sp;     movdqa  xmm8,xmm11

+        paddd   xm= m10,xmm15

+      &nbs= p; punpckldq       xmm9,xmm7

+        movdqa  = xmm7,xmm12

+      &nb= sp; movdqa  xmm6,xmm12

+   = ;     pslld   xmm8,5

+        pandn   xmm= 7,xmm14

+       =  pand    xmm6,xmm13

+ &nbs= p;      punpckldq     &nb= sp; xmm0,xmm9

+     &= nbsp;  movdqa  xmm9,xmm11

+

+        movdq= a  XMMWORD[(144-128)+rax],xmm4

+  &n= bsp;     paddd   xmm10,xmm4

+        movd  &nb= sp; xmm1,DWORD[((-20))+r8]

+   =      psrld   xmm9,27

+        pxor   &nbs= p;xmm6,xmm7

+      &n= bsp; movdqa  xmm7,xmm12

+

+        por  = ;   xmm8,xmm9

+   &nb= sp;    movd    xmm9,DWORD[((-20))+r9]
+        psll= d   xmm7,30

+    &nbs= p;   paddd   xmm10,xmm6

+

+       &nb= sp;psrld   xmm12,2

+   &nb= sp;    paddd   xmm10,xmm8

+DB      102,15,56,0,197
<= br class=3D"">+        movd   =  xmm8,DWORD[((-20))+r10]

+   &n= bsp;    por     xmm12,xmm7

+        movd &nbs= p;  xmm7,DWORD[((-20))+r11]

+  =       punpckldq      = ; xmm1,xmm8

+     &nb= sp;  movdqa  xmm8,xmm10

+  = ;      paddd   xmm14,xmm15

+        punpckldq=       xmm9,xmm7

+        movdqa  xmm7,xmm11

+        movdqa &= nbsp;xmm6,xmm11

+     &nbs= p;  pslld   xmm8,5

+  = ;      pandn   xmm7,xmm13

+        pand &nbs= p;  xmm6,xmm12

+    &= nbsp;   punpckldq       xmm1,x= mm9

+       &nbs= p;movdqa  xmm9,xmm10

+

+        movdqa  XMMWORD= [(160-128)+rax],xmm0

+     = ;   paddd   xmm14,xmm0

+        movd    xmm2,D= WORD[((-16))+r8]

+     &nb= sp;  psrld   xmm9,27

+ &nb= sp;      pxor    xmm6,xmm7

+        movdq= a  xmm7,xmm11

+

+        por    &n= bsp;xmm8,xmm9

+      =   movd    xmm9,DWORD[((-16))+r9]
+        pslld   x= mm7,30

+       &= nbsp;paddd   xmm14,xmm6

+

+        psrld &nb= sp; xmm11,2

+     &nb= sp;  paddd   xmm14,xmm8

+D= B      102,15,56,0,205

+        movd    xmm8,D= WORD[((-16))+r10]

+     &n= bsp;  por     xmm11,xmm7

+        movd    = ;xmm7,DWORD[((-16))+r11]

+    &= nbsp;   punpckldq       xmm2,x= mm8

+       &nbs= p;movdqa  xmm8,xmm14

+    =     paddd   xmm13,xmm15

+        punpckldq   &= nbsp;   xmm9,xmm7

+   = ;     movdqa  xmm7,xmm10

+        movdqa  xmm6,xmm1= 0

+        = pslld   xmm8,5

+    &= nbsp;   pandn   xmm7,xmm12

+        pand    x= mm6,xmm11

+      &nbs= p; punpckldq       xmm2,xmm9

+        movdqa  = xmm9,xmm14

+

+ &n= bsp;      movdqa  XMMWORD[(176-128)+rax]= ,xmm1

+       &n= bsp;paddd   xmm13,xmm1

+   = ;     movd    xmm3,DWORD[((-12))+r8= ]

+        = psrld   xmm9,27

+    =     pxor    xmm6,xmm7

+        movdqa  xmm7,xm= m10

+

+  &nb= sp;     por     xmm8,xmm9

+        movd &= nbsp;  xmm9,DWORD[((-12))+r9]

+ &nbs= p;      pslld   xmm7,30

+        paddd  &= nbsp;xmm13,xmm6

+

+        psrld   xmm10,2

+        paddd =   xmm13,xmm8

+DB    &= nbsp; 102,15,56,0,213

+    = ;    movd    xmm8,DWORD[((-12))+r10]

+        por &= nbsp;   xmm10,xmm7

+  &nbs= p;     movd    xmm7,DWORD[((-12))+r= 11]

+       &nbs= p;punpckldq       xmm3,xmm8
+        movdqa  xmm8,x= mm13

+       &nb= sp;paddd   xmm12,xmm15

+   = ;     punpckldq      &nbs= p;xmm9,xmm7

+      &n= bsp; movdqa  xmm7,xmm14

+  &nbs= p;     movdqa  xmm6,xmm14

+        pslld   xmm= 8,5

+       &nbs= p;pandn   xmm7,xmm11

+   &= nbsp;    pand    xmm6,xmm10

+        punpckldq &nbs= p;     xmm3,xmm9

+ &n= bsp;      movdqa  xmm9,xmm13

+

+     =    movdqa  XMMWORD[(192-128)+rax],xmm2
+        paddd   = xmm12,xmm2

+      &nb= sp; movd    xmm4,DWORD[((-8))+r8]

+        psrld   xmm9,= 27

+        = ;pxor    xmm6,xmm7

+  &nbs= p;     movdqa  xmm7,xmm14

+

+      &n= bsp; por     xmm8,xmm9

+        movd    xmm9,D= WORD[((-8))+r9]

+     &nbs= p;  pslld   xmm7,30

+ &nbs= p;      paddd   xmm12,xmm6

+

+    &n= bsp;   psrld   xmm14,2

+        paddd   xmm12,xmm8<= br class=3D"">
+DB      102,15,56,0,= 221

+       &nbs= p;movd    xmm8,DWORD[((-8))+r10]

+        por     x= mm14,xmm7

+      &nbs= p; movd    xmm7,DWORD[((-8))+r11]

+        punpckldq   &= nbsp;   xmm4,xmm8

+   = ;     movdqa  xmm8,xmm12

+        paddd   xmm1= 1,xmm15

+       =  punpckldq       xmm9,xmm7

+        movdqa  xm= m7,xmm13

+       = ; movdqa  xmm6,xmm13

+   &= nbsp;    pslld   xmm8,5

+        pandn   xmm7,= xmm10

+       &n= bsp;pand    xmm6,xmm14

+  =       punpckldq      = ; xmm4,xmm9

+     &nb= sp;  movdqa  xmm9,xmm12

+

+        movdqa =  XMMWORD[(208-128)+rax],xmm3

+  &nbs= p;     paddd   xmm11,xmm3
=
+        movd   = ; xmm0,DWORD[((-4))+r8]

+   &nb= sp;    psrld   xmm9,27

+        pxor    x= mm6,xmm7

+       = ; movdqa  xmm7,xmm13

+

+        por   = ;  xmm8,xmm9

+    &nb= sp;   movd    xmm9,DWORD[((-4))+r9]

+        pslld &nb= sp; xmm7,30

+     &nb= sp;  paddd   xmm11,xmm6

+<= br class=3D"">
+        ps= rld   xmm13,2

+    &n= bsp;   paddd   xmm11,xmm8

+DB      102,15,56,0,229

+        movd   &nb= sp;xmm8,DWORD[((-4))+r10]

+    =     por     xmm13,xmm7

+        movdqa  x= mm1,XMMWORD[((0-128))+rax]

+    = ;    movd    xmm7,DWORD[((-4))+r11]

+        punpck= ldq       xmm0,xmm8

+        movdqa  xmm8,xmm11<= br class=3D"">
+        pa= ddd   xmm10,xmm15

+   &nbs= p;    punpckldq       xmm= 9,xmm7

+       &= nbsp;movdqa  xmm7,xmm12

+   &nb= sp;    movdqa  xmm6,xmm12

+        pslld   xmm8,5=

+        p= refetcht0      [63+r8]

+        pandn   xmm7,xmm14<= br class=3D"">
+        pa= nd    xmm6,xmm13

+   =      punpckldq       = ;xmm0,xmm9

+      &nb= sp; movdqa  xmm9,xmm11

+

+        movdqa  = XMMWORD[(224-128)+rax],xmm4

+   &nbs= p;    paddd   xmm10,xmm4

+        psrld   xmm9= ,27

+       &nbs= p;pxor    xmm6,xmm7

+  &nb= sp;     movdqa  xmm7,xmm12

+        prefetcht0  &nb= sp;   [63+r9]

+
<= br class=3D"">+        por   &= nbsp; xmm8,xmm9

+     = ;   pslld   xmm7,30

+=        paddd   xmm10,xmm6

+        prefe= tcht0      [63+r10]

+=

+        p= srld   xmm12,2

+    &= nbsp;   paddd   xmm10,xmm8

+DB      102,15,56,0,197

+        prefetcht0  &nb= sp;   [63+r11]

+   &n= bsp;    por     xmm12,xmm7

+        movdqa &n= bsp;xmm2,XMMWORD[((16-128))+rax]

+   = ;     pxor    xmm1,xmm3

+        movdqa  = xmm3,XMMWORD[((32-128))+rax]

+
<= br class=3D"">+        movdqa  xmm8= ,xmm10

+       &= nbsp;pxor    xmm1,XMMWORD[((128-128))+rax]
+        paddd   x= mm14,xmm15

+      &nb= sp; movdqa  xmm7,xmm11

+   = ;     pslld   xmm8,5

+        pxor   &nbs= p;xmm1,xmm3

+      &n= bsp; movdqa  xmm6,xmm11

+  &nbs= p;     pandn   xmm7,xmm13
=
+        movdqa  xmm= 5,xmm1

+       &= nbsp;pand    xmm6,xmm12

+  = ;      movdqa  xmm9,xmm10
=
+        psrld  &nbs= p;xmm5,31

+      &nbs= p; paddd   xmm1,xmm1

+

+        movdqa &n= bsp;XMMWORD[(240-128)+rax],xmm0

+   =      paddd   xmm14,xmm0
+        psrld   = xmm9,27

+       =  pxor    xmm6,xmm7

+

+        movdqa =  xmm7,xmm11

+     &nb= sp;  por     xmm8,xmm9

+        pslld   xmm7,3= 0

+        = paddd   xmm14,xmm6

+
<= br class=3D"">+        psrld   = ;xmm11,2

+       = ; paddd   xmm14,xmm8

+  &n= bsp;     por     xmm1,xmm5

+        por &= nbsp;   xmm11,xmm7

+  &nbs= p;     pxor    xmm2,xmm4

+        movdqa &n= bsp;xmm4,XMMWORD[((48-128))+rax]

+

+        movdqa  = xmm8,xmm14

+      &nb= sp; pxor    xmm2,XMMWORD[((144-128))+rax]

+        paddd  &nb= sp;xmm13,xmm15

+      = ;  movdqa  xmm7,xmm10

+  &= nbsp;     pslld   xmm8,5
<= br class=3D"">+        pxor   =  xmm2,xmm4

+     &nbs= p;  movdqa  xmm6,xmm10

+  =       pandn   xmm7,xmm12

+        movdqa &n= bsp;xmm5,xmm2

+      =   pand    xmm6,xmm11

= +        movdqa  xmm9,xmm14

+        psrld &nb= sp; xmm5,31

+     &nb= sp;  paddd   xmm2,xmm2

+
+        mov= dqa  XMMWORD[(0-128)+rax],xmm1

+  &n= bsp;     paddd   xmm13,xmm1

+        psrld  &n= bsp;xmm9,27

+      &n= bsp; pxor    xmm6,xmm7

+
+        mov= dqa  xmm7,xmm10

+     = ;   por     xmm8,xmm9

+        pslld   xm= m7,30

+       &n= bsp;paddd   xmm13,xmm6

+

+        psrld  &= nbsp;xmm10,2

+      &= nbsp; paddd   xmm13,xmm8

+ &nbs= p;      por     xmm2,xmm5=

+        p= or     xmm10,xmm7

+  =       pxor    xmm3,xmm0

+        movdqa &= nbsp;xmm0,XMMWORD[((64-128))+rax]

+

+        movdqa &n= bsp;xmm8,xmm13

+      = ;  pxor    xmm3,XMMWORD[((160-128))+rax]

+        paddd &nb= sp; xmm12,xmm15

+     = ;   movdqa  xmm7,xmm14

+ &= nbsp;      pslld   xmm8,5

+        pxor &nbs= p;  xmm3,xmm0

+    &n= bsp;   movdqa  xmm6,xmm14

= +        pandn   xmm7,xmm11
+        movd= qa  xmm5,xmm3

+     &= nbsp;  pand    xmm6,xmm10

+        movdqa  xmm9,xmm13<= br class=3D"">
+        ps= rld   xmm5,31

+    &n= bsp;   paddd   xmm3,xmm3

+

+       = ; movdqa  XMMWORD[(16-128)+rax],xmm2

+        paddd   xmm12,xmm2
+        psr= ld   xmm9,27

+    &nb= sp;   pxor    xmm6,xmm7

+

+      &nbs= p; movdqa  xmm7,xmm14

+   =      por     xmm8,xmm9

+        pslld &nb= sp; xmm7,30

+     &nb= sp;  paddd   xmm12,xmm6

+<= br class=3D"">
+        ps= rld   xmm14,2

+    &n= bsp;   paddd   xmm12,xmm8

+        por    &n= bsp;xmm3,xmm5

+      =   por     xmm14,xmm7

+        pxor    x= mm4,xmm1

+       = ; movdqa  xmm1,XMMWORD[((80-128))+rax]

+

+       &nb= sp;movdqa  xmm8,xmm12

+    = ;    pxor    xmm4,XMMWORD[((176-128))+ra= x]

+        = ;paddd   xmm11,xmm15

+   &= nbsp;    movdqa  xmm7,xmm13

+        pslld   xmm8,5=

+        p= xor    xmm4,xmm1

+   =      movdqa  xmm6,xmm13

+        pandn   xmm7,= xmm10

+       &n= bsp;movdqa  xmm5,xmm4

+    = ;    pand    xmm6,xmm14
+        movdqa  xmm9,= xmm12

+       &n= bsp;psrld   xmm5,31

+   &n= bsp;    paddd   xmm4,xmm4

+

+      &n= bsp; movdqa  XMMWORD[(32-128)+rax],xmm3

+        paddd   xmm11,= xmm3

+       &nb= sp;psrld   xmm9,27

+   &nb= sp;    pxor    xmm6,xmm7
<= br class=3D"">+

+     &nbs= p;  movdqa  xmm7,xmm13

+  =       por     xmm8,xmm9
+        psl= ld   xmm7,30

+    &nb= sp;   paddd   xmm11,xmm6

+

+       = ; psrld   xmm13,2

+   = ;     paddd   xmm11,xmm8
<= br class=3D"">+        por   &= nbsp; xmm4,xmm5

+     = ;   por     xmm13,xmm7
+        pxor   &n= bsp;xmm0,xmm2

+      =   movdqa  xmm2,XMMWORD[((96-128))+rax]

+

+      &nbs= p; movdqa  xmm8,xmm11

+   =      pxor    xmm0,XMMWORD[((192-128= ))+rax]

+       =  paddd   xmm10,xmm15

+  &n= bsp;     movdqa  xmm7,xmm12
+        pslld   x= mm8,5

+       &n= bsp;pxor    xmm0,xmm2

+  &= nbsp;     movdqa  xmm6,xmm12
+        pandn   = xmm7,xmm14

+      &nb= sp; movdqa  xmm5,xmm0

+   =      pand    xmm6,xmm13

+        movdqa  = xmm9,xmm11

+      &nb= sp; psrld   xmm5,31

+  &nb= sp;     paddd   xmm0,xmm0
=
+

+     &nb= sp;  movdqa  XMMWORD[(48-128)+rax],xmm4

+        paddd   xmm1= 0,xmm4

+       &= nbsp;psrld   xmm9,27

+   &= nbsp;    pxor    xmm6,xmm7

+

+     &n= bsp;  movdqa  xmm7,xmm12

+ &nbs= p;      por     xmm8,xmm9=

+        p= slld   xmm7,30

+    &= nbsp;   paddd   xmm10,xmm6

+

+       = ; psrld   xmm12,2

+   = ;     paddd   xmm10,xmm8
<= br class=3D"">+        por   &= nbsp; xmm0,xmm5

+     = ;   por     xmm12,xmm7
+        movdqa  xmm15,= XMMWORD[rbp]

+      &= nbsp; pxor    xmm1,xmm3

+ =        movdqa  xmm3,XMMWORD[((112-1= 28))+rax]

+

+ &nb= sp;      movdqa  xmm8,xmm10

+        movdqa  x= mm6,xmm13

+      &nbs= p; pxor    xmm1,XMMWORD[((208-128))+rax]
=
+        paddd  &nbs= p;xmm14,xmm15

+      =   pslld   xmm8,5

+  &= nbsp;     pxor    xmm6,xmm11

+

+    &= nbsp;   movdqa  xmm9,xmm10

+        movdqa  XMMWORD[(64-128)+= rax],xmm0

+      &nbs= p; paddd   xmm14,xmm0

+  &= nbsp;     pxor    xmm1,xmm3

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm12

+        movdqa  xmm7,xmm11

+

+    = ;    pslld   xmm7,30

+        movdqa  xmm5,xmm1
+        por=     xmm8,xmm9

+  &nb= sp;     psrld   xmm5,31
+        paddd   = xmm14,xmm6

+      &nb= sp; paddd   xmm1,xmm1

+

+        psrld &nb= sp; xmm11,2

+     &nb= sp;  paddd   xmm14,xmm8

+ =        por     xmm1,= xmm5

+       &nb= sp;por     xmm11,xmm7

+ &n= bsp;      pxor    xmm2,xmm4
+        movd= qa  xmm4,XMMWORD[((128-128))+rax]

+

+        movdqa =  xmm8,xmm14

+     &nb= sp;  movdqa  xmm6,xmm12

+  = ;      pxor    xmm2,XMMWORD[((= 224-128))+rax]

+      = ;  paddd   xmm13,xmm15

+ &= nbsp;      pslld   xmm8,5

+        pxor &nbs= p;  xmm6,xmm10

+

+        movdqa  xmm9,xmm= 14

+        = ;movdqa  XMMWORD[(80-128)+rax],xmm1

+ &nb= sp;      paddd   xmm13,xmm1

+        pxor &nbs= p;  xmm2,xmm4

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm11

+       &nb= sp;movdqa  xmm7,xmm10

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm2

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm13,xmm6

+ &nbs= p;      paddd   xmm2,xmm2

+

+    &n= bsp;   psrld   xmm10,2

+        paddd   xmm13,xmm8<= br class=3D"">
+        po= r     xmm2,xmm5

+  &n= bsp;     por     xmm10,xmm7
+        pxor=    xmm3,xmm0

+   &nb= sp;    movdqa  xmm0,XMMWORD[((144-128))+rax]

+

+    =     movdqa  xmm8,xmm13

+        movdqa  xmm6,xmm11

+        pxor &n= bsp;  xmm3,XMMWORD[((240-128))+rax]

= +        paddd   xmm12,xmm15
+        psl= ld   xmm8,5

+    &nbs= p;   pxor    xmm6,xmm14

+

+      &nbs= p; movdqa  xmm9,xmm13

+   =      movdqa  XMMWORD[(96-128)+rax],xmm2

+        paddd &= nbsp; xmm12,xmm2

+    &nbs= p;   pxor    xmm3,xmm0

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm10

+  &nbs= p;     movdqa  xmm7,xmm14

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm3

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm12,xmm6

+        paddd &n= bsp; xmm3,xmm3

+

+        psrld   xmm14,= 2

+        = paddd   xmm12,xmm8

+   &nb= sp;    por     xmm3,xmm5

+        por  = ;   xmm14,xmm7

+   &n= bsp;    pxor    xmm4,xmm1
=
+        movdqa  xmm= 1,XMMWORD[((160-128))+rax]

+
+        movdqa  xmm8,x= mm12

+       &nb= sp;movdqa  xmm6,xmm10

+    = ;    pxor    xmm4,XMMWORD[((0-128))+rax]=

+        p= addd   xmm11,xmm15

+   &nb= sp;    pslld   xmm8,5

+        pxor    x= mm6,xmm13

+

+ &nb= sp;      movdqa  xmm9,xmm12

+        movdqa  X= MMWORD[(112-128)+rax],xmm3

+    = ;    paddd   xmm11,xmm3

+        pxor    = xmm4,xmm1

+      &nbs= p; psrld   xmm9,27

+  &nbs= p;     pxor    xmm6,xmm14

+        movdqa &n= bsp;xmm7,xmm13

+

= +        pslld   xmm7,30

+        movdqa =  xmm5,xmm4

+     &nbs= p;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = paddd   xmm11,xmm6

+   &nb= sp;    paddd   xmm4,xmm4

+

+      &nb= sp; psrld   xmm13,2

+  &nb= sp;     paddd   xmm11,xmm8

+        por   = ;  xmm4,xmm5

+    &nb= sp;   por     xmm13,xmm7
<= br class=3D"">+        pxor   =  xmm0,xmm2

+     &nbs= p;  movdqa  xmm2,XMMWORD[((176-128))+rax]

+

+      &= nbsp; movdqa  xmm8,xmm11

+  &nb= sp;     movdqa  xmm6,xmm14

+        pxor   &nb= sp;xmm0,XMMWORD[((16-128))+rax]

+   =      paddd   xmm10,xmm15
<= br class=3D"">+        pslld   = ;xmm8,5

+       =  pxor    xmm6,xmm12

+

+        movdqa=  xmm9,xmm11

+     &n= bsp;  movdqa  XMMWORD[(128-128)+rax],xmm4

+        paddd   xm= m10,xmm4

+       = ; pxor    xmm0,xmm2

+ &nbs= p;      psrld   xmm9,27

+        pxor  &n= bsp; xmm6,xmm13

+     = ;   movdqa  xmm7,xmm12

+
+        psl= ld   xmm7,30

+    &nb= sp;   movdqa  xmm5,xmm0

+ =        por     xmm8,= xmm9

+       &nb= sp;psrld   xmm5,31

+   &nb= sp;    paddd   xmm10,xmm6

+        paddd   xmm= 0,xmm0

+

+  =       psrld   xmm12,2

+        paddd  &nb= sp;xmm10,xmm8

+      =   por     xmm0,xmm5

+        por    &n= bsp;xmm12,xmm7

+      = ;  pxor    xmm1,xmm3

= +        movdqa  xmm3,XMMWORD[((192= -128))+rax]

+

+ &= nbsp;      movdqa  xmm8,xmm10

+        movdqa &n= bsp;xmm6,xmm13

+      = ;  pxor    xmm1,XMMWORD[((32-128))+rax]

+        paddd &nb= sp; xmm14,xmm15

+     = ;   pslld   xmm8,5

+ =        pxor    xmm6,xmm11=

+

+   =      movdqa  xmm9,xmm10

+        movdqa  XMMWORD[(1= 44-128)+rax],xmm0

+     &n= bsp;  paddd   xmm14,xmm0

+=        pxor    xmm1,xmm3=

+        p= srld   xmm9,27

+    &= nbsp;   pxor    xmm6,xmm12

+        movdqa  xmm7,xm= m11

+

+  &nb= sp;     pslld   xmm7,30
+        movdqa  xmm5,= xmm1

+       &nb= sp;por     xmm8,xmm9

+ &nb= sp;      psrld   xmm5,31

+        paddd &nb= sp; xmm14,xmm6

+     =    paddd   xmm1,xmm1

= +

+        = psrld   xmm11,2

+    =     paddd   xmm14,xmm8

+        por    &n= bsp;xmm1,xmm5

+      =   por     xmm11,xmm7

+        pxor    x= mm2,xmm4

+       = ; movdqa  xmm4,XMMWORD[((208-128))+rax]

+

+       = ; movdqa  xmm8,xmm14

+   &= nbsp;    movdqa  xmm6,xmm12

+        pxor    x= mm2,XMMWORD[((48-128))+rax]

+   &nbs= p;    paddd   xmm13,xmm15

+        pslld   xmm= 8,5

+       &nbs= p;pxor    xmm6,xmm10

+

+        movdqa &n= bsp;xmm9,xmm14

+      = ;  movdqa  XMMWORD[(160-128)+rax],xmm1

+        paddd   xmm13= ,xmm1

+       &n= bsp;pxor    xmm2,xmm4

+  &= nbsp;     psrld   xmm9,27
=
+        pxor   = ; xmm6,xmm11

+     &n= bsp;  movdqa  xmm7,xmm10

+

+        pslld =   xmm7,30

+     =    movdqa  xmm5,xmm2

+ &nb= sp;      por     xmm8,xmm= 9

+        = psrld   xmm5,31

+    =     paddd   xmm13,xmm6

+        paddd   xmm2,x= mm2

+

+  &nb= sp;     psrld   xmm10,2
+        paddd   = xmm13,xmm8

+      &nb= sp; por     xmm2,xmm5

+        por     xm= m10,xmm7

+       = ; pxor    xmm3,xmm0

+ &nbs= p;      movdqa  xmm0,XMMWORD[((224-128))= +rax]

+

+  &= nbsp;     movdqa  xmm8,xmm13
+        movdqa  xmm6,= xmm11

+       &n= bsp;pxor    xmm3,XMMWORD[((64-128))+rax]

+        paddd   xmm= 12,xmm15

+       = ; pslld   xmm8,5

+   =      pxor    xmm6,xmm14

+

+     =    movdqa  xmm9,xmm13

+ &n= bsp;      movdqa  XMMWORD[(176-128)+rax]= ,xmm2

+       &n= bsp;paddd   xmm12,xmm2

+   = ;     pxor    xmm3,xmm0

+        psrld  &= nbsp;xmm9,27

+      &= nbsp; pxor    xmm6,xmm10

+=        movdqa  xmm7,xmm14

+

+    &n= bsp;   pslld   xmm7,30

+        movdqa  xmm5,xmm3

+        por &nbs= p;   xmm8,xmm9

+   &n= bsp;    psrld   xmm5,31

+        paddd   xmm12= ,xmm6

+       &n= bsp;paddd   xmm3,xmm3

+

+        psrld  &n= bsp;xmm14,2

+      &n= bsp; paddd   xmm12,xmm8

+  = ;      por     xmm3,xmm5<= br class=3D"">
+        po= r     xmm14,xmm7

+  &= nbsp;     pxor    xmm4,xmm1

+        movdqa &n= bsp;xmm1,XMMWORD[((240-128))+rax]

+

+        movdqa &n= bsp;xmm8,xmm12

+      = ;  movdqa  xmm6,xmm10

+  &= nbsp;     pxor    xmm4,XMMWORD[((80= -128))+rax]

+      &n= bsp; paddd   xmm11,xmm15

+ &nbs= p;      pslld   xmm8,5

+        pxor  &nb= sp; xmm6,xmm13

+

+        movdqa  xmm9,xmm12<= br class=3D"">
+        mo= vdqa  XMMWORD[(192-128)+rax],xmm3

+  = ;      paddd   xmm11,xmm3

+        pxor &nbs= p;  xmm4,xmm1

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm14

+       &nb= sp;movdqa  xmm7,xmm13

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm4

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm11,xmm6

+ &nbs= p;      paddd   xmm4,xmm4

+

+    &n= bsp;   psrld   xmm13,2

+        paddd   xmm11,xmm8<= br class=3D"">
+        po= r     xmm4,xmm5

+  &n= bsp;     por     xmm13,xmm7
+        pxor=    xmm0,xmm2

+   &nb= sp;    movdqa  xmm2,XMMWORD[((0-128))+rax]

+

+    &n= bsp;   movdqa  xmm8,xmm11

= +        movdqa  xmm6,xmm14

+        pxor &nbs= p;  xmm0,XMMWORD[((96-128))+rax]

+ &= nbsp;      paddd   xmm10,xmm15

+        pslld =   xmm8,5

+     &= nbsp;  pxor    xmm6,xmm12

+

+       = ; movdqa  xmm9,xmm11

+   &= nbsp;    movdqa  XMMWORD[(208-128)+rax],xmm4

+        paddd &= nbsp; xmm10,xmm4

+    &nbs= p;   pxor    xmm0,xmm2

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm13

+  &nbs= p;     movdqa  xmm7,xmm12

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm0

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm10,xmm6

+        paddd &n= bsp; xmm0,xmm0

+

+        psrld   xmm12,= 2

+        = paddd   xmm10,xmm8

+   &nb= sp;    por     xmm0,xmm5

+        por  = ;   xmm12,xmm7

+   &n= bsp;    pxor    xmm1,xmm3
=
+        movdqa  xmm= 3,XMMWORD[((16-128))+rax]

+

+        movdqa  xmm8,xm= m10

+       &nbs= p;movdqa  xmm6,xmm13

+    =     pxor    xmm1,XMMWORD[((112-128))+rax= ]

+        = paddd   xmm14,xmm15

+   &n= bsp;    pslld   xmm8,5

+        pxor    x= mm6,xmm11

+

+ &nb= sp;      movdqa  xmm9,xmm10

+        movdqa  X= MMWORD[(224-128)+rax],xmm0

+    = ;    paddd   xmm14,xmm0

+        pxor    = xmm1,xmm3

+      &nbs= p; psrld   xmm9,27

+  &nbs= p;     pxor    xmm6,xmm12

+        movdqa &n= bsp;xmm7,xmm11

+

= +        pslld   xmm7,30

+        movdqa =  xmm5,xmm1

+     &nbs= p;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = paddd   xmm14,xmm6

+   &nb= sp;    paddd   xmm1,xmm1

+

+      &nb= sp; psrld   xmm11,2

+  &nb= sp;     paddd   xmm14,xmm8

+        por   = ;  xmm1,xmm5

+    &nb= sp;   por     xmm11,xmm7
<= br class=3D"">+        pxor   =  xmm2,xmm4

+     &nbs= p;  movdqa  xmm4,XMMWORD[((32-128))+rax]

+

+      &n= bsp; movdqa  xmm8,xmm14

+  &nbs= p;     movdqa  xmm6,xmm12

+        pxor   &nbs= p;xmm2,XMMWORD[((128-128))+rax]

+   =      paddd   xmm13,xmm15
<= br class=3D"">+        pslld   = ;xmm8,5

+       =  pxor    xmm6,xmm10

+

+        movdqa=  xmm9,xmm14

+     &n= bsp;  movdqa  XMMWORD[(240-128)+rax],xmm1

+        paddd   xm= m13,xmm1

+       = ; pxor    xmm2,xmm4

+ &nbs= p;      psrld   xmm9,27

+        pxor  &n= bsp; xmm6,xmm11

+     = ;   movdqa  xmm7,xmm10

+
+        psl= ld   xmm7,30

+    &nb= sp;   movdqa  xmm5,xmm2

+ =        por     xmm8,= xmm9

+       &nb= sp;psrld   xmm5,31

+   &nb= sp;    paddd   xmm13,xmm6

+        paddd   xmm= 2,xmm2

+

+  =       psrld   xmm10,2

+        paddd  &nb= sp;xmm13,xmm8

+      =   por     xmm2,xmm5

+        por    &n= bsp;xmm10,xmm7

+      = ;  pxor    xmm3,xmm0

= +        movdqa  xmm0,XMMWORD[((48-= 128))+rax]

+

+ &n= bsp;      movdqa  xmm8,xmm13

+        movdqa  = xmm6,xmm11

+      &nb= sp; pxor    xmm3,XMMWORD[((144-128))+rax]

+        paddd  &nb= sp;xmm12,xmm15

+      = ;  pslld   xmm8,5

+  =       pxor    xmm6,xmm14

+

+    =     movdqa  xmm9,xmm13

+        movdqa  XMMWORD[(0-128)+= rax],xmm2

+      &nbs= p; paddd   xmm12,xmm2

+  &= nbsp;     pxor    xmm3,xmm0

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm10

+        movdqa  xmm7,xmm14

+

+    = ;    pslld   xmm7,30

+        movdqa  xmm5,xmm3
+        por=     xmm8,xmm9

+  &nb= sp;     psrld   xmm5,31
+        paddd   = xmm12,xmm6

+      &nb= sp; paddd   xmm3,xmm3

+

+        psrld &nb= sp; xmm14,2

+     &nb= sp;  paddd   xmm12,xmm8

+ =        por     xmm3,= xmm5

+       &nb= sp;por     xmm14,xmm7

+ &n= bsp;      pxor    xmm4,xmm1
+        movd= qa  xmm1,XMMWORD[((64-128))+rax]

+

+        movdqa &= nbsp;xmm8,xmm12

+     &nbs= p;  movdqa  xmm6,xmm10

+  =       pxor    xmm4,XMMWORD[((1= 60-128))+rax]

+      =   paddd   xmm11,xmm15

+ &n= bsp;      pslld   xmm8,5

+        pxor &nbs= p;  xmm6,xmm13

+

+        movdqa  xmm9,xmm= 12

+        = ;movdqa  XMMWORD[(16-128)+rax],xmm3

+ &nb= sp;      paddd   xmm11,xmm3

+        pxor &nbs= p;  xmm4,xmm1

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm14

+       &nb= sp;movdqa  xmm7,xmm13

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm4

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm11,xmm6

+ &nbs= p;      paddd   xmm4,xmm4

+

+    &n= bsp;   psrld   xmm13,2

+        paddd   xmm11,xmm8<= br class=3D"">
+        po= r     xmm4,xmm5

+  &n= bsp;     por     xmm13,xmm7
+        pxor=    xmm0,xmm2

+   &nb= sp;    movdqa  xmm2,XMMWORD[((80-128))+rax]

+

+    &= nbsp;   movdqa  xmm8,xmm11

+        movdqa  xmm6,xmm14

+        pxor &nb= sp;  xmm0,XMMWORD[((176-128))+rax]

+=        paddd   xmm10,xmm15
+        psll= d   xmm8,5

+     = ;   pxor    xmm6,xmm12

+

+       = ; movdqa  xmm9,xmm11

+   &= nbsp;    movdqa  XMMWORD[(32-128)+rax],xmm4

+        paddd &n= bsp; xmm10,xmm4

+     = ;   pxor    xmm0,xmm2

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm13

+  &nbs= p;     movdqa  xmm7,xmm12

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm0

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm10,xmm6

+        paddd &n= bsp; xmm0,xmm0

+

+        psrld   xmm12,= 2

+        = paddd   xmm10,xmm8

+   &nb= sp;    por     xmm0,xmm5

+        por  = ;   xmm12,xmm7

+   &n= bsp;    pxor    xmm1,xmm3
=
+        movdqa  xmm= 3,XMMWORD[((96-128))+rax]

+

+        movdqa  xmm8,xm= m10

+       &nbs= p;movdqa  xmm6,xmm13

+    =     pxor    xmm1,XMMWORD[((192-128))+rax= ]

+        = paddd   xmm14,xmm15

+   &n= bsp;    pslld   xmm8,5

+        pxor    x= mm6,xmm11

+

+ &nb= sp;      movdqa  xmm9,xmm10

+        movdqa  X= MMWORD[(48-128)+rax],xmm0

+    =     paddd   xmm14,xmm0

+        pxor    x= mm1,xmm3

+       = ; psrld   xmm9,27

+   = ;     pxor    xmm6,xmm12

+        movdqa &n= bsp;xmm7,xmm11

+

= +        pslld   xmm7,30

+        movdqa =  xmm5,xmm1

+     &nbs= p;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = paddd   xmm14,xmm6

+   &nb= sp;    paddd   xmm1,xmm1

+

+      &nb= sp; psrld   xmm11,2

+  &nb= sp;     paddd   xmm14,xmm8

+        por   = ;  xmm1,xmm5

+    &nb= sp;   por     xmm11,xmm7
<= br class=3D"">+        pxor   =  xmm2,xmm4

+     &nbs= p;  movdqa  xmm4,XMMWORD[((112-128))+rax]

+

+      &= nbsp; movdqa  xmm8,xmm14

+  &nb= sp;     movdqa  xmm6,xmm12

+        pxor   &nb= sp;xmm2,XMMWORD[((208-128))+rax]

+   = ;     paddd   xmm13,xmm15
=
+        pslld  &nbs= p;xmm8,5

+       = ; pxor    xmm6,xmm10

+

+        movdq= a  xmm9,xmm14

+     &= nbsp;  movdqa  XMMWORD[(64-128)+rax],xmm1

+        paddd   xm= m13,xmm1

+       = ; pxor    xmm2,xmm4

+ &nbs= p;      psrld   xmm9,27

+        pxor  &n= bsp; xmm6,xmm11

+     = ;   movdqa  xmm7,xmm10

+
+        psl= ld   xmm7,30

+    &nb= sp;   movdqa  xmm5,xmm2

+ =        por     xmm8,= xmm9

+       &nb= sp;psrld   xmm5,31

+   &nb= sp;    paddd   xmm13,xmm6

+        paddd   xmm= 2,xmm2

+

+  =       psrld   xmm10,2

+        paddd  &nb= sp;xmm13,xmm8

+      =   por     xmm2,xmm5

+        por    &n= bsp;xmm10,xmm7

+      = ;  pxor    xmm3,xmm0

= +        movdqa  xmm0,XMMWORD[((128= -128))+rax]

+

+ &= nbsp;      movdqa  xmm8,xmm13

+        movdqa &n= bsp;xmm6,xmm11

+      = ;  pxor    xmm3,XMMWORD[((224-128))+rax]

+        paddd &nb= sp; xmm12,xmm15

+     = ;   pslld   xmm8,5

+ =        pxor    xmm6,xmm14=

+

+   =      movdqa  xmm9,xmm13

+        movdqa  XMMWORD[(8= 0-128)+rax],xmm2

+     &nb= sp;  paddd   xmm12,xmm2

+ =        pxor    xmm3,xmm0<= br class=3D"">
+        ps= rld   xmm9,27

+    &n= bsp;   pxor    xmm6,xmm10

+        movdqa  xmm7,xmm= 14

+

+  &nbs= p;     pslld   xmm7,30
+        movdqa  xmm5,x= mm3

+       &nbs= p;por     xmm8,xmm9

+ &nbs= p;      psrld   xmm5,31

+        paddd  &= nbsp;xmm12,xmm6

+     &nbs= p;  paddd   xmm3,xmm3

+
+        psrl= d   xmm14,2

+    &nbs= p;   paddd   xmm12,xmm8

+        por     = xmm3,xmm5

+      &nbs= p; por     xmm14,xmm7

+        pxor    xmm4,xm= m1

+        = ;movdqa  xmm1,XMMWORD[((144-128))+rax]

+<= br class=3D"">
+        mo= vdqa  xmm8,xmm12

+    &nbs= p;   movdqa  xmm6,xmm10

+ =        pxor    xmm4,XMMWO= RD[((240-128))+rax]

+     =    paddd   xmm11,xmm15

+        pslld   xmm8,5

+        pxor &= nbsp;  xmm6,xmm13

+
+        movdqa  xmm9,= xmm12

+       &n= bsp;movdqa  XMMWORD[(96-128)+rax],xmm3

+ =        paddd   xmm11,xmm3

+        pxor &= nbsp;  xmm4,xmm1

+    = ;    psrld   xmm9,27

+        pxor    x= mm6,xmm14

+      &nbs= p; movdqa  xmm7,xmm13

+

+        pslld  &n= bsp;xmm7,30

+      &n= bsp; movdqa  xmm5,xmm4

+   = ;     por     xmm8,xmm9

+        psrld &n= bsp; xmm5,31

+     &n= bsp;  paddd   xmm11,xmm6

+=        paddd   xmm4,xmm4

+

+    = ;    psrld   xmm13,2

+        paddd   xmm11,= xmm8

+       &nb= sp;por     xmm4,xmm5

+ &nb= sp;      por     xmm13,xm= m7

+        = ;pxor    xmm0,xmm2

+  &nbs= p;     movdqa  xmm2,XMMWORD[((160-128))+rax]<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm8,xmm11

+        movdqa  xmm6,xmm14<= br class=3D"">
+        px= or    xmm0,XMMWORD[((0-128))+rax]

+        paddd   xmm10,xmm1= 5

+        = pslld   xmm8,5

+    &= nbsp;   pxor    xmm6,xmm12

+

+      &= nbsp; movdqa  xmm9,xmm11

+  &nb= sp;     movdqa  XMMWORD[(112-128)+rax],xmm4
+        pad= dd   xmm10,xmm4

+    =     pxor    xmm0,xmm2

+        psrld   xm= m9,27

+       &n= bsp;pxor    xmm6,xmm13

+  =       movdqa  xmm7,xmm12
<= br class=3D"">+

+     &nbs= p;  pslld   xmm7,30

+ &nbs= p;      movdqa  xmm5,xmm0
=
+        por   =   xmm8,xmm9

+    &nbs= p;   psrld   xmm5,31

= +        paddd   xmm10,xmm6
+        padd= d   xmm0,xmm0

+

+        psrld   xmm1= 2,2

+       &nbs= p;paddd   xmm10,xmm8

+   &= nbsp;    por     xmm0,xmm5

+        por  = ;   xmm12,xmm7

+   &n= bsp;    movdqa  xmm15,XMMWORD[32+rbp]

+        pxor  &nb= sp; xmm1,xmm3

+     &= nbsp;  movdqa  xmm3,XMMWORD[((176-128))+rax]
<= br class=3D"">+

+     &nbs= p;  movdqa  xmm8,xmm10

+  =       movdqa  xmm7,xmm13
<= br class=3D"">+        pxor   =  xmm1,XMMWORD[((16-128))+rax]

+  &nb= sp;     pxor    xmm1,xmm3

+        paddd &nb= sp; xmm14,xmm15

+     = ;   pslld   xmm8,5

+ =        movdqa  xmm9,xmm10

+        pand &nbs= p;  xmm7,xmm12

+

+        movdqa  xmm6,xmm= 13

+        = ;movdqa  xmm5,xmm1

+    &n= bsp;   psrld   xmm9,27

+        paddd   xmm14,xmm7<= br class=3D"">
+        px= or    xmm6,xmm12

+

+        movdqa  X= MMWORD[(128-128)+rax],xmm0

+    = ;    paddd   xmm14,xmm0

+        por    &= nbsp;xmm8,xmm9

+      = ;  psrld   xmm5,31

+  = ;      pand    xmm6,xmm11

+        movdqa=  xmm7,xmm11

+

+        pslld   xmm7,30
+        padd= d   xmm1,xmm1

+    &n= bsp;   paddd   xmm14,xmm6

+

+       = ; psrld   xmm11,2

+   = ;     paddd   xmm14,xmm8
<= br class=3D"">+        por   &= nbsp; xmm1,xmm5

+     = ;   por     xmm11,xmm7
+        pxor   &n= bsp;xmm2,xmm4

+      =   movdqa  xmm4,XMMWORD[((192-128))+rax]

+

+      &nb= sp; movdqa  xmm8,xmm14

+   = ;     movdqa  xmm7,xmm12

+        pxor    = ;xmm2,XMMWORD[((32-128))+rax]

+   &n= bsp;    pxor    xmm2,xmm4
=
+        paddd  &nbs= p;xmm13,xmm15

+      =   pslld   xmm8,5

+  &= nbsp;     movdqa  xmm9,xmm14
+        pand   &= nbsp;xmm7,xmm11

+

+        movdqa  xmm6,xmm12

+        movdqa &= nbsp;xmm5,xmm2

+      = ;  psrld   xmm9,27

+  = ;      paddd   xmm13,xmm7

+        pxor &nbs= p;  xmm6,xmm11

+

+        movdqa  XMMWORD[= (144-128)+rax],xmm1

+     =    paddd   xmm13,xmm1

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm10

+        movdqa  = xmm7,xmm10

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm2,xmm2

+     &= nbsp;  paddd   xmm13,xmm6

= +

+        = psrld   xmm10,2

+    =     paddd   xmm13,xmm8

+        por    &n= bsp;xmm2,xmm5

+      =   por     xmm10,xmm7

+        pxor    x= mm3,xmm0

+       = ; movdqa  xmm0,XMMWORD[((208-128))+rax]

+

+       = ; movdqa  xmm8,xmm13

+   &= nbsp;    movdqa  xmm7,xmm11

+        pxor    x= mm3,XMMWORD[((48-128))+rax]

+   &nbs= p;    pxor    xmm3,xmm0
+        paddd   = xmm12,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm13

+        pand   &nb= sp;xmm7,xmm10

+

+=        movdqa  xmm6,xmm11

+        movdqa &n= bsp;xmm5,xmm3

+      =   psrld   xmm9,27

+  =       paddd   xmm12,xmm7

+        pxor &nbs= p;  xmm6,xmm10

+

+        movdqa  XMMWORD[= (160-128)+rax],xmm2

+     =    paddd   xmm12,xmm2

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm14

+        movdqa  = xmm7,xmm14

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm3,xmm3

+     &= nbsp;  paddd   xmm12,xmm6

= +

+        = psrld   xmm14,2

+    =     paddd   xmm12,xmm8

+        por    &n= bsp;xmm3,xmm5

+      =   por     xmm14,xmm7

+        pxor    x= mm4,xmm1

+       = ; movdqa  xmm1,XMMWORD[((224-128))+rax]

+

+       = ; movdqa  xmm8,xmm12

+   &= nbsp;    movdqa  xmm7,xmm10

+        pxor    x= mm4,XMMWORD[((64-128))+rax]

+   &nbs= p;    pxor    xmm4,xmm1
+        paddd   = xmm11,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm12

+        pand   &nb= sp;xmm7,xmm14

+

+=        movdqa  xmm6,xmm10

+        movdqa &n= bsp;xmm5,xmm4

+      =   psrld   xmm9,27

+  =       paddd   xmm11,xmm7

+        pxor &nbs= p;  xmm6,xmm14

+

+        movdqa  XMMWORD[= (176-128)+rax],xmm3

+     =    paddd   xmm11,xmm3

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm13

+        movdqa  = xmm7,xmm13

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm4,xmm4

+     &= nbsp;  paddd   xmm11,xmm6

= +

+        = psrld   xmm13,2

+    =     paddd   xmm11,xmm8

+        por    &n= bsp;xmm4,xmm5

+      =   por     xmm13,xmm7

+        pxor    x= mm0,xmm2

+       = ; movdqa  xmm2,XMMWORD[((240-128))+rax]

+

+       = ; movdqa  xmm8,xmm11

+   &= nbsp;    movdqa  xmm7,xmm14

+        pxor    x= mm0,XMMWORD[((80-128))+rax]

+   &nbs= p;    pxor    xmm0,xmm2
+        paddd   = xmm10,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm11

+        pand   &nb= sp;xmm7,xmm13

+

+=        movdqa  xmm6,xmm14

+        movdqa &n= bsp;xmm5,xmm0

+      =   psrld   xmm9,27

+  =       paddd   xmm10,xmm7

+        pxor &nbs= p;  xmm6,xmm13

+

+        movdqa  XMMWORD[= (192-128)+rax],xmm4

+     =    paddd   xmm10,xmm4

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm12

+        movdqa  = xmm7,xmm12

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm0,xmm0

+     &= nbsp;  paddd   xmm10,xmm6

= +

+        = psrld   xmm12,2

+    =     paddd   xmm10,xmm8

+        por    &n= bsp;xmm0,xmm5

+      =   por     xmm12,xmm7

+        pxor    x= mm1,xmm3

+       = ; movdqa  xmm3,XMMWORD[((0-128))+rax]

+

+       &nbs= p;movdqa  xmm8,xmm10

+    =     movdqa  xmm7,xmm13

+        pxor    xmm1,X= MMWORD[((96-128))+rax]

+    &nb= sp;   pxor    xmm1,xmm3

+        paddd   xmm14= ,xmm15

+       &= nbsp;pslld   xmm8,5

+   &n= bsp;    movdqa  xmm9,xmm10

+        pand    x= mm7,xmm12

+

+ &nb= sp;      movdqa  xmm6,xmm13

+        movdqa  x= mm5,xmm1

+       = ; psrld   xmm9,27

+   = ;     paddd   xmm14,xmm7
<= br class=3D"">+        pxor   =  xmm6,xmm12

+

+        movdqa  XMMWORD[(208-128= )+rax],xmm0

+      &n= bsp; paddd   xmm14,xmm0

+  = ;      por     xmm8,xmm9<= br class=3D"">
+        ps= rld   xmm5,31

+    &n= bsp;   pand    xmm6,xmm11

+        movdqa  xmm7,xmm= 11

+

+  &nbs= p;     pslld   xmm7,30
+        paddd   x= mm1,xmm1

+       = ; paddd   xmm14,xmm6

+

+        psrld &nb= sp; xmm11,2

+     &nb= sp;  paddd   xmm14,xmm8

+ =        por     xmm1,= xmm5

+       &nb= sp;por     xmm11,xmm7

+ &n= bsp;      pxor    xmm2,xmm4
+        movd= qa  xmm4,XMMWORD[((16-128))+rax]

+

+        movdqa &= nbsp;xmm8,xmm14

+     &nbs= p;  movdqa  xmm7,xmm12

+  =       pxor    xmm2,XMMWORD[((1= 12-128))+rax]

+      =   pxor    xmm2,xmm4

+=        paddd   xmm13,xmm15
+        psll= d   xmm8,5

+     = ;   movdqa  xmm9,xmm14

+ &= nbsp;      pand    xmm7,xmm11<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm6,xmm12

+        movdqa  xmm5,xmm2
+        psr= ld   xmm9,27

+    &nb= sp;   paddd   xmm13,xmm7

+        pxor    x= mm6,xmm11

+

+ &nb= sp;      movdqa  XMMWORD[(224-128)+rax],= xmm1

+       &nb= sp;paddd   xmm13,xmm1

+   =      por     xmm8,xmm9

+        psrld &nb= sp; xmm5,31

+     &nb= sp;  pand    xmm6,xmm10

+        movdqa  xmm7,xmm10

+

+    = ;    pslld   xmm7,30

+        paddd   xmm2,x= mm2

+       &nbs= p;paddd   xmm13,xmm6

+

+        psrld  &nb= sp;xmm10,2

+      &nb= sp; paddd   xmm13,xmm8

+  =       por     xmm2,xmm5
+        por=     xmm10,xmm7

+  &n= bsp;     pxor    xmm3,xmm0

+        movdqa &n= bsp;xmm0,XMMWORD[((32-128))+rax]

+

+        movdqa  = xmm8,xmm13

+      &nb= sp; movdqa  xmm7,xmm11

+   = ;     pxor    xmm3,XMMWORD[((128-12= 8))+rax]

+       = ; pxor    xmm3,xmm0

+ &nbs= p;      paddd   xmm12,xmm15

+        pslld &nb= sp; xmm8,5

+     &nbs= p;  movdqa  xmm9,xmm13

+  =       pand    xmm7,xmm10

+

+    =     movdqa  xmm6,xmm11

+        movdqa  xmm5,xmm3

+        psrld &n= bsp; xmm9,27

+     &n= bsp;  paddd   xmm12,xmm7

+=        pxor    xmm6,xmm1= 0

+

+   = ;     movdqa  XMMWORD[(240-128)+rax],xmm2

+        paddd=   xmm12,xmm2

+    &n= bsp;   por     xmm8,xmm9
<= br class=3D"">+        psrld   = ;xmm5,31

+       = ; pand    xmm6,xmm14

+ &nb= sp;      movdqa  xmm7,xmm14

+

+     &= nbsp;  pslld   xmm7,30

+ &= nbsp;      paddd   xmm3,xmm3

+        paddd &n= bsp; xmm12,xmm6

+

+        psrld   xmm14,= 2

+        = paddd   xmm12,xmm8

+   &nb= sp;    por     xmm3,xmm5

+        por  = ;   xmm14,xmm7

+   &n= bsp;    pxor    xmm4,xmm1
=
+        movdqa  xmm= 1,XMMWORD[((48-128))+rax]

+

+        movdqa  xmm8,xm= m12

+       &nbs= p;movdqa  xmm7,xmm10

+    =     pxor    xmm4,XMMWORD[((144-128))+rax= ]

+        = pxor    xmm4,xmm1

+   = ;     paddd   xmm11,xmm15
=
+        pslld  &nbs= p;xmm8,5

+       = ; movdqa  xmm9,xmm12

+   &= nbsp;    pand    xmm7,xmm14

+

+     &= nbsp;  movdqa  xmm6,xmm10

+ &nb= sp;      movdqa  xmm5,xmm4

+        psrld  &nb= sp;xmm9,27

+      &nb= sp; paddd   xmm11,xmm7

+  =       pxor    xmm6,xmm14

+

+    =     movdqa  XMMWORD[(0-128)+rax],xmm3

+        paddd  &n= bsp;xmm11,xmm3

+      = ;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = pand    xmm6,xmm13

+  &nbs= p;     movdqa  xmm7,xmm13

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     paddd   xmm4,xmm4

+        paddd  &nb= sp;xmm11,xmm6

+

+=        psrld   xmm13,2

+        paddd &n= bsp; xmm11,xmm8

+     = ;   por     xmm4,xmm5

+        por   &nbs= p; xmm13,xmm7

+     &= nbsp;  pxor    xmm0,xmm2

+        movdqa  xmm2,XMMWOR= D[((64-128))+rax]

+

+        movdqa  xmm8,xmm11

+        movdqa=  xmm7,xmm14

+     &n= bsp;  pxor    xmm0,XMMWORD[((160-128))+rax]

+        pxor &nb= sp;  xmm0,xmm2

+    &= nbsp;   paddd   xmm10,xmm15

+        pslld   xmm8,5=

+        m= ovdqa  xmm9,xmm11

+    &nb= sp;   pand    xmm7,xmm13

+

+      &nb= sp; movdqa  xmm6,xmm14

+   = ;     movdqa  xmm5,xmm0

+        psrld   xmm9,= 27

+        = ;paddd   xmm10,xmm7

+   &n= bsp;    pxor    xmm6,xmm13

+

+     &n= bsp;  movdqa  XMMWORD[(16-128)+rax],xmm4

+        paddd   xmm= 10,xmm4

+       =  por     xmm8,xmm9

+ =        psrld   xmm5,31

+        pand &nbs= p;  xmm6,xmm12

+    &= nbsp;   movdqa  xmm7,xmm12

+

+        = ;pslld   xmm7,30

+    = ;    paddd   xmm0,xmm0

+        paddd   xmm10,= xmm6

+

+  &n= bsp;     psrld   xmm12,2
<= br class=3D"">+        paddd   = ;xmm10,xmm8

+      &n= bsp; por     xmm0,xmm5

+        por     x= mm12,xmm7

+      &nbs= p; pxor    xmm1,xmm3

+ &nb= sp;      movdqa  xmm3,XMMWORD[((80-128))= +rax]

+

+  &= nbsp;     movdqa  xmm8,xmm10
+        movdqa  xmm7,= xmm13

+       &n= bsp;pxor    xmm1,XMMWORD[((176-128))+rax]

+        pxor   &nb= sp;xmm1,xmm3

+      &= nbsp; paddd   xmm14,xmm15

+ &nb= sp;      pslld   xmm8,5

+        movdqa  = xmm9,xmm10

+      &nb= sp; pand    xmm7,xmm12

+
+        mov= dqa  xmm6,xmm13

+     = ;   movdqa  xmm5,xmm1

+ &n= bsp;      psrld   xmm9,27

+        paddd &nb= sp; xmm14,xmm7

+     =    pxor    xmm6,xmm12

+

+       = ; movdqa  XMMWORD[(32-128)+rax],xmm0

+        paddd   xmm14,xmm0
+        por=     xmm8,xmm9

+  &nb= sp;     psrld   xmm5,31
+        pand   &= nbsp;xmm6,xmm11

+     &nbs= p;  movdqa  xmm7,xmm11

+

+        pslld &n= bsp; xmm7,30

+     &n= bsp;  paddd   xmm1,xmm1

+ =        paddd   xmm14,xmm6

+

+    = ;    psrld   xmm11,2

+        paddd   xmm14,= xmm8

+       &nb= sp;por     xmm1,xmm5

+ &nb= sp;      por     xmm11,xm= m7

+        = ;pxor    xmm2,xmm4

+  &nbs= p;     movdqa  xmm4,XMMWORD[((96-128))+rax]
+

+   &n= bsp;    movdqa  xmm8,xmm14

+        movdqa  xmm7,xmm12<= br class=3D"">
+        px= or    xmm2,XMMWORD[((192-128))+rax]

+        pxor    x= mm2,xmm4

+       = ; paddd   xmm13,xmm15

+  &= nbsp;     pslld   xmm8,5
<= br class=3D"">+        movdqa  xmm9= ,xmm14

+       &= nbsp;pand    xmm7,xmm11

+

+        movdqa =  xmm6,xmm12

+     &nb= sp;  movdqa  xmm5,xmm2

+  =       psrld   xmm9,27

+        paddd  &nb= sp;xmm13,xmm7

+      =   pxor    xmm6,xmm11

= +

+        = movdqa  XMMWORD[(48-128)+rax],xmm1

+ &nbs= p;      paddd   xmm13,xmm1

+        por  = ;   xmm8,xmm9

+   &nb= sp;    psrld   xmm5,31

+        pand    x= mm6,xmm10

+      &nbs= p; movdqa  xmm7,xmm10

+

+        pslld  &n= bsp;xmm7,30

+      &n= bsp; paddd   xmm2,xmm2

+  =       paddd   xmm13,xmm6

+

+    &n= bsp;   psrld   xmm10,2

+        paddd   xmm13,xmm8<= br class=3D"">
+        po= r     xmm2,xmm5

+  &n= bsp;     por     xmm10,xmm7
+        pxor=    xmm3,xmm0

+   &nb= sp;    movdqa  xmm0,XMMWORD[((112-128))+rax]

+

+    =     movdqa  xmm8,xmm13

+        movdqa  xmm7,xmm11

+        pxor &n= bsp;  xmm3,XMMWORD[((208-128))+rax]

= +        pxor    xmm3,xmm= 0

+        = paddd   xmm12,xmm15

+   &n= bsp;    pslld   xmm8,5

+        movdqa  xmm9,xmm13<= br class=3D"">
+        pa= nd    xmm7,xmm10

+

+        movdqa  x= mm6,xmm11

+      &nbs= p; movdqa  xmm5,xmm3

+   &= nbsp;    psrld   xmm9,27

+        paddd   xmm1= 2,xmm7

+       &= nbsp;pxor    xmm6,xmm10

+

+        movdqa =  XMMWORD[(64-128)+rax],xmm2

+   = ;     paddd   xmm12,xmm2
<= br class=3D"">+        por   &= nbsp; xmm8,xmm9

+     = ;   psrld   xmm5,31

+=        pand    xmm6,xmm1= 4

+        = movdqa  xmm7,xmm14

+

+        pslld   xmm7= ,30

+       &nbs= p;paddd   xmm3,xmm3

+   &n= bsp;    paddd   xmm12,xmm6

+

+      &= nbsp; psrld   xmm14,2

+  &= nbsp;     paddd   xmm12,xmm8

+        por  &nb= sp;  xmm3,xmm5

+    &= nbsp;   por     xmm14,xmm7

+        pxor  &nbs= p; xmm4,xmm1

+     &n= bsp;  movdqa  xmm1,XMMWORD[((128-128))+rax]
+

+      = ;  movdqa  xmm8,xmm12

+  &= nbsp;     movdqa  xmm7,xmm10
+        pxor   &= nbsp;xmm4,XMMWORD[((224-128))+rax]

+  &nb= sp;     pxor    xmm4,xmm1

+        paddd &nb= sp; xmm11,xmm15

+     = ;   pslld   xmm8,5

+ =        movdqa  xmm9,xmm12

+        pand &nbs= p;  xmm7,xmm14

+

+        movdqa  xmm6,xmm= 10

+        = ;movdqa  xmm5,xmm4

+    &n= bsp;   psrld   xmm9,27

+        paddd   xmm11,xmm7<= br class=3D"">
+        px= or    xmm6,xmm14

+

+        movdqa  X= MMWORD[(80-128)+rax],xmm3

+    =     paddd   xmm11,xmm3

+        por    &n= bsp;xmm8,xmm9

+      =   psrld   xmm5,31

+  =       pand    xmm6,xmm13

+        movdqa =  xmm7,xmm13

+

+        pslld   xmm7,30

+        paddd=   xmm4,xmm4

+    &nb= sp;   paddd   xmm11,xmm6

+

+       = ; psrld   xmm13,2

+   = ;     paddd   xmm11,xmm8
<= br class=3D"">+        por   &= nbsp; xmm4,xmm5

+     = ;   por     xmm13,xmm7
+        pxor   &n= bsp;xmm0,xmm2

+      =   movdqa  xmm2,XMMWORD[((144-128))+rax]

+

+      &nb= sp; movdqa  xmm8,xmm11

+   = ;     movdqa  xmm7,xmm14

+        pxor    = ;xmm0,XMMWORD[((240-128))+rax]

+   &= nbsp;    pxor    xmm0,xmm2

+        paddd  &nb= sp;xmm10,xmm15

+      = ;  pslld   xmm8,5

+  =       movdqa  xmm9,xmm11
<= br class=3D"">+        pand   =  xmm7,xmm13

+

+        movdqa  xmm6,xmm14

+        movdqa =  xmm5,xmm0

+     &nbs= p;  psrld   xmm9,27

+ &nbs= p;      paddd   xmm10,xmm7

+        pxor &nbs= p;  xmm6,xmm13

+

+        movdqa  XMMWORD[= (96-128)+rax],xmm4

+     &= nbsp;  paddd   xmm10,xmm4

= +        por     xmm= 8,xmm9

+       &= nbsp;psrld   xmm5,31

+   &= nbsp;    pand    xmm6,xmm12

+        movdqa  x= mm7,xmm12

+

+ &nb= sp;      pslld   xmm7,30

+        paddd &nb= sp; xmm0,xmm0

+     &= nbsp;  paddd   xmm10,xmm6

= +

+        = psrld   xmm12,2

+    =     paddd   xmm10,xmm8

+        por    &n= bsp;xmm0,xmm5

+      =   por     xmm12,xmm7

+        pxor    x= mm1,xmm3

+       = ; movdqa  xmm3,XMMWORD[((160-128))+rax]

+

+       = ; movdqa  xmm8,xmm10

+   &= nbsp;    movdqa  xmm7,xmm13

+        pxor    x= mm1,XMMWORD[((0-128))+rax]

+    = ;    pxor    xmm1,xmm3
+        paddd   x= mm14,xmm15

+      &nb= sp; pslld   xmm8,5

+  &nbs= p;     movdqa  xmm9,xmm10

+        pand   &nbs= p;xmm7,xmm12

+

+ =        movdqa  xmm6,xmm13

+        movdqa &n= bsp;xmm5,xmm1

+      =   psrld   xmm9,27

+  =       paddd   xmm14,xmm7

+        pxor &nbs= p;  xmm6,xmm12

+

+        movdqa  XMMWORD[= (112-128)+rax],xmm0

+     =    paddd   xmm14,xmm0

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm11

+        movdqa  = xmm7,xmm11

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm1,xmm1

+     &= nbsp;  paddd   xmm14,xmm6

= +

+        = psrld   xmm11,2

+    =     paddd   xmm14,xmm8

+        por    &n= bsp;xmm1,xmm5

+      =   por     xmm11,xmm7

+        pxor    x= mm2,xmm4

+       = ; movdqa  xmm4,XMMWORD[((176-128))+rax]

+

+       = ; movdqa  xmm8,xmm14

+   &= nbsp;    movdqa  xmm7,xmm12

+        pxor    x= mm2,XMMWORD[((16-128))+rax]

+   &nbs= p;    pxor    xmm2,xmm4
+        paddd   = xmm13,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm14

+        pand   &nb= sp;xmm7,xmm11

+

+=        movdqa  xmm6,xmm12

+        movdqa &n= bsp;xmm5,xmm2

+      =   psrld   xmm9,27

+  =       paddd   xmm13,xmm7

+        pxor &nbs= p;  xmm6,xmm11

+

+        movdqa  XMMWORD[= (128-128)+rax],xmm1

+     =    paddd   xmm13,xmm1

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm10

+        movdqa  = xmm7,xmm10

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm2,xmm2

+     &= nbsp;  paddd   xmm13,xmm6

= +

+        = psrld   xmm10,2

+    =     paddd   xmm13,xmm8

+        por    &n= bsp;xmm2,xmm5

+      =   por     xmm10,xmm7

+        pxor    x= mm3,xmm0

+       = ; movdqa  xmm0,XMMWORD[((192-128))+rax]

+

+       = ; movdqa  xmm8,xmm13

+   &= nbsp;    movdqa  xmm7,xmm11

+        pxor    x= mm3,XMMWORD[((32-128))+rax]

+   &nbs= p;    pxor    xmm3,xmm0
+        paddd   = xmm12,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm13

+        pand   &nb= sp;xmm7,xmm10

+

+=        movdqa  xmm6,xmm11

+        movdqa &n= bsp;xmm5,xmm3

+      =   psrld   xmm9,27

+  =       paddd   xmm12,xmm7

+        pxor &nbs= p;  xmm6,xmm10

+

+        movdqa  XMMWORD[= (144-128)+rax],xmm2

+     =    paddd   xmm12,xmm2

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm14

+        movdqa  = xmm7,xmm14

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm3,xmm3

+     &= nbsp;  paddd   xmm12,xmm6

= +

+        = psrld   xmm14,2

+    =     paddd   xmm12,xmm8

+        por    &n= bsp;xmm3,xmm5

+      =   por     xmm14,xmm7

+        pxor    x= mm4,xmm1

+       = ; movdqa  xmm1,XMMWORD[((208-128))+rax]

+

+       = ; movdqa  xmm8,xmm12

+   &= nbsp;    movdqa  xmm7,xmm10

+        pxor    x= mm4,XMMWORD[((48-128))+rax]

+   &nbs= p;    pxor    xmm4,xmm1
+        paddd   = xmm11,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm12

+        pand   &nb= sp;xmm7,xmm14

+

+=        movdqa  xmm6,xmm10

+        movdqa &n= bsp;xmm5,xmm4

+      =   psrld   xmm9,27

+  =       paddd   xmm11,xmm7

+        pxor &nbs= p;  xmm6,xmm14

+

+        movdqa  XMMWORD[= (160-128)+rax],xmm3

+     =    paddd   xmm11,xmm3

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm13

+        movdqa  = xmm7,xmm13

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm4,xmm4

+     &= nbsp;  paddd   xmm11,xmm6

= +

+        = psrld   xmm13,2

+    =     paddd   xmm11,xmm8

+        por    &n= bsp;xmm4,xmm5

+      =   por     xmm13,xmm7

+        pxor    x= mm0,xmm2

+       = ; movdqa  xmm2,XMMWORD[((224-128))+rax]

+

+       = ; movdqa  xmm8,xmm11

+   &= nbsp;    movdqa  xmm7,xmm14

+        pxor    x= mm0,XMMWORD[((64-128))+rax]

+   &nbs= p;    pxor    xmm0,xmm2
+        paddd   = xmm10,xmm15

+      &n= bsp; pslld   xmm8,5

+  &nb= sp;     movdqa  xmm9,xmm11

+        pand   &nb= sp;xmm7,xmm13

+

+=        movdqa  xmm6,xmm14

+        movdqa &n= bsp;xmm5,xmm0

+      =   psrld   xmm9,27

+  =       paddd   xmm10,xmm7

+        pxor &nbs= p;  xmm6,xmm13

+

+        movdqa  XMMWORD[= (176-128)+rax],xmm4

+     =    paddd   xmm10,xmm4

+        por     xm= m8,xmm9

+       =  psrld   xmm5,31

+   =      pand    xmm6,xmm12

+        movdqa  = xmm7,xmm12

+

+ &n= bsp;      pslld   xmm7,30

+        paddd &nb= sp; xmm0,xmm0

+     &= nbsp;  paddd   xmm10,xmm6

= +

+        = psrld   xmm12,2

+    =     paddd   xmm10,xmm8

+        por    &n= bsp;xmm0,xmm5

+      =   por     xmm12,xmm7

+        movdqa  xmm15,XMMWO= RD[64+rbp]

+      &nb= sp; pxor    xmm1,xmm3

+ &n= bsp;      movdqa  xmm3,XMMWORD[((240-128= ))+rax]

+

+  = ;      movdqa  xmm8,xmm10
=
+        movdqa  xmm= 6,xmm13

+       =  pxor    xmm1,XMMWORD[((80-128))+rax]
+        paddd   x= mm14,xmm15

+      &nb= sp; pslld   xmm8,5

+  &nbs= p;     pxor    xmm6,xmm11

+

+    &n= bsp;   movdqa  xmm9,xmm10

= +        movdqa  XMMWORD[(192-128)+= rax],xmm0

+      &nbs= p; paddd   xmm14,xmm0

+  &= nbsp;     pxor    xmm1,xmm3

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm12

+        movdqa  xmm7,xmm11

+

+    = ;    pslld   xmm7,30

+        movdqa  xmm5,xmm1
+        por=     xmm8,xmm9

+  &nb= sp;     psrld   xmm5,31
+        paddd   = xmm14,xmm6

+      &nb= sp; paddd   xmm1,xmm1

+

+        psrld &nb= sp; xmm11,2

+     &nb= sp;  paddd   xmm14,xmm8

+ =        por     xmm1,= xmm5

+       &nb= sp;por     xmm11,xmm7

+ &n= bsp;      pxor    xmm2,xmm4
+        movd= qa  xmm4,XMMWORD[((0-128))+rax]

+

+        movdqa &n= bsp;xmm8,xmm14

+      = ;  movdqa  xmm6,xmm12

+  &= nbsp;     pxor    xmm2,XMMWORD[((96= -128))+rax]

+      &n= bsp; paddd   xmm13,xmm15

+ &nbs= p;      pslld   xmm8,5

+        pxor  &nb= sp; xmm6,xmm10

+

+        movdqa  xmm9,xmm14<= br class=3D"">
+        mo= vdqa  XMMWORD[(208-128)+rax],xmm1

+  = ;      paddd   xmm13,xmm1

+        pxor &nbs= p;  xmm2,xmm4

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm11

+       &nb= sp;movdqa  xmm7,xmm10

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm2

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm13,xmm6

+ &nbs= p;      paddd   xmm2,xmm2

+

+    &n= bsp;   psrld   xmm10,2

+        paddd   xmm13,xmm8<= br class=3D"">
+        po= r     xmm2,xmm5

+  &n= bsp;     por     xmm10,xmm7
+        pxor=    xmm3,xmm0

+   &nb= sp;    movdqa  xmm0,XMMWORD[((16-128))+rax]

+

+    &= nbsp;   movdqa  xmm8,xmm13

+        movdqa  xmm6,xmm11

+        pxor &nb= sp;  xmm3,XMMWORD[((112-128))+rax]

+=        paddd   xmm12,xmm15
+        psll= d   xmm8,5

+     = ;   pxor    xmm6,xmm14

+

+       = ; movdqa  xmm9,xmm13

+   &= nbsp;    movdqa  XMMWORD[(224-128)+rax],xmm2

+        paddd &= nbsp; xmm12,xmm2

+    &nbs= p;   pxor    xmm3,xmm0

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm10

+  &nbs= p;     movdqa  xmm7,xmm14

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm3

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm12,xmm6

+        paddd &n= bsp; xmm3,xmm3

+

+        psrld   xmm14,= 2

+        = paddd   xmm12,xmm8

+   &nb= sp;    por     xmm3,xmm5

+        por  = ;   xmm14,xmm7

+   &n= bsp;    pxor    xmm4,xmm1
=
+        movdqa  xmm= 1,XMMWORD[((32-128))+rax]

+

+        movdqa  xmm8,xm= m12

+       &nbs= p;movdqa  xmm6,xmm10

+    =     pxor    xmm4,XMMWORD[((128-128))+rax= ]

+        = paddd   xmm11,xmm15

+   &n= bsp;    pslld   xmm8,5

+        pxor    x= mm6,xmm13

+

+ &nb= sp;      movdqa  xmm9,xmm12

+        movdqa  X= MMWORD[(240-128)+rax],xmm3

+    = ;    paddd   xmm11,xmm3

+        pxor    = xmm4,xmm1

+      &nbs= p; psrld   xmm9,27

+  &nbs= p;     pxor    xmm6,xmm14

+        movdqa &n= bsp;xmm7,xmm13

+

= +        pslld   xmm7,30

+        movdqa =  xmm5,xmm4

+     &nbs= p;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = paddd   xmm11,xmm6

+   &nb= sp;    paddd   xmm4,xmm4

+

+      &nb= sp; psrld   xmm13,2

+  &nb= sp;     paddd   xmm11,xmm8

+        por   = ;  xmm4,xmm5

+    &nb= sp;   por     xmm13,xmm7
<= br class=3D"">+        pxor   =  xmm0,xmm2

+     &nbs= p;  movdqa  xmm2,XMMWORD[((48-128))+rax]

+

+      &n= bsp; movdqa  xmm8,xmm11

+  &nbs= p;     movdqa  xmm6,xmm14

+        pxor   &nbs= p;xmm0,XMMWORD[((144-128))+rax]

+   =      paddd   xmm10,xmm15
<= br class=3D"">+        pslld   = ;xmm8,5

+       =  pxor    xmm6,xmm12

+

+        movdqa=  xmm9,xmm11

+     &n= bsp;  movdqa  XMMWORD[(0-128)+rax],xmm4

+        paddd   xmm1= 0,xmm4

+       &= nbsp;pxor    xmm0,xmm2

+  =       psrld   xmm9,27

+        pxor  &nbs= p; xmm6,xmm13

+     &= nbsp;  movdqa  xmm7,xmm12

+

+        pslld=   xmm7,30

+     = ;   movdqa  xmm5,xmm0

+ &n= bsp;      por     xmm8,xm= m9

+        = ;psrld   xmm5,31

+    = ;    paddd   xmm10,xmm6

+        paddd   xmm0,= xmm0

+

+  &n= bsp;     psrld   xmm12,2
<= br class=3D"">+        paddd   = ;xmm10,xmm8

+      &n= bsp; por     xmm0,xmm5

+        por     x= mm12,xmm7

+      &nbs= p; pxor    xmm1,xmm3

+ &nb= sp;      movdqa  xmm3,XMMWORD[((64-128))= +rax]

+

+  &= nbsp;     movdqa  xmm8,xmm10
+        movdqa  xmm6,= xmm13

+       &n= bsp;pxor    xmm1,XMMWORD[((160-128))+rax]

+        paddd   xm= m14,xmm15

+      &nbs= p; pslld   xmm8,5

+   = ;     pxor    xmm6,xmm11

+

+    &n= bsp;   movdqa  xmm9,xmm10

= +        movdqa  XMMWORD[(16-128)+r= ax],xmm0

+       = ; paddd   xmm14,xmm0

+  &n= bsp;     pxor    xmm1,xmm3

+        psrld &nb= sp; xmm9,27

+     &nb= sp;  pxor    xmm6,xmm12

+        movdqa  xmm7,xmm11

+

+    = ;    pslld   xmm7,30

+        movdqa  xmm5,xmm1
+        por=     xmm8,xmm9

+  &nb= sp;     psrld   xmm5,31
+        paddd   = xmm14,xmm6

+      &nb= sp; paddd   xmm1,xmm1

+

+        psrld &nb= sp; xmm11,2

+     &nb= sp;  paddd   xmm14,xmm8

+ =        por     xmm1,= xmm5

+       &nb= sp;por     xmm11,xmm7

+ &n= bsp;      pxor    xmm2,xmm4
+        movd= qa  xmm4,XMMWORD[((80-128))+rax]

+

+        movdqa &= nbsp;xmm8,xmm14

+     &nbs= p;  movdqa  xmm6,xmm12

+  =       pxor    xmm2,XMMWORD[((1= 76-128))+rax]

+      =   paddd   xmm13,xmm15

+ &n= bsp;      pslld   xmm8,5

+        pxor &nbs= p;  xmm6,xmm10

+

+        movdqa  xmm9,xmm= 14

+        = ;movdqa  XMMWORD[(32-128)+rax],xmm1

+ &nb= sp;      paddd   xmm13,xmm1

+        pxor &nbs= p;  xmm2,xmm4

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm11

+       &nb= sp;movdqa  xmm7,xmm10

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm2

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm13,xmm6

+ &nbs= p;      paddd   xmm2,xmm2

+

+    &n= bsp;   psrld   xmm10,2

+        paddd   xmm13,xmm8<= br class=3D"">
+        po= r     xmm2,xmm5

+  &n= bsp;     por     xmm10,xmm7
+        pxor=    xmm3,xmm0

+   &nb= sp;    movdqa  xmm0,XMMWORD[((96-128))+rax]

+

+    &= nbsp;   movdqa  xmm8,xmm13

+        movdqa  xmm6,xmm11

+        pxor &nb= sp;  xmm3,XMMWORD[((192-128))+rax]

+=        paddd   xmm12,xmm15
+        psll= d   xmm8,5

+     = ;   pxor    xmm6,xmm14

+

+       = ; movdqa  xmm9,xmm13

+   &= nbsp;    movdqa  XMMWORD[(48-128)+rax],xmm2

+        paddd &n= bsp; xmm12,xmm2

+     = ;   pxor    xmm3,xmm0

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm10

+  &nbs= p;     movdqa  xmm7,xmm14

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm3

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm12,xmm6

+        paddd &n= bsp; xmm3,xmm3

+

+        psrld   xmm14,= 2

+        = paddd   xmm12,xmm8

+   &nb= sp;    por     xmm3,xmm5

+        por  = ;   xmm14,xmm7

+   &n= bsp;    pxor    xmm4,xmm1
=
+        movdqa  xmm= 1,XMMWORD[((112-128))+rax]

+
+        movdqa  xmm8,x= mm12

+       &nb= sp;movdqa  xmm6,xmm10

+    = ;    pxor    xmm4,XMMWORD[((208-128))+ra= x]

+        = ;paddd   xmm11,xmm15

+   &= nbsp;    pslld   xmm8,5

+        pxor    = xmm6,xmm13

+

+ &n= bsp;      movdqa  xmm9,xmm12

+        movdqa  = XMMWORD[(64-128)+rax],xmm3

+    = ;    paddd   xmm11,xmm3

+        pxor    = xmm4,xmm1

+      &nbs= p; psrld   xmm9,27

+  &nbs= p;     pxor    xmm6,xmm14

+        movdqa &n= bsp;xmm7,xmm13

+

= +        pslld   xmm7,30

+        movdqa =  xmm5,xmm4

+     &nbs= p;  por     xmm8,xmm9

+        psrld   xmm5,3= 1

+        = paddd   xmm11,xmm6

+   &nb= sp;    paddd   xmm4,xmm4

+

+      &nb= sp; psrld   xmm13,2

+  &nb= sp;     paddd   xmm11,xmm8

+        por   = ;  xmm4,xmm5

+    &nb= sp;   por     xmm13,xmm7
<= br class=3D"">+        pxor   =  xmm0,xmm2

+     &nbs= p;  movdqa  xmm2,XMMWORD[((128-128))+rax]

+

+      &= nbsp; movdqa  xmm8,xmm11

+  &nb= sp;     movdqa  xmm6,xmm14

+        pxor   &nb= sp;xmm0,XMMWORD[((224-128))+rax]

+   = ;     paddd   xmm10,xmm15
=
+        pslld  &nbs= p;xmm8,5

+       = ; pxor    xmm6,xmm12

+

+        movdq= a  xmm9,xmm11

+     &= nbsp;  movdqa  XMMWORD[(80-128)+rax],xmm4

+        paddd   xm= m10,xmm4

+       = ; pxor    xmm0,xmm2

+ &nbs= p;      psrld   xmm9,27

+        pxor  &n= bsp; xmm6,xmm13

+     = ;   movdqa  xmm7,xmm12

+
+        psl= ld   xmm7,30

+    &nb= sp;   movdqa  xmm5,xmm0

+ =        por     xmm8,= xmm9

+       &nb= sp;psrld   xmm5,31

+   &nb= sp;    paddd   xmm10,xmm6

+        paddd   xmm= 0,xmm0

+

+  =       psrld   xmm12,2

+        paddd  &nb= sp;xmm10,xmm8

+      =   por     xmm0,xmm5

+        por    &n= bsp;xmm12,xmm7

+      = ;  pxor    xmm1,xmm3

= +        movdqa  xmm3,XMMWORD[((144= -128))+rax]

+

+ &= nbsp;      movdqa  xmm8,xmm10

+        movdqa &n= bsp;xmm6,xmm13

+      = ;  pxor    xmm1,XMMWORD[((240-128))+rax]

+        paddd &nb= sp; xmm14,xmm15

+     = ;   pslld   xmm8,5

+ =        pxor    xmm6,xmm11=

+

+   =      movdqa  xmm9,xmm10

+        movdqa  XMMWORD[(9= 6-128)+rax],xmm0

+     &nb= sp;  paddd   xmm14,xmm0

+ =        pxor    xmm1,xmm3<= br class=3D"">
+        ps= rld   xmm9,27

+    &n= bsp;   pxor    xmm6,xmm12

+        movdqa  xmm7,xmm= 11

+

+  &nbs= p;     pslld   xmm7,30
+        movdqa  xmm5,x= mm1

+       &nbs= p;por     xmm8,xmm9

+ &nbs= p;      psrld   xmm5,31

+        paddd  &= nbsp;xmm14,xmm6

+     &nbs= p;  paddd   xmm1,xmm1

+
+        psrl= d   xmm11,2

+    &nbs= p;   paddd   xmm14,xmm8

+        por     = xmm1,xmm5

+      &nbs= p; por     xmm11,xmm7

+        pxor    xmm2,xm= m4

+        = ;movdqa  xmm4,XMMWORD[((160-128))+rax]

+<= br class=3D"">
+        mo= vdqa  xmm8,xmm14

+    &nbs= p;   movdqa  xmm6,xmm12

+ =        pxor    xmm2,XMMWO= RD[((0-128))+rax]

+     &n= bsp;  paddd   xmm13,xmm15

= +        pslld   xmm8,5

+        pxor &nb= sp;  xmm6,xmm10

+

+        movdqa  xmm9,xm= m14

+       &nbs= p;movdqa  XMMWORD[(112-128)+rax],xmm1

+ &= nbsp;      paddd   xmm13,xmm1

+        pxor &n= bsp;  xmm2,xmm4

+    =     psrld   xmm9,27

+        pxor    x= mm6,xmm11

+      &nbs= p; movdqa  xmm7,xmm10

+

+        pslld  &n= bsp;xmm7,30

+      &n= bsp; movdqa  xmm5,xmm2

+   = ;     por     xmm8,xmm9

+        psrld &n= bsp; xmm5,31

+     &n= bsp;  paddd   xmm13,xmm6

+=        paddd   xmm2,xmm2

+

+    = ;    psrld   xmm10,2

+        paddd   xmm13,= xmm8

+       &nb= sp;por     xmm2,xmm5

+ &nb= sp;      por     xmm10,xm= m7

+        = ;pxor    xmm3,xmm0

+  &nbs= p;     movdqa  xmm0,XMMWORD[((176-128))+rax]<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm8,xmm13

+        movdqa  xmm6,xmm11<= br class=3D"">
+        px= or    xmm3,XMMWORD[((16-128))+rax]

+        paddd   xmm12,= xmm15

+       &n= bsp;pslld   xmm8,5

+   &nb= sp;    pxor    xmm6,xmm14
=
+

+     &nb= sp;  movdqa  xmm9,xmm13

+  = ;      paddd   xmm12,xmm2

+        pxor &nbs= p;  xmm3,xmm0

+    &n= bsp;   psrld   xmm9,27

+        pxor    xmm6,x= mm10

+       &nb= sp;movdqa  xmm7,xmm14

+
+        pslld   x= mm7,30

+       &= nbsp;movdqa  xmm5,xmm3

+   &nbs= p;    por     xmm8,xmm9

+        psrld  &= nbsp;xmm5,31

+      &= nbsp; paddd   xmm12,xmm6

+ &nbs= p;      paddd   xmm3,xmm3

+

+    &n= bsp;   psrld   xmm14,2

+        paddd   xmm12,xmm8<= br class=3D"">
+        po= r     xmm3,xmm5

+  &n= bsp;     por     xmm14,xmm7
+        pxor=    xmm4,xmm1

+   &nb= sp;    movdqa  xmm1,XMMWORD[((192-128))+rax]

+

+    =     movdqa  xmm8,xmm12

+        movdqa  xmm6,xmm10

+        pxor &n= bsp;  xmm4,XMMWORD[((32-128))+rax]

+=        paddd   xmm11,xmm15
+        psll= d   xmm8,5

+     = ;   pxor    xmm6,xmm13

+

+       = ; movdqa  xmm9,xmm12

+   &= nbsp;    paddd   xmm11,xmm3
+        pxor   &n= bsp;xmm4,xmm1

+      =   psrld   xmm9,27

+  =       pxor    xmm6,xmm14

+        movdqa =  xmm7,xmm13

+

+        pslld   xmm7,30

+        movdq= a  xmm5,xmm4

+     &n= bsp;  por     xmm8,xmm9

+        psrld   xmm5,= 31

+        = ;paddd   xmm11,xmm6

+   &n= bsp;    paddd   xmm4,xmm4

+

+      &n= bsp; psrld   xmm13,2

+  &n= bsp;     paddd   xmm11,xmm8

+        por  &nbs= p;  xmm4,xmm5

+    &n= bsp;   por     xmm13,xmm7
=
+        pxor   = ; xmm0,xmm2

+     &nb= sp;  movdqa  xmm2,XMMWORD[((208-128))+rax]
+

+      =   movdqa  xmm8,xmm11

+  &n= bsp;     movdqa  xmm6,xmm14
+        pxor   &n= bsp;xmm0,XMMWORD[((48-128))+rax]

+   = ;     paddd   xmm10,xmm15
=
+        pslld  &nbs= p;xmm8,5

+       = ; pxor    xmm6,xmm12

+

+        movdq= a  xmm9,xmm11

+     &= nbsp;  paddd   xmm10,xmm4

= +        pxor    xmm0,xmm= 2

+        = psrld   xmm9,27

+    =     pxor    xmm6,xmm13
+        movdqa  xmm7,x= mm12

+

+  &n= bsp;     pslld   xmm7,30
<= br class=3D"">+        movdqa  xmm5= ,xmm0

+       &n= bsp;por     xmm8,xmm9

+ &n= bsp;      psrld   xmm5,31

+        paddd &nb= sp; xmm10,xmm6

+     =    paddd   xmm0,xmm0

= +

+        = psrld   xmm12,2

+    =     paddd   xmm10,xmm8

+        por    &n= bsp;xmm0,xmm5

+      =   por     xmm12,xmm7

+        pxor    x= mm1,xmm3

+       = ; movdqa  xmm3,XMMWORD[((224-128))+rax]

+

+       = ; movdqa  xmm8,xmm10

+   &= nbsp;    movdqa  xmm6,xmm13

+        pxor    x= mm1,XMMWORD[((64-128))+rax]

+   &nbs= p;    paddd   xmm14,xmm15

+        pslld   xmm= 8,5

+       &nbs= p;pxor    xmm6,xmm11

+

+        movdqa &n= bsp;xmm9,xmm10

+      = ;  paddd   xmm14,xmm0

+ &n= bsp;      pxor    xmm1,xmm3
+        psrl= d   xmm9,27

+    &nbs= p;   pxor    xmm6,xmm12

+        movdqa  xmm7,xmm11=

+

+   =      pslld   xmm7,30

+        movdqa  xmm5,xmm= 1

+        = por     xmm8,xmm9

+  =       psrld   xmm5,31

+        paddd  &nb= sp;xmm14,xmm6

+      =   paddd   xmm1,xmm1

+

+        psrld =   xmm11,2

+     =    paddd   xmm14,xmm8

+        por     xm= m1,xmm5

+       =  por     xmm11,xmm7

+=        pxor    xmm2,xmm4=

+        m= ovdqa  xmm4,XMMWORD[((240-128))+rax]

+
+        movd= qa  xmm8,xmm14

+     =    movdqa  xmm6,xmm12

+ &n= bsp;      pxor    xmm2,XMMWORD= [((80-128))+rax]

+     &nb= sp;  paddd   xmm13,xmm15

+=        pslld   xmm8,5

+        pxor &nbs= p;  xmm6,xmm10

+

+        movdqa  xmm9,xmm= 14

+        = ;paddd   xmm13,xmm1

+   &n= bsp;    pxor    xmm2,xmm4
=
+        psrld  &nbs= p;xmm9,27

+      &nbs= p; pxor    xmm6,xmm11

+ &n= bsp;      movdqa  xmm7,xmm10

+

+     =    pslld   xmm7,30

+ =        movdqa  xmm5,xmm2

+        por  = ;   xmm8,xmm9

+   &nb= sp;    psrld   xmm5,31

+        paddd   xmm13,= xmm6

+       &nb= sp;paddd   xmm2,xmm2

+

+        psrld  &nb= sp;xmm10,2

+      &nb= sp; paddd   xmm13,xmm8

+  =       por     xmm2,xmm5
+        por=     xmm10,xmm7

+  &n= bsp;     pxor    xmm3,xmm0

+        movdqa &n= bsp;xmm0,XMMWORD[((0-128))+rax]

+

+        movdqa  x= mm8,xmm13

+      &nbs= p; movdqa  xmm6,xmm11

+   =      pxor    xmm3,XMMWORD[((96-128)= )+rax]

+       &= nbsp;paddd   xmm12,xmm15

+  &nb= sp;     pslld   xmm8,5
+        pxor   &n= bsp;xmm6,xmm14

+

= +        movdqa  xmm9,xmm13

+        paddd &nb= sp; xmm12,xmm2

+     =    pxor    xmm3,xmm0

+        psrld   xmm9,2= 7

+        = pxor    xmm6,xmm10

+  &nbs= p;     movdqa  xmm7,xmm14

+

+      &n= bsp; pslld   xmm7,30

+  &n= bsp;     movdqa  xmm5,xmm3

+        por   &nbs= p; xmm8,xmm9

+     &n= bsp;  psrld   xmm5,31

+ &n= bsp;      paddd   xmm12,xmm6

+        paddd &n= bsp; xmm3,xmm3

+

+        psrld   xmm14,= 2

+        = paddd   xmm12,xmm8

+   &nb= sp;    por     xmm3,xmm5

+        por  = ;   xmm14,xmm7

+   &n= bsp;    pxor    xmm4,xmm1
=
+        movdqa  xmm= 1,XMMWORD[((16-128))+rax]

+

+        movdqa  xmm8,xm= m12

+       &nbs= p;movdqa  xmm6,xmm10

+    =     pxor    xmm4,XMMWORD[((112-128))+rax= ]

+        = paddd   xmm11,xmm15

+   &n= bsp;    pslld   xmm8,5

+        pxor    x= mm6,xmm13

+

+ &nb= sp;      movdqa  xmm9,xmm12

+        paddd  &n= bsp;xmm11,xmm3

+      = ;  pxor    xmm4,xmm1

= +        psrld   xmm9,27

+        pxor &n= bsp;  xmm6,xmm14

+    = ;    movdqa  xmm7,xmm13

+

+       &nb= sp;pslld   xmm7,30

+   &nb= sp;    movdqa  xmm5,xmm4

+        por    &n= bsp;xmm8,xmm9

+      =   psrld   xmm5,31

+  =       paddd   xmm11,xmm6

+        paddd &nb= sp; xmm4,xmm4

+

+        psrld   xmm13,= 2

+        = paddd   xmm11,xmm8

+   &nb= sp;    por     xmm4,xmm5

+        por  = ;   xmm13,xmm7

+   &n= bsp;    movdqa  xmm8,xmm11

+        paddd   xmm10,= xmm15

+       &n= bsp;movdqa  xmm6,xmm14

+   &nbs= p;    pslld   xmm8,5

+        pxor    x= mm6,xmm12

+

+ &nb= sp;      movdqa  xmm9,xmm11

+        paddd  &n= bsp;xmm10,xmm4

+      = ;  psrld   xmm9,27

+  = ;      movdqa  xmm7,xmm12
=
+        pxor   = ; xmm6,xmm13

+

+        pslld   xmm7,30
+        por =     xmm8,xmm9

+  &nbs= p;     paddd   xmm10,xmm6
=
+

+     &nb= sp;  psrld   xmm12,2

+ &nb= sp;      paddd   xmm10,xmm8

+        por  = ;   xmm12,xmm7

+   &n= bsp;    movdqa  xmm0,XMMWORD[rbx]
+        mov   &n= bsp; ecx,1

+     &nbs= p;  cmp     ecx,DWORD[rbx]

+        pxor   &nb= sp;xmm8,xmm8

+      &= nbsp; cmovge  r8,rbp

+   &= nbsp;    cmp     ecx,DWORD[4+rbx]
+        mov= dqa  xmm1,xmm0

+     =    cmovge  r9,rbp

+  =       cmp     ecx,DWORD[8= +rbx]

+       &n= bsp;pcmpgtd xmm1,xmm8

+    &nbs= p;   cmovge  r10,rbp

+ &nb= sp;      cmp     ecx,DWOR= D[12+rbx]

+      &nbs= p; paddd   xmm0,xmm1

+  &n= bsp;     cmovge  r11,rbp

+

+      &nb= sp; movdqu  xmm6,XMMWORD[rdi]

+ &nbs= p;      pand    xmm10,xmm1

+        movdq= u  xmm7,XMMWORD[32+rdi]

+   &nb= sp;    pand    xmm11,xmm1
=
+        paddd  &nbs= p;xmm10,xmm6

+      &= nbsp; movdqu  xmm8,XMMWORD[64+rdi]

+=        pand    xmm12,xmm= 1

+        = paddd   xmm11,xmm7

+   &nb= sp;    movdqu  xmm9,XMMWORD[96+rdi]
=
+        pand   = ; xmm13,xmm1

+     &n= bsp;  paddd   xmm12,xmm8

+=        movdqu  xmm5,XMMWORD[128+rd= i]

+        = ;pand    xmm14,xmm1

+  &nb= sp;     movdqu  XMMWORD[rdi],xmm10

+        paddd &nb= sp; xmm13,xmm9

+     =    movdqu  XMMWORD[32+rdi],xmm11

+        paddd   xmm14,= xmm5

+       &nb= sp;movdqu  XMMWORD[64+rdi],xmm12

+  =       movdqu  XMMWORD[96+rdi],xmm13

+        movdqu=  XMMWORD[128+rdi],xmm14

+
=
+        movdqa  XMM= WORD[rbx],xmm0

+      = ;  movdqa  xmm5,XMMWORD[96+rbp]

+        movdqa  xmm15,XMMWORD[((-= 32))+rbp]

+      &nbs= p; dec     edx

+ &nbs= p;      jnz     NEAR $L$o= op

+

+  &nbs= p;     mov     edx,DWORD[280+r= sp]

+       &nbs= p;lea     rdi,[16+rdi]

+ &= nbsp;      lea     rsi,[6= 4+rsi]

+       &= nbsp;dec     edx

+  &= nbsp;     jnz     NEAR $L$oop_= grande

+

+$L$done= :

+        = mov     rax,QWORD[272+rsp]

+

+        = ;movaps  xmm6,XMMWORD[((-184))+rax]

+ &nb= sp;      movaps  xmm7,XMMWORD[((-168))+r= ax]

+       &nbs= p;movaps  xmm8,XMMWORD[((-152))+rax]

+ &n= bsp;      movaps  xmm9,XMMWORD[((-136))+= rax]

+       &nb= sp;movaps  xmm10,XMMWORD[((-120))+rax]

+ =        movaps  xmm11,XMMWORD[((-104= ))+rax]

+       =  movaps  xmm12,XMMWORD[((-88))+rax]

= +        movaps  xmm13,XMMWORD[((-7= 2))+rax]

+       = ; movaps  xmm14,XMMWORD[((-56))+rax]

+        movaps  xmm15,XMMWORD[((-= 40))+rax]

+      &nbs= p; mov     rbp,QWORD[((-16))+rax]
+

+      = ;  mov     rbx,QWORD[((-8))+rax]

+

+     &= nbsp;  lea     rsp,[rax]

+

+$L$epilogue:

+        mov    &= nbsp;rdi,QWORD[8+rsp]        ;WIN64 epil= ogue

+       &nb= sp;mov     rsi,QWORD[16+rsp]

+        DB     &= nbsp;0F3h,0C3h           =     ;repret

+

+$L$SEH_end_sha1_multi_block:

+

+ALIGN   32

+sha1_multi_block_shaext:

+  &nbs= p;     mov     QWORD[8+rsp],rd= i        ;WIN64 prologue
<= br class=3D"">+        mov   &= nbsp; QWORD[16+rsp],rsi

+   &nb= sp;    mov     rax,rsp

+$L$SEH_begin_sha1_multi_block_shaext:

+        mov    = ; rdi,rcx

+      = ;  mov     rsi,rdx

+        mov     = rdx,r8

+

+

+

+_shaext_shortcut:
+        mov =     rax,rsp

+

+        push  &nb= sp; rbx

+

+ =        push    rbp

+

+    &= nbsp;   lea     rsp,[((-168))+rsp]

+        movaps =  XMMWORD[rsp],xmm6

+    &n= bsp;   movaps  XMMWORD[16+rsp],xmm7

+        movaps  XMMWORD[= 32+rsp],xmm8

+      &= nbsp; movaps  XMMWORD[48+rsp],xmm9

+=        movaps  XMMWORD[(-120)+rax]= ,xmm10

+       &= nbsp;movaps  XMMWORD[(-104)+rax],xmm11

+ =        movaps  XMMWORD[(-88)+rax],x= mm12

+       &nb= sp;movaps  XMMWORD[(-72)+rax],xmm13

+ &nb= sp;      movaps  XMMWORD[(-56)+rax],xmm1= 4

+        = movaps  XMMWORD[(-40)+rax],xmm15

+  =       sub     rsp,288

+        shl &= nbsp;   edx,1

+   &nb= sp;    and     rsp,-256

+        lea  &nb= sp;  rdi,[64+rdi]

+   &nbs= p;    mov     QWORD[272+rsp],rax
+$L$body_shaext:

+ =        lea     rbx,[= 256+rsp]

+       = ; movdqa  xmm3,XMMWORD[((K_XX_XX+128))]

+

+$L$oop_grande_shaext:
=
+        mov   =   DWORD[280+rsp],edx

+   &= nbsp;    xor     edx,edx

+        mov  = ;   r8,QWORD[rsi]

+   = ;     mov     ecx,DWORD[8+rsi]=

+        c= mp     ecx,edx

+  &nb= sp;     cmovg   edx,ecx
+        test   &= nbsp;ecx,ecx

+      &= nbsp; mov     DWORD[rbx],ecx

+        cmovle  r8,rsp

+        mov &= nbsp;   r9,QWORD[16+rsi]

+ &nbs= p;      mov     ecx,DWORD= [24+rsi]

+       = ; cmp     ecx,edx

+ &= nbsp;      cmovg   edx,ecx

+        test &nbs= p;  ecx,ecx

+    &nbs= p;   mov     DWORD[4+rbx],ecx

+        cmovle &n= bsp;r9,rsp

+      &nb= sp; test    edx,edx

+ &nbs= p;      jz      NEAR= $L$done_shaext

+

+        movq    xmm0,QW= ORD[((0-64))+rdi]

+     &n= bsp;  movq    xmm4,QWORD[((32-64))+rdi]

+        movq &nbs= p;  xmm5,QWORD[((64-64))+rdi]

+ &nbs= p;      movq    xmm6,QWORD[((9= 6-64))+rdi]

+      &n= bsp; movq    xmm7,QWORD[((128-64))+rdi]
<= br class=3D"">+

+     &nbs= p;  punpckldq       xmm0,xmm4

+        punpckl= dq       xmm5,xmm6

+

+       &nb= sp;movdqa  xmm8,xmm0

+    =     punpcklqdq      xmm0,xmm5<= br class=3D"">
+        pu= npckhqdq      xmm8,xmm5

+

+       &nb= sp;pshufd  xmm1,xmm7,63

+   &nb= sp;    pshufd  xmm9,xmm7,127

+        pshufd  xmm0,xmm0,= 27

+        = ;pshufd  xmm8,xmm8,27

+    = ;    jmp     NEAR $L$oop_shaext

+

+ALIGN   = ;32

+$L$oop_shaext:

+        movdqu  xmm4,XMMWORD[r8= ]

+        = movdqu  xmm11,XMMWORD[r9]

+   &= nbsp;    movdqu  xmm5,XMMWORD[16+r8]

+        movdqu  xm= m12,XMMWORD[16+r9]

+     &= nbsp;  movdqu  xmm6,XMMWORD[32+r8]

+DB      102,15,56,0,227

+        movdqu  xmm13,X= MMWORD[32+r9]

+DB     &nbs= p;102,68,15,56,0,219

+     = ;   movdqu  xmm7,XMMWORD[48+r8]

+        lea    &n= bsp;r8,[64+r8]

+DB     &nb= sp;102,15,56,0,235

+     &= nbsp;  movdqu  xmm14,XMMWORD[48+r9]

+        lea    &n= bsp;r9,[64+r9]

+DB     &nb= sp;102,68,15,56,0,227

+

+        movdqa  XMMWORD[80+= rsp],xmm1

+      &nbs= p; paddd   xmm1,xmm4

+  &n= bsp;     movdqa  XMMWORD[112+rsp],xmm9

+        paddd &n= bsp; xmm9,xmm11

+     = ;   movdqa  XMMWORD[64+rsp],xmm0

+        movdqa  xmm2,xmm0
+        mov= dqa  XMMWORD[96+rsp],xmm8

+   &= nbsp;    movdqa  xmm10,xmm8

+DB      15,58,204,193,0

+DB      15,56,200,213
+DB      69,15,58,204,193,0

+DB      69,15,56,200,212
+DB      102,15,56,0,24= 3

+        = prefetcht0      [127+r8]

+DB      15,56,201,229

+DB      102,68,15,56,0,235

+        prefetcht0 &nbs= p;    [127+r9]

+DB  &= nbsp;   69,15,56,201,220

+

+DB      102,15,56,0,251<= br class=3D"">
+        mo= vdqa  xmm1,xmm0

+DB    &nb= sp; 102,68,15,56,0,243

+   &nbs= p;    movdqa  xmm9,xmm8

+DB      15,58,204,194,0

+DB      15,56,200,206

+DB      69,15,58,204,194,0

+DB      69,15,56,200,205

+        pxor &nbs= p;  xmm4,xmm6

+DB    =   15,56,201,238

+    =     pxor    xmm11,xmm13
+DB      69,15,56,201,229

+        movdqa  = xmm2,xmm0

+      &nbs= p; movdqa  xmm10,xmm8

+DB  &nbs= p;   15,58,204,193,0

+DB  =     15,56,200,215

+DB &nbs= p;    69,15,58,204,193,0

+= DB      69,15,56,200,214

+DB      15,56,202,231

+DB      69,15,56,202,222
<= br class=3D"">+        pxor   =  xmm5,xmm7

+DB     &n= bsp;15,56,201,247

+     &n= bsp;  pxor    xmm12,xmm14

+DB      69,15,56,201,238
+        movdqa  xmm1,x= mm0

+       &nbs= p;movdqa  xmm9,xmm8

+DB    = ;  15,58,204,194,0

+DB   &= nbsp;  15,56,200,204

+DB   = ;   69,15,58,204,194,0

+DB &nbs= p;    69,15,56,200,203

+DB=      15,56,202,236

+= DB      69,15,56,202,227

+        pxor    x= mm6,xmm4

+DB      15,= 56,201,252

+      &nb= sp; pxor    xmm13,xmm11

+D= B      69,15,56,201,243

+        movdqa  xmm2,xmm0

+        movdqa =  xmm10,xmm8

+DB     &= nbsp;15,58,204,193,0

+DB    &nb= sp; 15,56,200,213

+DB    &= nbsp; 69,15,58,204,193,0

+DB   =    69,15,56,200,212

+DB  &= nbsp;   15,56,202,245

+DB  = ;    69,15,56,202,236

+ &n= bsp;      pxor    xmm7,xmm5
+DB      15,56,201,229<= br class=3D"">
+        px= or    xmm14,xmm12

+DB  &nb= sp;   69,15,56,201,220

+  =       movdqa  xmm1,xmm0
+        movdqa  xmm9,= xmm8

+DB      15,58,2= 04,194,1

+DB      15,= 56,200,206

+DB      6= 9,15,58,204,194,1

+DB     =  69,15,56,200,205

+DB    &= nbsp; 15,56,202,254

+DB    = ;  69,15,56,202,245

+   &n= bsp;    pxor    xmm4,xmm6
=
+DB      15,56,201,238

+        pxor  &nb= sp; xmm11,xmm13

+DB    &nb= sp; 69,15,56,201,229

+    =     movdqa  xmm2,xmm0

+        movdqa  xmm10,xmm8

+DB      15,58,204,193,1
+DB      15,56,200,215<= br class=3D"">
+DB      69,15,58,204= ,193,1

+DB      69,15= ,56,200,214

+DB      = 15,56,202,231

+DB     &nbs= p;69,15,56,202,222

+     &= nbsp;  pxor    xmm5,xmm7

+DB      15,56,201,247

+        pxor    = ;xmm12,xmm14

+DB      = ;69,15,56,201,238

+     &n= bsp;  movdqa  xmm1,xmm0

+  = ;      movdqa  xmm9,xmm8
<= br class=3D"">+DB      15,58,204,194,1

+DB      15,56,200,204

+DB      69,15,58,204,194,1<= br class=3D"">
+DB      69,15,56,200= ,203

+DB      15,56,2= 02,236

+DB      69,15= ,56,202,227

+      &n= bsp; pxor    xmm6,xmm4

+DB=      15,56,201,252

+=        pxor    xmm13,xmm= 11

+DB      69,15,56,= 201,243

+       =  movdqa  xmm2,xmm0

+   &nb= sp;    movdqa  xmm10,xmm8

+DB      15,58,204,193,1

+DB      15,56,200,213
+DB      69,15,58,204,193,1

+DB      69,15,56,200,212
+DB      15,56,202,245<= br class=3D"">
+DB      69,15,56,202= ,236

+       &nb= sp;pxor    xmm7,xmm5

+DB  =     15,56,201,229

+  =       pxor    xmm14,xmm12

+DB      69,15,56,201,220=

+        m= ovdqa  xmm1,xmm0

+    &nbs= p;   movdqa  xmm9,xmm8

+DB=      15,58,204,194,1

+DB      15,56,200,206

+DB      69,15,58,204,194,1

+DB      69,15,56,200,205
=
+DB      15,56,202,254

+DB      69,15,56,202,245

+        pxor &nbs= p;  xmm4,xmm6

+DB    =   15,56,201,238

+    =     pxor    xmm11,xmm13
+DB      69,15,56,201,229

+        movdqa  = xmm2,xmm0

+      &nbs= p; movdqa  xmm10,xmm8

+DB  &nbs= p;   15,58,204,193,2

+DB  =     15,56,200,215

+DB &nbs= p;    69,15,58,204,193,2

+= DB      69,15,56,200,214

+DB      15,56,202,231

+DB      69,15,56,202,222
<= br class=3D"">+        pxor   =  xmm5,xmm7

+DB     &n= bsp;15,56,201,247

+     &n= bsp;  pxor    xmm12,xmm14

+DB      69,15,56,201,238
+        movdqa  xmm1,x= mm0

+       &nbs= p;movdqa  xmm9,xmm8

+DB    = ;  15,58,204,194,2

+DB   &= nbsp;  15,56,200,204

+DB   = ;   69,15,58,204,194,2

+DB &nbs= p;    69,15,56,200,203

+DB=      15,56,202,236

+= DB      69,15,56,202,227

+        pxor    x= mm6,xmm4

+DB      15,= 56,201,252

+      &nb= sp; pxor    xmm13,xmm11

+D= B      69,15,56,201,243

+        movdqa  xmm2,xmm0

+        movdqa =  xmm10,xmm8

+DB     &= nbsp;15,58,204,193,2

+DB    &nb= sp; 15,56,200,213

+DB    &= nbsp; 69,15,58,204,193,2

+DB   =    69,15,56,200,212

+DB  &= nbsp;   15,56,202,245

+DB  = ;    69,15,56,202,236

+ &n= bsp;      pxor    xmm7,xmm5
+DB      15,56,201,229<= br class=3D"">
+        px= or    xmm14,xmm12

+DB  &nb= sp;   69,15,56,201,220

+  =       movdqa  xmm1,xmm0
+        movdqa  xmm9,= xmm8

+DB      15,58,2= 04,194,2

+DB      15,= 56,200,206

+DB      6= 9,15,58,204,194,2

+DB     =  69,15,56,200,205

+DB    &= nbsp; 15,56,202,254

+DB    = ;  69,15,56,202,245

+   &n= bsp;    pxor    xmm4,xmm6
=
+DB      15,56,201,238

+        pxor  &nb= sp; xmm11,xmm13

+DB    &nb= sp; 69,15,56,201,229

+    =     movdqa  xmm2,xmm0

+        movdqa  xmm10,xmm8

+DB      15,58,204,193,2
+DB      15,56,200,215<= br class=3D"">
+DB      69,15,58,204= ,193,2

+DB      69,15= ,56,200,214

+DB      = 15,56,202,231

+DB     &nbs= p;69,15,56,202,222

+     &= nbsp;  pxor    xmm5,xmm7

+DB      15,56,201,247

+        pxor    = ;xmm12,xmm14

+DB      = ;69,15,56,201,238

+     &n= bsp;  movdqa  xmm1,xmm0

+  = ;      movdqa  xmm9,xmm8
<= br class=3D"">+DB      15,58,204,194,3

+DB      15,56,200,204

+DB      69,15,58,204,194,3<= br class=3D"">
+DB      69,15,56,200= ,203

+DB      15,56,2= 02,236

+DB      69,15= ,56,202,227

+      &n= bsp; pxor    xmm6,xmm4

+DB=      15,56,201,252

+=        pxor    xmm13,xmm= 11

+DB      69,15,56,= 201,243

+       =  movdqa  xmm2,xmm0

+   &nb= sp;    movdqa  xmm10,xmm8

+DB      15,58,204,193,3

+DB      15,56,200,213
+DB      69,15,58,204,193,3

+DB      69,15,56,200,212
+DB      15,56,202,245<= br class=3D"">
+DB      69,15,56,202= ,236

+       &nb= sp;pxor    xmm7,xmm5

+  &n= bsp;     pxor    xmm14,xmm12

+

+    &= nbsp;   mov     ecx,1

+        pxor   &nb= sp;xmm4,xmm4

+      &= nbsp; cmp     ecx,DWORD[rbx]

+        cmovge  r8,rsp

+

+   &nbs= p;    movdqa  xmm1,xmm0

+        movdqa  xmm9,xmm8

+DB      15,58,204,194,3
+DB      15,56,200,206=

+DB      69,15,58,20= 4,194,3

+DB      69,1= 5,56,200,205

+DB      = ;15,56,202,254

+DB     &nb= sp;69,15,56,202,245

+

+        cmp    &n= bsp;ecx,DWORD[4+rbx]

+     = ;   cmovge  r9,rsp

+  = ;      movq    xmm6,QWORD[rbx]=

+

+   =      movdqa  xmm2,xmm0

+        movdqa  xmm10,xmm8<= br class=3D"">
+DB      15,58,204,19= 3,3

+DB      15,56,20= 0,215

+DB      69,15,= 58,204,193,3

+DB      = ;69,15,56,200,214

+

+        pshufd  xmm11,xmm6,0x00=

+        p= shufd  xmm12,xmm6,0x55

+   &nbs= p;    movdqa  xmm7,xmm6

+        pcmpgtd xmm11,xmm4

+        pcmpgtd x= mm12,xmm4

+

+ &nb= sp;      movdqa  xmm1,xmm0

+        movdqa  xm= m9,xmm8

+DB      15,5= 8,204,194,3

+DB      = 15,56,200,204

+DB     &nbs= p;69,15,58,204,194,3

+DB    &nb= sp; 68,15,56,200,204

+

+        pcmpgtd xmm7,xmm4
+        pand=    xmm0,xmm11

+   &n= bsp;    pand    xmm1,xmm11

+        pand  &nbs= p; xmm8,xmm12

+     &= nbsp;  pand    xmm9,xmm12

+        paddd   xmm6,x= mm7

+

+  &nb= sp;     paddd   xmm0,XMMWORD[64+rsp]

+        paddd=   xmm1,XMMWORD[80+rsp]

+  &nbs= p;     paddd   xmm8,XMMWORD[96+rsp]

+        paddd =   xmm9,XMMWORD[112+rsp]

+

+        movq &nbs= p;  QWORD[rbx],xmm6

+   &n= bsp;    dec     edx
<= br class=3D"">+        jnz   &= nbsp; NEAR $L$oop_shaext

+
=
+        mov   =   edx,DWORD[280+rsp]

+

+        pshufd  xm= m0,xmm0,27

+      &nb= sp; pshufd  xmm8,xmm8,27

+

+        movdqa &n= bsp;xmm6,xmm0

+      =   punpckldq       xmm0,xmm8

+        punpckhdq=       xmm6,xmm8

+        punpckhdq    &n= bsp;  xmm1,xmm9

+    =     movq    QWORD[(0-64)+rdi],xmm0

+        psrldq =  xmm0,8

+      &= nbsp; movq    QWORD[(64-64)+rdi],xmm6
+        psrldq  xmm6,8=

+        m= ovq    QWORD[(32-64)+rdi],xmm0

= +        psrldq  xmm1,8

+        movq  &n= bsp; QWORD[(96-64)+rdi],xmm6

+  &nbs= p;     movq    QWORD[(128-64)+rdi],= xmm1

+

+  &n= bsp;     lea     rdi,[8+rdi]
+        lea=     rsi,[32+rsi]

+  =       dec     edx

+        jnz  = ;   NEAR $L$oop_grande_shaext

+=

+$L$done_shaext:

+

+        = ;movaps  xmm6,XMMWORD[((-184))+rax]

+ &nb= sp;      movaps  xmm7,XMMWORD[((-168))+r= ax]

+       &nbs= p;movaps  xmm8,XMMWORD[((-152))+rax]

+ &n= bsp;      movaps  xmm9,XMMWORD[((-136))+= rax]

+       &nb= sp;movaps  xmm10,XMMWORD[((-120))+rax]

+ =        movaps  xmm11,XMMWORD[((-104= ))+rax]

+       =  movaps  xmm12,XMMWORD[((-88))+rax]

= +        movaps  xmm13,XMMWORD[((-7= 2))+rax]

+       = ; movaps  xmm14,XMMWORD[((-56))+rax]

+        movaps  xmm15,XMMWORD[((-= 40))+rax]

+      &nbs= p; mov     rbp,QWORD[((-16))+rax]
+

+      = ;  mov     rbx,QWORD[((-8))+rax]

+

+     &= nbsp;  lea     rsp,[rax]

+

+$L$epilogue_shaext:
=
+        mov   =   rdi,QWORD[8+rsp]        ;WIN= 64 epilogue

+      &n= bsp; mov     rsi,QWORD[16+rsp]

+        DB    =   0F3h,0C3h          = ;     ;repret

+

+$L$SEH_end_sha1_multi_block_shaext:
=
+

+ALIGN   256

+        DD  = ;    0x5a827999,0x5a827999,0x5a827999,0x5a827999

+        DD  = ;    0x5a827999,0x5a827999,0x5a827999,0x5a827999

+K_XX_XX:

+   = ;     DD      0x6ed9eba1,= 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1

+   = ;     DD      0x6ed9eba1,= 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1

+   = ;     DD      0x8f1bbcdc,= 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc

+   = ;     DD      0x8f1bbcdc,= 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc

+   = ;     DD      0xca62c1d6,= 0xca62c1d6,0xca62c1d6,0xca62c1d6

+   = ;     DD      0xca62c1d6,= 0xca62c1d6,0xca62c1d6,0xca62c1d6

+   = ;     DD      0x00010203,= 0x04050607,0x08090a0b,0x0c0d0e0f

+   = ;     DD      0x00010203,= 0x04050607,0x08090a0b,0x0c0d0e0f

+DB
0xf,0xe,0xd,0xc,0xb,0xa,0x9,0= x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0

+DB      83,72,65,49,32,1= 09,117,108,116,105,45,98,108,111,99,107

+DB &n= bsp;    32,116,114,97,110,115,102,111,114,109,32,102,11= 1,114,32,120

+DB      = ;56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77

+DB      83,32,98,121,32,60,97,112,112,114,111,= 64,111,112,101,110

+DB     = ; 115,115,108,46,111,114,103,62,0

+EXTERN=  __imp_RtlVirtualUnwind

+
=
+ALIGN   16

+se_handl= er:

+       &nbs= p;push    rsi

+   &nb= sp;    push    rdi

+        push    = rbx

+       &nbs= p;push    rbp

+   &nb= sp;    push    r12

+        push    = r13

+       &nbs= p;push    r14

+   &nb= sp;    push    r15

+        pushfq
+        sub   &n= bsp; rsp,64

+

+        mov     r= ax,QWORD[120+r8]

+     &nb= sp;  mov     rbx,QWORD[248+r8]
=
+

+     &nb= sp;  mov     rsi,QWORD[8+r9]
+        mov   &n= bsp; r11,QWORD[56+r9]

+
+        mov   &nb= sp; r10d,DWORD[r11]

+    &= nbsp;   lea     r10,[r10*1+rsi]

+        cmp  = ;   rbx,r10

+    = ;    jb      NEAR $L$in_prolog= ue

+

+  &nbs= p;     mov     rax,QWORD[152+r= 8]

+

+  &nbs= p;     mov     r10d,DWORD[4+r1= 1]

+        = ;lea     r10,[r10*1+rsi]

+=        cmp     rbx,= r10

+       &nbs= p;jae     NEAR $L$in_prologue

+

+       = ; mov     rax,QWORD[272+rax]

+

+      &nbs= p; mov     rbx,QWORD[((-8))+rax]
+        mov   &nb= sp; rbp,QWORD[((-16))+rax]

+   =      mov     QWORD[144+r8],rbx=

+        m= ov     QWORD[160+r8],rbp

+=

+        l= ea     rsi,[((-24-160))+rax]

+        lea     = rdi,[512+r8]

+      &= nbsp; mov     ecx,20

= +        DD     &nbs= p;0xa548f3fc

+

+$= L$in_prologue:

+      = ;  mov     rdi,QWORD[8+rax]
+        mov   &nb= sp; rsi,QWORD[16+rax]

+    = ;    mov     QWORD[152+r8],rax

+        mov &n= bsp;   QWORD[168+r8],rsi

+ &nbs= p;      mov     QWORD[176= +r8],rdi

+

+ &nbs= p;      mov     rdi,QWORD= [40+r9]

+       =  mov     rsi,r8

+ &nb= sp;      mov     ecx,154<= br class=3D"">
+        DD=      0xa548f3fc

+
+        mov =     rsi,r9

+   &= nbsp;    xor     rcx,rcx

+        mov  = ;   rdx,QWORD[8+rsi]

+  &n= bsp;     mov     r8,QWORD[rsi]=

+        m= ov     r9,QWORD[16+rsi]

+ =        mov     r10,Q= WORD[40+rsi]

+      &= nbsp; lea     r11,[56+rsi]

+        lea    &n= bsp;r12,[24+rsi]

+     &nb= sp;  mov     QWORD[32+rsp],r10
=
+        mov   =   QWORD[40+rsp],r11

+   &n= bsp;    mov     QWORD[48+rsp],r12
+        mov=     QWORD[56+rsp],rcx

+ &= nbsp;      call    QWORD[__imp= _RtlVirtualUnwind]

+

+        mov    &n= bsp;eax,1

+      &nbs= p; add     rsp,64

+ &= nbsp;      popfq

+        pop     r1= 5

+        = pop     r14

+   =      pop     r13

+        pop   = ;  r12

+     &nb= sp;  pop     rbp

+        pop     rb= x

+        = pop     rdi

+   =      pop     rsi

+        DB   =    0F3h,0C3h         = ;      ;repret

+=

+section .pdata rdata align=3D4

+ALIGN   4

+  &= nbsp;     DD      $L$SEH_= begin_sha1_multi_block wrt ..imagebase

+  = ;      DD      $L$SE= H_end_sha1_multi_block wrt ..imagebase

+  = ;      DD      $L$SE= H_info_sha1_multi_block wrt ..imagebase

+ &nbs= p;      DD      $L$S= EH_begin_sha1_multi_block_shaext wrt ..imagebase

+        DD     &= nbsp;$L$SEH_end_sha1_multi_block_shaext wrt ..imagebase

+        DD    =   $L$SEH_info_sha1_multi_block_shaext wrt ..imagebase

+section .xdata rdata align=3D8

+ALIGN   8

+$L$SEH_info_sha1_= multi_block:

+DB      = ;9,0,0,0

+       = ; DD      se_handler wrt ..imagebase

+        DD  =     $L$body wrt ..imagebase,$L$epilogue wrt ..imagebase=

+$L$SEH_info_sha1_multi_block_shaext:

+DB      9,0,0,0

+        DD  &nbs= p;   se_handler wrt ..imagebase

+        DD     &nb= sp;$L$body_shaext wrt ..imagebase,$L$epilogue_shaext
wrt ..im= agebase

diff --git a/CryptoPkg/Library/Openssl= Lib/X64/crypto/sha/sha1-
x86_64.nasm
b/CryptoPk= g/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm
new file= mode 100644
index 0000000000..c6d68d348f
--- /= dev/null
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sh= a1-x86_64.nasm
@@ -0,0 +1,2884 @@
+; WARNING: d= o not edit!

+; Generated from openssl/crypto/s= ha/asm/sha1-x86_64.pl

+;

+; Copyright 2006-2020 The OpenSSL Project Authors. All Rights
Reserved.

+;

+; Licensed under the OpenSSL license (the "License").  You may= not use

+; this file except in compliance wit= h the License.  You can obtain a
copy

+; in the file LICENSE in the source distribution or at

+; https://www.openssl.org/source/license.html

+

+default rel

+%define XMMWORD

+%defin= e YMMWORD

+%define ZMMWORD

+section .text code align=3D64

+

+EXTERN  OPENSSL_ia32cap_P
+

+global  sha1_block_data_or= der

+

+ALIGN &nbs= p; 16

+sha1_block_data_order:

+        mov  &nb= sp;  QWORD[8+rsp],rdi        ;= WIN64 prologue

+      = ;  mov     QWORD[16+rsp],rsi
+        mov   &n= bsp; rax,rsp

+$L$SEH_begin_sha1_block_dat= a_order:

+       = ; mov     rdi,rcx

+ &= nbsp;      mov     rsi,rd= x

+        = mov     rdx,r8

+

+

+

+        mov    =  r9d,DWORD[((OPENSSL_ia32cap_P+0))]

+ &nb= sp;      mov     r8d,DWOR= D[((OPENSSL_ia32cap_P+4))]

+    = ;    mov     r10d,DWORD[((OPENSSL_i= a32cap_P+8))]

+      =   test    r8d,512

+ &= nbsp;      jz      N= EAR $L$ialu

+      &n= bsp; test    r10d,536870912

+        jnz     N= EAR _shaext_shortcut

+     = ;   jmp     NEAR _ssse3_shortcut

+

+ALIGN   16<= br class=3D"">
+$L$ialu:

+  = ;      mov     rax,rsp
+

+   &nb= sp;    push    rbx

+

+      &nbs= p; push    rbp

+

+        push &nbs= p;  r12

+

+        push    r13
+

+   &n= bsp;    push    r14

+

+      &nb= sp; mov     r8,rdi

+ =        sub     rsp,7= 2

+        = mov     r9,rsi

+  &nb= sp;     and     rsp,-64

+        mov &nbs= p;   r10,rdx

+   &nbs= p;    mov     QWORD[64+rsp],rax

+

+$L$prologue:

+

+    = ;    mov     esi,DWORD[r8]

+        mov  = ;   edi,DWORD[4+r8]

+  &nb= sp;     mov     r11d,DWORD[8+r= 8]

+        = ;mov     r12d,DWORD[12+r8]

+        mov     r1= 3d,DWORD[16+r8]

+     &nbs= p;  jmp     NEAR $L$loop

+

+ALIGN   16

+$L$loop:

+    =     mov     edx,DWORD[r9]

+        bswap &nb= sp; edx

+      &= nbsp; mov     ebp,DWORD[4+r9]

+        mov    =  eax,r12d

+      = ;  mov     DWORD[rsp],edx

+        mov    = ; ecx,esi

+      = ;  bswap   ebp

+  &nb= sp;     xor     eax,r11d

+        rol &nb= sp;   ecx,5

+    = ;    and     eax,edi
=
+        lea   =   r13d,[1518500249+r13*1+rdx]

+ &nbs= p;      add     r13d,ecx<= br class=3D"">
+        xo= r     eax,r12d

+  &nb= sp;     rol     edi,30

+        add  = ;   r13d,eax

+   &nbs= p;    mov     r14d,DWORD[8+r9]

+        mov &n= bsp;   eax,r11d

+   &= nbsp;    mov     DWORD[4+rsp],ebp
+        mov=     ecx,r13d

+  &nbs= p;     bswap   r14d

+        xor    =  eax,edi

+      =   rol     ecx,5

= +        and     eax= ,esi

+       &nb= sp;lea     r12d,[1518500249+r12*1+rbp]
+        add   &n= bsp; r12d,ecx

+     &= nbsp;  xor     eax,r11d

+        rol    &= nbsp;esi,30

+      &n= bsp; add     r12d,eax

+        mov     ed= x,DWORD[12+r9]

+      = ;  mov     eax,edi

+        mov     = DWORD[8+rsp],r14d

+     &n= bsp;  mov     ecx,r12d

+        bswap   edx
+        xor =     eax,esi

+   =      rol     ecx,5

+        and  &nb= sp;  eax,r13d

+    &n= bsp;   lea     r11d,[1518500249+r11*1+r1= 4]

+        = ;add     r11d,ecx

+  =       xor     eax,edi

+        rol &= nbsp;   r13d,30

+   &= nbsp;    add     r11d,eax

+        mov  = ;   ebp,DWORD[16+r9]

+  &n= bsp;     mov     eax,esi

+        mov &nb= sp;   DWORD[12+rsp],edx

+  = ;      mov     ecx,r11d
+        bsw= ap   ebp

+     &= nbsp;  xor     eax,r13d

+        rol    &= nbsp;ecx,5

+      &nb= sp; and     eax,r12d

= +        lea     edi= ,[1518500249+rdi*1+rdx]

+    &n= bsp;   add     edi,ecx
+        xor   &nb= sp; eax,esi

+     &nb= sp;  rol     r12d,30

+        add    &n= bsp;edi,eax

+      &n= bsp; mov     r14d,DWORD[20+r9]

+        mov    = ; eax,r13d

+     &nbs= p;  mov     DWORD[16+rsp],ebp
<= br class=3D"">+        mov   &= nbsp; ecx,edi

+     &= nbsp;  bswap   r14d

+ &nbs= p;      xor     eax,r12d<= br class=3D"">
+        ro= l     ecx,5

+   =      and     eax,r11d

+        lea  = ;   esi,[1518500249+rsi*1+rbp]

= +        add     esi= ,ecx

+       &nb= sp;xor     eax,r13d

+ &nbs= p;      rol     r11d,30
+        add=     esi,eax

+   = ;     mov     edx,DWORD[24+r9]=

+        m= ov     eax,r12d

+  &n= bsp;     mov     DWORD[20+rsp]= ,r14d

+       &n= bsp;mov     ecx,esi

+ &nbs= p;      bswap   edx
<= br class=3D"">+        xor   &= nbsp; eax,r11d

+     =    rol     ecx,5

+        and    &n= bsp;eax,edi

+      &n= bsp; lea     r13d,[1518500249+r13*1+r14]

+        add  = ;   r13d,ecx

+   &nbs= p;    xor     eax,r12d

+        rol  &nbs= p;  edi,30

+     = ;   add     r13d,eax

+        mov    = ; ebp,DWORD[28+r9]

+    &n= bsp;   mov     eax,r11d
+        mov   &n= bsp; DWORD[24+rsp],edx

+   &nbs= p;    mov     ecx,r13d

+        bswap  &n= bsp;ebp

+       =  xor     eax,edi

+ &n= bsp;      rol     ecx,5
+        and=     eax,esi

+   = ;     lea     r12d,[1518500249= +r12*1+rdx]

+      &n= bsp; add     r12d,ecx

+        xor     ea= x,r11d

+       &= nbsp;rol     esi,30

+ &nbs= p;      add     r12d,eax<= br class=3D"">
+        mo= v     r14d,DWORD[32+r9]

+ =        mov     eax,e= di

+        = ;mov     DWORD[28+rsp],ebp

+        mov     ec= x,r12d

+       &= nbsp;bswap   r14d

+   &nbs= p;    xor     eax,esi

+        rol   = ;  ecx,5

+     &= nbsp;  and     eax,r13d

+        lea    &= nbsp;r11d,[1518500249+r11*1+rbp]

+   = ;     add     r11d,ecx

+        xor  = ;   eax,edi

+    = ;    rol     r13d,30
=
+        add   =   r11d,eax

+     = ;   mov     edx,DWORD[36+r9]

+        mov  &nb= sp;  eax,esi

+    &nb= sp;   mov     DWORD[32+rsp],r14d

+        mov  = ;   ecx,r11d

+   &nbs= p;    bswap   edx

+        xor     e= ax,r13d

+       =  rol     ecx,5

+ &nbs= p;      and     eax,r12d<= br class=3D"">
+        le= a     edi,[1518500249+rdi*1+r14]

+        add    &n= bsp;edi,ecx

+      &n= bsp; xor     eax,esi

= +        rol     r12= d,30

+       &nb= sp;add     edi,eax

+  = ;      mov     ebp,DWORD[= 40+r9]

+       &= nbsp;mov     eax,r13d

+ &n= bsp;      mov     DWORD[3= 6+rsp],edx

+      &nb= sp; mov     ecx,edi

+=        bswap   ebp

+        xor  = ;   eax,r12d

+   &nbs= p;    rol     ecx,5
<= br class=3D"">+        and   &= nbsp; eax,r11d

+     =    lea     esi,[1518500249+rsi*1+rdx]
+        add =     esi,ecx

+   =      xor     eax,r13d

+        rol  = ;   r11d,30

+    = ;    add     esi,eax
=
+        mov   =   r14d,DWORD[44+r9]

+   &n= bsp;    mov     eax,r12d

+        mov  = ;   DWORD[40+rsp],ebp

+  &= nbsp;     mov     ecx,esi

+        bswap =   r14d

+     &nb= sp;  xor     eax,r11d

+        rol    &n= bsp;ecx,5

+      &nbs= p; and     eax,edi

+ =        lea     r13d,= [1518500249+r13*1+rbp]

+    &nb= sp;   add     r13d,ecx
+        xor   &nb= sp; eax,r12d

+     &n= bsp;  rol     edi,30

+        add    &n= bsp;r13d,eax

+      &= nbsp; mov     edx,DWORD[48+r9]

+        mov    = ; eax,r11d

+     &nbs= p;  mov     DWORD[44+rsp],r14d
=
+        mov   =   ecx,r13d

+     = ;   bswap   edx

+ &nb= sp;      xor     eax,edi<= br class=3D"">
+        ro= l     ecx,5

+   =      and     eax,esi

+        lea  = ;   r12d,[1518500249+r12*1+r14]

+        add     r1= 2d,ecx

+       &= nbsp;xor     eax,r11d

+ &n= bsp;      rol     esi,30<= br class=3D"">
+        ad= d     r12d,eax

+  &nb= sp;     mov     ebp,DWORD[52+r= 9]

+        = ;mov     eax,edi

+  &= nbsp;     mov     DWORD[48+rsp= ],edx

+       &n= bsp;mov     ecx,r12d

+ &nb= sp;      bswap   ebp
=
+        xor   =   eax,esi

+     =    rol     ecx,5

+        and    &n= bsp;eax,r13d

+      &= nbsp; lea     r11d,[1518500249+r11*1+rdx]

+        add  = ;   r11d,ecx

+   &nbs= p;    xor     eax,edi

+        rol   = ;  r13d,30

+     = ;   add     r11d,eax

+        mov    = ; r14d,DWORD[56+r9]

+    &= nbsp;   mov     eax,esi
+        mov   &n= bsp; DWORD[52+rsp],ebp

+   &nbs= p;    mov     ecx,r11d

+        bswap  &n= bsp;r14d

+       = ; xor     eax,r13d

+ =        rol     ecx,5=

+        a= nd     eax,r12d

+  &n= bsp;     lea     edi,[15185002= 49+rdi*1+rbp]

+      =   add     edi,ecx

+        xor     e= ax,esi

+       &= nbsp;rol     r12d,30

+ &nb= sp;      add     edi,eax<= br class=3D"">
+        mo= v     edx,DWORD[60+r9]

+ &= nbsp;      mov     eax,r1= 3d

+        = ;mov     DWORD[56+rsp],r14d

+        mov     e= cx,edi

+       &= nbsp;bswap   edx

+    = ;    xor     eax,r12d

+        rol   = ;  ecx,5

+     &= nbsp;  and     eax,r11d

+        lea    &= nbsp;esi,[1518500249+rsi*1+r14]

+   =      add     esi,ecx

+        xor  = ;   eax,r13d

+   &nbs= p;    rol     r11d,30

+        add   = ;  esi,eax

+     = ;   xor     ebp,DWORD[rsp]

+        mov   = ;  eax,r12d

+    &nbs= p;   mov     DWORD[60+rsp],edx

+        mov  = ;   ecx,esi

+    = ;    xor     ebp,DWORD[8+rsp]

+        xor &nb= sp;   eax,r11d

+   &n= bsp;    rol     ecx,5

+        xor   = ;  ebp,DWORD[32+rsp]

+   &= nbsp;    and     eax,edi

+        lea  = ;   r13d,[1518500249+r13*1+rdx]

+        rol     ed= i,30

+       &nb= sp;xor     eax,r12d

+ &nbs= p;      add     r13d,ecx<= br class=3D"">
+        ro= l     ebp,1

+   =      add     r13d,eax

+        xor  = ;   r14d,DWORD[4+rsp]

+  &= nbsp;     mov     eax,r11d

+        mov &= nbsp;   DWORD[rsp],ebp

+  =       mov     ecx,r13d
+        xor =     r14d,DWORD[12+rsp]

+ &= nbsp;      xor     eax,ed= i

+        = rol     ecx,5

+  &nbs= p;     xor     r14d,DWORD[36+r= sp]

+       &nbs= p;and     eax,esi

+  =       lea     r12d,[15185= 00249+r12*1+rbp]

+     &nb= sp;  rol     esi,30

+        xor    &n= bsp;eax,r11d

+      &= nbsp; add     r12d,ecx

+        rol     r= 14d,1

+       &n= bsp;add     r12d,eax

+ &nb= sp;      xor     edx,DWOR= D[8+rsp]

+       = ; mov     eax,edi

+ &= nbsp;      mov     DWORD[= 4+rsp],r14d

+      &n= bsp; mov     ecx,r12d

+        xor     ed= x,DWORD[16+rsp]

+     &nbs= p;  xor     eax,esi

+        rol    &n= bsp;ecx,5

+      &nbs= p; xor     edx,DWORD[40+rsp]

+        and    &= nbsp;eax,r13d

+      =   lea     r11d,[1518500249+r11*1+r14]

+        rol  = ;   r13d,30

+    = ;    xor     eax,edi
=
+        add   =   r11d,ecx

+     = ;   rol     edx,1

+        add    &n= bsp;r11d,eax

+      &= nbsp; xor     ebp,DWORD[12+rsp]

+        mov   &nbs= p; eax,esi

+     &nbs= p;  mov     DWORD[8+rsp],edx
+        mov   &n= bsp; ecx,r11d

+     &= nbsp;  xor     ebp,DWORD[20+rsp]

+        xor  &nbs= p;  eax,r13d

+    &nb= sp;   rol     ecx,5

+        xor    =  ebp,DWORD[44+rsp]

+    &n= bsp;   and     eax,r12d
+        lea   &n= bsp; edi,[1518500249+rdi*1+rdx]

+  &= nbsp;     rol     r12d,30

+        xor &n= bsp;   eax,esi

+   &n= bsp;    add     edi,ecx

+        rol  &nb= sp;  ebp,1

+     = ;   add     edi,eax

+        xor    =  r14d,DWORD[16+rsp]

+    &= nbsp;   mov     eax,r13d
<= br class=3D"">+        mov   &= nbsp; DWORD[12+rsp],ebp

+   &nb= sp;    mov     ecx,edi

+        xor  &nbs= p;  r14d,DWORD[24+rsp]

+   = ;     xor     eax,r12d

+        rol  = ;   ecx,5

+    &= nbsp;   xor     r14d,DWORD[48+rsp]

+        and &nb= sp;   eax,r11d

+   &n= bsp;    lea     esi,[1518500249+rsi= *1+rbp]

+       =  rol     r11d,30

+ &n= bsp;      xor     eax,r13= d

+        = add     esi,ecx

+  &n= bsp;     rol     r14d,1

+        add &nbs= p;   esi,eax

+   &nbs= p;    xor     edx,DWORD[20+rsp]

+        mov &= nbsp;   eax,edi

+   &= nbsp;    mov     DWORD[16+rsp],r14d=

+        m= ov     ecx,esi

+  &nb= sp;     xor     edx,DWORD[28+r= sp]

+       &nbs= p;xor     eax,r12d

+  = ;      rol     ecx,5

+        xor &n= bsp;   edx,DWORD[52+rsp]

+ &nbs= p;      lea     r13d,[185= 9775393+r13*1+r14]

+     &= nbsp;  xor     eax,r11d

+        add    &= nbsp;r13d,ecx

+      =   rol     edi,30

+        add     r1= 3d,eax

+       &= nbsp;rol     edx,1

+  = ;      xor     ebp,DWORD[= 24+rsp]

+       =  mov     eax,esi

+ &n= bsp;      mov     DWORD[2= 0+rsp],edx

+      &nb= sp; mov     ecx,r13d

= +        xor     ebp= ,DWORD[32+rsp]

+      = ;  xor     eax,r11d

+        rol    &n= bsp;ecx,5

+      &nbs= p; xor     ebp,DWORD[56+rsp]

+        lea    &= nbsp;r12d,[1859775393+r12*1+rdx]

+   = ;     xor     eax,edi

+        add  = ;   r12d,ecx

+   &nbs= p;    rol     esi,30
=
+        add   =   r12d,eax

+     = ;   rol     ebp,1

+        xor    &n= bsp;r14d,DWORD[28+rsp]

+    &nb= sp;   mov     eax,r13d
+        mov   &nb= sp; DWORD[24+rsp],ebp

+    = ;    mov     ecx,r12d

+        xor   = ;  r14d,DWORD[36+rsp]

+   =      xor     eax,edi

+        rol  = ;   ecx,5

+    &= nbsp;   xor     r14d,DWORD[60+rsp]

+        lea &nb= sp;   r11d,[1859775393+r11*1+rbp]

+        xor     = eax,esi

+       =  add     r11d,ecx

+ &= nbsp;      rol     r13d,3= 0

+        = add     r11d,eax

+  &= nbsp;     rol     r14d,1

+        xor &nb= sp;   edx,DWORD[32+rsp]

+  = ;      mov     eax,r12d
+        mov=     DWORD[28+rsp],r14d

+ =        mov     ecx,r= 11d

+       &nbs= p;xor     edx,DWORD[40+rsp]

+        xor     e= ax,esi

+       &= nbsp;rol     ecx,5

+  = ;      xor     edx,DWORD[= rsp]

+       &nb= sp;lea     edi,[1859775393+rdi*1+r14]
+        xor   &nb= sp; eax,r13d

+     &n= bsp;  add     edi,ecx

+        rol    &n= bsp;r12d,30

+      &n= bsp; add     edi,eax

= +        rol     edx= ,1

+        = ;xor     ebp,DWORD[36+rsp]

+        mov     ea= x,r11d

+       &= nbsp;mov     DWORD[32+rsp],edx

+        mov    &n= bsp;ecx,edi

+      &n= bsp; xor     ebp,DWORD[44+rsp]

+        xor    = ; eax,r13d

+     &nbs= p;  rol     ecx,5

+        xor     e= bp,DWORD[4+rsp]

+     &nbs= p;  lea     esi,[1859775393+rsi*1+rdx]

+        xor &nbs= p;   eax,r12d

+   &nb= sp;    add     esi,ecx

+        rol  &nbs= p;  r11d,30

+    &nbs= p;   add     esi,eax

+        rol    = ; ebp,1

+      &= nbsp; xor     r14d,DWORD[40+rsp]
+        mov   &nb= sp; eax,edi

+     &nb= sp;  mov     DWORD[36+rsp],ebp
=
+        mov   =   ecx,esi

+     =    xor     r14d,DWORD[48+rsp]

+        xor  = ;   eax,r12d

+   &nbs= p;    rol     ecx,5
<= br class=3D"">+        xor   &= nbsp; r14d,DWORD[8+rsp]

+   &nb= sp;    lea     r13d,[1859775393+r13= *1+rbp]

+       =  xor     eax,r11d

+ &= nbsp;      add     r13d,e= cx

+        = ;rol     edi,30

+  &n= bsp;     add     r13d,eax

+        rol &n= bsp;   r14d,1

+   &nb= sp;    xor     edx,DWORD[44+rsp]
+        mov =     eax,esi

+   =      mov     DWORD[40+rsp],r14= d

+        = mov     ecx,r13d

+  &= nbsp;     xor     edx,DWORD[52= +rsp]

+       &n= bsp;xor     eax,r11d

+ &nb= sp;      rol     ecx,5
+        xor =     edx,DWORD[12+rsp]

+ &n= bsp;      lea     r12d,[1= 859775393+r12*1+r14]

+     = ;   xor     eax,edi

+        add    =  r12d,ecx

+      = ;  rol     esi,30

+        add     r= 12d,eax

+       =  rol     edx,1

+ &nbs= p;      xor     ebp,DWORD= [48+rsp]

+       = ; mov     eax,r13d

+ =        mov     DWORD= [44+rsp],edx

+      &= nbsp; mov     ecx,r12d

+        xor     e= bp,DWORD[56+rsp]

+     &nb= sp;  xor     eax,edi

+        rol    &n= bsp;ecx,5

+      &nbs= p; xor     ebp,DWORD[16+rsp]

+        lea    &= nbsp;r11d,[1859775393+r11*1+rdx]

+   = ;     xor     eax,esi

+        add  = ;   r11d,ecx

+   &nbs= p;    rol     r13d,30

+        add   = ;  r11d,eax

+    &nbs= p;   rol     ebp,1

+        xor    &= nbsp;r14d,DWORD[52+rsp]

+    &n= bsp;   mov     eax,r12d
+        mov   &n= bsp; DWORD[48+rsp],ebp

+   &nbs= p;    mov     ecx,r11d

+        xor  &nbs= p;  r14d,DWORD[60+rsp]

+   = ;     xor     eax,esi

+        rol  = ;   ecx,5

+    &= nbsp;   xor     r14d,DWORD[20+rsp]

+        lea &nb= sp;   edi,[1859775393+rdi*1+rbp]

+        xor     e= ax,r13d

+       =  add     edi,ecx

+ &n= bsp;      rol     r12d,30=

+        a= dd     edi,eax

+  &nb= sp;     rol     r14d,1

+        xor  = ;   edx,DWORD[56+rsp]

+  &= nbsp;     mov     eax,r11d

+        mov &= nbsp;   DWORD[52+rsp],r14d

+ &n= bsp;      mov     ecx,edi=

+        x= or     edx,DWORD[rsp]

+ &n= bsp;      xor     eax,r13= d

+        = rol     ecx,5

+  &nbs= p;     xor     edx,DWORD[24+rs= p]

+        = ;lea     esi,[1859775393+rsi*1+r14]

+        xor    = ; eax,r12d

+     &nbs= p;  add     esi,ecx

+        rol    &n= bsp;r11d,30

+      &n= bsp; add     esi,eax

= +        rol     edx= ,1

+        = ;xor     ebp,DWORD[60+rsp]

+        mov     ea= x,edi

+       &n= bsp;mov     DWORD[56+rsp],edx

+        mov    &n= bsp;ecx,esi

+      &n= bsp; xor     ebp,DWORD[4+rsp]

+        xor    =  eax,r12d

+      = ;  rol     ecx,5

+        xor     eb= p,DWORD[28+rsp]

+     &nbs= p;  lea     r13d,[1859775393+r13*1+rdx]

+        xor &nb= sp;   eax,r11d

+   &n= bsp;    add     r13d,ecx

+        rol  = ;   edi,30

+    =     add     r13d,eax
=
+        rol   =   ebp,1

+     &n= bsp;  xor     r14d,DWORD[rsp]
<= br class=3D"">+        mov   &= nbsp; eax,esi

+     &= nbsp;  mov     DWORD[60+rsp],ebp

+        mov  &nbs= p;  ecx,r13d

+    &nb= sp;   xor     r14d,DWORD[8+rsp]

+        xor  = ;   eax,r11d

+   &nbs= p;    rol     ecx,5
<= br class=3D"">+        xor   &= nbsp; r14d,DWORD[32+rsp]

+   &n= bsp;    lea     r12d,[1859775393+r1= 2*1+rbp]

+       = ; xor     eax,edi

+ &= nbsp;      add     r12d,e= cx

+        = ;rol     esi,30

+  &n= bsp;     add     r12d,eax

+        rol &n= bsp;   r14d,1

+   &nb= sp;    xor     edx,DWORD[4+rsp]

+        mov &= nbsp;   eax,r13d

+   =      mov     DWORD[rsp],r14d
+        mov=     ecx,r12d

+  &nbs= p;     xor     edx,DWORD[12+rs= p]

+        = ;xor     eax,edi

+  &= nbsp;     rol     ecx,5

+        xor &nbs= p;   edx,DWORD[36+rsp]

+  =       lea     r11d,[18597= 75393+r11*1+r14]

+     &nb= sp;  xor     eax,esi

+        add    &n= bsp;r11d,ecx

+      &= nbsp; rol     r13d,30

+        add     r1= 1d,eax

+       &= nbsp;rol     edx,1

+  = ;      xor     ebp,DWORD[= 8+rsp]

+       &= nbsp;mov     eax,r12d

+ &n= bsp;      mov     DWORD[4= +rsp],edx

+      &nbs= p; mov     ecx,r11d

+=        xor     ebp,= DWORD[16+rsp]

+      =   xor     eax,esi

+        rol     e= cx,5

+       &nb= sp;xor     ebp,DWORD[40+rsp]

+        lea     = edi,[1859775393+rdi*1+rdx]

+    = ;    xor     eax,r13d

+        add   = ;  edi,ecx

+     = ;   rol     r12d,30

+        add    =  edi,eax

+      =   rol     ebp,1

= +        xor     r14= d,DWORD[12+rsp]

+     &nbs= p;  mov     eax,r11d

+        mov    &n= bsp;DWORD[8+rsp],ebp

+     = ;   mov     ecx,edi

+        xor    =  r14d,DWORD[20+rsp]

+    &= nbsp;   xor     eax,r13d
<= br class=3D"">+        rol   &= nbsp; ecx,5

+     &nb= sp;  xor     r14d,DWORD[44+rsp]

+        lea   = ;  esi,[1859775393+rsi*1+rbp]

+ &nbs= p;      xor     eax,r12d<= br class=3D"">
+        ad= d     esi,ecx

+  &nbs= p;     rol     r11d,30

+        add  = ;   esi,eax

+    = ;    rol     r14d,1
<= br class=3D"">+        xor   &= nbsp; edx,DWORD[16+rsp]

+   &nb= sp;    mov     eax,edi

+        mov  &nbs= p;  DWORD[12+rsp],r14d

+   = ;     mov     ecx,esi

+        xor  = ;   edx,DWORD[24+rsp]

+  &= nbsp;     xor     eax,r12d

+        rol &= nbsp;   ecx,5

+   &nb= sp;    xor     edx,DWORD[48+rsp]
+        lea =     r13d,[1859775393+r13*1+r14]

+        xor    &n= bsp;eax,r11d

+      &= nbsp; add     r13d,ecx

+        rol     e= di,30

+       &n= bsp;add     r13d,eax

+ &nb= sp;      rol     edx,1
+        xor =     ebp,DWORD[20+rsp]

+ &n= bsp;      mov     eax,esi=

+        m= ov     DWORD[16+rsp],edx

+=        mov     ecx,= r13d

+       &nb= sp;xor     ebp,DWORD[28+rsp]

+        xor     = eax,r11d

+       = ; rol     ecx,5

+ &nb= sp;      xor     ebp,DWOR= D[52+rsp]

+      &nbs= p; lea     r12d,[1859775393+r12*1+rdx]

+        xor  &nb= sp;  eax,edi

+    &nb= sp;   add     r12d,ecx
+        rol   &nb= sp; esi,30

+     &nbs= p;  add     r12d,eax

+        rol    &n= bsp;ebp,1

+      &nbs= p; xor     r14d,DWORD[24+rsp]

+        mov    =  eax,r13d

+      = ;  mov     DWORD[20+rsp],ebp
+        mov   &n= bsp; ecx,r12d

+     &= nbsp;  xor     r14d,DWORD[32+rsp]

+        xor  &nb= sp;  eax,edi

+    &nb= sp;   rol     ecx,5

+        xor    =  r14d,DWORD[56+rsp]

+    &= nbsp;   lea     r11d,[1859775393+r11*1+r= bp]

+       &nbs= p;xor     eax,esi

+  =       add     r11d,ecx
+        rol =     r13d,30

+   =      add     r11d,eax

+        rol  = ;   r14d,1

+    =     xor     edx,DWORD[28+rsp]

+        mov &nb= sp;   eax,r12d

+   &n= bsp;    mov     DWORD[24+rsp],r14d<= br class=3D"">
+        mo= v     ecx,r11d

+  &nb= sp;     xor     edx,DWORD[36+r= sp]

+       &nbs= p;xor     eax,esi

+  =       rol     ecx,5

+        xor &nb= sp;   edx,DWORD[60+rsp]

+  = ;      lea     edi,[18597= 75393+rdi*1+r14]

+     &nb= sp;  xor     eax,r13d

+        add    &n= bsp;edi,ecx

+      &n= bsp; rol     r12d,30

= +        add     edi= ,eax

+       &nb= sp;rol     edx,1

+  &= nbsp;     xor     ebp,DWORD[32= +rsp]

+       &n= bsp;mov     eax,r11d

+ &nb= sp;      mov     DWORD[28= +rsp],edx

+      &nbs= p; mov     ecx,edi

+ =        xor     ebp,D= WORD[40+rsp]

+      &= nbsp; xor     eax,r13d

+        rol     e= cx,5

+       &nb= sp;xor     ebp,DWORD[rsp]

= +        lea     esi= ,[1859775393+rsi*1+rdx]

+    &n= bsp;   xor     eax,r12d
+        add   &n= bsp; esi,ecx

+     &n= bsp;  rol     r11d,30

+        add    &n= bsp;esi,eax

+      &n= bsp; rol     ebp,1

+ =        xor     r14d,= DWORD[36+rsp]

+      =   mov     eax,r12d

+        mov     = DWORD[32+rsp],ebp

+     &n= bsp;  mov     ebx,r12d

+        xor    &n= bsp;r14d,DWORD[44+rsp]

+    &nb= sp;   and     eax,r11d
+        mov   &nb= sp; ecx,esi

+     &nb= sp;  xor     r14d,DWORD[4+rsp]
=
+        lea   =   r13d,[((-1894007588))+r13*1+rbp]

+=        xor     ebx,= r11d

+       &nb= sp;rol     ecx,5

+  &= nbsp;     add     r13d,eax

+        rol &= nbsp;   r14d,1

+   &n= bsp;    and     ebx,edi

+        add  &nb= sp;  r13d,ecx

+    &n= bsp;   rol     edi,30

+        add   &nbs= p; r13d,ebx

+     &nb= sp;  xor     edx,DWORD[40+rsp]
=
+        mov   =   eax,r11d

+     = ;   mov     DWORD[36+rsp],r14d

+        mov  = ;   ebx,r11d

+   &nbs= p;    xor     edx,DWORD[48+rsp]

+        and &= nbsp;   eax,edi

+   &= nbsp;    mov     ecx,r13d

+        xor  = ;   edx,DWORD[8+rsp]

+  &n= bsp;     lea     r12d,[((-1894= 007588))+r12*1+r14]

+     =    xor     ebx,edi

+        rol    &= nbsp;ecx,5

+      &nb= sp; add     r12d,eax

= +        rol     edx= ,1

+        = ;and     ebx,esi

+  &= nbsp;     add     r12d,ecx

+        rol &= nbsp;   esi,30

+   &n= bsp;    add     r12d,ebx

+        xor  = ;   ebp,DWORD[44+rsp]

+  &= nbsp;     mov     eax,edi

+        mov &n= bsp;   DWORD[40+rsp],edx

+ &nbs= p;      mov     ebx,edi
+        xor=     ebp,DWORD[52+rsp]

+ &= nbsp;      and     eax,es= i

+        = mov     ecx,r12d

+  &= nbsp;     xor     ebp,DWORD[12= +rsp]

+       &n= bsp;lea     r11d,[((-1894007588))+r11*1+rdx]

+        xor  = ;   ebx,esi

+    = ;    rol     ecx,5
+        add   &n= bsp; r11d,eax

+     &= nbsp;  rol     ebp,1

+        and    &n= bsp;ebx,r13d

+      &= nbsp; add     r11d,ecx

+        rol     r= 13d,30

+       &= nbsp;add     r11d,ebx

+ &n= bsp;      xor     r14d,DW= ORD[48+rsp]

+      &n= bsp; mov     eax,esi

= +        mov     DWO= RD[44+rsp],ebp

+      = ;  mov     ebx,esi

+        xor     = r14d,DWORD[56+rsp]

+     &= nbsp;  and     eax,r13d

+        mov    &= nbsp;ecx,r11d

+      =   xor     r14d,DWORD[16+rsp]
+        lea   &n= bsp; edi,[((-1894007588))+rdi*1+rbp]

+ &n= bsp;      xor     ebx,r13= d

+        = rol     ecx,5

+  &nbs= p;     add     edi,eax

+        rol  = ;   r14d,1

+    =     and     ebx,r12d
=
+        add   =   edi,ecx

+     =    rol     r12d,30

+        add    &= nbsp;edi,ebx

+      &= nbsp; xor     edx,DWORD[52+rsp]

+        mov   &nbs= p; eax,r13d

+     &nb= sp;  mov     DWORD[48+rsp],r14d

+        mov   = ;  ebx,r13d

+    &nbs= p;   xor     edx,DWORD[60+rsp]

+        and  = ;   eax,r12d

+   &nbs= p;    mov     ecx,edi

+        xor   = ;  edx,DWORD[20+rsp]

+   &= nbsp;    lea     esi,[((-1894007588= ))+rsi*1+r14]

+      =   xor     ebx,r12d

+        rol     = ecx,5

+       &n= bsp;add     esi,eax

+ &nbs= p;      rol     edx,1

+        and &= nbsp;   ebx,r11d

+   =      add     esi,ecx

+        rol  = ;   r11d,30

+    = ;    add     esi,ebx
=
+        xor   =   ebp,DWORD[56+rsp]

+   &n= bsp;    mov     eax,r12d

+        mov  = ;   DWORD[52+rsp],edx

+  &= nbsp;     mov     ebx,r12d

+        xor &= nbsp;   ebp,DWORD[rsp]

+  =       and     eax,r11d
+        mov =     ecx,esi

+   =      xor     ebp,DWORD[24+rsp]=

+        l= ea     r13d,[((-1894007588))+r13*1+rdx]
<= br class=3D"">+        xor   &= nbsp; ebx,r11d

+     =    rol     ecx,5

+        add    &n= bsp;r13d,eax

+      &= nbsp; rol     ebp,1

+=        and     ebx,= edi

+       &nbs= p;add     r13d,ecx

+  = ;      rol     edi,30

+        add &= nbsp;   r13d,ebx

+   =      xor     r14d,DWORD[60+rsp= ]

+        = mov     eax,r11d

+  &= nbsp;     mov     DWORD[56+rsp= ],ebp

+       &n= bsp;mov     ebx,r11d

+ &nb= sp;      xor     r14d,DWO= RD[4+rsp]

+      &nbs= p; and     eax,edi

+ =        mov     ecx,r= 13d

+       &nbs= p;xor     r14d,DWORD[28+rsp]

+        lea     = r12d,[((-1894007588))+r12*1+rbp]

+   = ;     xor     ebx,edi

+        rol  = ;   ecx,5

+    &= nbsp;   add     r12d,eax
<= br class=3D"">+        rol   &= nbsp; r14d,1

+     &n= bsp;  and     ebx,esi

+        add    &n= bsp;r12d,ecx

+      &= nbsp; rol     esi,30

= +        add     r12= d,ebx

+       &n= bsp;xor     edx,DWORD[rsp]

+        mov     ea= x,edi

+       &n= bsp;mov     DWORD[60+rsp],r14d

+        mov    &n= bsp;ebx,edi

+      &n= bsp; xor     edx,DWORD[8+rsp]

+        and    =  eax,esi

+      =   mov     ecx,r12d

+        xor     = edx,DWORD[32+rsp]

+     &n= bsp;  lea     r11d,[((-1894007588))+r11*1+r14= ]

+        = xor     ebx,esi

+  &n= bsp;     rol     ecx,5

+        add  = ;   r11d,eax

+   &nbs= p;    rol     edx,1
<= br class=3D"">+        and   &= nbsp; ebx,r13d

+     =    add     r11d,ecx

+        rol    =  r13d,30

+      =   add     r11d,ebx

+        xor     = ebp,DWORD[4+rsp]

+     &nb= sp;  mov     eax,esi

+        mov    &n= bsp;DWORD[rsp],edx

+     &= nbsp;  mov     ebx,esi

+        xor    &n= bsp;ebp,DWORD[12+rsp]

+    &nbs= p;   and     eax,r13d

+        mov   &nbs= p; ecx,r11d

+     &nb= sp;  xor     ebp,DWORD[36+rsp]
=
+        lea   =   edi,[((-1894007588))+rdi*1+rdx]

+ =        xor     ebx,r= 13d

+       &nbs= p;rol     ecx,5

+  &n= bsp;     add     edi,eax

+        rol &nb= sp;   ebp,1

+    = ;    and     ebx,r12d

+        add   = ;  edi,ecx

+     = ;   rol     r12d,30

+        add    =  edi,ebx

+      =   xor     r14d,DWORD[8+rsp]
+        mov   &nb= sp; eax,r13d

+     &n= bsp;  mov     DWORD[4+rsp],ebp
=
+        mov   =   ebx,r13d

+     = ;   xor     r14d,DWORD[16+rsp]

+        and  = ;   eax,r12d

+   &nbs= p;    mov     ecx,edi

+        xor   = ;  r14d,DWORD[40+rsp]

+   =      lea     esi,[((-189400758= 8))+rsi*1+rbp]

+      = ;  xor     ebx,r12d

+        rol    &n= bsp;ecx,5

+      &nbs= p; add     esi,eax

+ =        rol     r14d,= 1

+        = and     ebx,r11d

+  &= nbsp;     add     esi,ecx

+        rol &n= bsp;   r11d,30

+   &n= bsp;    add     esi,ebx

+        xor  &nb= sp;  edx,DWORD[12+rsp]

+   = ;     mov     eax,r12d

+        mov  = ;   DWORD[8+rsp],r14d

+  &= nbsp;     mov     ebx,r12d

+        xor &= nbsp;   edx,DWORD[20+rsp]

+ &nb= sp;      and     eax,r11d=

+        m= ov     ecx,esi

+  &nb= sp;     xor     edx,DWORD[44+r= sp]

+       &nbs= p;lea     r13d,[((-1894007588))+r13*1+r14]

+        xor  &nbs= p;  ebx,r11d

+    &nb= sp;   rol     ecx,5

+        add    =  r13d,eax

+      = ;  rol     edx,1

+        and     eb= x,edi

+       &n= bsp;add     r13d,ecx

+ &nb= sp;      rol     edi,30
+        add=     r13d,ebx

+  &nbs= p;     xor     ebp,DWORD[16+rs= p]

+        = ;mov     eax,r11d

+  =       mov     DWORD[12+rs= p],edx

+       &= nbsp;mov     ebx,r11d

+ &n= bsp;      xor     ebp,DWO= RD[24+rsp]

+      &nb= sp; and     eax,edi

+=        mov     ecx,= r13d

+       &nb= sp;xor     ebp,DWORD[48+rsp]

+        lea     = r12d,[((-1894007588))+r12*1+rdx]

+   = ;     xor     ebx,edi

+        rol  = ;   ecx,5

+    &= nbsp;   add     r12d,eax
<= br class=3D"">+        rol   &= nbsp; ebp,1

+     &nb= sp;  and     ebx,esi

+        add    &n= bsp;r12d,ecx

+      &= nbsp; rol     esi,30

= +        add     r12= d,ebx

+       &n= bsp;xor     r14d,DWORD[20+rsp]

+        mov    &n= bsp;eax,edi

+      &n= bsp; mov     DWORD[16+rsp],ebp

+        mov    = ; ebx,edi

+      = ;  xor     r14d,DWORD[28+rsp]
<= br class=3D"">+        and   &= nbsp; eax,esi

+     &= nbsp;  mov     ecx,r12d

+        xor    &= nbsp;r14d,DWORD[52+rsp]

+    &n= bsp;   lea     r11d,[((-1894007588))+r11= *1+rbp]

+       =  xor     ebx,esi

+ &n= bsp;      rol     ecx,5
+        add=     r11d,eax

+  &nbs= p;     rol     r14d,1

+        and  = ;   ebx,r13d

+   &nbs= p;    add     r11d,ecx

+        rol  &nbs= p;  r13d,30

+    &nbs= p;   add     r11d,ebx

+        xor   &nbs= p; edx,DWORD[24+rsp]

+    =     mov     eax,esi
<= br class=3D"">+        mov   &= nbsp; DWORD[20+rsp],r14d

+   &n= bsp;    mov     ebx,esi

+        xor  &nb= sp;  edx,DWORD[32+rsp]

+   = ;     and     eax,r13d

+        mov  = ;   ecx,r11d

+   &nbs= p;    xor     edx,DWORD[56+rsp]

+        lea &= nbsp;   edi,[((-1894007588))+rdi*1+r14]

+        xor    =  ebx,r13d

+      = ;  rol     ecx,5

+        add     ed= i,eax

+       &n= bsp;rol     edx,1

+  =       and     ebx,r12d
+        add =     edi,ecx

+   =      rol     r12d,30

+        add  = ;   edi,ebx

+    = ;    xor     ebp,DWORD[28+rsp]

+        mov &n= bsp;   eax,r13d

+   &= nbsp;    mov     DWORD[24+rsp],edx<= br class=3D"">
+        mo= v     ebx,r13d

+  &nb= sp;     xor     ebp,DWORD[36+r= sp]

+       &nbs= p;and     eax,r12d

+  = ;      mov     ecx,edi
+        xor =     ebp,DWORD[60+rsp]

+ &n= bsp;      lea     esi,[((= -1894007588))+rsi*1+rdx]

+    &= nbsp;   xor     ebx,r12d
<= br class=3D"">+        rol   &= nbsp; ecx,5

+     &nb= sp;  add     esi,eax

+        rol    &n= bsp;ebp,1

+      &nbs= p; and     ebx,r11d

+=        add     esi,= ecx

+       &nbs= p;rol     r11d,30

+  =       add     esi,ebx

+        xor &= nbsp;   r14d,DWORD[32+rsp]

+ &n= bsp;      mov     eax,r12= d

+        = mov     DWORD[28+rsp],ebp

= +        mov     ebx= ,r12d

+       &n= bsp;xor     r14d,DWORD[40+rsp]

+        and    &n= bsp;eax,r11d

+      &= nbsp; mov     ecx,esi

+        xor     r1= 4d,DWORD[rsp]

+      =   lea     r13d,[((-1894007588))+r13*1+rbp]
+        xor =     ebx,r11d

+   = ;     rol     ecx,5

+        add  = ;   r13d,eax

+   &nbs= p;    rol     r14d,1
=
+        and   =   ebx,edi

+     =    add     r13d,ecx

+        rol    =  edi,30

+      &= nbsp; add     r13d,ebx

+        xor     e= dx,DWORD[36+rsp]

+     &nb= sp;  mov     eax,r11d

+        mov    &n= bsp;DWORD[32+rsp],r14d

+    &nb= sp;   mov     ebx,r11d
+        xor   &nb= sp; edx,DWORD[44+rsp]

+    = ;    and     eax,edi
=
+        mov   =   ecx,r13d

+     = ;   xor     edx,DWORD[4+rsp]

+        lea  &nb= sp;  r12d,[((-1894007588))+r12*1+r14]

+        xor     e= bx,edi

+       &= nbsp;rol     ecx,5

+  = ;      add     r12d,eax
+        rol=     edx,1

+   &= nbsp;    and     ebx,esi

+        add  = ;   r12d,ecx

+   &nbs= p;    rol     esi,30
=
+        add   =   r12d,ebx

+     = ;   xor     ebp,DWORD[40+rsp]

+        mov  = ;   eax,edi

+    = ;    mov     DWORD[36+rsp],edx

+        mov &n= bsp;   ebx,edi

+   &n= bsp;    xor     ebp,DWORD[48+rsp]
+        and=     eax,esi

+   = ;     mov     ecx,r12d

+        xor  = ;   ebp,DWORD[8+rsp]

+  &n= bsp;     lea     r11d,[((-1894= 007588))+r11*1+rdx]

+     =    xor     ebx,esi

+        rol    &= nbsp;ecx,5

+      &nb= sp; add     r11d,eax

= +        rol     ebp= ,1

+        = ;and     ebx,r13d

+  =       add     r11d,ecx
+        rol =     r13d,30

+   =      add     r11d,ebx

+        xor  = ;   r14d,DWORD[44+rsp]

+  =       mov     eax,esi

+        mov &= nbsp;   DWORD[40+rsp],ebp

+ &nb= sp;      mov     ebx,esi<= br class=3D"">
+        xo= r     r14d,DWORD[52+rsp]

+=        and     eax,= r13d

+       &nb= sp;mov     ecx,r11d

+ &nbs= p;      xor     r14d,DWOR= D[12+rsp]

+      &nbs= p; lea     edi,[((-1894007588))+rdi*1+rbp]

+        xor  = ;   ebx,r13d

+   &nbs= p;    rol     ecx,5
<= br class=3D"">+        add   &= nbsp; edi,eax

+     &= nbsp;  rol     r14d,1

+        and    &n= bsp;ebx,r12d

+      &= nbsp; add     edi,ecx

+        rol     r1= 2d,30

+       &n= bsp;add     edi,ebx

+ &nbs= p;      xor     edx,DWORD= [48+rsp]

+       = ; mov     eax,r13d

+ =        mov     DWORD= [44+rsp],r14d

+      =   mov     ebx,r13d

+        xor     = edx,DWORD[56+rsp]

+     &n= bsp;  and     eax,r12d

+        mov    &n= bsp;ecx,edi

+      &n= bsp; xor     edx,DWORD[16+rsp]

+        lea    = ; esi,[((-1894007588))+rsi*1+r14]

+  = ;      xor     ebx,r12d
+        rol=     ecx,5

+   &= nbsp;    add     esi,eax

+        rol  = ;   edx,1

+    &= nbsp;   and     ebx,r11d
<= br class=3D"">+        add   &= nbsp; esi,ecx

+     &= nbsp;  rol     r11d,30

+        add    &n= bsp;esi,ebx

+      &n= bsp; xor     ebp,DWORD[52+rsp]

+        mov    = ; eax,edi

+      = ;  mov     DWORD[48+rsp],edx
+        mov   &n= bsp; ecx,esi

+     &n= bsp;  xor     ebp,DWORD[60+rsp]

+        xor   = ;  eax,r12d

+    &nbs= p;   rol     ecx,5

+        xor    &= nbsp;ebp,DWORD[20+rsp]

+    &nb= sp;   lea     r13d,[((-899497514))+r13*1= +rdx]

+       &n= bsp;xor     eax,r11d

+ &nb= sp;      add     r13d,ecx=

+        r= ol     edi,30

+  &nbs= p;     add     r13d,eax

+        rol &nbs= p;   ebp,1

+    =     xor     r14d,DWORD[56+rsp]

+        mov &n= bsp;   eax,esi

+   &n= bsp;    mov     DWORD[52+rsp],ebp
+        mov=     ecx,r13d

+  &nbs= p;     xor     r14d,DWORD[rsp]=

+        x= or     eax,r11d

+  &n= bsp;     rol     ecx,5

+        xor  = ;   r14d,DWORD[24+rsp]

+  =       lea     r12d,[((-89= 9497514))+r12*1+rbp]

+     = ;   xor     eax,edi

+        add    =  r12d,ecx

+      = ;  rol     esi,30

+        add     r= 12d,eax

+       =  rol     r14d,1

+ &nb= sp;      xor     edx,DWOR= D[60+rsp]

+      &nbs= p; mov     eax,r13d

+=        mov     DWOR= D[56+rsp],r14d

+      = ;  mov     ecx,r12d

+        xor    &n= bsp;edx,DWORD[4+rsp]

+     = ;   xor     eax,edi

+        rol    =  ecx,5

+      &n= bsp; xor     edx,DWORD[28+rsp]

+        lea    = ; r11d,[((-899497514))+r11*1+r14]

+  = ;      xor     eax,esi
+        add =     r11d,ecx

+   = ;     rol     r13d,30

+        add  = ;   r11d,eax

+   &nbs= p;    rol     edx,1
<= br class=3D"">+        xor   &= nbsp; ebp,DWORD[rsp]

+    =     mov     eax,r12d
=
+        mov   =   DWORD[60+rsp],edx

+   &n= bsp;    mov     ecx,r11d

+        xor  = ;   ebp,DWORD[8+rsp]

+  &n= bsp;     xor     eax,esi

+        rol &nb= sp;   ecx,5

+    = ;    xor     ebp,DWORD[32+rsp]

+        lea &n= bsp;   edi,[((-899497514))+rdi*1+rdx]

+        xor    &n= bsp;eax,r13d

+      &= nbsp; add     edi,ecx

+        rol     r1= 2d,30

+       &n= bsp;add     edi,eax

+ &nbs= p;      rol     ebp,1

+        xor &= nbsp;   r14d,DWORD[4+rsp]

+ &nb= sp;      mov     eax,r11d=

+        m= ov     DWORD[rsp],ebp

+ &n= bsp;      mov     ecx,edi=

+        x= or     r14d,DWORD[12+rsp]

= +        xor     eax= ,r13d

+       &n= bsp;rol     ecx,5

+  =       xor     r14d,DWORD[= 36+rsp]

+       =  lea     esi,[((-899497514))+rsi*1+rbp]

+        xor  = ;   eax,r12d

+   &nbs= p;    add     esi,ecx

+        rol   = ;  r11d,30

+     = ;   add     esi,eax

+        rol    =  r14d,1

+      &= nbsp; xor     edx,DWORD[8+rsp]

+        mov    = ; eax,edi

+      = ;  mov     DWORD[4+rsp],r14d
+        mov   &n= bsp; ecx,esi

+     &n= bsp;  xor     edx,DWORD[16+rsp]

+        xor   = ;  eax,r12d

+    &nbs= p;   rol     ecx,5

+        xor    &= nbsp;edx,DWORD[40+rsp]

+    &nb= sp;   lea     r13d,[((-899497514))+r13*1= +r14]

+       &n= bsp;xor     eax,r11d

+ &nb= sp;      add     r13d,ecx=

+        r= ol     edi,30

+  &nbs= p;     add     r13d,eax

+        rol &nbs= p;   edx,1

+    =     xor     ebp,DWORD[12+rsp]

+        mov &nb= sp;   eax,esi

+   &nb= sp;    mov     DWORD[8+rsp],edx

+        mov &= nbsp;   ecx,r13d

+   =      xor     ebp,DWORD[20+rsp]=

+        x= or     eax,r11d

+  &n= bsp;     rol     ecx,5

+        xor  = ;   ebp,DWORD[44+rsp]

+  &= nbsp;     lea     r12d,[((-899= 497514))+r12*1+rdx]

+     =    xor     eax,edi

+        add    &= nbsp;r12d,ecx

+      =   rol     esi,30

+        add     r1= 2d,eax

+       &= nbsp;rol     ebp,1

+  = ;      xor     r14d,DWORD= [16+rsp]

+       = ; mov     eax,r13d

+ =        mov     DWORD= [12+rsp],ebp

+      &= nbsp; mov     ecx,r12d

+        xor     r= 14d,DWORD[24+rsp]

+     &n= bsp;  xor     eax,edi

+        rol    &n= bsp;ecx,5

+      &nbs= p; xor     r14d,DWORD[48+rsp]

+        lea    =  r11d,[((-899497514))+r11*1+rbp]

+  =       xor     eax,esi

+        add &= nbsp;   r11d,ecx

+   =      rol     r13d,30

+        add  = ;   r11d,eax

+   &nbs= p;    rol     r14d,1
=
+        xor   =   edx,DWORD[20+rsp]

+   &n= bsp;    mov     eax,r12d

+        mov  = ;   DWORD[16+rsp],r14d

+  =       mov     ecx,r11d
+        xor =     edx,DWORD[28+rsp]

+ &n= bsp;      xor     eax,esi=

+        r= ol     ecx,5

+   = ;     xor     edx,DWORD[52+rsp= ]

+        = lea     edi,[((-899497514))+rdi*1+r14]
+        xor   &n= bsp; eax,r13d

+     &= nbsp;  add     edi,ecx

+        rol    &n= bsp;r12d,30

+      &n= bsp; add     edi,eax

= +        rol     edx= ,1

+        = ;xor     ebp,DWORD[24+rsp]

+        mov     ea= x,r11d

+       &= nbsp;mov     DWORD[20+rsp],edx

+        mov    &n= bsp;ecx,edi

+      &n= bsp; xor     ebp,DWORD[32+rsp]

+        xor    = ; eax,r13d

+     &nbs= p;  rol     ecx,5

+        xor     e= bp,DWORD[56+rsp]

+     &nb= sp;  lea     esi,[((-899497514))+rsi*1+rdx]
+        xor=     eax,r12d

+  &nbs= p;     add     esi,ecx

+        rol  = ;   r11d,30

+    = ;    add     esi,eax
=
+        rol   =   ebp,1

+     &n= bsp;  xor     r14d,DWORD[28+rsp]

+        mov  &nbs= p;  eax,edi

+    &nbs= p;   mov     DWORD[24+rsp],ebp

+        mov  = ;   ecx,esi

+    = ;    xor     r14d,DWORD[36+rsp]

+        xor &= nbsp;   eax,r12d

+   =      rol     ecx,5

+        xor  &nb= sp;  r14d,DWORD[60+rsp]

+  &nbs= p;     lea     r13d,[((-899497= 514))+r13*1+rbp]

+     &nb= sp;  xor     eax,r11d

+        add    &n= bsp;r13d,ecx

+      &= nbsp; rol     edi,30

= +        add     r13= d,eax

+       &n= bsp;rol     r14d,1

+  = ;      xor     edx,DWORD[= 32+rsp]

+       =  mov     eax,esi

+ &n= bsp;      mov     DWORD[2= 8+rsp],r14d

+      &n= bsp; mov     ecx,r13d

+        xor     ed= x,DWORD[40+rsp]

+     &nbs= p;  xor     eax,r11d

+        rol    &n= bsp;ecx,5

+      &nbs= p; xor     edx,DWORD[rsp]

+        lea    &n= bsp;r12d,[((-899497514))+r12*1+r14]

+  &n= bsp;     xor     eax,edi

+        add &nb= sp;   r12d,ecx

+   &n= bsp;    rol     esi,30

+        add  &nbs= p;  r12d,eax

+    &nb= sp;   rol     edx,1

+        xor    =  ebp,DWORD[36+rsp]

+    &n= bsp;   mov     eax,r13d
+

+      = ;  mov     ecx,r12d

+        xor    &n= bsp;ebp,DWORD[44+rsp]

+    &nbs= p;   xor     eax,edi

+        rol    = ; ecx,5

+      &= nbsp; xor     ebp,DWORD[4+rsp]

+        lea    = ; r11d,[((-899497514))+r11*1+rdx]

+  = ;      xor     eax,esi
+        add =     r11d,ecx

+   = ;     rol     r13d,30

+        add  = ;   r11d,eax

+   &nbs= p;    rol     ebp,1
<= br class=3D"">+        xor   &= nbsp; r14d,DWORD[40+rsp]

+   &n= bsp;    mov     eax,r12d

+

+    &n= bsp;   mov     ecx,r11d
+        xor   &n= bsp; r14d,DWORD[48+rsp]

+   &nb= sp;    xor     eax,esi

+        rol  &nbs= p;  ecx,5

+     =    xor     r14d,DWORD[8+rsp]

+        lea  &nb= sp;  edi,[((-899497514))+rdi*1+rbp]

= +        xor     eax= ,r13d

+       &n= bsp;add     edi,ecx

+ &nbs= p;      rol     r12d,30
+        add=     edi,eax

+   = ;     rol     r14d,1

+        xor  = ;   edx,DWORD[44+rsp]

+  &= nbsp;     mov     eax,r11d

+

+   &nbs= p;    mov     ecx,edi

+        xor   = ;  edx,DWORD[52+rsp]

+   &= nbsp;    xor     eax,r13d

+        rol  = ;   ecx,5

+    &= nbsp;   xor     edx,DWORD[12+rsp]

+        lea &nbs= p;   esi,[((-899497514))+rsi*1+r14]

+        xor    &n= bsp;eax,r12d

+      &= nbsp; add     esi,ecx

+        rol     r1= 1d,30

+       &n= bsp;add     esi,eax

+ &nbs= p;      rol     edx,1

+        xor &= nbsp;   ebp,DWORD[48+rsp]

+ &nb= sp;      mov     eax,edi<= br class=3D"">
+

+   &= nbsp;    mov     ecx,esi

+        xor  = ;   ebp,DWORD[56+rsp]

+  &= nbsp;     xor     eax,r12d

+        rol &= nbsp;   ecx,5

+   &nb= sp;    xor     ebp,DWORD[16+rsp]
+        lea =     r13d,[((-899497514))+r13*1+rdx]

+        xor    = ; eax,r11d

+     &nbs= p;  add     r13d,ecx

+        rol    &n= bsp;edi,30

+      &nb= sp; add     r13d,eax

= +        rol     ebp= ,1

+        = ;xor     r14d,DWORD[52+rsp]

+        mov     e= ax,esi

+

+  =       mov     ecx,r13d
+        xor =     r14d,DWORD[60+rsp]

+ &= nbsp;      xor     eax,r1= 1d

+        = ;rol     ecx,5

+  &nb= sp;     xor     r14d,DWORD[20+= rsp]

+       &nb= sp;lea     r12d,[((-899497514))+r12*1+rbp]

+        xor  &nbs= p;  eax,edi

+    &nbs= p;   add     r12d,ecx

+        rol   &nbs= p; esi,30

+      = ;  add     r12d,eax

+        rol    &n= bsp;r14d,1

+      &nb= sp; xor     edx,DWORD[56+rsp]

+        mov    =  eax,r13d

+

= +        mov     ecx= ,r12d

+       &n= bsp;xor     edx,DWORD[rsp]

+        xor     ea= x,edi

+       &n= bsp;rol     ecx,5

+  =       xor     edx,DWORD[2= 4+rsp]

+       &= nbsp;lea     r11d,[((-899497514))+r11*1+r14]

+        xor  = ;   eax,esi

+    = ;    add     r11d,ecx

+        rol   = ;  r13d,30

+     = ;   add     r11d,eax

+        rol    = ; edx,1

+      &= nbsp; xor     ebp,DWORD[60+rsp]

+        mov   &nbs= p; eax,r12d

+

+        mov     e= cx,r11d

+       =  xor     ebp,DWORD[4+rsp]

+        xor    &n= bsp;eax,esi

+      &n= bsp; rol     ecx,5

+ =        xor     ebp,D= WORD[28+rsp]

+      &= nbsp; lea     edi,[((-899497514))+rdi*1+rdx]

+        xor &nb= sp;   eax,r13d

+   &n= bsp;    add     edi,ecx

+        rol  &nb= sp;  r12d,30

+    &nb= sp;   add     edi,eax

+        rol   &nbs= p; ebp,1

+      =   mov     eax,r11d

+        mov     = ecx,edi

+       =  xor     eax,r13d

+ &= nbsp;      lea     esi,[(= (-899497514))+rsi*1+rbp]

+    &= nbsp;   rol     ecx,5

+        xor   &nbs= p; eax,r12d

+     &nb= sp;  add     esi,ecx

+        rol    &n= bsp;r11d,30

+      &n= bsp; add     esi,eax

= +        add     esi= ,DWORD[r8]

+      &nb= sp; add     edi,DWORD[4+r8]

+        add    &n= bsp;r11d,DWORD[8+r8]

+     = ;   add     r12d,DWORD[12+r8]

+        add  = ;   r13d,DWORD[16+r8]

+  &= nbsp;     mov     DWORD[r8],es= i

+        = mov     DWORD[4+r8],edi

+ =        mov     DWORD= [8+r8],r11d

+      &n= bsp; mov     DWORD[12+r8],r12d

+        mov    = ; DWORD[16+r8],r13d

+

+        sub    = ; r10,1

+      &= nbsp; lea     r9,[64+r9]

+        jnz    &n= bsp;NEAR $L$loop

+

+        mov     r= si,QWORD[64+rsp]

+

+        mov     r= 14,QWORD[((-40))+rsi]

+

+        mov    &n= bsp;r13,QWORD[((-32))+rsi]

+
+        mov   &nb= sp; r12,QWORD[((-24))+rsi]

+

+        mov  &nbs= p;  rbp,QWORD[((-16))+rsi]

+

+        mov  = ;   rbx,QWORD[((-8))+rsi]

+

+        lea &= nbsp;   rsp,[rsi]

+

+$L$epilogue:

+   =      mov     rdi,QWORD[8+rsp] =        ;WIN64 epilogue
+        mov   &nb= sp; rsi,QWORD[16+rsp]

+    = ;    DB      0F3h,0C3h  &= nbsp;           &nbs= p;;repret

+

+$L$S= EH_end_sha1_block_data_order:

+
=
+ALIGN   32

+sha1_blo= ck_data_order_shaext:

+    &nbs= p;   mov     QWORD[8+rsp],rdi  &nbs= p;     ;WIN64 prologue

+        mov     Q= WORD[16+rsp],rsi

+     &nb= sp;  mov     rax,rsp

+$L$SEH_begin_sha1_block_data_order_shaext:

+        mov    &n= bsp;rdi,rcx

+      &n= bsp; mov     rsi,rdx

= +        mov     rdx= ,r8

+

+

+_shaext_shortcut:

+

+        lea &= nbsp;   rsp,[((-72))+rsp]

+ &nb= sp;      movaps  XMMWORD[(-8-64)+rax],xm= m6

+        = ;movaps  XMMWORD[(-8-48)+rax],xmm7

+ &nbs= p;      movaps  XMMWORD[(-8-32)+rax],xmm= 8

+        = movaps  XMMWORD[(-8-16)+rax],xmm9

+$L$pro= logue_shaext:

+      =   movdqu  xmm0,XMMWORD[rdi]

+ &= nbsp;      movd    xmm1,DWORD[= 16+rdi]

+       =  movdqa  xmm3,XMMWORD[((K_XX_XX+160))]

+

+       &nb= sp;movdqu  xmm4,XMMWORD[rsi]

+  &nbs= p;     pshufd  xmm0,xmm0,27
+        movdqu  xmm5,X= MMWORD[16+rsi]

+      = ;  pshufd  xmm1,xmm1,27

+  = ;      movdqu  xmm6,XMMWORD[32+rsi]

+DB      102,15,56,0,227<= br class=3D"">
+        mo= vdqu  xmm7,XMMWORD[48+rsi]

+DB  &nbs= p;   102,15,56,0,235

+DB  =     102,15,56,0,243

+ &nbs= p;      movdqa  xmm9,xmm1
=
+DB      102,15,56,0,251

+        jmp  = ;   NEAR $L$oop_shaext

+

+ALIGN   16

+= $L$oop_shaext:

+      = ;  dec     rdx

+=        lea     r8,[= 64+rsi]

+       =  paddd   xmm1,xmm4

+  &nbs= p;     cmovne  rsi,r8

+        movdqa  xmm8,xmm0
+DB      15,56,201,229=

+        m= ovdqa  xmm2,xmm0

+DB    &n= bsp; 15,58,204,193,0

+DB   &nbs= p;  15,56,200,213

+   &nbs= p;    pxor    xmm4,xmm6
+DB      15,56,201,238
=
+DB      15,56,202,231

+

+     &= nbsp;  movdqa  xmm1,xmm0

+DB &n= bsp;    15,58,204,194,0

+D= B      15,56,200,206

= +        pxor    xmm5,xmm= 7

+DB      15,56,202,= 236

+DB      15,56,20= 1,247

+       &n= bsp;movdqa  xmm2,xmm0

+DB   &nb= sp;  15,58,204,193,0

+DB   = ;   15,56,200,215

+   = ;     pxor    xmm6,xmm4

+DB      15,56,201,252

+DB      15,56,202,245

+

+    =     movdqa  xmm1,xmm0

+DB      15,58,204,194,0

+DB      15,56,200,204

+        pxor    = ;xmm7,xmm5

+DB      1= 5,56,202,254

+DB      = ;15,56,201,229

+      = ;  movdqa  xmm2,xmm0

+DB  =     15,58,204,193,0

+DB &n= bsp;    15,56,200,213

+ &n= bsp;      pxor    xmm4,xmm6
+DB      15,56,201,238<= br class=3D"">
+DB      15,56,202,23= 1

+

+   = ;     movdqa  xmm1,xmm0

+DB      15,58,204,194,1
+DB      15,56,200,206
<= br class=3D"">+        pxor   =  xmm5,xmm7

+DB     &n= bsp;15,56,202,236

+DB     =  15,56,201,247

+     =    movdqa  xmm2,xmm0

+DB &= nbsp;    15,58,204,193,1

+= DB      15,56,200,215

+        pxor    xmm6,xm= m4

+DB      15,56,201= ,252

+DB      15,56,2= 02,245

+

+  =       movdqa  xmm1,xmm0
+DB      15,58,204,194,1

+DB      15,56,200,204

+        pxor &nbs= p;  xmm7,xmm5

+DB    =   15,56,202,254

+DB   &nbs= p;  15,56,201,229

+   &nbs= p;    movdqa  xmm2,xmm0

+DB      15,58,204,193,1

+DB      15,56,200,213

+        pxor    = ;xmm4,xmm6

+DB      1= 5,56,201,238

+DB      = ;15,56,202,231

+

= +        movdqa  xmm1,xmm0

+DB      15,58,204,194,1

+DB      15,56,200,206
+        pxo= r    xmm5,xmm7

+DB   =    15,56,202,236

+DB  &nbs= p;   15,56,201,247

+  &nbs= p;     movdqa  xmm2,xmm0

+DB      15,58,204,193,2
+DB      15,56,200,215
=
+        pxor   = ; xmm6,xmm4

+DB     &= nbsp;15,56,201,252

+DB     = ; 15,56,202,245

+

+        movdqa  xmm1,xmm0
+DB      15,58,204,194= ,2

+DB      15,56,200= ,204

+       &nb= sp;pxor    xmm7,xmm5

+DB  =     15,56,202,254

+DB &nbs= p;    15,56,201,229

+ &nbs= p;      movdqa  xmm2,xmm0
=
+DB      15,58,204,193,2

+DB      15,56,200,213

+        pxor &n= bsp;  xmm4,xmm6

+DB   &nbs= p;  15,56,201,238

+DB   &n= bsp;  15,56,202,231

+
=
+        movdqa  xmm= 1,xmm0

+DB      15,58= ,204,194,2

+DB      1= 5,56,200,206

+      &= nbsp; pxor    xmm5,xmm7

+D= B      15,56,202,236

= +DB      15,56,201,247

+        movdqa  xmm2,xmm0

+DB      15,58,204,193,2
+DB      15,56,200,215<= br class=3D"">
+        px= or    xmm6,xmm4

+DB   = ;   15,56,201,252

+DB  &nb= sp;   15,56,202,245

+

+        movdqa &n= bsp;xmm1,xmm0

+DB     &nbs= p;15,58,204,194,3

+DB     =  15,56,200,204

+     =    pxor    xmm7,xmm5

+DB      15,56,202,254

+        movdqu  xmm4,XMMW= ORD[rsi]

+       = ; movdqa  xmm2,xmm0

+DB   =    15,58,204,193,3

+DB  &n= bsp;   15,56,200,213

+  &n= bsp;     movdqu  xmm5,XMMWORD[16+rsi]

+DB      102,15,56,0,227

+

+   &nbs= p;    movdqa  xmm1,xmm0

+DB      15,58,204,194,3

+DB      15,56,200,206

+        movdqu  xmm6,XMMW= ORD[32+rsi]

+DB      = 102,15,56,0,235

+

+        movdqa  xmm2,xmm0

+DB      15,58,204,193,3

+DB      15,56,200,215
+        mov= dqu  xmm7,XMMWORD[48+rsi]

+DB   = ;   102,15,56,0,243

+

+        movdqa &n= bsp;xmm1,xmm0

+DB     &nbs= p;15,58,204,194,3

+DB     =  65,15,56,200,201

+DB    &= nbsp; 102,15,56,0,251

+
+        paddd   x= mm0,xmm8

+       = ; movdqa  xmm9,xmm1

+
=
+        jnz   =   NEAR $L$oop_shaext

+

+        pshufd  xm= m0,xmm0,27

+      &nb= sp; pshufd  xmm1,xmm1,27

+  &nb= sp;     movdqu  XMMWORD[rdi],xmm0

+        movd  &n= bsp; DWORD[16+rdi],xmm1

+   &nb= sp;    movaps  xmm6,XMMWORD[((-8-64))+rax]

+        movaps &n= bsp;xmm7,XMMWORD[((-8-48))+rax]

+   =      movaps  xmm8,XMMWORD[((-8-32))+rax]

+        movaps=  xmm9,XMMWORD[((-8-16))+rax]

+  &nb= sp;     mov     rsp,rax

+$L$epilogue_shaext:

+ =        mov     rdi,Q= WORD[8+rsp]        ;WIN64 epilogue

+        mov &nb= sp;   rsi,QWORD[16+rsp]

+  = ;      DB      0F3h,= 0C3h            &nbs= p;  ;repret

+

+$L$SEH_end_sha1_block_data_order_shaext:

+

+ALIGN   16

+sha1_block_data_order_ssse3:

+ &nbs= p;      mov     QWORD[8+r= sp],rdi        ;WIN64 prologue

+        mov  = ;   QWORD[16+rsp],rsi

+  &= nbsp;     mov     rax,rsp

+$L$SEH_begin_sha1_block_data_order_ssse3:

+        mov  = ;   rdi,rcx

+    = ;    mov     rsi,rdx
=
+        mov   =   rdx,r8

+

+

+_ssse3_shortcut:

+

+      &n= bsp; mov     r11,rsp

= +

+        = push    rbx

+
+        push   &n= bsp;rbp

+

+  = ;      push    r12

+

+     =    push    r13

+=

+        p= ush    r14

+

+        lea   &nbs= p; rsp,[((-160))+rsp]

+    = ;    movaps  XMMWORD[(-40-96)+r11],xmm6

+        movaps &n= bsp;XMMWORD[(-40-80)+r11],xmm7

+   &= nbsp;    movaps  XMMWORD[(-40-64)+r11],xmm8

+        movaps &= nbsp;XMMWORD[(-40-48)+r11],xmm9

+   =      movaps  XMMWORD[(-40-32)+r11],xmm10

+        movaps=  XMMWORD[(-40-16)+r11],xmm11

+$L$prologu= e_ssse3:

+       = ; and     rsp,-64

+ &= nbsp;      mov     r8,rdi=

+        m= ov     r9,rsi

+  &nbs= p;     mov     r10,rdx

+

+    &n= bsp;   shl     r10,6

+        add    = ; r10,r9

+      =   lea     r14,[((K_XX_XX+64))]
=
+

+     &nb= sp;  mov     eax,DWORD[r8]

+        mov   &nbs= p; ebx,DWORD[4+r8]

+    &n= bsp;   mov     ecx,DWORD[8+r8]

+        mov  = ;   edx,DWORD[12+r8]

+  &n= bsp;     mov     esi,ebx

+        mov &nb= sp;   ebp,DWORD[16+r8]

+  =       mov     edi,ecx

+        xor &= nbsp;   edi,edx

+   &= nbsp;    and     esi,edi

+

+    &n= bsp;   movdqa  xmm6,XMMWORD[64+r14]

+        movdqa  xmm9,XMM= WORD[((-64))+r14]

+     &n= bsp;  movdqu  xmm0,XMMWORD[r9]

= +        movdqu  xmm1,XMMWORD[16+r9= ]

+        = movdqu  xmm2,XMMWORD[32+r9]

+   = ;     movdqu  xmm3,XMMWORD[48+r9]

+DB      102,15,56,0,198

+DB      102,15,56,0,206

+DB      102,15,56,0,214=

+        a= dd     r9,64

+   = ;     paddd   xmm0,xmm9
+DB      102,15,56,0,222

+        paddd  &n= bsp;xmm1,xmm9

+      =   paddd   xmm2,xmm9

+ &nbs= p;      movdqa  XMMWORD[rsp],xmm0

+        psubd &n= bsp; xmm0,xmm9

+     =    movdqa  XMMWORD[16+rsp],xmm1

+        psubd   xmm1,x= mm9

+       &nbs= p;movdqa  XMMWORD[32+rsp],xmm2

+  &n= bsp;     psubd   xmm2,xmm9

+        jmp   = ;  NEAR $L$oop_ssse3

+ALIGN  &n= bsp;16

+$L$oop_ssse3:

+        ror    &n= bsp;ebx,2

+      &nbs= p; pshufd  xmm4,xmm0,238

+  &nb= sp;     xor     esi,edx

+        movdqa &= nbsp;xmm8,xmm3

+      = ;  paddd   xmm9,xmm3

+ &nb= sp;      mov     edi,eax<= br class=3D"">
+        ad= d     ebp,DWORD[rsp]

+ &nb= sp;      punpcklqdq     &= nbsp;xmm4,xmm1

+      = ;  xor     ebx,ecx

+        rol     = eax,5

+       &n= bsp;add     ebp,esi

+ &nbs= p;      psrldq  xmm8,4
+        and   &nb= sp; edi,ebx

+     &nb= sp;  xor     ebx,ecx

+        pxor    x= mm4,xmm0

+       = ; add     ebp,eax

+ &= nbsp;      ror     eax,7<= br class=3D"">
+        px= or    xmm8,xmm2

+   &= nbsp;    xor     edi,ecx

+        mov  = ;   esi,ebp

+    = ;    add     edx,DWORD[4+rsp]

+        pxor &n= bsp;  xmm4,xmm8

+    =     xor     eax,ebx
<= br class=3D"">+        rol   &= nbsp; ebp,5

+     &nb= sp;  movdqa  XMMWORD[48+rsp],xmm9

+        add     = edx,edi

+       =  and     esi,eax

+ &n= bsp;      movdqa  xmm10,xmm4

+        xor  &nb= sp;  eax,ebx

+    &nb= sp;   add     edx,ebp

+        ror   &nbs= p; ebp,7

+      =   movdqa  xmm8,xmm4

+  &nb= sp;     xor     esi,ebx

+        pslldq &= nbsp;xmm10,12

+      =   paddd   xmm4,xmm4

+ &nbs= p;      mov     edi,edx
+        add=     ecx,DWORD[8+rsp]

+ &n= bsp;      psrld   xmm8,31

+        xor  = ;   ebp,eax

+    = ;    rol     edx,5
+        add   &n= bsp; ecx,esi

+     &n= bsp;  movdqa  xmm9,xmm10

+ &nbs= p;      and     edi,ebp
+        xor=     ebp,eax

+   = ;     psrld   xmm10,30
+        add   &nb= sp; ecx,edx

+     &nb= sp;  ror     edx,7

+        por     = xmm4,xmm8

+      &nbs= p; xor     edi,eax

+ =        mov     esi,e= cx

+        = ;add     ebx,DWORD[12+rsp]

+        pslld   xmm9,2

+        pxor &n= bsp;  xmm4,xmm10

+    = ;    xor     edx,ebp
=
+        movdqa  xmm= 10,XMMWORD[((-64))+r14]

+    &n= bsp;   rol     ecx,5

+        add    = ; ebx,edi

+      = ;  and     esi,edx

+        pxor    xmm4,= xmm9

+       &nb= sp;xor     edx,ebp

+  = ;      add     ebx,ecx
+        ror =     ecx,7

+   &n= bsp;    pshufd  xmm5,xmm1,238

+        xor    =  esi,ebp

+      =   movdqa  xmm9,xmm4

+  &nb= sp;     paddd   xmm10,xmm4

+        mov   = ;  edi,ebx

+     = ;   add     eax,DWORD[16+rsp]

+        punpcklqd= q      xmm5,xmm2

+ &n= bsp;      xor     ecx,edx=

+        r= ol     ebx,5

+   = ;     add     eax,esi

+        psrldq &n= bsp;xmm9,4

+      &nb= sp; and     edi,ecx

+=        xor     ecx,= edx

+       &nbs= p;pxor    xmm5,xmm1

+  &nb= sp;     add     eax,ebx

+        ror &nbs= p;   ebx,7

+    =     pxor    xmm9,xmm3

+        xor   &nbs= p; edi,edx

+     &nbs= p;  mov     esi,eax

+        add    &n= bsp;ebp,DWORD[20+rsp]

+    &nbs= p;   pxor    xmm5,xmm9

+        xor    &n= bsp;ebx,ecx

+      &n= bsp; rol     eax,5

+ =        movdqa  XMMWORD[rsp],xmm10
+        add=     ebp,edi

+   = ;     and     esi,ebx

+        movdqa &n= bsp;xmm8,xmm5

+      =   xor     ebx,ecx

+        add     e= bp,eax

+       &= nbsp;ror     eax,7

+  = ;      movdqa  xmm9,xmm5
<= br class=3D"">+        xor   &= nbsp; esi,ecx

+     &= nbsp;  pslldq  xmm8,12

+  =       paddd   xmm5,xmm5

+        mov  &nb= sp;  edi,ebp

+    &nb= sp;   add     edx,DWORD[24+rsp]

+        psrld &nb= sp; xmm9,31

+     &nb= sp;  xor     eax,ebx

+        rol    &n= bsp;ebp,5

+      &nbs= p; add     edx,esi

+ =        movdqa  xmm10,xmm8

+        and  = ;   edi,eax

+    = ;    xor     eax,ebx
=
+        psrld  &nbs= p;xmm8,30

+      &nbs= p; add     edx,ebp

+ =        ror     ebp,7=

+        p= or     xmm5,xmm9

+  &= nbsp;     xor     edi,ebx

+        mov &n= bsp;   esi,edx

+   &n= bsp;    add     ecx,DWORD[28+rsp]
+        psl= ld   xmm10,2

+    &nb= sp;   pxor    xmm5,xmm8

+        xor    &= nbsp;ebp,eax

+      &= nbsp; movdqa  xmm8,XMMWORD[((-32))+r14]

+        rol    &n= bsp;edx,5

+      &nbs= p; add     ecx,edi

+ =        and     esi,e= bp

+        = ;pxor    xmm5,xmm10

+  &nb= sp;     xor     ebp,eax

+        add &nbs= p;   ecx,edx

+   &nbs= p;    ror     edx,7
<= br class=3D"">+        pshufd  xmm6= ,xmm2,238

+      &nbs= p; xor     esi,eax

+ =        movdqa  xmm10,xmm5

+        paddd &nb= sp; xmm8,xmm5

+     &= nbsp;  mov     edi,ecx

+        add    &n= bsp;ebx,DWORD[32+rsp]

+    &nbs= p;   punpcklqdq      xmm6,xmm3

+        xor &n= bsp;   edx,ebp

+   &n= bsp;    rol     ecx,5

+        add   = ;  ebx,esi

+     = ;   psrldq  xmm10,4

+ &nbs= p;      and     edi,edx
+        xor=     edx,ebp

+   = ;     pxor    xmm6,xmm2

+        add  &nb= sp;  ebx,ecx

+    &nb= sp;   ror     ecx,7

+        pxor    = ;xmm10,xmm4

+      &n= bsp; xor     edi,ebp

= +        mov     esi= ,ebx

+       &nb= sp;add     eax,DWORD[36+rsp]

+        pxor    xmm6,= xmm10

+       &n= bsp;xor     ecx,edx

+ &nbs= p;      rol     ebx,5

+        movdq= a  XMMWORD[16+rsp],xmm8

+   &nb= sp;    add     eax,edi

+        and  &nbs= p;  esi,ecx

+    &nbs= p;   movdqa  xmm9,xmm6

+ &= nbsp;      xor     ecx,ed= x

+        = add     eax,ebx

+  &n= bsp;     ror     ebx,7

+        movdqa &n= bsp;xmm10,xmm6

+      = ;  xor     esi,edx

+        pslldq  xmm9,12

+        paddd &nb= sp; xmm6,xmm6

+     &= nbsp;  mov     edi,eax

+        add    &n= bsp;ebp,DWORD[40+rsp]

+    &nbs= p;   psrld   xmm10,31

+        xor     eb= x,ecx

+       &n= bsp;rol     eax,5

+  =       add     ebp,esi

+        movdq= a  xmm8,xmm9

+     &n= bsp;  and     edi,ebx

+        xor    &n= bsp;ebx,ecx

+      &n= bsp; psrld   xmm9,30

+  &n= bsp;     add     ebp,eax

+        ror &nb= sp;   eax,7

+    = ;    por     xmm6,xmm10

+        xor  &nb= sp;  edi,ecx

+    &nb= sp;   mov     esi,ebp

+        add   &nbs= p; edx,DWORD[44+rsp]

+    =     pslld   xmm8,2

+        pxor    xmm6,= xmm9

+       &nb= sp;xor     eax,ebx

+  = ;      movdqa  xmm9,XMMWORD[((-32))+r14]=

+        r= ol     ebp,5

+   = ;     add     edx,edi

+        and  = ;   esi,eax

+    = ;    pxor    xmm6,xmm8
+        xor   &nb= sp; eax,ebx

+     &nb= sp;  add     edx,ebp

+        ror    &n= bsp;ebp,7

+      &nbs= p; pshufd  xmm7,xmm3,238

+  &nb= sp;     xor     esi,ebx

+        movdqa &= nbsp;xmm8,xmm6

+      = ;  paddd   xmm9,xmm6

+ &nb= sp;      mov     edi,edx<= br class=3D"">
+        ad= d     ecx,DWORD[48+rsp]

+ =        punpcklqdq    &nbs= p; xmm7,xmm4

+     &n= bsp;  xor     ebp,eax

+        rol    &n= bsp;edx,5

+      &nbs= p; add     ecx,esi

+ =        psrldq  xmm8,4

+        and   = ;  edi,ebp

+     = ;   xor     ebp,eax

+        pxor    = ;xmm7,xmm3

+      &nb= sp; add     ecx,edx

+=        ror     edx,= 7

+        = pxor    xmm8,xmm5

+   = ;     xor     edi,eax

+        mov  = ;   esi,ecx

+    = ;    add     ebx,DWORD[52+rsp]

+        pxor &= nbsp;  xmm7,xmm8

+    = ;    xor     edx,ebp
=
+        rol   =   ecx,5

+     &n= bsp;  movdqa  XMMWORD[32+rsp],xmm9

+        add    &n= bsp;ebx,edi

+      &n= bsp; and     esi,edx

= +        movdqa  xmm10,xmm7

+        xor  = ;   edx,ebp

+    = ;    add     ebx,ecx
=
+        ror   =   ecx,7

+     &n= bsp;  movdqa  xmm8,xmm7

+  = ;      xor     esi,ebp
+        psll= dq  xmm10,12

+     &n= bsp;  paddd   xmm7,xmm7

+ =        mov     edi,e= bx

+        = ;add     eax,DWORD[56+rsp]

+        psrld   xmm8,31

+        xor &n= bsp;   ecx,edx

+   &n= bsp;    rol     ebx,5

+        add   = ;  eax,esi

+     = ;   movdqa  xmm9,xmm10

+ &= nbsp;      and     edi,ec= x

+        = xor     ecx,edx

+  &n= bsp;     psrld   xmm10,30
=
+        add   =   eax,ebx

+     =    ror     ebx,7

+        por    &n= bsp;xmm7,xmm8

+      =   xor     edi,edx

+        mov     e= si,eax

+       &= nbsp;add     ebp,DWORD[60+rsp]

+        pslld   xmm9,2=

+        p= xor    xmm7,xmm10

+   = ;     xor     ebx,ecx

+        movdqa &n= bsp;xmm10,XMMWORD[((-32))+r14]

+   &= nbsp;    rol     eax,5

+        add  &nbs= p;  ebp,edi

+    &nbs= p;   and     esi,ebx

+        pxor   &nbs= p;xmm7,xmm9

+      &n= bsp; pshufd  xmm9,xmm6,238

+  &= nbsp;     xor     ebx,ecx

+        add &n= bsp;   ebp,eax

+   &n= bsp;    ror     eax,7

+        pxor  &nbs= p; xmm0,xmm4

+     &n= bsp;  xor     esi,ecx

+        mov    &n= bsp;edi,ebp

+      &n= bsp; add     edx,DWORD[rsp]

+        punpcklqdq   &= nbsp;  xmm9,xmm7

+    = ;    xor     eax,ebx
=
+        rol   =   ebp,5

+     &n= bsp;  pxor    xmm0,xmm1

+        add     = edx,esi

+       =  and     edi,eax

+ &n= bsp;      movdqa  xmm8,xmm10

+        xor  &nb= sp;  eax,ebx

+    &nb= sp;   paddd   xmm10,xmm7

+        add    &n= bsp;edx,ebp

+      &n= bsp; pxor    xmm0,xmm9

+ &= nbsp;      ror     ebp,7<= br class=3D"">
+        xo= r     edi,ebx

+  &nbs= p;     mov     esi,edx

+        add  = ;   ecx,DWORD[4+rsp]

+  &n= bsp;     movdqa  xmm9,xmm0

+        xor   &nbs= p; ebp,eax

+     &nbs= p;  rol     edx,5

+        movdqa  XMMWORD[48+rsp],= xmm10

+       &n= bsp;add     ecx,edi

+ &nbs= p;      and     esi,ebp
+        xor=     ebp,eax

+   = ;     pslld   xmm0,2

+        add    = ; ecx,edx

+      = ;  ror     edx,7

+        psrld   xmm9,30

+        xor &n= bsp;   esi,eax

+   &n= bsp;    mov     edi,ecx

+        add  &nb= sp;  ebx,DWORD[8+rsp]

+   =      por     xmm0,xmm9

+        xor  = ;   edx,ebp

+    = ;    rol     ecx,5
+        pshufd  xmm10= ,xmm7,238

+      &nbs= p; add     ebx,esi

+ =        and     edi,e= dx

+        = ;xor     edx,ebp

+  &= nbsp;     add     ebx,ecx

+        add &n= bsp;   eax,DWORD[12+rsp]

+ &nbs= p;      xor     edi,ebp
+        mov=     esi,ebx

+   = ;     rol     ebx,5

+        add  = ;   eax,edi

+    = ;    xor     esi,edx
=
+        ror   =   ecx,7

+     &n= bsp;  add     eax,ebx

+        pxor    x= mm1,xmm5

+       = ; add     ebp,DWORD[16+rsp]

+        xor    &n= bsp;esi,ecx

+      &n= bsp; punpcklqdq      xmm10,xmm0

+        mov   = ;  edi,eax

+     = ;   rol     eax,5

+        pxor    x= mm1,xmm2

+       = ; add     ebp,esi

+ &= nbsp;      xor     edi,ec= x

+        = movdqa  xmm9,xmm8

+    &nb= sp;   ror     ebx,7

+        paddd   xmm8= ,xmm0

+       &n= bsp;add     ebp,eax

+ &nbs= p;      pxor    xmm1,xmm10

+        add &= nbsp;   edx,DWORD[20+rsp]

+ &nb= sp;      xor     edi,ebx<= br class=3D"">
+        mo= v     esi,ebp

+  &nbs= p;     rol     ebp,5

+        movdqa &n= bsp;xmm10,xmm1

+      = ;  add     edx,edi

+        xor     = esi,ebx

+       =  movdqa  XMMWORD[rsp],xmm8

+  &= nbsp;     ror     eax,7

+        add &nbs= p;   edx,ebp

+   &nbs= p;    add     ecx,DWORD[24+rsp]

+        pslld=   xmm1,2

+     =    xor     esi,eax

+        mov    &= nbsp;edi,edx

+      &= nbsp; psrld   xmm10,30

+  =       rol     edx,5

+        add &nb= sp;   ecx,esi

+   &nb= sp;    xor     edi,eax

+        ror  &nbs= p;  ebp,7

+     =    por     xmm1,xmm10

+        add   &nbs= p; ecx,edx

+     &nbs= p;  add     ebx,DWORD[28+rsp]
<= br class=3D"">+        pshufd  xmm8= ,xmm0,238

+      &nbs= p; xor     edi,ebp

+ =        mov     esi,e= cx

+        = ;rol     ecx,5

+  &nb= sp;     add     ebx,edi

+        xor &nbs= p;   esi,ebp

+   &nbs= p;    ror     edx,7
<= br class=3D"">+        add   &= nbsp; ebx,ecx

+     &= nbsp;  pxor    xmm2,xmm6

+        add    &n= bsp;eax,DWORD[32+rsp]

+    &nbs= p;   xor     esi,edx

+        punpcklqdq  &nbs= p;   xmm8,xmm1

+   &n= bsp;    mov     edi,ebx

+        rol  &nb= sp;  ebx,5

+     = ;   pxor    xmm2,xmm3

+        add    &n= bsp;eax,esi

+      &n= bsp; xor     edi,edx

= +        movdqa  xmm10,XMMWORD[r14]=

+        r= or     ecx,7

+   = ;     paddd   xmm9,xmm1
+        add   &n= bsp; eax,ebx

+     &n= bsp;  pxor    xmm2,xmm8

+        add     = ebp,DWORD[36+rsp]

+     &n= bsp;  xor     edi,ecx

+        mov    &n= bsp;esi,eax

+      &n= bsp; rol     eax,5

+ =        movdqa  xmm8,xmm2

+        add  = ;   ebp,edi

+    = ;    xor     esi,ecx
=
+        movdqa  XMM= WORD[16+rsp],xmm9

+     &n= bsp;  ror     ebx,7

+        add    &n= bsp;ebp,eax

+      &n= bsp; add     edx,DWORD[40+rsp]

+        pslld   xmm= 2,2

+       &nbs= p;xor     esi,ebx

+  =       mov     edi,ebp

+        psrld=   xmm8,30

+     = ;   rol     ebp,5

+        add    &n= bsp;edx,esi

+      &n= bsp; xor     edi,ebx

= +        ror     eax= ,7

+        = ;por     xmm2,xmm8

+  = ;      add     edx,ebp
+        add =     ecx,DWORD[44+rsp]

+ &n= bsp;      pshufd  xmm9,xmm1,238

+        xor  = ;   edi,eax

+    = ;    mov     esi,edx
=
+        rol   =   edx,5

+     &n= bsp;  add     ecx,edi

+        xor    &n= bsp;esi,eax

+      &n= bsp; ror     ebp,7

+ =        add     ecx,e= dx

+        = ;pxor    xmm3,xmm7

+  &nbs= p;     add     ebx,DWORD[48+rs= p]

+        = ;xor     esi,ebp

+  &= nbsp;     punpcklqdq      = ;xmm9,xmm2

+      &nb= sp; mov     edi,ecx

+=        rol     ecx,= 5

+        = pxor    xmm3,xmm4

+   = ;     add     ebx,esi

+        xor  = ;   edi,ebp

+    = ;    movdqa  xmm8,xmm10

+        ror     = edx,7

+       &n= bsp;paddd   xmm10,xmm2

+   = ;     add     ebx,ecx

+        pxor &nbs= p;  xmm3,xmm9

+    &n= bsp;   add     eax,DWORD[52+rsp]

+        xor  = ;   edi,edx

+    = ;    mov     esi,ebx
=
+        rol   =   ebx,5

+     &n= bsp;  movdqa  xmm9,xmm3

+  = ;      add     eax,edi
+        xor =     esi,edx

+   =      movdqa  XMMWORD[32+rsp],xmm10

+        ror  = ;   ecx,7

+    &= nbsp;   add     eax,ebx
+        add   &n= bsp; ebp,DWORD[56+rsp]

+   &nbs= p;    pslld   xmm3,2

+        xor    &n= bsp;esi,ecx

+      &n= bsp; mov     edi,eax

= +        psrld   xmm9,30

+        rol &nb= sp;   eax,5

+    = ;    add     ebp,esi
=
+        xor   =   edi,ecx

+     =    ror     ebx,7

+        por    &n= bsp;xmm3,xmm9

+      =   add     ebp,eax

+        add     e= dx,DWORD[60+rsp]

+     &nb= sp;  pshufd  xmm10,xmm2,238

+ &= nbsp;      xor     edi,eb= x

+        = mov     esi,ebp

+  &n= bsp;     rol     ebp,5

+        add  = ;   edx,edi

+    = ;    xor     esi,ebx
=
+        ror   =   eax,7

+     &n= bsp;  add     edx,ebp

+        pxor    x= mm4,xmm0

+       = ; add     ecx,DWORD[rsp]

+        xor    &n= bsp;esi,eax

+      &n= bsp; punpcklqdq      xmm10,xmm3

+        mov   = ;  edi,edx

+     = ;   rol     edx,5

+        pxor    x= mm4,xmm5

+       = ; add     ecx,esi

+ &= nbsp;      xor     edi,ea= x

+        = movdqa  xmm9,xmm8

+    &nb= sp;   ror     ebp,7

+        paddd   xmm8= ,xmm3

+       &n= bsp;add     ecx,edx

+ &nbs= p;      pxor    xmm4,xmm10

+        add &= nbsp;   ebx,DWORD[4+rsp]

+ &nbs= p;      xor     edi,ebp
+        mov=     esi,ecx

+   = ;     rol     ecx,5

+        movdqa &n= bsp;xmm10,xmm4

+      = ;  add     ebx,edi

+        xor     = esi,ebp

+       =  movdqa  XMMWORD[48+rsp],xmm8

+ &nbs= p;      ror     edx,7

+        add &= nbsp;   ebx,ecx

+   &= nbsp;    add     eax,DWORD[8+rsp]
+        psl= ld   xmm4,2

+    &nbs= p;   xor     esi,edx

+        mov    = ; edi,ebx

+      = ;  psrld   xmm10,30

+ &nbs= p;      rol     ebx,5

+        add &= nbsp;   eax,esi

+   &= nbsp;    xor     edi,edx

+        ror  = ;   ecx,7

+    &= nbsp;   por     xmm4,xmm10

+        add   = ;  eax,ebx

+     = ;   add     ebp,DWORD[12+rsp]

+        pshufd &n= bsp;xmm8,xmm3,238

+     &n= bsp;  xor     edi,ecx

+        mov    &n= bsp;esi,eax

+      &n= bsp; rol     eax,5

+ =        add     ebp,e= di

+        = ;xor     esi,ecx

+  &= nbsp;     ror     ebx,7

+        add &nbs= p;   ebp,eax

+   &nbs= p;    pxor    xmm5,xmm1
+        add   &n= bsp; edx,DWORD[16+rsp]

+   &nbs= p;    xor     esi,ebx

+        punpcklqdq &nbs= p;    xmm8,xmm4

+  &n= bsp;     mov     edi,ebp

+        rol &nb= sp;   ebp,5

+    = ;    pxor    xmm5,xmm6
+        add   &nb= sp; edx,esi

+     &nb= sp;  xor     edi,ebx

+        movdqa  xmm10,xmm9<= br class=3D"">
+        ro= r     eax,7

+   =      paddd   xmm9,xmm4
+        add   &nb= sp; edx,ebp

+     &nb= sp;  pxor    xmm5,xmm8

+        add     e= cx,DWORD[20+rsp]

+     &nb= sp;  xor     edi,eax

+        mov    &n= bsp;esi,edx

+      &n= bsp; rol     edx,5

+ =        movdqa  xmm8,xmm5

+        add  = ;   ecx,edi

+    = ;    xor     esi,eax
=
+        movdqa  XMM= WORD[rsp],xmm9

+      = ;  ror     ebp,7

+        add     ec= x,edx

+       &n= bsp;add     ebx,DWORD[24+rsp]

+        pslld   xmm5,2=

+        x= or     esi,ebp

+  &nb= sp;     mov     edi,ecx

+        psrld &n= bsp; xmm8,30

+     &n= bsp;  rol     ecx,5

+        add    &n= bsp;ebx,esi

+      &n= bsp; xor     edi,ebp

= +        ror     edx= ,7

+        = ;por     xmm5,xmm8

+  = ;      add     ebx,ecx
+        add =     eax,DWORD[28+rsp]

+ &n= bsp;      pshufd  xmm9,xmm4,238

+        ror  = ;   ecx,7

+    &= nbsp;   mov     esi,ebx
+        xor   &n= bsp; edi,edx

+     &n= bsp;  rol     ebx,5

+        add    &n= bsp;eax,edi

+      &n= bsp; xor     esi,ecx

= +        xor     ecx= ,edx

+       &nb= sp;add     eax,ebx

+  = ;      pxor    xmm6,xmm2

+        add &nb= sp;   ebp,DWORD[32+rsp]

+  = ;      and     esi,ecx
+        xor =     ecx,edx

+   =      ror     ebx,7

+        punpcklqdq &n= bsp;    xmm9,xmm5

+  =       mov     edi,eax

+        xor &= nbsp;   esi,ecx

+   &= nbsp;    pxor    xmm6,xmm7

+        rol   = ;  eax,5

+     &= nbsp;  add     ebp,esi

+        movdqa  xmm8,xmm10<= br class=3D"">
+        xo= r     edi,ebx

+  &nbs= p;     paddd   xmm10,xmm5
=
+        xor   =   ebx,ecx

+     =    pxor    xmm6,xmm9

+        add    &n= bsp;ebp,eax

+      &n= bsp; add     edx,DWORD[36+rsp]

+        and    = ; edi,ebx

+      = ;  xor     ebx,ecx

+        ror     = eax,7

+       &n= bsp;movdqa  xmm9,xmm6

+    = ;    mov     esi,ebp
=
+        xor   =   edi,ebx

+     =    movdqa  XMMWORD[16+rsp],xmm10

+        rol    &n= bsp;ebp,5

+      &nbs= p; add     edx,edi

+ =        xor     esi,e= ax

+        = ;pslld   xmm6,2

+    =     xor     eax,ebx
<= br class=3D"">+        add   &= nbsp; edx,ebp

+     &= nbsp;  psrld   xmm9,30

+ &= nbsp;      add     ecx,DW= ORD[40+rsp]

+      &n= bsp; and     esi,eax

= +        xor     eax= ,ebx

+       &nb= sp;por     xmm6,xmm9

+ &nb= sp;      ror     ebp,7
+        mov =     edi,edx

+   =      xor     esi,eax

+        rol  = ;   edx,5

+    &= nbsp;   pshufd  xmm10,xmm5,238

+        add    &n= bsp;ecx,esi

+      &n= bsp; xor     edi,ebp

= +        xor     ebp= ,eax

+       &nb= sp;add     ecx,edx

+  = ;      add     ebx,DWORD[= 44+rsp]

+       =  and     edi,ebp

+ &n= bsp;      xor     ebp,eax=

+        r= or     edx,7

+   = ;     mov     esi,ecx

+        xor  = ;   edi,ebp

+    = ;    rol     ecx,5
+        add   &n= bsp; ebx,edi

+     &n= bsp;  xor     esi,edx

+        xor    &n= bsp;edx,ebp

+      &n= bsp; add     ebx,ecx

= +        pxor    xmm7,xmm= 3

+        = add     eax,DWORD[48+rsp]

= +        and     esi= ,edx

+       &nb= sp;xor     edx,ebp

+  = ;      ror     ecx,7

+        punpck= lqdq      xmm10,xmm6

= +        mov     edi= ,ebx

+       &nb= sp;xor     esi,edx

+  = ;      pxor    xmm7,xmm0

+        rol &nb= sp;   ebx,5

+    = ;    add     eax,esi
=
+        movdqa  xmm= 9,XMMWORD[32+r14]

+     &n= bsp;  xor     edi,ecx

+        paddd   xmm8,x= mm6

+       &nbs= p;xor     ecx,edx

+  =       pxor    xmm7,xmm10

+        add &nb= sp;   eax,ebx

+   &nb= sp;    add     ebp,DWORD[52+rsp]
+        and =     edi,ecx

+   =      xor     ecx,edx

+        ror  = ;   ebx,7

+    &= nbsp;   movdqa  xmm10,xmm7

+        mov     es= i,eax

+       &n= bsp;xor     edi,ecx

+ &nbs= p;      movdqa  XMMWORD[32+rsp],xmm8

+        rol &= nbsp;   eax,5

+   &nb= sp;    add     ebp,edi

+        xor  &nbs= p;  esi,ebx

+    &nbs= p;   pslld   xmm7,2

+=        xor     ebx,= ecx

+       &nbs= p;add     ebp,eax

+  =       psrld   xmm10,30

+        add  &nbs= p;  edx,DWORD[56+rsp]

+   =      and     esi,ebx

+        xor  = ;   ebx,ecx

+    = ;    por     xmm7,xmm10

+        ror  &nb= sp;  eax,7

+     = ;   mov     edi,ebp

+        xor    =  esi,ebx

+      =   rol     ebp,5

= +        pshufd  xmm8,xmm6,238

+        add &n= bsp;   edx,esi

+   &n= bsp;    xor     edi,eax

+        xor  &nb= sp;  eax,ebx

+    &nb= sp;   add     edx,ebp

+        add   &nbs= p; ecx,DWORD[60+rsp]

+    =     and     edi,eax
<= br class=3D"">+        xor   &= nbsp; eax,ebx

+     &= nbsp;  ror     ebp,7

+        mov    &n= bsp;esi,edx

+      &n= bsp; xor     edi,eax

= +        rol     edx= ,5

+        = ;add     ecx,edi

+  &= nbsp;     xor     esi,ebp

+        xor &n= bsp;   ebp,eax

+   &n= bsp;    add     ecx,edx

+        pxor  &n= bsp; xmm0,xmm4

+     =    add     ebx,DWORD[rsp]
=
+        and   =   esi,ebp

+     =    xor     ebp,eax

+        ror    &= nbsp;edx,7

+      &nb= sp; punpcklqdq      xmm8,xmm7
<= br class=3D"">+        mov   &= nbsp; edi,ecx

+     &= nbsp;  xor     esi,ebp

+        pxor    x= mm0,xmm1

+       = ; rol     ecx,5

+ &nb= sp;      add     ebx,esi<= br class=3D"">
+        mo= vdqa  xmm10,xmm9

+    &nbs= p;   xor     edi,edx

+        paddd   xmm= 9,xmm7

+       &= nbsp;xor     edx,ebp

+ &nb= sp;      pxor    xmm0,xmm8

+        add &= nbsp;   ebx,ecx

+   &= nbsp;    add     eax,DWORD[4+rsp]
+        and=     edi,edx

+   = ;     xor     edx,ebp

+        ror  = ;   ecx,7

+    &= nbsp;   movdqa  xmm8,xmm0

= +        mov     esi= ,ebx

+       &nb= sp;xor     edi,edx

+  = ;      movdqa  XMMWORD[48+rsp],xmm9

+        rol &n= bsp;   ebx,5

+   &nbs= p;    add     eax,edi

+        xor   = ;  esi,ecx

+     = ;   pslld   xmm0,2

+ =        xor     ecx,e= dx

+        = ;add     eax,ebx

+  &= nbsp;     psrld   xmm8,30
=
+        add   =   ebp,DWORD[8+rsp]

+   &nb= sp;    and     esi,ecx

+        xor  &nbs= p;  ecx,edx

+    &nbs= p;   por     xmm0,xmm8
+        ror   &nb= sp; ebx,7

+      = ;  mov     edi,eax

+        xor     = esi,ecx

+       =  rol     eax,5

+ &nbs= p;      pshufd  xmm9,xmm7,238

+        add  = ;   ebp,esi

+    = ;    xor     edi,ebx
=
+        xor   =   ebx,ecx

+     =    add     ebp,eax

+        add    &= nbsp;edx,DWORD[12+rsp]

+    &nb= sp;   and     edi,ebx

+        xor   &nbs= p; ebx,ecx

+     &nbs= p;  ror     eax,7

+        mov     e= si,ebp

+       &= nbsp;xor     edi,ebx

+ &nb= sp;      rol     ebp,5
+        add =     edx,edi

+   =      xor     esi,eax

+        xor  = ;   eax,ebx

+    = ;    add     edx,ebp
=
+        pxor   = ; xmm1,xmm5

+     &nb= sp;  add     ecx,DWORD[16+rsp]
=
+        and   =   esi,eax

+     =    xor     eax,ebx

+        ror    &= nbsp;ebp,7

+      &nb= sp; punpcklqdq      xmm9,xmm0
<= br class=3D"">+        mov   &= nbsp; edi,edx

+     &= nbsp;  xor     esi,eax

+        pxor    x= mm1,xmm2

+       = ; rol     edx,5

+ &nb= sp;      add     ecx,esi<= br class=3D"">
+        mo= vdqa  xmm8,xmm10

+    &nbs= p;   xor     edi,ebp

+        paddd   xmm= 10,xmm0

+       =  xor     ebp,eax

+ &n= bsp;      pxor    xmm1,xmm9
+        add =     ecx,edx

+   =      add     ebx,DWORD[20+rsp]=

+        a= nd     edi,ebp

+  &nb= sp;     xor     ebp,eax

+        ror &nbs= p;   edx,7

+    =     movdqa  xmm9,xmm1

+        mov     es= i,ecx

+       &n= bsp;xor     edi,ebp

+ &nbs= p;      movdqa  XMMWORD[rsp],xmm10

+        rol &nb= sp;   ecx,5

+    = ;    add     ebx,edi
=
+        xor   =   esi,edx

+     =    pslld   xmm1,2

+ &= nbsp;      xor     edx,eb= p

+        = add     ebx,ecx

+  &n= bsp;     psrld   xmm9,30
<= br class=3D"">+        add   &= nbsp; eax,DWORD[24+rsp]

+   &nb= sp;    and     esi,edx

+        xor  &nbs= p;  edx,ebp

+    &nbs= p;   por     xmm1,xmm9
+        ror   &nb= sp; ecx,7

+      = ;  mov     edi,ebx

+        xor     = esi,edx

+       =  rol     ebx,5

+ &nbs= p;      pshufd  xmm10,xmm0,238

+        add  = ;   eax,esi

+    = ;    xor     edi,ecx
=
+        xor   =   ecx,edx

+     =    add     eax,ebx

+        add    &= nbsp;ebp,DWORD[28+rsp]

+    &nb= sp;   and     edi,ecx

+        xor   &nbs= p; ecx,edx

+     &nbs= p;  ror     ebx,7

+        mov     e= si,eax

+       &= nbsp;xor     edi,ecx

+ &nb= sp;      rol     eax,5
+        add =     ebp,edi

+   =      xor     esi,ebx

+        xor  = ;   ebx,ecx

+    = ;    add     ebp,eax
=
+        pxor   = ; xmm2,xmm6

+     &nb= sp;  add     edx,DWORD[32+rsp]
=
+        and   =   esi,ebx

+     =    xor     ebx,ecx

+        ror    &= nbsp;eax,7

+      &nb= sp; punpcklqdq      xmm10,xmm1
=
+        mov   =   edi,ebp

+     =    xor     esi,ebx

+        pxor    = xmm2,xmm3

+      &nbs= p; rol     ebp,5

+ &n= bsp;      add     edx,esi=

+        m= ovdqa  xmm9,xmm8

+    &nbs= p;   xor     edi,eax

+        paddd   xmm= 8,xmm1

+       &= nbsp;xor     eax,ebx

+ &nb= sp;      pxor    xmm2,xmm10
+        add =     edx,ebp

+   =      add     ecx,DWORD[36+rsp]=

+        a= nd     edi,eax

+  &nb= sp;     xor     eax,ebx

+        ror &nbs= p;   ebp,7

+    =     movdqa  xmm10,xmm2

+        mov     e= si,edx

+       &= nbsp;xor     edi,eax

+ &nb= sp;      movdqa  XMMWORD[16+rsp],xmm8
+        rol =     edx,5

+   &n= bsp;    add     ecx,edi

+        xor  &nb= sp;  esi,ebp

+    &nb= sp;   pslld   xmm2,2

= +        xor     ebp= ,eax

+       &nb= sp;add     ecx,edx

+  = ;      psrld   xmm10,30

+        add  &nb= sp;  ebx,DWORD[40+rsp]

+   = ;     and     esi,ebp

+        xor  = ;   ebp,eax

+    = ;    por     xmm2,xmm10

+        ror  &nb= sp;  edx,7

+     = ;   mov     edi,ecx

+        xor    =  esi,ebp

+      =   rol     ecx,5

= +        pshufd  xmm8,xmm1,238

+        add &n= bsp;   ebx,esi

+   &n= bsp;    xor     edi,edx

+        xor  &nb= sp;  edx,ebp

+    &nb= sp;   add     ebx,ecx

+        add   &nbs= p; eax,DWORD[44+rsp]

+    =     and     edi,edx
<= br class=3D"">+        xor   &= nbsp; edx,ebp

+     &= nbsp;  ror     ecx,7

+        mov    &n= bsp;esi,ebx

+      &n= bsp; xor     edi,edx

= +        rol     ebx= ,5

+        = ;add     eax,edi

+  &= nbsp;     xor     esi,edx

+        add &n= bsp;   eax,ebx

+   &n= bsp;    pxor    xmm3,xmm7
=
+        add   =   ebp,DWORD[48+rsp]

+   &n= bsp;    xor     esi,ecx

+        punpcklqdq &n= bsp;    xmm8,xmm2

+  =       mov     edi,eax

+        rol &= nbsp;   eax,5

+   &nb= sp;    pxor    xmm3,xmm4
<= br class=3D"">+        add   &= nbsp; ebp,esi

+     &= nbsp;  xor     edi,ecx

+        movdqa  xmm10,xmm9<= br class=3D"">
+        ro= r     ebx,7

+   =      paddd   xmm9,xmm2
+        add   &nb= sp; ebp,eax

+     &nb= sp;  pxor    xmm3,xmm8

+        add     e= dx,DWORD[52+rsp]

+     &nb= sp;  xor     edi,ebx

+        mov    &n= bsp;esi,ebp

+      &n= bsp; rol     ebp,5

+ =        movdqa  xmm8,xmm3

+        add  = ;   edx,edi

+    = ;    xor     esi,ebx
=
+        movdqa  XMM= WORD[32+rsp],xmm9

+     &n= bsp;  ror     eax,7

+        add    &n= bsp;edx,ebp

+      &n= bsp; add     ecx,DWORD[56+rsp]

+        pslld   xmm= 3,2

+       &nbs= p;xor     esi,eax

+  =       mov     edi,edx

+        psrld=   xmm8,30

+     = ;   rol     edx,5

+        add    &n= bsp;ecx,esi

+      &n= bsp; xor     edi,eax

= +        ror     ebp= ,7

+        = ;por     xmm3,xmm8

+  = ;      add     ecx,edx
+        add =     ebx,DWORD[60+rsp]

+ &n= bsp;      xor     edi,ebp=

+        m= ov     esi,ecx

+  &nb= sp;     rol     ecx,5

+        add  = ;   ebx,edi

+    = ;    xor     esi,ebp
=
+        ror   =   edx,7

+     &n= bsp;  add     ebx,ecx

+        add    &n= bsp;eax,DWORD[rsp]

+     &= nbsp;  xor     esi,edx

+        mov    &n= bsp;edi,ebx

+      &n= bsp; rol     ebx,5

+ =        paddd   xmm10,xmm3

+        add &n= bsp;   eax,esi

+   &n= bsp;    xor     edi,edx

+        movdqa  = XMMWORD[48+rsp],xmm10

+    &nbs= p;   ror     ecx,7

+        add    &= nbsp;eax,ebx

+      &= nbsp; add     ebp,DWORD[4+rsp]

+        xor    = ; edi,ecx

+      = ;  mov     esi,eax

+        rol     = eax,5

+       &n= bsp;add     ebp,edi

+ &nbs= p;      xor     esi,ecx
+        ror=     ebx,7

+   &= nbsp;    add     ebp,eax

+        add  = ;   edx,DWORD[8+rsp]

+  &n= bsp;     xor     esi,ebx

+        mov &nb= sp;   edi,ebp

+   &nb= sp;    rol     ebp,5
=
+        add   =   edx,esi

+     =    xor     edi,ebx

+        ror    &= nbsp;eax,7

+      &nb= sp; add     edx,ebp

+=        add     ecx,= DWORD[12+rsp]

+      =   xor     edi,eax

+        mov     e= si,edx

+       &= nbsp;rol     edx,5

+  = ;      add     ecx,edi
+        xor =     esi,eax

+   =      ror     ebp,7

+        add  &nb= sp;  ecx,edx

+    &nb= sp;   cmp     r9,r10

+        je    =   NEAR $L$done_ssse3

+   &= nbsp;    movdqa  xmm6,XMMWORD[64+r14]

+        movdqa  x= mm9,XMMWORD[((-64))+r14]

+    &= nbsp;   movdqu  xmm0,XMMWORD[r9]

+        movdqu  xmm1,XMMWOR= D[16+r9]

+       = ; movdqu  xmm2,XMMWORD[32+r9]

+ &nbs= p;      movdqu  xmm3,XMMWORD[48+r9]

+DB      102,15,56,0,198<= br class=3D"">
+        ad= d     r9,64

+   =      add     ebx,DWORD[16+rsp]=

+        x= or     esi,ebp

+  &nb= sp;     mov     edi,ecx

+DB      102,15,56,0,206
+        rol =     ecx,5

+   &n= bsp;    add     ebx,esi

+        xor  &nb= sp;  edi,ebp

+    &nb= sp;   ror     edx,7

+        paddd   xmm0= ,xmm9

+       &n= bsp;add     ebx,ecx

+ &nbs= p;      add     eax,DWORD= [20+rsp]

+       = ; xor     edi,edx

+ &= nbsp;      mov     esi,eb= x

+        = movdqa  XMMWORD[rsp],xmm0

+   &= nbsp;    rol     ebx,5

+        add  &nbs= p;  eax,edi

+    &nbs= p;   xor     esi,edx

+        ror    = ; ecx,7

+      &= nbsp; psubd   xmm0,xmm9

+  = ;      add     eax,ebx
+        add =     ebp,DWORD[24+rsp]

+ &n= bsp;      xor     esi,ecx=

+        m= ov     edi,eax

+  &nb= sp;     rol     eax,5

+        add  = ;   ebp,esi

+    = ;    xor     edi,ecx
=
+        ror   =   ebx,7

+     &n= bsp;  add     ebp,eax

+        add    &n= bsp;edx,DWORD[28+rsp]

+    &nbs= p;   xor     edi,ebx

+        mov    = ; esi,ebp

+      = ;  rol     ebp,5

+        add     ed= x,edi

+       &n= bsp;xor     esi,ebx

+ &nbs= p;      ror     eax,7

+        add &= nbsp;   edx,ebp

+   &= nbsp;    add     ecx,DWORD[32+rsp]<= br class=3D"">
+        xo= r     esi,eax

+  &nbs= p;     mov     edi,edx

+DB      102,15,56,0,214

+        rol &= nbsp;   edx,5

+   &nb= sp;    add     ecx,esi

+        xor  &nbs= p;  edi,eax

+    &nbs= p;   ror     ebp,7

+        paddd   xmm1,= xmm9

+       &nb= sp;add     ecx,edx

+  = ;      add     ebx,DWORD[= 36+rsp]

+       =  xor     edi,ebp

+ &n= bsp;      mov     esi,ecx=

+        m= ovdqa  XMMWORD[16+rsp],xmm1

+   = ;     rol     ecx,5

+        add  = ;   ebx,edi

+    = ;    xor     esi,ebp
=
+        ror   =   edx,7

+     &n= bsp;  psubd   xmm1,xmm9

+ =        add     ebx,e= cx

+        = ;add     eax,DWORD[40+rsp]

+        xor     es= i,edx

+       &n= bsp;mov     edi,ebx

+ &nbs= p;      rol     ebx,5

+        add &= nbsp;   eax,esi

+   &= nbsp;    xor     edi,edx

+        ror  = ;   ecx,7

+    &= nbsp;   add     eax,ebx
+        add   &n= bsp; ebp,DWORD[44+rsp]

+   &nbs= p;    xor     edi,ecx

+        mov   = ;  esi,eax

+     = ;   rol     eax,5

+        add    &n= bsp;ebp,edi

+      &n= bsp; xor     esi,ecx

= +        ror     ebx= ,7

+        = ;add     ebp,eax

+  &= nbsp;     add     edx,DWORD[48= +rsp]

+       &n= bsp;xor     esi,ebx

+ &nbs= p;      mov     edi,ebp
+DB      102,15,56,0,2= 22

+        = ;rol     ebp,5

+  &nb= sp;     add     edx,esi

+        xor &nbs= p;   edi,ebx

+   &nbs= p;    ror     eax,7
<= br class=3D"">+        paddd   = ;xmm2,xmm9

+      &nb= sp; add     edx,ebp

+=        add     ecx,= DWORD[52+rsp]

+      =   xor     edi,eax

+        mov     e= si,edx

+       &= nbsp;movdqa  XMMWORD[32+rsp],xmm2

+  = ;      rol     edx,5

+        add &n= bsp;   ecx,edi

+   &n= bsp;    xor     esi,eax

+        ror  &nb= sp;  ebp,7

+     = ;   psubd   xmm2,xmm9

+        add     ec= x,edx

+       &n= bsp;add     ebx,DWORD[56+rsp]

+        xor    &n= bsp;esi,ebp

+      &n= bsp; mov     edi,ecx

= +        rol     ecx= ,5

+        = ;add     ebx,esi

+  &= nbsp;     xor     edi,ebp

+        ror &n= bsp;   edx,7

+   &nbs= p;    add     ebx,ecx

+        add   = ;  eax,DWORD[60+rsp]

+   &= nbsp;    xor     edi,edx

+        mov  = ;   esi,ebx

+    = ;    rol     ebx,5
+        add   &n= bsp; eax,edi

+     &n= bsp;  ror     ecx,7

+        add    &n= bsp;eax,ebx

+      &n= bsp; add     eax,DWORD[r8]

+        add    &n= bsp;esi,DWORD[4+r8]

+     =    add     ecx,DWORD[8+r8]

+        add   = ;  edx,DWORD[12+r8]

+   &n= bsp;    mov     DWORD[r8],eax

+        add &nb= sp;   ebp,DWORD[16+r8]

+  =       mov     DWORD[4+r8]= ,esi

+       &nb= sp;mov     ebx,esi

+  = ;      mov     DWORD[8+r8= ],ecx

+       &n= bsp;mov     edi,ecx

+ &nbs= p;      mov     DWORD[12+= r8],edx

+       =  xor     edi,edx

+ &n= bsp;      mov     DWORD[1= 6+r8],ebp

+      &nbs= p; and     esi,edi

+ =        jmp     NEAR = $L$oop_ssse3

+

+A= LIGN   16

+$L$done_ssse3:

+        add  = ;   ebx,DWORD[16+rsp]

+  &= nbsp;     xor     esi,ebp

+        mov &n= bsp;   edi,ecx

+   &n= bsp;    rol     ecx,5

+        add   = ;  ebx,esi

+     = ;   xor     edi,ebp

+        ror    =  edx,7

+      &n= bsp; add     ebx,ecx

= +        add     eax= ,DWORD[20+rsp]

+      = ;  xor     edi,edx

+        mov     = esi,ebx

+       =  rol     ebx,5

+ &nbs= p;      add     eax,edi
+        xor=     esi,edx

+   = ;     ror     ecx,7

+        add  = ;   eax,ebx

+    = ;    add     ebp,DWORD[24+rsp]

+        xor &n= bsp;   esi,ecx

+   &n= bsp;    mov     edi,eax

+        rol  &nb= sp;  eax,5

+     = ;   add     ebp,esi

+        xor    =  edi,ecx

+      =   ror     ebx,7

= +        add     ebp= ,eax

+       &nb= sp;add     edx,DWORD[28+rsp]

+        xor     = edi,ebx

+       =  mov     esi,ebp

+ &n= bsp;      rol     ebp,5
+        add=     edx,edi

+   = ;     xor     esi,ebx

+        ror  = ;   eax,7

+    &= nbsp;   add     edx,ebp
+        add   &n= bsp; ecx,DWORD[32+rsp]

+   &nbs= p;    xor     esi,eax

+        mov   = ;  edi,edx

+     = ;   rol     edx,5

+        add    &n= bsp;ecx,esi

+      &n= bsp; xor     edi,eax

= +        ror     ebp= ,7

+        = ;add     ecx,edx

+  &= nbsp;     add     ebx,DWORD[36= +rsp]

+       &n= bsp;xor     edi,ebp

+ &nbs= p;      mov     esi,ecx
+        rol=     ecx,5

+   &= nbsp;    add     ebx,edi

+        xor  = ;   esi,ebp

+    = ;    ror     edx,7
+        add   &n= bsp; ebx,ecx

+     &n= bsp;  add     eax,DWORD[40+rsp]

+        xor   = ;  esi,edx

+     = ;   mov     edi,ebx

+        rol    =  ebx,5

+      &n= bsp; add     eax,esi

= +        xor     edi= ,edx

+       &nb= sp;ror     ecx,7

+  &= nbsp;     add     eax,ebx

+        add &n= bsp;   ebp,DWORD[44+rsp]

+ &nbs= p;      xor     edi,ecx
+        mov=     esi,eax

+   = ;     rol     eax,5

+        add  = ;   ebp,edi

+    = ;    xor     esi,ecx
=
+        ror   =   ebx,7

+     &n= bsp;  add     ebp,eax

+        add    &n= bsp;edx,DWORD[48+rsp]

+    &nbs= p;   xor     esi,ebx

+        mov    = ; edi,ebp

+      = ;  rol     ebp,5

+        add     ed= x,esi

+       &n= bsp;xor     edi,ebx

+ &nbs= p;      ror     eax,7

+        add &= nbsp;   edx,ebp

+   &= nbsp;    add     ecx,DWORD[52+rsp]<= br class=3D"">
+        xo= r     edi,eax

+  &nbs= p;     mov     esi,edx

+        rol  = ;   edx,5

+    &= nbsp;   add     ecx,edi
+        xor   &n= bsp; esi,eax

+     &n= bsp;  ror     ebp,7

+        add    &n= bsp;ecx,edx

+      &n= bsp; add     ebx,DWORD[56+rsp]

+        xor    = ; esi,ebp

+      = ;  mov     edi,ecx

+        rol     = ecx,5

+       &n= bsp;add     ebx,esi

+ &nbs= p;      xor     edi,ebp
+        ror=     edx,7

+   &= nbsp;    add     ebx,ecx

+        add  = ;   eax,DWORD[60+rsp]

+  &= nbsp;     xor     edi,edx

+        mov &n= bsp;   esi,ebx

+   &n= bsp;    rol     ebx,5

+        add   = ;  eax,edi

+     = ;   ror     ecx,7

+        add    &n= bsp;eax,ebx

+      &n= bsp; add     eax,DWORD[r8]

+        add    &n= bsp;esi,DWORD[4+r8]

+     =    add     ecx,DWORD[8+r8]

+        mov   = ;  DWORD[r8],eax

+    = ;    add     edx,DWORD[12+r8]

+        mov &nb= sp;   DWORD[4+r8],esi

+  &= nbsp;     add     ebp,DWORD[16= +r8]

+       &nb= sp;mov     DWORD[8+r8],ecx

+        mov     DW= ORD[12+r8],edx

+      = ;  mov     DWORD[16+r8],ebp
+        movaps  xmm6,X= MMWORD[((-40-96))+r11]

+    &nb= sp;   movaps  xmm7,XMMWORD[((-40-80))+r11]

+        movaps  x= mm8,XMMWORD[((-40-64))+r11]

+   &nbs= p;    movaps  xmm9,XMMWORD[((-40-48))+r11]

+        movaps &n= bsp;xmm10,XMMWORD[((-40-32))+r11]

+  &nbs= p;     movaps  xmm11,XMMWORD[((-40-16))+r11]<= br class=3D"">
+        mo= v     r14,QWORD[((-40))+r11]

+

+       &nb= sp;mov     r13,QWORD[((-32))+r11]

+

+      &nbs= p; mov     r12,QWORD[((-24))+r11]
+

+      = ;  mov     rbp,QWORD[((-16))+r11]

+

+     =    mov     rbx,QWORD[((-8))+r11]

+

+    &n= bsp;   lea     rsp,[r11]
<= br class=3D"">+

+$L$epilogue_ssse3:

+        mov  = ;   rdi,QWORD[8+rsp]       &nb= sp;;WIN64 epilogue

+     &= nbsp;  mov     rsi,QWORD[16+rsp]

+        DB   = ;   0F3h,0C3h        &nbs= p;      ;repret

= +

+$L$SEH_end_sha1_block_data_order_ssse3:

+ALIGN   64

+K_XX_XX:

+      &n= bsp; DD      0x5a827999,0x5a827999,0x5a827999= ,0x5a827999

+      &n= bsp; DD      0x5a827999,0x5a827999,0x5a827999= ,0x5a827999

+      &n= bsp; DD      0x6ed9eba1,0x6ed9eba1,0x6ed9eba1= ,0x6ed9eba1

+      &n= bsp; DD      0x6ed9eba1,0x6ed9eba1,0x6ed9eba1= ,0x6ed9eba1

+      &n= bsp; DD      0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc= ,0x8f1bbcdc

+      &n= bsp; DD      0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc= ,0x8f1bbcdc

+      &n= bsp; DD      0xca62c1d6,0xca62c1d6,0xca62c1d6= ,0xca62c1d6

+      &n= bsp; DD      0xca62c1d6,0xca62c1d6,0xca62c1d6= ,0xca62c1d6

+      &n= bsp; DD      0x00010203,0x04050607,0x08090a0b= ,0x0c0d0e0f

+      &n= bsp; DD      0x00010203,0x04050607,0x08090a0b= ,0x0c0d0e0f

+DB
0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,= 0x2,0x1,0x0

+DB      83,72,65,49,32,98,108,111,99,107,32,116= ,114,97,110,115

+DB     &n= bsp;102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44
<= br class=3D"">+DB      32,67,82,89,80,84,79,71,65,= 77,83,32,98,121,32,60

+DB    &n= bsp; 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114

+DB      103,62,0

+ALIGN   64

+E= XTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16

+s= e_handler:

+      &nb= sp; push    rsi

+  &n= bsp;     push    rdi
=
+        push   = ; rbx

+      &nb= sp; push    rbp

+  &n= bsp;     push    r12
=
+        push   = ; r13

+      &nb= sp; push    r14

+  &n= bsp;     push    r15
=
+        pushfq

+        sub  = ;   rsp,64

+

+        mov   &nbs= p; rax,QWORD[120+r8]

+    =     mov     rbx,QWORD[248+r8]

+

+    =     lea     r10,[$L$prologue]

+        cmp &nb= sp;   rbx,r10

+   &nb= sp;    jb      NEAR $L$common_= seh_tail

+

+ &nbs= p;      mov     rax,QWORD= [152+r8]

+

+ &nbs= p;      lea     r10,[$L$e= pilogue]

+       = ; cmp     rbx,r10

+ &= nbsp;      jae     NEAR $= L$common_seh_tail

+

+        mov     = rax,QWORD[64+rax]

+

+        mov     = rbx,QWORD[((-8))+rax]

+    &nbs= p;   mov     rbp,QWORD[((-16))+rax]

+        mov &n= bsp;   r12,QWORD[((-24))+rax]

+=        mov     r13,= QWORD[((-32))+rax]

+     &= nbsp;  mov     r14,QWORD[((-40))+rax]

+        mov  = ;   QWORD[144+r8],rbx

+  &= nbsp;     mov     QWORD[160+r8= ],rbp

+       &n= bsp;mov     QWORD[216+r8],r12

+        mov    &n= bsp;QWORD[224+r8],r13

+    &nbs= p;   mov     QWORD[232+r8],r14

+

+    &n= bsp;   jmp     NEAR $L$common_seh_tail
+

+
=
+ALIGN   16

+shaext_h= andler:

+       =  push    rsi

+   = ;     push    rdi
+        push   &n= bsp;rbx

+       =  push    rbp

+   = ;     push    r12
+        push   &n= bsp;r13

+       =  push    r14

+   = ;     push    r15
+        pushfq

+        sub  &nbs= p;  rsp,64

+

+        mov    &n= bsp;rax,QWORD[120+r8]

+    &nbs= p;   mov     rbx,QWORD[248+r8]

+

+    &n= bsp;   lea     r10,[$L$prologue_shaext]<= br class=3D"">
+        cm= p     rbx,r10

+  &nbs= p;     jb      NEAR $L$co= mmon_seh_tail

+

+=        lea     r10,= [$L$epilogue_shaext]

+     = ;   cmp     rbx,r10

+        jae    =  NEAR $L$common_seh_tail

+
=
+        lea   =   rsi,[((-8-64))+rax]

+   =      lea     rdi,[512+r8]

+        mov &n= bsp;   ecx,8

+   &nbs= p;    DD      0xa548f3fc

+

+    =     jmp     NEAR $L$common_seh_tail=

+

+

+ALIGN   16

+ssse3_= handler:

+       = ; push    rsi

+  &nbs= p;     push    rdi
+        push   &= nbsp;rbx

+       = ; push    rbp

+  &nbs= p;     push    r12
+        push   &= nbsp;r13

+       = ; push    r14

+  &nbs= p;     push    r15
+        pushfq

+        sub  &nb= sp;  rsp,64

+

+        mov    &n= bsp;rax,QWORD[120+r8]

+    &nbs= p;   mov     rbx,QWORD[248+r8]

+

+    &n= bsp;   mov     rsi,QWORD[8+r9]

+        mov  = ;   r11,QWORD[56+r9]

+

+        mov  = ;   r10d,DWORD[r11]

+  &nb= sp;     lea     r10,[r10*1+rsi= ]

+        = cmp     rbx,r10

+  &n= bsp;     jb      NEAR $L$= common_seh_tail

+

+        mov     ra= x,QWORD[208+r8]

+

+        mov     r1= 0d,DWORD[4+r11]

+     &nbs= p;  lea     r10,[r10*1+rsi]
+        cmp   &nb= sp; rbx,r10

+     &nb= sp;  jae     NEAR $L$common_seh_tail

+

+    &n= bsp;   lea     rsi,[((-40-96))+rax]

+        lea &n= bsp;   rdi,[512+r8]

+  &nb= sp;     mov     ecx,12

+        DD  =     0xa548f3fc

+

+        mov  = ;   rbx,QWORD[((-8))+rax]

+ &nb= sp;      mov     rbp,QWOR= D[((-16))+rax]

+      = ;  mov     r12,QWORD[((-24))+rax]

+        mov  &nb= sp;  r13,QWORD[((-32))+rax]

+  =       mov     r14,QWORD[(= (-40))+rax]

+      &n= bsp; mov     QWORD[144+r8],rbx

+        mov    = ; QWORD[160+r8],rbp

+    &= nbsp;   mov     QWORD[216+r8],r12

+        mov &nbs= p;   QWORD[224+r8],r13

+  =       mov     QWORD[232+r= 8],r14

+

+$L$comm= on_seh_tail:

+      &= nbsp; mov     rdi,QWORD[8+rax]

+        mov    = ; rsi,QWORD[16+rax]

+    &= nbsp;   mov     QWORD[152+r8],rax

+        mov &nbs= p;   QWORD[168+r8],rsi

+  =       mov     QWORD[176+r= 8],rdi

+

+  =       mov     rdi,QWORD[4= 0+r9]

+       &n= bsp;mov     rsi,r8

+  = ;      mov     ecx,154
+        DD &= nbsp;    0xa548f3fc

+

+        mov &n= bsp;   rsi,r9

+   &nb= sp;    xor     rcx,rcx

+        mov  &nbs= p;  rdx,QWORD[8+rsi]

+   &= nbsp;    mov     r8,QWORD[rsi]

+        mov &n= bsp;   r9,QWORD[16+rsi]

+  = ;      mov     r10,QWORD[= 40+rsi]

+       =  lea     r11,[56+rsi]

+        lea     r1= 2,[24+rsi]

+      &nb= sp; mov     QWORD[32+rsp],r10

+        mov    =  QWORD[40+rsp],r11

+    &n= bsp;   mov     QWORD[48+rsp],r12

+        mov  = ;   QWORD[56+rsp],rcx

+  &= nbsp;     call    QWORD[__imp_RtlVi= rtualUnwind]

+

+ =        mov     eax,1=

+        a= dd     rsp,64

+  &nbs= p;     popfq

+  =       pop     r15

+        pop  = ;   r14

+    &nb= sp;   pop     r13

+        pop    &n= bsp;r12

+       =  pop     rbp

+  =       pop     rbx

+        pop  = ;   rdi

+    &nb= sp;   pop     rsi

+        DB    &nb= sp; 0F3h,0C3h          &n= bsp;    ;repret

+

+

+section .pdata rdata = align=3D4

+ALIGN   4
<= br class=3D"">+        DD   &n= bsp;  $L$SEH_begin_sha1_block_data_order wrt ..imagebase

+        DD  =     $L$SEH_end_sha1_block_data_order wrt ..imagebase
+        DD &= nbsp;    $L$SEH_info_sha1_block_data_order wrt ..imageb= ase

+       &nbs= p;DD      $L$SEH_begin_sha1_block_data_order_shaex= t wrt
..imagebase

+   =      DD      $L$SEH_end_s= ha1_block_data_order_shaext wrt
..imagebase
+        DD   &nbs= p;  $L$SEH_info_sha1_block_data_order_shaext wrt
..imagebase

+      &nbs= p; DD      $L$SEH_begin_sha1_block_data_order= _ssse3 wrt
..imagebase=

+  &= nbsp;     DD      $L$SEH_= end_sha1_block_data_order_ssse3 wrt ..imagebase

+        DD     &n= bsp;$L$SEH_info_sha1_block_data_order_ssse3 wrt
=
..imagebase

+section .xdata rdata align=3D8
<= br class=3D"">+ALIGN   8

+$L$SEH_inf= o_sha1_block_data_order:

+DB    = ;  9,0,0,0

+     = ;   DD      se_handler wrt ..imageb= ase

+$L$SEH_info_sha1_block_data_order_shaext:=

+DB      9,0,0,0

+        DD &n= bsp;    shaext_handler wrt ..imagebase
+$L$SEH_info_sha1_block_data_order_ssse3:

+DB      9,0,0,0

+        DD    &nb= sp; ssse3_handler wrt ..imagebase

+  = ;      DD      $L$pr= ologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3
wrt ..imagebas= e

diff --git a/CryptoPkg/Library/OpensslLib/X6= 4/crypto/sha/sha256-mb-
x86_64.nasm b/CryptoPkg/Library/Opens= slLib/X64/crypto/sha/sha256-
mb-
=
<= blockquote type=3D"cite" class=3D"">x86_64.nasm
new file mode= 100644
index 0000000000..7cd5eae85c
--- /dev/n= ull
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-= mb-
x86_64.nasm
@@ -0,= 0 +1,3461 @@
+; WARNING: do not edit!

+; Generated from openssl/crypto/sha/asm/sha256-mb-x86_64.pl

+;

+; Copyright 2013-202= 0 The OpenSSL Project Authors. All Rights
Reserved.

+;

+; Licensed under the= OpenSSL license (the "License").  You may not use

+; this file except in compliance with the License.  You can= obtain a
copy

+; in the file L= ICENSE in the source distribution or at

+; https://www= .openssl.org/source/license.html

+

+default rel

+%define XM= MWORD

+%define YMMWORD

+%define ZMMWORD

+section .text code al= ign=3D64

+

+

+EXTERN  OPENSSL_ia32cap_P

+

+global  sha256_multi_block<= br class=3D"">
+

+ALIGN  &n= bsp;32

+sha256_multi_block:

+        mov   &nbs= p; QWORD[8+rsp],rdi        ;WIN64 p= rologue

+       =  mov     QWORD[16+rsp],rsi

+        mov    &n= bsp;rax,rsp

+$L$SEH_begin_sha256_multi_block:<= br class=3D"">
+        mo= v     rdi,rcx

+  &nbs= p;     mov     rsi,rdx

+        mov  = ;   rdx,r8

+

+

+

+ =        mov     rcx,Q= WORD[((OPENSSL_ia32cap_P+4))]

+   &n= bsp;    bt      rcx,61

+        jc  =     NEAR _shaext_shortcut

= +        mov     rax= ,rsp

+

+  &n= bsp;     push    rbx
=
+

+     &nb= sp;  push    rbp

+
+        lea =     rsp,[((-168))+rsp]

+ &= nbsp;      movaps  XMMWORD[rsp],xmm6

+        movap= s  XMMWORD[16+rsp],xmm7

+   &nb= sp;    movaps  XMMWORD[32+rsp],xmm8
=
+        movaps  XMM= WORD[48+rsp],xmm9

+     &n= bsp;  movaps  XMMWORD[(-120)+rax],xmm10

+        movaps  XMMWORD[(= -104)+rax],xmm11

+     &nb= sp;  movaps  XMMWORD[(-88)+rax],xmm12

+        movaps  XMMWORD[(-7= 2)+rax],xmm13

+      =   movaps  XMMWORD[(-56)+rax],xmm14

+        movaps  XMMWORD[(-4= 0)+rax],xmm15

+      =   sub     rsp,288

+        and     r= sp,-256

+       =  mov     QWORD[272+rsp],rax

+

+$L$body:

+        lea     r= bp,[((K256+128))]

+     &n= bsp;  lea     rbx,[256+rsp]
+        lea   &nb= sp; rdi,[128+rdi]

+

+$L$oop_grande:

+    &n= bsp;   mov     DWORD[280+rsp],edx

+        xor &nbs= p;   edx,edx

+   &nbs= p;    mov     r8,QWORD[rsi]

+        mov  = ;   ecx,DWORD[8+rsi]

+  &n= bsp;     cmp     ecx,edx

+        cmovg &= nbsp; edx,ecx

+     &= nbsp;  test    ecx,ecx

+        mov     D= WORD[rbx],ecx

+      =   cmovle  r8,rbp

+   =      mov     r9,QWORD[16+rsi]<= br class=3D"">
+        mo= v     ecx,DWORD[24+rsi]

+ =        cmp     ecx,e= dx

+        = ;cmovg   edx,ecx

+    = ;    test    ecx,ecx

+        mov    = ; DWORD[4+rbx],ecx

+    &n= bsp;   cmovle  r9,rbp

+ &n= bsp;      mov     r10,QWO= RD[32+rsi]

+      &nb= sp; mov     ecx,DWORD[40+rsi]

+        cmp    =  ecx,edx

+      =   cmovg   edx,ecx

+  =       test    ecx,ecx

+        mov  = ;   DWORD[8+rbx],ecx

+  &n= bsp;     cmovle  r10,rbp

+        mov    =  r11,QWORD[48+rsi]

+    &n= bsp;   mov     ecx,DWORD[56+rsi]

+        cmp  = ;   ecx,edx

+    = ;    cmovg   edx,ecx

+        test    e= cx,ecx

+       &= nbsp;mov     DWORD[12+rbx],ecx

+        cmovle  r11,rbp

+        test =    edx,edx

+    =     jz      NEAR $L$done

+

+    =     movdqu  xmm8,XMMWORD[((0-128))+rdi]

+        lea  = ;   rax,[128+rsp]

+   = ;     movdqu  xmm9,XMMWORD[((32-128))+rdi]
+        movd= qu  xmm10,XMMWORD[((64-128))+rdi]

+  = ;      movdqu  xmm11,XMMWORD[((96-128))+= rdi]

+       &nb= sp;movdqu  xmm12,XMMWORD[((128-128))+rdi]

+        movdqu  xmm13,XMMWORD[((1= 60-128))+rdi]

+      =   movdqu  xmm14,XMMWORD[((192-128))+rdi]

+        movdqu  xmm15,XM= MWORD[((224-128))+rdi]

+    &nb= sp;   movdqu  xmm6,XMMWORD[$L$pbswap]
+        jmp   &nb= sp; NEAR $L$oop

+

+ALIGN   32

+$L$oop:

+        movdqa &n= bsp;xmm4,xmm10

+      = ;  pxor    xmm4,xmm9

= +        movd    xmm5,DWO= RD[r8]

+       &= nbsp;movd    xmm0,DWORD[r9]

+ &= nbsp;      movd    xmm1,DWORD[= r10]

+       &nb= sp;movd    xmm2,DWORD[r11]

+ &n= bsp;      punpckldq     &= nbsp; xmm5,xmm1

+     = ;   punpckldq       xmm0,xmm2<= br class=3D"">
+        pu= npckldq       xmm5,xmm0

+        movdqa  xmm7,xmm12=

+DB      102,15,56,0= ,238

+       &nb= sp;movdqa  xmm2,xmm12

+
+        psrld   x= mm7,6

+       &n= bsp;movdqa  xmm1,xmm12

+   &nbs= p;    pslld   xmm2,7

+        movdqa  XMMWORD[(0-= 128)+rax],xmm5

+      = ;  paddd   xmm5,xmm15

+
+        psrl= d   xmm1,11

+    &nbs= p;   pxor    xmm7,xmm2

+        pslld   xmm2,2= 1-7

+       &nbs= p;paddd   xmm5,XMMWORD[((-128))+rbp]

+        pxor    xmm7,xm= m1

+

+  &nbs= p;     psrld   xmm1,25-11
=
+        movdqa  xmm= 0,xmm12

+

+  = ;      pxor    xmm7,xmm2

+        movdqa =  xmm3,xmm12

+     &nb= sp;  pslld   xmm2,26-21

+ =        pandn   xmm0,xmm14

+        pand &= nbsp;  xmm3,xmm13

+   &nbs= p;    pxor    xmm7,xmm1
+

+

= +        movdqa  xmm1,xmm8

+        pxor &nbs= p;  xmm7,xmm2

+    &n= bsp;   movdqa  xmm2,xmm8

+=        psrld   xmm1,2

+        paddd &nb= sp; xmm5,xmm7

+     &= nbsp;  pxor    xmm0,xmm3

+        movdqa  xmm3,xmm9
+        mov= dqa  xmm7,xmm8

+     =    pslld   xmm2,10

+ =        pxor    xmm3,xmm8<= br class=3D"">
+

+

+        psrld  &nb= sp;xmm7,13

+      &nb= sp; pxor    xmm1,xmm2

+ &n= bsp;      paddd   xmm5,xmm0

+        pslld &nb= sp; xmm2,19-10

+     =    pand    xmm4,xmm3

+        pxor    x= mm1,xmm7

+

+

+        psrld =   xmm7,22-13

+    &nb= sp;   pxor    xmm1,xmm2

+        movdqa  xmm15,xmm9=

+        p= slld   xmm2,30-19

+   &nbs= p;    pxor    xmm7,xmm1
+        pxor   &= nbsp;xmm15,xmm4

+     &nbs= p;  paddd   xmm11,xmm5

+ &= nbsp;      pxor    xmm7,xmm2
+

+   &n= bsp;    paddd   xmm15,xmm5

+        paddd   xm= m15,xmm7

+       = ; movd    xmm5,DWORD[4+r8]

+        movd    xmm0,DW= ORD[4+r9]

+      &nbs= p; movd    xmm1,DWORD[4+r10]

+        movd    xmm2,= DWORD[4+r11]

+      &= nbsp; punpckldq       xmm5,xmm1

+        punpckldq=       xmm0,xmm2

+        punpckldq    &n= bsp;  xmm5,xmm0

+    =     movdqa  xmm7,xmm11

+

+       &nbs= p;movdqa  xmm2,xmm11

+DB   &nbs= p;  102,15,56,0,238

+   &n= bsp;    psrld   xmm7,6

+        movdqa  xmm1,xmm11<= br class=3D"">
+        ps= lld   xmm2,7

+    &nb= sp;   movdqa  XMMWORD[(16-128)+rax],xmm5
=
+        paddd  &nbs= p;xmm5,xmm14

+

+ =        psrld   xmm1,11

+        pxor &nbs= p;  xmm7,xmm2

+    &n= bsp;   pslld   xmm2,21-7

+        paddd   xmm5,X= MMWORD[((-96))+rbp]

+     =    pxor    xmm7,xmm1

+

+       = ; psrld   xmm1,25-11

+  &n= bsp;     movdqa  xmm0,xmm11
+

+      =   pxor    xmm7,xmm2

+=        movdqa  xmm4,xmm11

+        pslld &nb= sp; xmm2,26-21

+     =    pandn   xmm0,xmm13

+        pand    xmm4,xm= m12

+       &nbs= p;pxor    xmm7,xmm1

+

+

+    &n= bsp;   movdqa  xmm1,xmm15

= +        pxor    xmm7,xmm= 2

+        = movdqa  xmm2,xmm15

+    &n= bsp;   psrld   xmm1,2

+        paddd   xmm5,xmm7
+        pxor=    xmm0,xmm4

+   &nb= sp;    movdqa  xmm4,xmm8

+        movdqa  xmm7,xmm15<= br class=3D"">
+        ps= lld   xmm2,10

+    &n= bsp;   pxor    xmm4,xmm15

+

+

+ &= nbsp;      psrld   xmm7,13

+        pxor &nbs= p;  xmm1,xmm2

+    &n= bsp;   paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm3,xmm4

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm14,xmm8
<= br class=3D"">+        pslld   = ;xmm2,30-19

+      &n= bsp; pxor    xmm7,xmm1

+ &= nbsp;      pxor    xmm14,xmm3<= br class=3D"">
+        pa= ddd   xmm10,xmm5

+    = ;    pxor    xmm7,xmm2
+

+      =   paddd   xmm14,xmm5

+ &nb= sp;      paddd   xmm14,xmm7

+        movd &nbs= p;  xmm5,DWORD[8+r8]

+   &= nbsp;    movd    xmm0,DWORD[8+r9]

+        movd &nb= sp;  xmm1,DWORD[8+r10]

+   = ;     movd    xmm2,DWORD[8+r11]

+        punpc= kldq       xmm5,xmm1

+        punpckldq   &n= bsp;   xmm0,xmm2

+   =      punpckldq       = ;xmm5,xmm0

+      &nb= sp; movdqa  xmm7,xmm10

+DB  &nb= sp;   102,15,56,0,238

+  &= nbsp;     movdqa  xmm2,xmm10
+

+      = ;  psrld   xmm7,6

+  =       movdqa  xmm1,xmm10
<= br class=3D"">+        pslld   = ;xmm2,7

+       =  movdqa  XMMWORD[(32-128)+rax],xmm5

= +        paddd   xmm5,xmm13
+

+   &nb= sp;    psrld   xmm1,11

+        pxor    x= mm7,xmm2

+       = ; pslld   xmm2,21-7

+  &nb= sp;     paddd   xmm5,XMMWORD[((-64))+rbp= ]

+        = pxor    xmm7,xmm1

+

+        psrld  &= nbsp;xmm1,25-11

+     &nbs= p;  movdqa  xmm0,xmm10

+

+        pxor &nb= sp;  xmm7,xmm2

+    &= nbsp;   movdqa  xmm3,xmm10

+        pslld   xmm2,26-21
+        pan= dn   xmm0,xmm12

+    =     pand    xmm3,xmm11
+        pxor   &n= bsp;xmm7,xmm1

+

+=

+        m= ovdqa  xmm1,xmm14

+    &nb= sp;   pxor    xmm7,xmm2

+        movdqa  xmm2,xmm14=

+        p= srld   xmm1,2

+    &n= bsp;   paddd   xmm5,xmm7

+        pxor    x= mm0,xmm3

+       = ; movdqa  xmm3,xmm15

+   &= nbsp;    movdqa  xmm7,xmm14

+        pslld   xmm2,1= 0

+        = pxor    xmm3,xmm14

+

+

+    &n= bsp;   psrld   xmm7,13

+        pxor    xmm1,x= mm2

+       &nbs= p;paddd   xmm5,xmm0

+   &n= bsp;    pslld   xmm2,19-10

+        pand   &nb= sp;xmm4,xmm3

+      &= nbsp; pxor    xmm1,xmm7

+<= br class=3D"">
+

+   &= nbsp;    psrld   xmm7,22-13
+        pxor   &n= bsp;xmm1,xmm2

+      =   movdqa  xmm13,xmm15

+  &= nbsp;     pslld   xmm2,30-19

+        pxor  &n= bsp; xmm7,xmm1

+     =    pxor    xmm13,xmm4

+        paddd   xmm9,x= mm5

+       &nbs= p;pxor    xmm7,xmm2

+

+        paddd &nb= sp; xmm13,xmm5

+     =    paddd   xmm13,xmm7

+        movd    xmm5,DW= ORD[12+r8]

+      &nb= sp; movd    xmm0,DWORD[12+r9]

+        movd    x= mm1,DWORD[12+r10]

+     &n= bsp;  movd    xmm2,DWORD[12+r11]
+        punpckldq  &nb= sp;    xmm5,xmm1

+  &= nbsp;     punpckldq      =  xmm0,xmm2

+     &nbs= p;  punpckldq       xmm5,xmm0

+        movdqa =  xmm7,xmm9

+

+        movdqa  xmm2,xmm9

+DB      102,15,56,0,238

+        psrld=   xmm7,6

+     =    movdqa  xmm1,xmm9

+ &nb= sp;      pslld   xmm2,7

+        movdqa  = XMMWORD[(48-128)+rax],xmm5

+    = ;    paddd   xmm5,xmm12

+

+      &nbs= p; psrld   xmm1,11

+  &nbs= p;     pxor    xmm7,xmm2

+        pslld &nb= sp; xmm2,21-7

+     &= nbsp;  paddd   xmm5,XMMWORD[((-32))+rbp]
=
+        pxor   = ; xmm7,xmm1

+

+        psrld   xmm1,25-11<= br class=3D"">
+        mo= vdqa  xmm0,xmm9

+

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm4,xmm9

+   &n= bsp;    pslld   xmm2,26-21

+        pandn   xm= m0,xmm11

+       = ; pand    xmm4,xmm10

+ &nb= sp;      pxor    xmm7,xmm1

+

+
+        movdqa  xmm1,= xmm13

+       &n= bsp;pxor    xmm7,xmm2

+  &= nbsp;     movdqa  xmm2,xmm13
+        psrld   = xmm1,2

+       &= nbsp;paddd   xmm5,xmm7

+   = ;     pxor    xmm0,xmm4

+        movdqa  = xmm4,xmm14

+      &nb= sp; movdqa  xmm7,xmm13

+   = ;     pslld   xmm2,10

+        pxor   &nb= sp;xmm4,xmm13

+

+=

+        p= srld   xmm7,13

+    &= nbsp;   pxor    xmm1,xmm2

+        paddd   xmm= 5,xmm0

+       &= nbsp;pslld   xmm2,19-10

+  &nbs= p;     pand    xmm3,xmm4

+        pxor &nbs= p;  xmm1,xmm7

+

+

+      &nb= sp; psrld   xmm7,22-13

+  =       pxor    xmm1,xmm2

+        movdqa &= nbsp;xmm12,xmm14

+     &nb= sp;  pslld   xmm2,30-19

+ =        pxor    xmm7,xmm1<= br class=3D"">
+        px= or    xmm12,xmm3

+   =      paddd   xmm8,xmm5
+        pxor   &n= bsp;xmm7,xmm2

+

+=        paddd   xmm12,xmm5

+        paddd=   xmm12,xmm7

+    &n= bsp;   movd    xmm5,DWORD[16+r8]

+        movd  &nb= sp; xmm0,DWORD[16+r9]

+    = ;    movd    xmm1,DWORD[16+r10]

+        movd &nbs= p;  xmm2,DWORD[16+r11]

+   = ;     punpckldq      &nbs= p;xmm5,xmm1

+      &n= bsp; punpckldq       xmm0,xmm2

+        punpckldq=       xmm5,xmm0

+        movdqa  xmm7,xmm8

+DB      102,15,56,0,238

+        movdq= a  xmm2,xmm8

+

+        psrld   xmm7,6

+        movdq= a  xmm1,xmm8

+     &n= bsp;  pslld   xmm2,7

+ &nb= sp;      movdqa  XMMWORD[(64-128)+rax],x= mm5

+       &nbs= p;paddd   xmm5,xmm11

+

+        psrld  &nb= sp;xmm1,11

+      &nb= sp; pxor    xmm7,xmm2

+ &n= bsp;      pslld   xmm2,21-7

+        paddd &nb= sp; xmm5,XMMWORD[rbp]

+    = ;    pxor    xmm7,xmm1
+

+      =   psrld   xmm1,25-11

+ &nb= sp;      movdqa  xmm0,xmm8

+

+     &n= bsp;  pxor    xmm7,xmm2

+        movdqa  xmm3,xmm8

+        pslld &= nbsp; xmm2,26-21

+    &nbs= p;   pandn   xmm0,xmm10

+        pand    xmm3,= xmm9

+       &nb= sp;pxor    xmm7,xmm1

+

+

+    &n= bsp;   movdqa  xmm1,xmm12

= +        pxor    xmm7,xmm= 2

+        = movdqa  xmm2,xmm12

+    &n= bsp;   psrld   xmm1,2

+        paddd   xmm5,xmm7
+        pxor=    xmm0,xmm3

+   &nb= sp;    movdqa  xmm3,xmm13

+        movdqa  xmm7,xmm12<= br class=3D"">
+        ps= lld   xmm2,10

+    &n= bsp;   pxor    xmm3,xmm12

+

+

+ &= nbsp;      psrld   xmm7,13

+        pxor &nbs= p;  xmm1,xmm2

+    &n= bsp;   paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm4,xmm3

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm11,xmm13
=
+        pslld  &nbs= p;xmm2,30-19

+      &= nbsp; pxor    xmm7,xmm1

+ =        pxor    xmm11,xmm4=

+        p= addd   xmm15,xmm5

+   &nbs= p;    pxor    xmm7,xmm2
+

+      = ;  paddd   xmm11,xmm5

+ &n= bsp;      paddd   xmm11,xmm7

+        movd &nb= sp;  xmm5,DWORD[20+r8]

+   = ;     movd    xmm0,DWORD[20+r9]

+        movd =    xmm1,DWORD[20+r10]

+  &= nbsp;     movd    xmm2,DWORD[20+r11= ]

+        = punpckldq       xmm5,xmm1

+        punpckldq   = ;    xmm0,xmm2

+  &nb= sp;     punpckldq      &n= bsp;xmm5,xmm0

+      =   movdqa  xmm7,xmm15

+

+        movdqa &n= bsp;xmm2,xmm15

+DB     &nb= sp;102,15,56,0,238

+     &= nbsp;  psrld   xmm7,6

+ &n= bsp;      movdqa  xmm1,xmm15

+        pslld  &= nbsp;xmm2,7

+      &n= bsp; movdqa  XMMWORD[(80-128)+rax],xmm5

+        paddd   xmm5,x= mm10

+

+  &n= bsp;     psrld   xmm1,11
<= br class=3D"">+        pxor   =  xmm7,xmm2

+     &nbs= p;  pslld   xmm2,21-7

+ &n= bsp;      paddd   xmm5,XMMWORD[32+r= bp]

+       &nbs= p;pxor    xmm7,xmm1

+

+        psrld &nb= sp; xmm1,25-11

+     =    movdqa  xmm0,xmm15

+
+        pxor=    xmm7,xmm2

+   &nb= sp;    movdqa  xmm4,xmm15

+        pslld   xmm2,2= 6-21

+       &nb= sp;pandn   xmm0,xmm9

+   &= nbsp;    pand    xmm4,xmm8

+        pxor  &nbs= p; xmm7,xmm1

+

+

+       &nb= sp;movdqa  xmm1,xmm11

+    = ;    pxor    xmm7,xmm2
+        movdqa  xmm2,x= mm11

+       &nb= sp;psrld   xmm1,2

+   &nbs= p;    paddd   xmm5,xmm7

+        pxor    = xmm0,xmm4

+      &nbs= p; movdqa  xmm4,xmm12

+   =      movdqa  xmm7,xmm11

+        pslld   xmm2,= 10

+        = ;pxor    xmm4,xmm11

+

+

+    &n= bsp;   psrld   xmm7,13

+        pxor    xmm1,x= mm2

+       &nbs= p;paddd   xmm5,xmm0

+   &n= bsp;    pslld   xmm2,19-10

+        pand   &nb= sp;xmm3,xmm4

+      &= nbsp; pxor    xmm1,xmm7

+<= br class=3D"">
+

+   &= nbsp;    psrld   xmm7,22-13
+        pxor   &n= bsp;xmm1,xmm2

+      =   movdqa  xmm10,xmm12

+  &= nbsp;     pslld   xmm2,30-19

+        pxor  &n= bsp; xmm7,xmm1

+     =    pxor    xmm10,xmm3

+        paddd   xmm14,= xmm5

+       &nb= sp;pxor    xmm7,xmm2

+

+        paddd &nb= sp; xmm10,xmm5

+     =    paddd   xmm10,xmm7

+        movd    xmm5,DW= ORD[24+r8]

+      &nb= sp; movd    xmm0,DWORD[24+r9]

+        movd    x= mm1,DWORD[24+r10]

+     &n= bsp;  movd    xmm2,DWORD[24+r11]
+        punpckldq  &nb= sp;    xmm5,xmm1

+  &= nbsp;     punpckldq      =  xmm0,xmm2

+     &nbs= p;  punpckldq       xmm5,xmm0

+        movdqa =  xmm7,xmm14

+DB     &= nbsp;102,15,56,0,238

+     = ;   movdqa  xmm2,xmm14

+
+        psr= ld   xmm7,6

+    &nbs= p;   movdqa  xmm1,xmm14

+ =        pslld   xmm2,7

+        movdqa &n= bsp;XMMWORD[(96-128)+rax],xmm5

+   &= nbsp;    paddd   xmm5,xmm9

+

+      &= nbsp; psrld   xmm1,11

+  &= nbsp;     pxor    xmm7,xmm2

+        pslld &nb= sp; xmm2,21-7

+     &= nbsp;  paddd   xmm5,XMMWORD[64+rbp]

+        pxor   &nbs= p;xmm7,xmm1

+

+ &= nbsp;      psrld   xmm1,25-11

+        movdqa =  xmm0,xmm14

+

+        pxor    xmm7,x= mm2

+       &nbs= p;movdqa  xmm3,xmm14

+    =     pslld   xmm2,26-21

+        pandn   xmm0,x= mm8

+       &nbs= p;pand    xmm3,xmm15

+  &n= bsp;     pxor    xmm7,xmm1

+

+

+        movdqa  xmm1,xmm1= 0

+        = pxor    xmm7,xmm2

+   = ;     movdqa  xmm2,xmm10

+        psrld   xmm1= ,2

+        = ;paddd   xmm5,xmm7

+   &nb= sp;    pxor    xmm0,xmm3
<= br class=3D"">+        movdqa  xmm3= ,xmm11

+       &= nbsp;movdqa  xmm7,xmm10

+   &nb= sp;    pslld   xmm2,10

+        pxor    x= mm3,xmm10

+

+

+        psrld=   xmm7,13

+     = ;   pxor    xmm1,xmm2

+        paddd   xmm5,x= mm0

+       &nbs= p;pslld   xmm2,19-10

+   &= nbsp;    pand    xmm4,xmm3

+        pxor  &nbs= p; xmm1,xmm7

+

+

+       &nb= sp;psrld   xmm7,22-13

+   =      pxor    xmm1,xmm2

+        movdqa  x= mm9,xmm11

+      &nbs= p; pslld   xmm2,30-19

+  &= nbsp;     pxor    xmm7,xmm1

+        pxor &nbs= p;  xmm9,xmm4

+    &n= bsp;   paddd   xmm13,xmm5

+        pxor    x= mm7,xmm2

+

+ &nbs= p;      paddd   xmm9,xmm5

+        paddd &nb= sp; xmm9,xmm7

+     &= nbsp;  movd    xmm5,DWORD[28+r8]
+        movd   &n= bsp;xmm0,DWORD[28+r9]

+    &nbs= p;   movd    xmm1,DWORD[28+r10]

+        movd  &nbs= p; xmm2,DWORD[28+r11]

+    = ;    punpckldq       xmm5= ,xmm1

+       &n= bsp;punpckldq       xmm0,xmm2
<= br class=3D"">+        punpckldq  &= nbsp;    xmm5,xmm0

+  = ;      movdqa  xmm7,xmm13
=
+

+     &nb= sp;  movdqa  xmm2,xmm13

+DB &nb= sp;    102,15,56,0,238

+ &= nbsp;      psrld   xmm7,6

+        movdqa &n= bsp;xmm1,xmm13

+      = ;  pslld   xmm2,7

+  =       movdqa  XMMWORD[(112-128)+rax],xmm= 5

+        = paddd   xmm5,xmm8

+
+        psrld   = xmm1,11

+       =  pxor    xmm7,xmm2

+  = ;      pslld   xmm2,21-7

+        paddd &nb= sp; xmm5,XMMWORD[96+rbp]

+   &n= bsp;    pxor    xmm7,xmm1
=
+

+     &nb= sp;  psrld   xmm1,25-11

+ =        movdqa  xmm0,xmm13

+

+    &n= bsp;   pxor    xmm7,xmm2

+        movdqa  xmm4,xmm1= 3

+        = pslld   xmm2,26-21

+   &nb= sp;    pandn   xmm0,xmm15

+        pand   &nbs= p;xmm4,xmm14

+      &= nbsp; pxor    xmm7,xmm1

+<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm1,xmm9

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm2,xmm9

+   &n= bsp;    psrld   xmm1,2

+        paddd   xmm5,x= mm7

+       &nbs= p;pxor    xmm0,xmm4

+  &nb= sp;     movdqa  xmm4,xmm10

+        movdqa  xmm7,xm= m9

+        = ;pslld   xmm2,10

+    = ;    pxor    xmm4,xmm9
+

+

+=        psrld   xmm7,13

+        pxor &nb= sp;  xmm1,xmm2

+    &= nbsp;   paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm3,xmm4

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm8,xmm10
<= br class=3D"">+        pslld   = ;xmm2,30-19

+      &n= bsp; pxor    xmm7,xmm1

+ &= nbsp;      pxor    xmm8,xmm3
+        pad= dd   xmm12,xmm5

+    =     pxor    xmm7,xmm2

+

+      &= nbsp; paddd   xmm8,xmm5

+  = ;      paddd   xmm8,xmm7

+        lea  = ;   rbp,[256+rbp]

+   = ;     movd    xmm5,DWORD[32+r8]

+        movd =    xmm0,DWORD[32+r9]

+  &n= bsp;     movd    xmm1,DWORD[32+r10]=

+        m= ovd    xmm2,DWORD[32+r11]

+ &nb= sp;      punpckldq     &n= bsp; xmm5,xmm1

+     =    punpckldq       xmm0,xmm2
+        pun= pckldq       xmm5,xmm0

+        movdqa  xmm7,xmm12<= br class=3D"">
+DB      102,15,56,0,= 238

+       &nbs= p;movdqa  xmm2,xmm12

+

+        psrld   xm= m7,6

+       &nb= sp;movdqa  xmm1,xmm12

+    = ;    pslld   xmm2,7

+        movdqa  XMMWORD[(12= 8-128)+rax],xmm5

+     &nb= sp;  paddd   xmm5,xmm15

+<= br class=3D"">
+        ps= rld   xmm1,11

+    &n= bsp;   pxor    xmm7,xmm2

+        pslld   xmm2= ,21-7

+       &n= bsp;paddd   xmm5,XMMWORD[((-128))+rbp]

+        pxor    xmm7,= xmm1

+

+  &n= bsp;     psrld   xmm1,25-11

+        movdqa  x= mm0,xmm12

+

+ &nb= sp;      pxor    xmm7,xmm2

+        movdq= a  xmm3,xmm12

+     &= nbsp;  pslld   xmm2,26-21

= +        pandn   xmm0,xmm14
+        pand=    xmm3,xmm13

+   &n= bsp;    pxor    xmm7,xmm1
=
+

+

+        movdqa  xmm1,xmm8

+        pxor &nb= sp;  xmm7,xmm2

+    &= nbsp;   movdqa  xmm2,xmm8

= +        psrld   xmm1,2

+        paddd &n= bsp; xmm5,xmm7

+     =    pxor    xmm0,xmm3

+        movdqa  xmm3,xmm9
+        mov= dqa  xmm7,xmm8

+     =    pslld   xmm2,10

+ =        pxor    xmm3,xmm8<= br class=3D"">
+

+

+        psrld  &nb= sp;xmm7,13

+      &nb= sp; pxor    xmm1,xmm2

+ &n= bsp;      paddd   xmm5,xmm0

+        pslld &nb= sp; xmm2,19-10

+     =    pand    xmm4,xmm3

+        pxor    x= mm1,xmm7

+

+

+        psrld =   xmm7,22-13

+    &nb= sp;   pxor    xmm1,xmm2

+        movdqa  xmm15,xmm9=

+        p= slld   xmm2,30-19

+   &nbs= p;    pxor    xmm7,xmm1
+        pxor   &= nbsp;xmm15,xmm4

+     &nbs= p;  paddd   xmm11,xmm5

+ &= nbsp;      pxor    xmm7,xmm2
+

+   &n= bsp;    paddd   xmm15,xmm5

+        paddd   xm= m15,xmm7

+       = ; movd    xmm5,DWORD[36+r8]

+        movd    xmm0,D= WORD[36+r9]

+      &n= bsp; movd    xmm1,DWORD[36+r10]

+        movd    x= mm2,DWORD[36+r11]

+     &n= bsp;  punpckldq       xmm5,xmm1

+        punpc= kldq       xmm0,xmm2

+        punpckldq   &n= bsp;   xmm5,xmm0

+   =      movdqa  xmm7,xmm11

+

+      &nbs= p; movdqa  xmm2,xmm11

+DB  &nbs= p;   102,15,56,0,238

+  &n= bsp;     psrld   xmm7,6
+        movdqa  xmm1,= xmm11

+       &n= bsp;pslld   xmm2,7

+   &nb= sp;    movdqa  XMMWORD[(144-128)+rax],xmm5

+        paddd &nb= sp; xmm5,xmm14

+

+        psrld   xmm1,1= 1

+        = pxor    xmm7,xmm2

+   = ;     pslld   xmm2,21-7
+        paddd   = xmm5,XMMWORD[((-96))+rbp]

+    =     pxor    xmm7,xmm1

+

+      &= nbsp; psrld   xmm1,25-11

+ &nbs= p;      movdqa  xmm0,xmm11

+

+     &n= bsp;  pxor    xmm7,xmm2

+        movdqa  xmm4,xmm11

+        pslld =   xmm2,26-21

+    &nb= sp;   pandn   xmm0,xmm13

+        pand    x= mm4,xmm12

+      &nbs= p; pxor    xmm7,xmm1

+

+

+   &nbs= p;    movdqa  xmm1,xmm15

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm2,xmm15

+   &= nbsp;    psrld   xmm1,2

+        paddd   xmm5,= xmm7

+       &nb= sp;pxor    xmm0,xmm4

+  &n= bsp;     movdqa  xmm4,xmm8

+        movdqa  xmm7,xm= m15

+       &nbs= p;pslld   xmm2,10

+   &nbs= p;    pxor    xmm4,xmm15
<= br class=3D"">+

+

+        psrld   xmm7,13

+        pxor &= nbsp;  xmm1,xmm2

+    = ;    paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm3,xmm4

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm14,xmm8
<= br class=3D"">+        pslld   = ;xmm2,30-19

+      &n= bsp; pxor    xmm7,xmm1

+ &= nbsp;      pxor    xmm14,xmm3<= br class=3D"">
+        pa= ddd   xmm10,xmm5

+    = ;    pxor    xmm7,xmm2
+

+      =   paddd   xmm14,xmm5

+ &nb= sp;      paddd   xmm14,xmm7

+        movd &nbs= p;  xmm5,DWORD[40+r8]

+   =      movd    xmm0,DWORD[40+r9]

+        movd &= nbsp;  xmm1,DWORD[40+r10]

+  &n= bsp;     movd    xmm2,DWORD[40+r11]=

+        p= unpckldq       xmm5,xmm1

+        punpckldq   =     xmm0,xmm2

+  &nbs= p;     punpckldq      &nb= sp;xmm5,xmm0

+      &= nbsp; movdqa  xmm7,xmm10

+DB  &= nbsp;   102,15,56,0,238

+  = ;      movdqa  xmm2,xmm10
=
+

+     &nb= sp;  psrld   xmm7,6

+ &nbs= p;      movdqa  xmm1,xmm10

+        pslld  &nb= sp;xmm2,7

+      &nbs= p; movdqa  XMMWORD[(160-128)+rax],xmm5

+        paddd   xmm5,xmm13=

+

+   =      psrld   xmm1,11

+        pxor   &nbs= p;xmm7,xmm2

+      &n= bsp; pslld   xmm2,21-7

+  =       paddd   xmm5,XMMWORD[((-64))+= rbp]

+       &nb= sp;pxor    xmm7,xmm1

+

+        psrld &nb= sp; xmm1,25-11

+     =    movdqa  xmm0,xmm10

+
+        pxor=    xmm7,xmm2

+   &nb= sp;    movdqa  xmm3,xmm10

+        pslld   xmm2,2= 6-21

+       &nb= sp;pandn   xmm0,xmm12

+   =      pand    xmm3,xmm11

+        pxor  &n= bsp; xmm7,xmm1

+

+

+       = ; movdqa  xmm1,xmm14

+   &= nbsp;    pxor    xmm7,xmm2

+        movdqa  xm= m2,xmm14

+       = ; psrld   xmm1,2

+   =      paddd   xmm5,xmm7
+        pxor   &n= bsp;xmm0,xmm3

+      =   movdqa  xmm3,xmm15

+  &n= bsp;     movdqa  xmm7,xmm14
+        pslld   x= mm2,10

+       &= nbsp;pxor    xmm3,xmm14

+

+

+    =     psrld   xmm7,13

+        pxor    x= mm1,xmm2

+       = ; paddd   xmm5,xmm0

+  &nb= sp;     pslld   xmm2,19-10

+        pand  &nbs= p; xmm4,xmm3

+     &n= bsp;  pxor    xmm1,xmm7

+

+

+  &n= bsp;     psrld   xmm7,22-13

+        pxor  &nb= sp; xmm1,xmm2

+     &= nbsp;  movdqa  xmm13,xmm15

+ &n= bsp;      pslld   xmm2,30-19

+        pxor &nb= sp;  xmm7,xmm1

+    &= nbsp;   pxor    xmm13,xmm4

+        paddd   xm= m9,xmm5

+       =  pxor    xmm7,xmm2

+

+        paddd &= nbsp; xmm13,xmm5

+    &nbs= p;   paddd   xmm13,xmm7

+        movd    xmm5,= DWORD[44+r8]

+      &= nbsp; movd    xmm0,DWORD[44+r9]

+        movd    x= mm1,DWORD[44+r10]

+     &n= bsp;  movd    xmm2,DWORD[44+r11]
+        punpckldq  &nb= sp;    xmm5,xmm1

+  &= nbsp;     punpckldq      =  xmm0,xmm2

+     &nbs= p;  punpckldq       xmm5,xmm0

+        movdqa =  xmm7,xmm9

+

+        movdqa  xmm2,xmm9

+DB      102,15,56,0,238

+        psrld=   xmm7,6

+     =    movdqa  xmm1,xmm9

+ &nb= sp;      pslld   xmm2,7

+        movdqa  = XMMWORD[(176-128)+rax],xmm5

+   &nbs= p;    paddd   xmm5,xmm12

+

+      &nb= sp; psrld   xmm1,11

+  &nb= sp;     pxor    xmm7,xmm2

+        pslld &nb= sp; xmm2,21-7

+     &= nbsp;  paddd   xmm5,XMMWORD[((-32))+rbp]
=
+        pxor   = ; xmm7,xmm1

+

+        psrld   xmm1,25-11<= br class=3D"">
+        mo= vdqa  xmm0,xmm9

+

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm4,xmm9

+   &n= bsp;    pslld   xmm2,26-21

+        pandn   xm= m0,xmm11

+       = ; pand    xmm4,xmm10

+ &nb= sp;      pxor    xmm7,xmm1

+

+
+        movdqa  xmm1,= xmm13

+       &n= bsp;pxor    xmm7,xmm2

+  &= nbsp;     movdqa  xmm2,xmm13
+        psrld   = xmm1,2

+       &= nbsp;paddd   xmm5,xmm7

+   = ;     pxor    xmm0,xmm4

+        movdqa  = xmm4,xmm14

+      &nb= sp; movdqa  xmm7,xmm13

+   = ;     pslld   xmm2,10

+        pxor   &nb= sp;xmm4,xmm13

+

+=

+        p= srld   xmm7,13

+    &= nbsp;   pxor    xmm1,xmm2

+        paddd   xmm= 5,xmm0

+       &= nbsp;pslld   xmm2,19-10

+  &nbs= p;     pand    xmm3,xmm4

+        pxor &nbs= p;  xmm1,xmm7

+

+

+      &nb= sp; psrld   xmm7,22-13

+  =       pxor    xmm1,xmm2

+        movdqa &= nbsp;xmm12,xmm14

+     &nb= sp;  pslld   xmm2,30-19

+ =        pxor    xmm7,xmm1<= br class=3D"">
+        px= or    xmm12,xmm3

+   =      paddd   xmm8,xmm5
+        pxor   &n= bsp;xmm7,xmm2

+

+=        paddd   xmm12,xmm5

+        paddd=   xmm12,xmm7

+    &n= bsp;   movd    xmm5,DWORD[48+r8]

+        movd  &nb= sp; xmm0,DWORD[48+r9]

+    = ;    movd    xmm1,DWORD[48+r10]

+        movd &nbs= p;  xmm2,DWORD[48+r11]

+   = ;     punpckldq      &nbs= p;xmm5,xmm1

+      &n= bsp; punpckldq       xmm0,xmm2

+        punpckldq=       xmm5,xmm0

+        movdqa  xmm7,xmm8

+DB      102,15,56,0,238

+        movdq= a  xmm2,xmm8

+

+        psrld   xmm7,6

+        movdq= a  xmm1,xmm8

+     &n= bsp;  pslld   xmm2,7

+ &nb= sp;      movdqa  XMMWORD[(192-128)+rax],= xmm5

+       &nb= sp;paddd   xmm5,xmm11

+

+        psrld  &n= bsp;xmm1,11

+      &n= bsp; pxor    xmm7,xmm2

+ &= nbsp;      pslld   xmm2,21-7

+        paddd &n= bsp; xmm5,XMMWORD[rbp]

+   &nbs= p;    pxor    xmm7,xmm1
+

+      = ;  psrld   xmm1,25-11

+ &n= bsp;      movdqa  xmm0,xmm8

+

+     &= nbsp;  pxor    xmm7,xmm2

+        movdqa  xmm3,xmm8
+        psl= ld   xmm2,26-21

+    =     pandn   xmm0,xmm10

+        pand    x= mm3,xmm9

+       = ; pxor    xmm7,xmm1

+

+

+    = ;    movdqa  xmm1,xmm12

+        pxor    xmm7,= xmm2

+       &nb= sp;movdqa  xmm2,xmm12

+    = ;    psrld   xmm1,2

+        paddd   xmm5,x= mm7

+       &nbs= p;pxor    xmm0,xmm3

+  &nb= sp;     movdqa  xmm3,xmm13

+        movdqa  xmm7,xm= m12

+       &nbs= p;pslld   xmm2,10

+   &nbs= p;    pxor    xmm3,xmm12
<= br class=3D"">+

+

+        psrld   xmm7,13

+        pxor &= nbsp;  xmm1,xmm2

+    = ;    paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm4,xmm3

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm11,xmm13
=
+        pslld  &nbs= p;xmm2,30-19

+      &= nbsp; pxor    xmm7,xmm1

+ =        pxor    xmm11,xmm4=

+        p= addd   xmm15,xmm5

+   &nbs= p;    pxor    xmm7,xmm2
+

+      = ;  paddd   xmm11,xmm5

+ &n= bsp;      paddd   xmm11,xmm7

+        movd &nb= sp;  xmm5,DWORD[52+r8]

+   = ;     movd    xmm0,DWORD[52+r9]

+        movd =    xmm1,DWORD[52+r10]

+  &= nbsp;     movd    xmm2,DWORD[52+r11= ]

+        = punpckldq       xmm5,xmm1

+        punpckldq   = ;    xmm0,xmm2

+  &nb= sp;     punpckldq      &n= bsp;xmm5,xmm0

+      =   movdqa  xmm7,xmm15

+

+        movdqa &n= bsp;xmm2,xmm15

+DB     &nb= sp;102,15,56,0,238

+     &= nbsp;  psrld   xmm7,6

+ &n= bsp;      movdqa  xmm1,xmm15

+        pslld  &= nbsp;xmm2,7

+      &n= bsp; movdqa  XMMWORD[(208-128)+rax],xmm5

+        paddd   xmm5,x= mm10

+

+  &n= bsp;     psrld   xmm1,11
<= br class=3D"">+        pxor   =  xmm7,xmm2

+     &nbs= p;  pslld   xmm2,21-7

+ &n= bsp;      paddd   xmm5,XMMWORD[32+r= bp]

+       &nbs= p;pxor    xmm7,xmm1

+

+        psrld &nb= sp; xmm1,25-11

+     =    movdqa  xmm0,xmm15

+
+        pxor=    xmm7,xmm2

+   &nb= sp;    movdqa  xmm4,xmm15

+        pslld   xmm2,2= 6-21

+       &nb= sp;pandn   xmm0,xmm9

+   &= nbsp;    pand    xmm4,xmm8

+        pxor  &nbs= p; xmm7,xmm1

+

+

+       &nb= sp;movdqa  xmm1,xmm11

+    = ;    pxor    xmm7,xmm2
+        movdqa  xmm2,x= mm11

+       &nb= sp;psrld   xmm1,2

+   &nbs= p;    paddd   xmm5,xmm7

+        pxor    = xmm0,xmm4

+      &nbs= p; movdqa  xmm4,xmm12

+   =      movdqa  xmm7,xmm11

+        pslld   xmm2,= 10

+        = ;pxor    xmm4,xmm11

+

+

+    &n= bsp;   psrld   xmm7,13

+        pxor    xmm1,x= mm2

+       &nbs= p;paddd   xmm5,xmm0

+   &n= bsp;    pslld   xmm2,19-10

+        pand   &nb= sp;xmm3,xmm4

+      &= nbsp; pxor    xmm1,xmm7

+<= br class=3D"">
+

+   &= nbsp;    psrld   xmm7,22-13
+        pxor   &n= bsp;xmm1,xmm2

+      =   movdqa  xmm10,xmm12

+  &= nbsp;     pslld   xmm2,30-19

+        pxor  &n= bsp; xmm7,xmm1

+     =    pxor    xmm10,xmm3

+        paddd   xmm14,= xmm5

+       &nb= sp;pxor    xmm7,xmm2

+

+        paddd &nb= sp; xmm10,xmm5

+     =    paddd   xmm10,xmm7

+        movd    xmm5,DW= ORD[56+r8]

+      &nb= sp; movd    xmm0,DWORD[56+r9]

+        movd    x= mm1,DWORD[56+r10]

+     &n= bsp;  movd    xmm2,DWORD[56+r11]
+        punpckldq  &nb= sp;    xmm5,xmm1

+  &= nbsp;     punpckldq      =  xmm0,xmm2

+     &nbs= p;  punpckldq       xmm5,xmm0

+        movdqa =  xmm7,xmm14

+DB     &= nbsp;102,15,56,0,238

+     = ;   movdqa  xmm2,xmm14

+
+        psr= ld   xmm7,6

+    &nbs= p;   movdqa  xmm1,xmm14

+ =        pslld   xmm2,7

+        movdqa &n= bsp;XMMWORD[(224-128)+rax],xmm5

+   =      paddd   xmm5,xmm9
+

+      =   psrld   xmm1,11

+  =       pxor    xmm7,xmm2

+        pslld &n= bsp; xmm2,21-7

+     =    paddd   xmm5,XMMWORD[64+rbp]

+        pxor   &nb= sp;xmm7,xmm1

+

+ =        psrld   xmm1,25-11

+        movdqa=  xmm0,xmm14

+

+        pxor    xmm7,= xmm2

+       &nb= sp;movdqa  xmm3,xmm14

+    = ;    pslld   xmm2,26-21

+        pandn   xmm0,= xmm8

+       &nb= sp;pand    xmm3,xmm15

+  &= nbsp;     pxor    xmm7,xmm1

+

+

+        movdqa  xmm1,xmm1= 0

+        = pxor    xmm7,xmm2

+   = ;     movdqa  xmm2,xmm10

+        psrld   xmm1= ,2

+        = ;paddd   xmm5,xmm7

+   &nb= sp;    pxor    xmm0,xmm3
<= br class=3D"">+        movdqa  xmm3= ,xmm11

+       &= nbsp;movdqa  xmm7,xmm10

+   &nb= sp;    pslld   xmm2,10

+        pxor    x= mm3,xmm10

+

+

+        psrld=   xmm7,13

+     = ;   pxor    xmm1,xmm2

+        paddd   xmm5,x= mm0

+       &nbs= p;pslld   xmm2,19-10

+   &= nbsp;    pand    xmm4,xmm3

+        pxor  &nbs= p; xmm1,xmm7

+

+

+       &nb= sp;psrld   xmm7,22-13

+   =      pxor    xmm1,xmm2

+        movdqa  x= mm9,xmm11

+      &nbs= p; pslld   xmm2,30-19

+  &= nbsp;     pxor    xmm7,xmm1

+        pxor &nbs= p;  xmm9,xmm4

+    &n= bsp;   paddd   xmm13,xmm5

+        pxor    x= mm7,xmm2

+

+ &nbs= p;      paddd   xmm9,xmm5

+        paddd &nb= sp; xmm9,xmm7

+     &= nbsp;  movd    xmm5,DWORD[60+r8]
+        lea   &nb= sp; r8,[64+r8]

+     =    movd    xmm0,DWORD[60+r9]
+        lea   &n= bsp; r9,[64+r9]

+     = ;   movd    xmm1,DWORD[60+r10]
=
+        lea   =   r10,[64+r10]

+    &= nbsp;   movd    xmm2,DWORD[60+r11]

+        lea  = ;   r11,[64+r11]

+   =      punpckldq       = ;xmm5,xmm1

+      &nb= sp; punpckldq       xmm0,xmm2

+        punpckldq=       xmm5,xmm0

+        movdqa  xmm7,xmm13

+

+    &= nbsp;   movdqa  xmm2,xmm13

+DB      102,15,56,0,238

+        psrld   xmm7,6=

+        m= ovdqa  xmm1,xmm13

+    &nb= sp;   pslld   xmm2,7

= +        movdqa  XMMWORD[(240-128)+= rax],xmm5

+      &nbs= p; paddd   xmm5,xmm8

+

+        psrld &nb= sp; xmm1,11

+     &nb= sp;  pxor    xmm7,xmm2

+        pslld   xmm2,21-7
+        pad= dd   xmm5,XMMWORD[96+rbp]

+  &n= bsp;     pxor    xmm7,xmm1

+

+    &n= bsp;   psrld   xmm1,25-11

+        movdqa  xmm0,xmm13<= br class=3D"">
+        pr= efetcht0      [63+r8]

+        pxor    xmm7,xm= m2

+        = ;movdqa  xmm4,xmm13

+    &= nbsp;   pslld   xmm2,26-21

+        pandn   xmm0,x= mm15

+       &nb= sp;pand    xmm4,xmm14

+  &= nbsp;     pxor    xmm7,xmm1

+

+    &n= bsp;   prefetcht0      [63+r9]

+        movdqa=  xmm1,xmm9

+     &nb= sp;  pxor    xmm7,xmm2

+        movdqa  xmm2,xmm9

+        psrld &n= bsp; xmm1,2

+     &nb= sp;  paddd   xmm5,xmm7

+ &= nbsp;      pxor    xmm0,xmm4
+        mov= dqa  xmm4,xmm10

+     = ;   movdqa  xmm7,xmm9

+ &n= bsp;      pslld   xmm2,10

+        pxor &nbs= p;  xmm4,xmm9

+

+        prefetcht0   = ;   [63+r10]

+   &nbs= p;    psrld   xmm7,13

+        pxor    x= mm1,xmm2

+       = ; paddd   xmm5,xmm0

+  &nb= sp;     pslld   xmm2,19-10

+        pand  &nbs= p; xmm3,xmm4

+     &n= bsp;  pxor    xmm1,xmm7

+

+       &nb= sp;prefetcht0      [63+r11]

+        psrld   xmm7,2= 2-13

+       &nb= sp;pxor    xmm1,xmm2

+  &n= bsp;     movdqa  xmm8,xmm10
+        pslld   x= mm2,30-19

+      &nbs= p; pxor    xmm7,xmm1

+ &nb= sp;      pxor    xmm8,xmm3

+        paddd=   xmm12,xmm5

+    &n= bsp;   pxor    xmm7,xmm2

+

+      &nb= sp; paddd   xmm8,xmm5

+  &= nbsp;     paddd   xmm8,xmm7

+        lea  &nbs= p;  rbp,[256+rbp]

+   &nbs= p;    movdqu  xmm5,XMMWORD[((0-128))+rax]

+        mov  = ;   ecx,3

+    &= nbsp;   jmp     NEAR $L$oop_16_xx

+ALIGN   32

+= $L$oop_16_xx:

+      =   movdqa  xmm6,XMMWORD[((16-128))+rax]

+        paddd   xmm5,= XMMWORD[((144-128))+rax]

+

+        movdqa  xmm7,xmm= 6

+        = movdqa  xmm1,xmm6

+    &nb= sp;   psrld   xmm7,3

= +        movdqa  xmm2,xmm6

+

+    &n= bsp;   psrld   xmm1,7

+        movdqa  xmm0,XMMWORD[((22= 4-128))+rax]

+      &= nbsp; pslld   xmm2,14

+  &= nbsp;     pxor    xmm7,xmm1

+        psrld &nb= sp; xmm1,18-7

+     &= nbsp;  movdqa  xmm3,xmm0

+ &nbs= p;      pxor    xmm7,xmm2

+        pslld =   xmm2,25-14

+    &nb= sp;   pxor    xmm7,xmm1

+        psrld   xmm0,= 10

+        = ;movdqa  xmm1,xmm3

+

+        psrld   xmm3= ,17

+       &nbs= p;pxor    xmm7,xmm2

+  &nb= sp;     pslld   xmm1,13
+        paddd   = xmm5,xmm7

+      &nbs= p; pxor    xmm0,xmm3

+ &nb= sp;      psrld   xmm3,19-17

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   pslld   xmm1,15-13

+        pxor    x= mm0,xmm3

+       = ; pxor    xmm0,xmm1

+ &nbs= p;      paddd   xmm5,xmm0

+        movdqa &n= bsp;xmm7,xmm12

+

= +        movdqa  xmm2,xmm12

+

+    &n= bsp;   psrld   xmm7,6

+        movdqa  xmm1,xmm12

+        pslld &n= bsp; xmm2,7

+     &nb= sp;  movdqa  XMMWORD[(0-128)+rax],xmm5

+        paddd   xmm5,= xmm15

+

+  &= nbsp;     psrld   xmm1,11
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm2,21-7

+ &= nbsp;      paddd   xmm5,XMMWORD[((-= 128))+rbp]

+      &nb= sp; pxor    xmm7,xmm1

+
+        psrl= d   xmm1,25-11

+    &= nbsp;   movdqa  xmm0,xmm12

+

+        = ;pxor    xmm7,xmm2

+  &nbs= p;     movdqa  xmm3,xmm12

+        pslld   xmm= 2,26-21

+       =  pandn   xmm0,xmm14

+  &nb= sp;     pand    xmm3,xmm13

+        pxor &nbs= p;  xmm7,xmm1

+

+

+      &nb= sp; movdqa  xmm1,xmm8

+   =      pxor    xmm7,xmm2

+        movdqa  x= mm2,xmm8

+       = ; psrld   xmm1,2

+   =      paddd   xmm5,xmm7
+        pxor   &n= bsp;xmm0,xmm3

+      =   movdqa  xmm3,xmm9

+  &nb= sp;     movdqa  xmm7,xmm8

+        pslld   xmm= 2,10

+       &nb= sp;pxor    xmm3,xmm8

+

+

+    &n= bsp;   psrld   xmm7,13

+        pxor    xmm1,x= mm2

+       &nbs= p;paddd   xmm5,xmm0

+   &n= bsp;    pslld   xmm2,19-10

+        pand   &nb= sp;xmm4,xmm3

+      &= nbsp; pxor    xmm1,xmm7

+<= br class=3D"">
+

+   &= nbsp;    psrld   xmm7,22-13
+        pxor   &n= bsp;xmm1,xmm2

+      =   movdqa  xmm15,xmm9

+  &n= bsp;     pslld   xmm2,30-19

+        pxor  &nb= sp; xmm7,xmm1

+     &= nbsp;  pxor    xmm15,xmm4

+        paddd   xmm11,= xmm5

+       &nb= sp;pxor    xmm7,xmm2

+

+        paddd &nb= sp; xmm15,xmm5

+     =    paddd   xmm15,xmm7

+        movdqa  xmm5,XMMWORD[((32= -128))+rax]

+      &n= bsp; paddd   xmm6,XMMWORD[((160-128))+rax]
+

+      =   movdqa  xmm7,xmm5

+  &nb= sp;     movdqa  xmm1,xmm5

+        psrld   xmm= 7,3

+       &nbs= p;movdqa  xmm2,xmm5

+

+        psrld   xmm= 1,7

+       &nbs= p;movdqa  xmm0,XMMWORD[((240-128))+rax]

+=        pslld   xmm2,14

+        pxor &nb= sp;  xmm7,xmm1

+    &= nbsp;   psrld   xmm1,18-7

+        movdqa  xmm4,xmm0
+        pxo= r    xmm7,xmm2

+   &n= bsp;    pslld   xmm2,25-14

+        pxor   &nb= sp;xmm7,xmm1

+      &= nbsp; psrld   xmm0,10

+  &= nbsp;     movdqa  xmm1,xmm4
+

+      =   psrld   xmm4,17

+  =       pxor    xmm7,xmm2

+        pslld &n= bsp; xmm1,13

+     &n= bsp;  paddd   xmm6,xmm7

+ =        pxor    xmm0,xmm4<= br class=3D"">
+        ps= rld   xmm4,19-17

+    = ;    pxor    xmm0,xmm1
+        pslld   x= mm1,15-13

+      &nbs= p; pxor    xmm0,xmm4

+ &nb= sp;      pxor    xmm0,xmm1

+        paddd=   xmm6,xmm0

+    &nb= sp;   movdqa  xmm7,xmm11

+=

+        m= ovdqa  xmm2,xmm11

+

+        psrld   xmm7,= 6

+        = movdqa  xmm1,xmm11

+    &n= bsp;   pslld   xmm2,7

+        movdqa  XMMWORD[(16-128)+= rax],xmm6

+      &nbs= p; paddd   xmm6,xmm14

+

+        psrld &nb= sp; xmm1,11

+     &nb= sp;  pxor    xmm7,xmm2

+        pslld   xmm2,21-7
+        pad= dd   xmm6,XMMWORD[((-96))+rbp]

+ &nb= sp;      pxor    xmm7,xmm1

+

+   &nbs= p;    psrld   xmm1,25-11

+        movdqa  xmm0,xmm1= 1

+

+   = ;     pxor    xmm7,xmm2

+        movdqa  = xmm4,xmm11

+      &nb= sp; pslld   xmm2,26-21

+  =       pandn   xmm0,xmm13

+        pand &nbs= p;  xmm4,xmm12

+    &= nbsp;   pxor    xmm7,xmm1

+

+

+ &= nbsp;      movdqa  xmm1,xmm15

+        pxor &nbs= p;  xmm7,xmm2

+    &n= bsp;   movdqa  xmm2,xmm15

= +        psrld   xmm1,2

+        paddd &n= bsp; xmm6,xmm7

+     =    pxor    xmm0,xmm4

+        movdqa  xmm4,xmm8
+        mov= dqa  xmm7,xmm15

+     = ;   pslld   xmm2,10

+=        pxor    xmm4,xmm1= 5

+

+

+        psrld  &= nbsp;xmm7,13

+      &= nbsp; pxor    xmm1,xmm2

+ =        paddd   xmm6,xmm0

+        pslld &= nbsp; xmm2,19-10

+    &nbs= p;   pand    xmm3,xmm4

+        pxor    x= mm1,xmm7

+

+

+        psrld =   xmm7,22-13

+    &nb= sp;   pxor    xmm1,xmm2

+        movdqa  xmm14,xmm8=

+        p= slld   xmm2,30-19

+   &nbs= p;    pxor    xmm7,xmm1
+        pxor   &= nbsp;xmm14,xmm3

+     &nbs= p;  paddd   xmm10,xmm6

+ &= nbsp;      pxor    xmm7,xmm2
+

+   &n= bsp;    paddd   xmm14,xmm6

+        paddd   xm= m14,xmm7

+       = ; movdqa  xmm6,XMMWORD[((48-128))+rax]

+        paddd   xmm5,XMMWO= RD[((176-128))+rax]

+

+        movdqa  xmm7,xmm6
+        mov= dqa  xmm1,xmm6

+     =    psrld   xmm7,3

+ &= nbsp;      movdqa  xmm2,xmm6

+

+     =    psrld   xmm1,7

+ &= nbsp;      movdqa  xmm0,XMMWORD[((0-128)= )+rax]

+       &= nbsp;pslld   xmm2,14

+   &= nbsp;    pxor    xmm7,xmm1

+        psrld  &nb= sp;xmm1,18-7

+      &= nbsp; movdqa  xmm3,xmm0

+  &nbs= p;     pxor    xmm7,xmm2

+        pslld &nb= sp; xmm2,25-14

+     =    pxor    xmm7,xmm1

+        psrld   xmm0,1= 0

+        = movdqa  xmm1,xmm3

+

+        psrld   xmm3,= 17

+        = ;pxor    xmm7,xmm2

+  &nbs= p;     pslld   xmm1,13
+        paddd   x= mm5,xmm7

+       = ; pxor    xmm0,xmm3

+ &nbs= p;      psrld   xmm3,19-17

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   pslld   xmm1,15-13

+        pxor    x= mm0,xmm3

+       = ; pxor    xmm0,xmm1

+ &nbs= p;      paddd   xmm5,xmm0

+        movdqa &n= bsp;xmm7,xmm10

+

= +        movdqa  xmm2,xmm10

+

+    &n= bsp;   psrld   xmm7,6

+        movdqa  xmm1,xmm10

+        pslld &n= bsp; xmm2,7

+     &nb= sp;  movdqa  XMMWORD[(32-128)+rax],xmm5

+        paddd   xmm5= ,xmm13

+

+  =       psrld   xmm1,11

+        pxor  &nbs= p; xmm7,xmm2

+     &n= bsp;  pslld   xmm2,21-7

+ =        paddd   xmm5,XMMWORD[((= -64))+rbp]

+      &nb= sp; pxor    xmm7,xmm1

+
+        psrl= d   xmm1,25-11

+    &= nbsp;   movdqa  xmm0,xmm10

+

+        = ;pxor    xmm7,xmm2

+  &nbs= p;     movdqa  xmm3,xmm10

+        pslld   xmm= 2,26-21

+       =  pandn   xmm0,xmm12

+  &nb= sp;     pand    xmm3,xmm11

+        pxor &nbs= p;  xmm7,xmm1

+

+

+      &nb= sp; movdqa  xmm1,xmm14

+   = ;     pxor    xmm7,xmm2

+        movdqa  = xmm2,xmm14

+      &nb= sp; psrld   xmm1,2

+  &nbs= p;     paddd   xmm5,xmm7
<= br class=3D"">+        pxor   =  xmm0,xmm3

+     &nbs= p;  movdqa  xmm3,xmm15

+  =       movdqa  xmm7,xmm14
<= br class=3D"">+        pslld   = ;xmm2,10

+       = ; pxor    xmm3,xmm14

+

+

+   &nbs= p;    psrld   xmm7,13

+        pxor    x= mm1,xmm2

+       = ; paddd   xmm5,xmm0

+  &nb= sp;     pslld   xmm2,19-10

+        pand  &nbs= p; xmm4,xmm3

+     &n= bsp;  pxor    xmm1,xmm7

+

+

+  &n= bsp;     psrld   xmm7,22-13

+        pxor  &nb= sp; xmm1,xmm2

+     &= nbsp;  movdqa  xmm13,xmm15

+ &n= bsp;      pslld   xmm2,30-19

+        pxor &nb= sp;  xmm7,xmm1

+    &= nbsp;   pxor    xmm13,xmm4

+        paddd   xm= m9,xmm5

+       =  pxor    xmm7,xmm2

+

+        paddd &= nbsp; xmm13,xmm5

+    &nbs= p;   paddd   xmm13,xmm7

+        movdqa  xmm5,XMMWORD[((= 64-128))+rax]

+      =   paddd   xmm6,XMMWORD[((192-128))+rax]
<= br class=3D"">+

+     &nbs= p;  movdqa  xmm7,xmm5

+  &= nbsp;     movdqa  xmm1,xmm5
+        psrld   x= mm7,3

+       &n= bsp;movdqa  xmm2,xmm5

+
+        psrld   x= mm1,7

+       &n= bsp;movdqa  xmm0,XMMWORD[((16-128))+rax]

= +        pslld   xmm2,14

+        pxor &n= bsp;  xmm7,xmm1

+    =     psrld   xmm1,18-7

+        movdqa  xmm4,xmm0
+        pxo= r    xmm7,xmm2

+   &n= bsp;    pslld   xmm2,25-14

+        pxor   &nb= sp;xmm7,xmm1

+      &= nbsp; psrld   xmm0,10

+  &= nbsp;     movdqa  xmm1,xmm4
+

+      =   psrld   xmm4,17

+  =       pxor    xmm7,xmm2

+        pslld &n= bsp; xmm1,13

+     &n= bsp;  paddd   xmm6,xmm7

+ =        pxor    xmm0,xmm4<= br class=3D"">
+        ps= rld   xmm4,19-17

+    = ;    pxor    xmm0,xmm1
+        pslld   x= mm1,15-13

+      &nbs= p; pxor    xmm0,xmm4

+ &nb= sp;      pxor    xmm0,xmm1

+        paddd=   xmm6,xmm0

+    &nb= sp;   movdqa  xmm7,xmm9

+<= br class=3D"">
+        mo= vdqa  xmm2,xmm9

+

+        psrld   xmm7,6=

+        m= ovdqa  xmm1,xmm9

+    &nbs= p;   pslld   xmm2,7

+=        movdqa  XMMWORD[(48-128)+ra= x],xmm6

+       =  paddd   xmm6,xmm12

+

+        psrld &nb= sp; xmm1,11

+     &nb= sp;  pxor    xmm7,xmm2

+        pslld   xmm2,21-7
+        pad= dd   xmm6,XMMWORD[((-32))+rbp]

+ &nb= sp;      pxor    xmm7,xmm1

+

+   &nbs= p;    psrld   xmm1,25-11

+        movdqa  xmm0,xmm9=

+

+   =      pxor    xmm7,xmm2

+        movdqa  x= mm4,xmm9

+       = ; pslld   xmm2,26-21

+  &n= bsp;     pandn   xmm0,xmm11

+        pand  &nb= sp; xmm4,xmm10

+     =    pxor    xmm7,xmm1

+

+

+ &nbs= p;      movdqa  xmm1,xmm13

+        pxor  &nbs= p; xmm7,xmm2

+     &n= bsp;  movdqa  xmm2,xmm13

+ &nbs= p;      psrld   xmm1,2

+        paddd  &n= bsp;xmm6,xmm7

+      =   pxor    xmm0,xmm4

+=        movdqa  xmm4,xmm14

+        movdqa &n= bsp;xmm7,xmm13

+      = ;  pslld   xmm2,10

+  = ;      pxor    xmm4,xmm13

+

+
+        psrld   x= mm7,13

+       &= nbsp;pxor    xmm1,xmm2

+  =       paddd   xmm6,xmm0

+        pslld  &= nbsp;xmm2,19-10

+     &nbs= p;  pand    xmm3,xmm4

+        pxor    xmm1,xm= m7

+

+

+        psrld &nb= sp; xmm7,22-13

+     =    pxor    xmm1,xmm2

+        movdqa  xmm12,xmm14=

+        p= slld   xmm2,30-19

+   &nbs= p;    pxor    xmm7,xmm1
+        pxor   &= nbsp;xmm12,xmm3

+     &nbs= p;  paddd   xmm8,xmm6

+ &n= bsp;      pxor    xmm7,xmm2
+

+   &nb= sp;    paddd   xmm12,xmm6

+        paddd   xmm= 12,xmm7

+       =  movdqa  xmm6,XMMWORD[((80-128))+rax]

+        paddd   xmm5,XMMWOR= D[((208-128))+rax]

+

+        movdqa  xmm7,xmm6
+        mov= dqa  xmm1,xmm6

+     =    psrld   xmm7,3

+ &= nbsp;      movdqa  xmm2,xmm6

+

+     =    psrld   xmm1,7

+ &= nbsp;      movdqa  xmm0,XMMWORD[((32-128= ))+rax]

+       =  pslld   xmm2,14

+   =      pxor    xmm7,xmm1

+        psrld  &n= bsp;xmm1,18-7

+      =   movdqa  xmm3,xmm0

+  &nb= sp;     pxor    xmm7,xmm2

+        pslld &nb= sp; xmm2,25-14

+     =    pxor    xmm7,xmm1

+        psrld   xmm0,1= 0

+        = movdqa  xmm1,xmm3

+

+        psrld   xmm3,= 17

+        = ;pxor    xmm7,xmm2

+  &nbs= p;     pslld   xmm1,13
+        paddd   x= mm5,xmm7

+       = ; pxor    xmm0,xmm3

+ &nbs= p;      psrld   xmm3,19-17

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   pslld   xmm1,15-13

+        pxor    x= mm0,xmm3

+       = ; pxor    xmm0,xmm1

+ &nbs= p;      paddd   xmm5,xmm0

+        movdqa &n= bsp;xmm7,xmm8

+

+=        movdqa  xmm2,xmm8

+

+    &n= bsp;   psrld   xmm7,6

+        movdqa  xmm1,xmm8

+        pslld &nb= sp; xmm2,7

+     &nbs= p;  movdqa  XMMWORD[(64-128)+rax],xmm5

+        paddd   xmm5,= xmm11

+

+  &= nbsp;     psrld   xmm1,11
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm2,21-7

+ &= nbsp;      paddd   xmm5,XMMWORD[rbp= ]

+        = pxor    xmm7,xmm1

+

+        psrld  &= nbsp;xmm1,25-11

+     &nbs= p;  movdqa  xmm0,xmm8

+

+        pxor &nbs= p;  xmm7,xmm2

+    &n= bsp;   movdqa  xmm3,xmm8

+=        pslld   xmm2,26-21

+        pandn=   xmm0,xmm10

+    &n= bsp;   pand    xmm3,xmm9

+        pxor    = ;xmm7,xmm1

+

+
+        movd= qa  xmm1,xmm12

+     =    pxor    xmm7,xmm2

+        movdqa  xmm2,xmm12<= br class=3D"">
+        ps= rld   xmm1,2

+    &nb= sp;   paddd   xmm5,xmm7

+        pxor    xmm0,= xmm3

+       &nb= sp;movdqa  xmm3,xmm13

+    = ;    movdqa  xmm7,xmm12

+        pslld   xmm2,10
+        pxor=    xmm3,xmm12

+
=
+

+     &nb= sp;  psrld   xmm7,13

+ &nb= sp;      pxor    xmm1,xmm2

+        paddd=   xmm5,xmm0

+    &nb= sp;   pslld   xmm2,19-10

+        pand    x= mm4,xmm3

+       = ; pxor    xmm1,xmm7

+

+

+    = ;    psrld   xmm7,22-13

+        pxor    = xmm1,xmm2

+      &nbs= p; movdqa  xmm11,xmm13

+   = ;     pslld   xmm2,30-19
<= br class=3D"">+        pxor   =  xmm7,xmm1

+     &nbs= p;  pxor    xmm11,xmm4

+        paddd   xmm15,xmm5<= br class=3D"">
+        px= or    xmm7,xmm2

+

+        paddd  &nb= sp;xmm11,xmm5

+      =   paddd   xmm11,xmm7

+ &nb= sp;      movdqa  xmm5,XMMWORD[((96-128))= +rax]

+       &n= bsp;paddd   xmm6,XMMWORD[((224-128))+rax]

+

+       = ; movdqa  xmm7,xmm5

+   &n= bsp;    movdqa  xmm1,xmm5

+        psrld   xmm7,3=

+        m= ovdqa  xmm2,xmm5

+

+        psrld   xmm1,7=

+        m= ovdqa  xmm0,XMMWORD[((48-128))+rax]

+ &nb= sp;      pslld   xmm2,14

+        pxor &nbs= p;  xmm7,xmm1

+    &n= bsp;   psrld   xmm1,18-7

+        movdqa  xmm4,xmm0
+        pxo= r    xmm7,xmm2

+   &n= bsp;    pslld   xmm2,25-14

+        pxor   &nb= sp;xmm7,xmm1

+      &= nbsp; psrld   xmm0,10

+  &= nbsp;     movdqa  xmm1,xmm4
+

+      =   psrld   xmm4,17

+  =       pxor    xmm7,xmm2

+        pslld &n= bsp; xmm1,13

+     &n= bsp;  paddd   xmm6,xmm7

+ =        pxor    xmm0,xmm4<= br class=3D"">
+        ps= rld   xmm4,19-17

+    = ;    pxor    xmm0,xmm1
+        pslld   x= mm1,15-13

+      &nbs= p; pxor    xmm0,xmm4

+ &nb= sp;      pxor    xmm0,xmm1

+        paddd=   xmm6,xmm0

+    &nb= sp;   movdqa  xmm7,xmm15

+=

+        m= ovdqa  xmm2,xmm15

+

+        psrld   xmm7,= 6

+        = movdqa  xmm1,xmm15

+    &n= bsp;   pslld   xmm2,7

+        movdqa  XMMWORD[(80-128)+= rax],xmm6

+      &nbs= p; paddd   xmm6,xmm10

+

+        psrld &nb= sp; xmm1,11

+     &nb= sp;  pxor    xmm7,xmm2

+        pslld   xmm2,21-7
+        pad= dd   xmm6,XMMWORD[32+rbp]

+  &n= bsp;     pxor    xmm7,xmm1

+

+    &n= bsp;   psrld   xmm1,25-11

+        movdqa  xmm0,xmm15<= br class=3D"">
+

+   &= nbsp;    pxor    xmm7,xmm2

+        movdqa  xm= m4,xmm15

+       = ; pslld   xmm2,26-21

+  &n= bsp;     pandn   xmm0,xmm9

+        pand  &nbs= p; xmm4,xmm8

+     &n= bsp;  pxor    xmm7,xmm1

+

+

+  &n= bsp;     movdqa  xmm1,xmm11
+        pxor   &n= bsp;xmm7,xmm2

+      =   movdqa  xmm2,xmm11

+  &n= bsp;     psrld   xmm1,2
+        paddd   = xmm6,xmm7

+      &nbs= p; pxor    xmm0,xmm4

+ &nb= sp;      movdqa  xmm4,xmm12

+        movdqa  x= mm7,xmm11

+      &nbs= p; pslld   xmm2,10

+  &nbs= p;     pxor    xmm4,xmm11

+

+

+        psrld   xmm7= ,13

+       &nbs= p;pxor    xmm1,xmm2

+  &nb= sp;     paddd   xmm6,xmm0
=
+        pslld  &nbs= p;xmm2,19-10

+      &= nbsp; pand    xmm3,xmm4

+ =        pxor    xmm1,xmm7<= br class=3D"">
+

+

+        psrld  &nb= sp;xmm7,22-13

+      =   pxor    xmm1,xmm2

+=        movdqa  xmm10,xmm12

+        pslld &nb= sp; xmm2,30-19

+     =    pxor    xmm7,xmm1

+        pxor    x= mm10,xmm3

+      &nbs= p; paddd   xmm14,xmm6

+  &= nbsp;     pxor    xmm7,xmm2

+

+    &n= bsp;   paddd   xmm10,xmm6

+        paddd   xmm10,= xmm7

+       &nb= sp;movdqa  xmm6,XMMWORD[((112-128))+rax]

= +        paddd   xmm5,XMMWORD[= ((240-128))+rax]

+

+        movdqa  xmm7,xmm6

+        movdqa &= nbsp;xmm1,xmm6

+      = ;  psrld   xmm7,3

+  =       movdqa  xmm2,xmm6
+

+      = ;  psrld   xmm1,7

+  =       movdqa  xmm0,XMMWORD[((64-128))+ra= x]

+        = ;pslld   xmm2,14

+    = ;    pxor    xmm7,xmm1
+        psrld   x= mm1,18-7

+       = ; movdqa  xmm3,xmm0

+   &n= bsp;    pxor    xmm7,xmm2
=
+        pslld  &nbs= p;xmm2,25-14

+      &= nbsp; pxor    xmm7,xmm1

+ =        psrld   xmm0,10

+        movdqa &n= bsp;xmm1,xmm3

+

+=        psrld   xmm3,17

+        pxor &nb= sp;  xmm7,xmm2

+    &= nbsp;   pslld   xmm1,13

+        paddd   xmm5,xmm7<= br class=3D"">
+        px= or    xmm0,xmm3

+   &= nbsp;    psrld   xmm3,19-17
+        pxor   &n= bsp;xmm0,xmm1

+      =   pslld   xmm1,15-13

+ &nb= sp;      pxor    xmm0,xmm3

+        pxor =    xmm0,xmm1

+   &nbs= p;    paddd   xmm5,xmm0

+        movdqa  xmm7,xmm14=

+

+   =      movdqa  xmm2,xmm14

+

+      &nbs= p; psrld   xmm7,6

+   = ;     movdqa  xmm1,xmm14

+        pslld   xmm2= ,7

+        = ;movdqa  XMMWORD[(96-128)+rax],xmm5

+ &nb= sp;      paddd   xmm5,xmm9

+

+    &n= bsp;   psrld   xmm1,11

+        pxor    xmm7,x= mm2

+       &nbs= p;pslld   xmm2,21-7

+   &n= bsp;    paddd   xmm5,XMMWORD[64+rbp]

+        pxor &nbs= p;  xmm7,xmm1

+

+        psrld   xmm1= ,25-11

+       &= nbsp;movdqa  xmm0,xmm14

+
<= br class=3D"">+        pxor   =  xmm7,xmm2

+     &nbs= p;  movdqa  xmm3,xmm14

+  =       pslld   xmm2,26-21

+        pandn &nb= sp; xmm0,xmm8

+     &= nbsp;  pand    xmm3,xmm15

+        pxor    x= mm7,xmm1

+

+

+        movdqa=  xmm1,xmm10

+     &n= bsp;  pxor    xmm7,xmm2

+        movdqa  xmm2,xmm10

+        psrld =   xmm1,2

+     &= nbsp;  paddd   xmm5,xmm7

+=        pxor    xmm0,xmm3=

+        m= ovdqa  xmm3,xmm11

+    &nb= sp;   movdqa  xmm7,xmm10

+=        pslld   xmm2,10

+        pxor &nb= sp;  xmm3,xmm10

+

+

+      &= nbsp; psrld   xmm7,13

+  &= nbsp;     pxor    xmm1,xmm2

+        paddd &nb= sp; xmm5,xmm0

+     &= nbsp;  pslld   xmm2,19-10

= +        pand    xmm4,xmm= 3

+        = pxor    xmm1,xmm7

+

+

+     =    psrld   xmm7,22-13

+        pxor    xmm1,xm= m2

+        = ;movdqa  xmm9,xmm11

+    &= nbsp;   pslld   xmm2,30-19

+        pxor    x= mm7,xmm1

+       = ; pxor    xmm9,xmm4

+ &nbs= p;      paddd   xmm13,xmm5

+        pxor &nbs= p;  xmm7,xmm2

+

+        paddd   xmm9= ,xmm5

+       &n= bsp;paddd   xmm9,xmm7

+   =      movdqa  xmm5,XMMWORD[((128-128))+rax]
+        padd= d   xmm6,XMMWORD[((0-128))+rax]

+
+        movd= qa  xmm7,xmm5

+     &= nbsp;  movdqa  xmm1,xmm5

+ &nbs= p;      psrld   xmm7,3

+        movdqa  x= mm2,xmm5

+

+ &nbs= p;      psrld   xmm1,7

+        movdqa  x= mm0,XMMWORD[((80-128))+rax]

+   &nbs= p;    pslld   xmm2,14

+        pxor    x= mm7,xmm1

+       = ; psrld   xmm1,18-7

+  &nb= sp;     movdqa  xmm4,xmm0

+        pxor   &nbs= p;xmm7,xmm2

+      &n= bsp; pslld   xmm2,25-14

+  = ;      pxor    xmm7,xmm1

+        psrld &= nbsp; xmm0,10

+     &= nbsp;  movdqa  xmm1,xmm4

+

+        psrld =   xmm4,17

+     =    pxor    xmm7,xmm2

+        pslld   xmm1,1= 3

+        = paddd   xmm6,xmm7

+   &nbs= p;    pxor    xmm0,xmm4
+        psrld   = xmm4,19-17

+      &nb= sp; pxor    xmm0,xmm1

+ &n= bsp;      pslld   xmm1,15-13

+        pxor &nb= sp;  xmm0,xmm4

+    &= nbsp;   pxor    xmm0,xmm1

+        paddd   xmm= 6,xmm0

+       &= nbsp;movdqa  xmm7,xmm13

+
<= br class=3D"">+        movdqa  xmm2= ,xmm13

+

+  =       psrld   xmm7,6
=
+        movdqa  xmm= 1,xmm13

+       =  pslld   xmm2,7

+   &= nbsp;    movdqa  XMMWORD[(112-128)+rax],xmm6

+        paddd &= nbsp; xmm6,xmm8

+

+        psrld   xmm1,1= 1

+        = pxor    xmm7,xmm2

+   = ;     pslld   xmm2,21-7
+        paddd   = xmm6,XMMWORD[96+rbp]

+     = ;   pxor    xmm7,xmm1

+

+       = ; psrld   xmm1,25-11

+  &n= bsp;     movdqa  xmm0,xmm13
+

+      =   pxor    xmm7,xmm2

+=        movdqa  xmm4,xmm13

+        pslld &nb= sp; xmm2,26-21

+     =    pandn   xmm0,xmm15

+        pand    xmm4,xm= m14

+       &nbs= p;pxor    xmm7,xmm1

+

+

+    &n= bsp;   movdqa  xmm1,xmm9

+=        pxor    xmm7,xmm2=

+        m= ovdqa  xmm2,xmm9

+    &nbs= p;   psrld   xmm1,2

+=        paddd   xmm6,xmm7

+        pxor &= nbsp;  xmm0,xmm4

+    = ;    movdqa  xmm4,xmm10

+        movdqa  xmm7,xmm9

+        pslld &= nbsp; xmm2,10

+     &= nbsp;  pxor    xmm4,xmm9

+

+

+ &nbs= p;      psrld   xmm7,13

+        pxor  &n= bsp; xmm1,xmm2

+     =    paddd   xmm6,xmm0

= +        pslld   xmm2,19-10
+        pand=    xmm3,xmm4

+   &nb= sp;    pxor    xmm1,xmm7
<= br class=3D"">+

+

+        psrld   xmm7,22-13
+        pxo= r    xmm1,xmm2

+   &n= bsp;    movdqa  xmm8,xmm10

+        pslld   xmm2,3= 0-19

+       &nb= sp;pxor    xmm7,xmm1

+  &n= bsp;     pxor    xmm8,xmm3

+        paddd &nb= sp; xmm12,xmm6

+     =    pxor    xmm7,xmm2

+

+       = ; paddd   xmm8,xmm6

+  &nb= sp;     paddd   xmm8,xmm7
=
+        lea   =   rbp,[256+rbp]

+    =     movdqa  xmm6,XMMWORD[((144-128))+rax]

+        paddd &nb= sp; xmm5,XMMWORD[((16-128))+rax]

+

+        movdqa &= nbsp;xmm7,xmm6

+      = ;  movdqa  xmm1,xmm6

+  &n= bsp;     psrld   xmm7,3
+        movdqa  xmm2,= xmm6

+

+  &n= bsp;     psrld   xmm1,7
+        movdqa  xmm0,= XMMWORD[((96-128))+rax]

+    &n= bsp;   pslld   xmm2,14

+        pxor    xmm7,x= mm1

+       &nbs= p;psrld   xmm1,18-7

+   &n= bsp;    movdqa  xmm3,xmm0

+        pxor    x= mm7,xmm2

+       = ; pslld   xmm2,25-14

+  &n= bsp;     pxor    xmm7,xmm1

+        psrld &nb= sp; xmm0,10

+     &nb= sp;  movdqa  xmm1,xmm3

+

+        psrld &n= bsp; xmm3,17

+     &n= bsp;  pxor    xmm7,xmm2

+        pslld   xmm1,13
+        padd= d   xmm5,xmm7

+    &n= bsp;   pxor    xmm0,xmm3

+        psrld   xmm3= ,19-17

+       &= nbsp;pxor    xmm0,xmm1

+  =       pslld   xmm1,15-13

+        pxor &nbs= p;  xmm0,xmm3

+    &n= bsp;   pxor    xmm0,xmm1

+        paddd   xmm5= ,xmm0

+       &n= bsp;movdqa  xmm7,xmm12

+
+        movdqa  xmm2,= xmm12

+

+  &= nbsp;     psrld   xmm7,6
<= br class=3D"">+        movdqa  xmm1= ,xmm12

+       &= nbsp;pslld   xmm2,7

+   &n= bsp;    movdqa  XMMWORD[(128-128)+rax],xmm5

+        paddd &n= bsp; xmm5,xmm15

+

+        psrld   xmm1,1= 1

+        = pxor    xmm7,xmm2

+   = ;     pslld   xmm2,21-7
+        paddd   = xmm5,XMMWORD[((-128))+rbp]

+    = ;    pxor    xmm7,xmm1
+

+      =   psrld   xmm1,25-11

+ &nb= sp;      movdqa  xmm0,xmm12

+

+     &= nbsp;  pxor    xmm7,xmm2

+        movdqa  xmm3,xmm12<= br class=3D"">
+        ps= lld   xmm2,26-21

+    = ;    pandn   xmm0,xmm14

+        pand    = xmm3,xmm13

+      &nb= sp; pxor    xmm7,xmm1

+
+

+   &nb= sp;    movdqa  xmm1,xmm8

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm2,xmm8

+   &n= bsp;    psrld   xmm1,2

+        paddd   xmm5,x= mm7

+       &nbs= p;pxor    xmm0,xmm3

+  &nb= sp;     movdqa  xmm3,xmm9

+        movdqa  xmm7,xmm= 8

+        = pslld   xmm2,10

+    =     pxor    xmm3,xmm8

+

+

+ =        psrld   xmm7,13

+        pxor &nbs= p;  xmm1,xmm2

+    &n= bsp;   paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm4,xmm3

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm15,xmm9
<= br class=3D"">+        pslld   = ;xmm2,30-19

+      &n= bsp; pxor    xmm7,xmm1

+ &= nbsp;      pxor    xmm15,xmm4<= br class=3D"">
+        pa= ddd   xmm11,xmm5

+    = ;    pxor    xmm7,xmm2
+

+      =   paddd   xmm15,xmm5

+ &nb= sp;      paddd   xmm15,xmm7

+        movdqa &n= bsp;xmm5,XMMWORD[((160-128))+rax]

+  &nbs= p;     paddd   xmm6,XMMWORD[((32-128))+r= ax]

+

+  &nb= sp;     movdqa  xmm7,xmm5

+        movdqa  xmm1,xmm= 5

+        = psrld   xmm7,3

+    &= nbsp;   movdqa  xmm2,xmm5

= +

+        = psrld   xmm1,7

+    &= nbsp;   movdqa  xmm0,XMMWORD[((112-128))+rax]

+        pslld &nb= sp; xmm2,14

+     &nb= sp;  pxor    xmm7,xmm1

+        psrld   xmm1,18-7
+        mov= dqa  xmm4,xmm0

+     =    pxor    xmm7,xmm2

+        pslld   xmm2,2= 5-14

+       &nb= sp;pxor    xmm7,xmm1

+  &n= bsp;     psrld   xmm0,10
<= br class=3D"">+        movdqa  xmm1= ,xmm4

+

+  &= nbsp;     psrld   xmm4,17
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm1,13

+ &nb= sp;      paddd   xmm6,xmm7

+        pxor &nbs= p;  xmm0,xmm4

+    &n= bsp;   psrld   xmm4,19-17

+        pxor    x= mm0,xmm1

+       = ; pslld   xmm1,15-13

+  &n= bsp;     pxor    xmm0,xmm4

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   paddd   xmm6,xmm0

+        movdqa  xmm7,xmm11<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm2,xmm11

+

+       = ; psrld   xmm7,6

+   =      movdqa  xmm1,xmm11

+        pslld   xmm2,= 7

+        = movdqa  XMMWORD[(144-128)+rax],xmm6

+ &nb= sp;      paddd   xmm6,xmm14

+

+    &n= bsp;   psrld   xmm1,11

+        pxor    xmm7,x= mm2

+       &nbs= p;pslld   xmm2,21-7

+   &n= bsp;    paddd   xmm6,XMMWORD[((-96))+rbp]

+        pxor =    xmm7,xmm1

+
+        psrld   = xmm1,25-11

+      &nb= sp; movdqa  xmm0,xmm11

+

+        pxor  &n= bsp; xmm7,xmm2

+     =    movdqa  xmm4,xmm11

+ &n= bsp;      pslld   xmm2,26-21

+        pandn &n= bsp; xmm0,xmm13

+     = ;   pand    xmm4,xmm12

+        pxor    x= mm7,xmm1

+

+

+        movdqa=  xmm1,xmm15

+     &n= bsp;  pxor    xmm7,xmm2

+        movdqa  xmm2,xmm15

+        psrld =   xmm1,2

+     &= nbsp;  paddd   xmm6,xmm7

+=        pxor    xmm0,xmm4=

+        m= ovdqa  xmm4,xmm8

+    &nbs= p;   movdqa  xmm7,xmm15

+ =        pslld   xmm2,10

+        pxor &nbs= p;  xmm4,xmm15

+

+

+      &n= bsp; psrld   xmm7,13

+  &n= bsp;     pxor    xmm1,xmm2

+        paddd &nb= sp; xmm6,xmm0

+     &= nbsp;  pslld   xmm2,19-10

= +        pand    xmm3,xmm= 4

+        = pxor    xmm1,xmm7

+

+

+     =    psrld   xmm7,22-13

+        pxor    xmm1,xm= m2

+        = ;movdqa  xmm14,xmm8

+    &= nbsp;   pslld   xmm2,30-19

+        pxor    x= mm7,xmm1

+       = ; pxor    xmm14,xmm3

+ &nb= sp;      paddd   xmm10,xmm6

+        pxor &nbs= p;  xmm7,xmm2

+

+        paddd   xmm1= 4,xmm6

+       &= nbsp;paddd   xmm14,xmm7

+  &nbs= p;     movdqa  xmm6,XMMWORD[((176-128))+rax]<= br class=3D"">
+        pa= ddd   xmm5,XMMWORD[((48-128))+rax]

+=

+        m= ovdqa  xmm7,xmm6

+    &nbs= p;   movdqa  xmm1,xmm6

+ &= nbsp;      psrld   xmm7,3

+        movdqa &n= bsp;xmm2,xmm6

+

+=        psrld   xmm1,7

+        movdqa &n= bsp;xmm0,XMMWORD[((128-128))+rax]

+  &nbs= p;     pslld   xmm2,14
+        pxor   &n= bsp;xmm7,xmm1

+      =   psrld   xmm1,18-7

+ &nbs= p;      movdqa  xmm3,xmm0
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm2,25-14

+ =        pxor    xmm7,xmm1<= br class=3D"">
+        ps= rld   xmm0,10

+    &n= bsp;   movdqa  xmm1,xmm3

+=

+        p= srld   xmm3,17

+    &= nbsp;   pxor    xmm7,xmm2

+        pslld   xmm= 1,13

+       &nb= sp;paddd   xmm5,xmm7

+   &= nbsp;    pxor    xmm0,xmm3

+        psrld  &nb= sp;xmm3,19-17

+      =   pxor    xmm0,xmm1

+=        pslld   xmm1,15-13

+        pxor =    xmm0,xmm3

+   &nbs= p;    pxor    xmm0,xmm1
+        paddd   = xmm5,xmm0

+      &nbs= p; movdqa  xmm7,xmm10

+

+        movdqa  x= mm2,xmm10

+

+ &nb= sp;      psrld   xmm7,6

+        movdqa  = xmm1,xmm10

+      &nb= sp; pslld   xmm2,7

+  &nbs= p;     movdqa  XMMWORD[(160-128)+rax],xmm5
+        padd= d   xmm5,xmm13

+

+        psrld   xmm= 1,11

+       &nb= sp;pxor    xmm7,xmm2

+  &n= bsp;     pslld   xmm2,21-7

+        paddd  &nb= sp;xmm5,XMMWORD[((-64))+rbp]

+   &nb= sp;    pxor    xmm7,xmm1
<= br class=3D"">+

+     &nbs= p;  psrld   xmm1,25-11

+ &= nbsp;      movdqa  xmm0,xmm10

+

+    &n= bsp;   pxor    xmm7,xmm2

+        movdqa  xmm3,xmm1= 0

+        = pslld   xmm2,26-21

+   &nb= sp;    pandn   xmm0,xmm12

+        pand   &nbs= p;xmm3,xmm11

+      &= nbsp; pxor    xmm7,xmm1

+<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm1,xmm14

+        pxor    x= mm7,xmm2

+       = ; movdqa  xmm2,xmm14

+   &= nbsp;    psrld   xmm1,2

+        paddd   xmm5,= xmm7

+       &nb= sp;pxor    xmm0,xmm3

+  &n= bsp;     movdqa  xmm3,xmm15
+        movdqa  xmm7,x= mm14

+       &nb= sp;pslld   xmm2,10

+   &nb= sp;    pxor    xmm3,xmm14
=
+

+

+        psrld   xmm7,13

+        pxor =    xmm1,xmm2

+   &nbs= p;    paddd   xmm5,xmm0

+        pslld   xmm2,= 19-10

+       &n= bsp;pand    xmm4,xmm3

+  &= nbsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm13,xmm15
=
+        pslld  &nbs= p;xmm2,30-19

+      &= nbsp; pxor    xmm7,xmm1

+ =        pxor    xmm13,xmm4=

+        p= addd   xmm9,xmm5

+    = ;    pxor    xmm7,xmm2
+

+      =   paddd   xmm13,xmm5

+ &nb= sp;      paddd   xmm13,xmm7

+        movdqa &n= bsp;xmm5,XMMWORD[((192-128))+rax]

+  &nbs= p;     paddd   xmm6,XMMWORD[((64-128))+r= ax]

+

+  &nb= sp;     movdqa  xmm7,xmm5

+        movdqa  xmm1,xmm= 5

+        = psrld   xmm7,3

+    &= nbsp;   movdqa  xmm2,xmm5

= +

+        = psrld   xmm1,7

+    &= nbsp;   movdqa  xmm0,XMMWORD[((144-128))+rax]

+        pslld &nb= sp; xmm2,14

+     &nb= sp;  pxor    xmm7,xmm1

+        psrld   xmm1,18-7
+        mov= dqa  xmm4,xmm0

+     =    pxor    xmm7,xmm2

+        pslld   xmm2,2= 5-14

+       &nb= sp;pxor    xmm7,xmm1

+  &n= bsp;     psrld   xmm0,10
<= br class=3D"">+        movdqa  xmm1= ,xmm4

+

+  &= nbsp;     psrld   xmm4,17
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm1,13

+ &nb= sp;      paddd   xmm6,xmm7

+        pxor &nbs= p;  xmm0,xmm4

+    &n= bsp;   psrld   xmm4,19-17

+        pxor    x= mm0,xmm1

+       = ; pslld   xmm1,15-13

+  &n= bsp;     pxor    xmm0,xmm4

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   paddd   xmm6,xmm0

+        movdqa  xmm7,xmm9
+

+   &n= bsp;    movdqa  xmm2,xmm9

+

+       = ; psrld   xmm7,6

+   =      movdqa  xmm1,xmm9

+        pslld   xmm2,7=

+        m= ovdqa  XMMWORD[(176-128)+rax],xmm6

+ &nbs= p;      paddd   xmm6,xmm12

+

+    &n= bsp;   psrld   xmm1,11

+        pxor    xmm7,x= mm2

+       &nbs= p;pslld   xmm2,21-7

+   &n= bsp;    paddd   xmm6,XMMWORD[((-32))+rbp]

+        pxor =    xmm7,xmm1

+
+        psrld   = xmm1,25-11

+      &nb= sp; movdqa  xmm0,xmm9

+

+        pxor  &nb= sp; xmm7,xmm2

+     &= nbsp;  movdqa  xmm4,xmm9

+ &nbs= p;      pslld   xmm2,26-21

+        pandn &nb= sp; xmm0,xmm11

+     =    pand    xmm4,xmm10

+        pxor    x= mm7,xmm1

+

+

+        movdqa=  xmm1,xmm13

+     &n= bsp;  pxor    xmm7,xmm2

+        movdqa  xmm2,xmm13

+        psrld =   xmm1,2

+     &= nbsp;  paddd   xmm6,xmm7

+=        pxor    xmm0,xmm4=

+        m= ovdqa  xmm4,xmm14

+    &nb= sp;   movdqa  xmm7,xmm13

+=        pslld   xmm2,10

+        pxor &nb= sp;  xmm4,xmm13

+

+

+      &= nbsp; psrld   xmm7,13

+  &= nbsp;     pxor    xmm1,xmm2

+        paddd &nb= sp; xmm6,xmm0

+     &= nbsp;  pslld   xmm2,19-10

= +        pand    xmm3,xmm= 4

+        = pxor    xmm1,xmm7

+

+

+     =    psrld   xmm7,22-13

+        pxor    xmm1,xm= m2

+        = ;movdqa  xmm12,xmm14

+    =     pslld   xmm2,30-19

+        pxor    x= mm7,xmm1

+       = ; pxor    xmm12,xmm3

+ &nb= sp;      paddd   xmm8,xmm6

+        pxor &nbs= p;  xmm7,xmm2

+

+        paddd   xmm1= 2,xmm6

+       &= nbsp;paddd   xmm12,xmm7

+  &nbs= p;     movdqa  xmm6,XMMWORD[((208-128))+rax]<= br class=3D"">
+        pa= ddd   xmm5,XMMWORD[((80-128))+rax]

+=

+        m= ovdqa  xmm7,xmm6

+    &nbs= p;   movdqa  xmm1,xmm6

+ &= nbsp;      psrld   xmm7,3

+        movdqa &n= bsp;xmm2,xmm6

+

+=        psrld   xmm1,7

+        movdqa &n= bsp;xmm0,XMMWORD[((160-128))+rax]

+  &nbs= p;     pslld   xmm2,14
+        pxor   &n= bsp;xmm7,xmm1

+      =   psrld   xmm1,18-7

+ &nbs= p;      movdqa  xmm3,xmm0
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm2,25-14

+ =        pxor    xmm7,xmm1<= br class=3D"">
+        ps= rld   xmm0,10

+    &n= bsp;   movdqa  xmm1,xmm3

+=

+        p= srld   xmm3,17

+    &= nbsp;   pxor    xmm7,xmm2

+        pslld   xmm= 1,13

+       &nb= sp;paddd   xmm5,xmm7

+   &= nbsp;    pxor    xmm0,xmm3

+        psrld  &nb= sp;xmm3,19-17

+      =   pxor    xmm0,xmm1

+=        pslld   xmm1,15-13

+        pxor =    xmm0,xmm3

+   &nbs= p;    pxor    xmm0,xmm1
+        paddd   = xmm5,xmm0

+      &nbs= p; movdqa  xmm7,xmm8

+

+        movdqa  xm= m2,xmm8

+

+  = ;      psrld   xmm7,6

+        movdqa  xm= m1,xmm8

+       =  pslld   xmm2,7

+   &= nbsp;    movdqa  XMMWORD[(192-128)+rax],xmm5

+        paddd &= nbsp; xmm5,xmm11

+

+        psrld   xmm1,1= 1

+        = pxor    xmm7,xmm2

+   = ;     pslld   xmm2,21-7
+        paddd   = xmm5,XMMWORD[rbp]

+     &n= bsp;  pxor    xmm7,xmm1

+

+       &nb= sp;psrld   xmm1,25-11

+   =      movdqa  xmm0,xmm8

+

+       = ; pxor    xmm7,xmm2

+ &nbs= p;      movdqa  xmm3,xmm8
=
+        pslld  &nbs= p;xmm2,26-21

+      &= nbsp; pandn   xmm0,xmm10

+ &nbs= p;      pand    xmm3,xmm9

+        pxor &= nbsp;  xmm7,xmm1

+
+

+      =   movdqa  xmm1,xmm12

+  &n= bsp;     pxor    xmm7,xmm2

+        movdqa &n= bsp;xmm2,xmm12

+      = ;  psrld   xmm1,2

+  =       paddd   xmm5,xmm7

+        pxor  &n= bsp; xmm0,xmm3

+     =    movdqa  xmm3,xmm13

+ &n= bsp;      movdqa  xmm7,xmm12

+        pslld  &= nbsp;xmm2,10

+      &= nbsp; pxor    xmm3,xmm12

+=

+

+   =      psrld   xmm7,13

+        pxor   &nbs= p;xmm1,xmm2

+      &n= bsp; paddd   xmm5,xmm0

+  =       pslld   xmm2,19-10

+        pand &nbs= p;  xmm4,xmm3

+    &n= bsp;   pxor    xmm1,xmm7

+

+

+ &n= bsp;      psrld   xmm7,22-13

+        pxor &nb= sp;  xmm1,xmm2

+    &= nbsp;   movdqa  xmm11,xmm13

+        pslld   xmm2,30-19<= br class=3D"">
+        px= or    xmm7,xmm1

+   &= nbsp;    pxor    xmm11,xmm4

+        paddd  &n= bsp;xmm15,xmm5

+      = ;  pxor    xmm7,xmm2

= +

+        = paddd   xmm11,xmm5

+   &nb= sp;    paddd   xmm11,xmm7

+        movdqa  xmm5,XMM= WORD[((224-128))+rax]

+    &nbs= p;   paddd   xmm6,XMMWORD[((96-128))+rax]

+

+    &n= bsp;   movdqa  xmm7,xmm5

+=        movdqa  xmm1,xmm5

+        psrld &nb= sp; xmm7,3

+     &nbs= p;  movdqa  xmm2,xmm5

+

+        psrld &nb= sp; xmm1,7

+     &nbs= p;  movdqa  xmm0,XMMWORD[((176-128))+rax]

+        pslld   xm= m2,14

+       &n= bsp;pxor    xmm7,xmm1

+  &= nbsp;     psrld   xmm1,18-7

+        movdqa  x= mm4,xmm0

+       = ; pxor    xmm7,xmm2

+ &nbs= p;      pslld   xmm2,25-14

+        pxor &nbs= p;  xmm7,xmm1

+    &n= bsp;   psrld   xmm0,10

+        movdqa  xmm1,xmm4

+

+    &= nbsp;   psrld   xmm4,17

+        pxor    xmm7,= xmm2

+       &nb= sp;pslld   xmm1,13

+   &nb= sp;    paddd   xmm6,xmm7

+        pxor    = ;xmm0,xmm4

+      &nb= sp; psrld   xmm4,19-17

+  =       pxor    xmm0,xmm1

+        pslld &n= bsp; xmm1,15-13

+     = ;   pxor    xmm0,xmm4

+        pxor    x= mm0,xmm1

+       = ; paddd   xmm6,xmm0

+  &nb= sp;     movdqa  xmm7,xmm15

+

+      &= nbsp; movdqa  xmm2,xmm15

+

+        psrld &nb= sp; xmm7,6

+     &nbs= p;  movdqa  xmm1,xmm15

+  =       pslld   xmm2,7
=
+        movdqa  XMM= WORD[(208-128)+rax],xmm6

+    &= nbsp;   paddd   xmm6,xmm10

+

+       = ; psrld   xmm1,11

+   = ;     pxor    xmm7,xmm2

+        pslld  &= nbsp;xmm2,21-7

+      = ;  paddd   xmm6,XMMWORD[32+rbp]

+        pxor    x= mm7,xmm1

+

+ &nbs= p;      psrld   xmm1,25-11

+        movdqa &n= bsp;xmm0,xmm15

+

= +        pxor    xmm7,xmm= 2

+        = movdqa  xmm4,xmm15

+    &n= bsp;   pslld   xmm2,26-21

+        pandn   xmm0,x= mm9

+       &nbs= p;pand    xmm4,xmm8

+  &nb= sp;     pxor    xmm7,xmm1

+

+

+        movdqa  xmm1,xmm1= 1

+        = pxor    xmm7,xmm2

+   = ;     movdqa  xmm2,xmm11

+        psrld   xmm1= ,2

+        = ;paddd   xmm6,xmm7

+   &nb= sp;    pxor    xmm0,xmm4
<= br class=3D"">+        movdqa  xmm4= ,xmm12

+       &= nbsp;movdqa  xmm7,xmm11

+   &nb= sp;    pslld   xmm2,10

+        pxor    x= mm4,xmm11

+

+

+        psrld=   xmm7,13

+     = ;   pxor    xmm1,xmm2

+        paddd   xmm6,x= mm0

+       &nbs= p;pslld   xmm2,19-10

+   &= nbsp;    pand    xmm3,xmm4

+        pxor  &nbs= p; xmm1,xmm7

+

+

+       &nb= sp;psrld   xmm7,22-13

+   =      pxor    xmm1,xmm2

+        movdqa  x= mm10,xmm12

+      &nb= sp; pslld   xmm2,30-19

+  =       pxor    xmm7,xmm1

+        pxor &nb= sp;  xmm10,xmm3

+    =     paddd   xmm14,xmm6

+        pxor    x= mm7,xmm2

+

+ &nbs= p;      paddd   xmm10,xmm6

+        paddd &nb= sp; xmm10,xmm7

+     =    movdqa  xmm6,XMMWORD[((240-128))+rax]
=
+        paddd  &nbs= p;xmm5,XMMWORD[((112-128))+rax]

+

+        movdqa  x= mm7,xmm6

+       = ; movdqa  xmm1,xmm6

+   &n= bsp;    psrld   xmm7,3

+        movdqa  xmm2,xmm6
+

+   &n= bsp;    psrld   xmm1,7

+        movdqa  xmm0,XMMWOR= D[((192-128))+rax]

+     &= nbsp;  pslld   xmm2,14

+ &= nbsp;      pxor    xmm7,xmm1
+        psr= ld   xmm1,18-7

+    &= nbsp;   movdqa  xmm3,xmm0

= +        pxor    xmm7,xmm= 2

+        = pslld   xmm2,25-14

+   &nb= sp;    pxor    xmm7,xmm1
<= br class=3D"">+        psrld   = ;xmm0,10

+       = ; movdqa  xmm1,xmm3

+
=
+        psrld  &nbs= p;xmm3,17

+      &nbs= p; pxor    xmm7,xmm2

+ &nb= sp;      pslld   xmm1,13

+        paddd &nb= sp; xmm5,xmm7

+     &= nbsp;  pxor    xmm0,xmm3

+        psrld   xmm3,1= 9-17

+       &nb= sp;pxor    xmm0,xmm1

+  &n= bsp;     pslld   xmm1,15-13

+        pxor  &nb= sp; xmm0,xmm3

+     &= nbsp;  pxor    xmm0,xmm1

+        paddd   xmm5,x= mm0

+       &nbs= p;movdqa  xmm7,xmm14

+

+        movdqa  xmm2,xm= m14

+

+  &nb= sp;     psrld   xmm7,6
+        movdqa  xmm1,x= mm14

+       &nb= sp;pslld   xmm2,7

+   &nbs= p;    movdqa  XMMWORD[(224-128)+rax],xmm5

+        paddd &nb= sp; xmm5,xmm9

+

+        psrld   xmm1,1= 1

+        = pxor    xmm7,xmm2

+   = ;     pslld   xmm2,21-7
+        paddd   = xmm5,XMMWORD[64+rbp]

+     = ;   pxor    xmm7,xmm1

+

+       = ; psrld   xmm1,25-11

+  &n= bsp;     movdqa  xmm0,xmm14
+

+      =   pxor    xmm7,xmm2

+=        movdqa  xmm3,xmm14

+        pslld &nb= sp; xmm2,26-21

+     =    pandn   xmm0,xmm8

= +        pand    xmm3,xmm= 15

+        = ;pxor    xmm7,xmm1

+

+

+    &n= bsp;   movdqa  xmm1,xmm10

= +        pxor    xmm7,xmm= 2

+        = movdqa  xmm2,xmm10

+    &n= bsp;   psrld   xmm1,2

+        paddd   xmm5,xmm7
+        pxor=    xmm0,xmm3

+   &nb= sp;    movdqa  xmm3,xmm11

+        movdqa  xmm7,xmm10<= br class=3D"">
+        ps= lld   xmm2,10

+    &n= bsp;   pxor    xmm3,xmm10

+

+

+ &= nbsp;      psrld   xmm7,13

+        pxor &nbs= p;  xmm1,xmm2

+    &n= bsp;   paddd   xmm5,xmm0

+        pslld   xmm2,1= 9-10

+       &nb= sp;pand    xmm4,xmm3

+  &n= bsp;     pxor    xmm1,xmm7

+

+

+        psrld   xmm7= ,22-13

+       &= nbsp;pxor    xmm1,xmm2

+  =       movdqa  xmm9,xmm11
<= br class=3D"">+        pslld   = ;xmm2,30-19

+      &n= bsp; pxor    xmm7,xmm1

+ &= nbsp;      pxor    xmm9,xmm4
+        pad= dd   xmm13,xmm5

+    =     pxor    xmm7,xmm2

+

+      &= nbsp; paddd   xmm9,xmm5

+  = ;      paddd   xmm9,xmm7

+        movdqa &n= bsp;xmm5,XMMWORD[((0-128))+rax]

+   =      paddd   xmm6,XMMWORD[((128-128))+ra= x]

+

+  &nbs= p;     movdqa  xmm7,xmm5

+        movdqa  xmm1,xmm5=

+        p= srld   xmm7,3

+    &n= bsp;   movdqa  xmm2,xmm5

+=

+        p= srld   xmm1,7

+    &n= bsp;   movdqa  xmm0,XMMWORD[((208-128))+rax]

+        pslld &nb= sp; xmm2,14

+     &nb= sp;  pxor    xmm7,xmm1

+        psrld   xmm1,18-7
+        mov= dqa  xmm4,xmm0

+     =    pxor    xmm7,xmm2

+        pslld   xmm2,2= 5-14

+       &nb= sp;pxor    xmm7,xmm1

+  &n= bsp;     psrld   xmm0,10
<= br class=3D"">+        movdqa  xmm1= ,xmm4

+

+  &= nbsp;     psrld   xmm4,17
=
+        pxor   = ; xmm7,xmm2

+     &nb= sp;  pslld   xmm1,13

+ &nb= sp;      paddd   xmm6,xmm7

+        pxor &nbs= p;  xmm0,xmm4

+    &n= bsp;   psrld   xmm4,19-17

+        pxor    x= mm0,xmm1

+       = ; pslld   xmm1,15-13

+  &n= bsp;     pxor    xmm0,xmm4

+        pxor &nbs= p;  xmm0,xmm1

+    &n= bsp;   paddd   xmm6,xmm0

+        movdqa  xmm7,xmm13<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm2,xmm13

+

+       = ; psrld   xmm7,6

+   =      movdqa  xmm1,xmm13

+        pslld   xmm2,= 7

+        = movdqa  XMMWORD[(240-128)+rax],xmm6

+ &nb= sp;      paddd   xmm6,xmm8

+

+    &n= bsp;   psrld   xmm1,11

+        pxor    xmm7,x= mm2

+       &nbs= p;pslld   xmm2,21-7

+   &n= bsp;    paddd   xmm6,XMMWORD[96+rbp]

+        pxor &nbs= p;  xmm7,xmm1

+

+        psrld   xmm1= ,25-11

+       &= nbsp;movdqa  xmm0,xmm13

+
<= br class=3D"">+        pxor   =  xmm7,xmm2

+     &nbs= p;  movdqa  xmm4,xmm13

+  =       pslld   xmm2,26-21

+        pandn &nb= sp; xmm0,xmm15

+     =    pand    xmm4,xmm14

+        pxor    x= mm7,xmm1

+

+

+        movdqa=  xmm1,xmm9

+     &nb= sp;  pxor    xmm7,xmm2

+        movdqa  xmm2,xmm9

+        psrld &n= bsp; xmm1,2

+     &nb= sp;  paddd   xmm6,xmm7

+ &= nbsp;      pxor    xmm0,xmm4
+        mov= dqa  xmm4,xmm10

+     = ;   movdqa  xmm7,xmm9

+ &n= bsp;      pslld   xmm2,10

+        pxor &nbs= p;  xmm4,xmm9

+

+

+      &nb= sp; psrld   xmm7,13

+  &nb= sp;     pxor    xmm1,xmm2

+        paddd &nb= sp; xmm6,xmm0

+     &= nbsp;  pslld   xmm2,19-10

= +        pand    xmm3,xmm= 4

+        = pxor    xmm1,xmm7

+

+

+     =    psrld   xmm7,22-13

+        pxor    xmm1,xm= m2

+        = ;movdqa  xmm8,xmm10

+    &= nbsp;   pslld   xmm2,30-19

+        pxor    x= mm7,xmm1

+       = ; pxor    xmm8,xmm3

+ &nbs= p;      paddd   xmm12,xmm6

+        pxor &nbs= p;  xmm7,xmm2

+

+        paddd   xmm8= ,xmm6

+       &n= bsp;paddd   xmm8,xmm7

+   =      lea     rbp,[256+rbp]

+        dec &= nbsp;   ecx

+    = ;    jnz     NEAR $L$oop_16_xx

+

+    = ;    mov     ecx,1
+        lea   &n= bsp; rbp,[((K256+128))]

+
<= br class=3D"">+        movdqa  xmm7= ,XMMWORD[rbx]

+      =   cmp     ecx,DWORD[rbx]

+        pxor    = ;xmm0,xmm0

+      &nb= sp; cmovge  r8,rbp

+   &nb= sp;    cmp     ecx,DWORD[4+rbx]

+        movdq= a  xmm6,xmm7

+     &n= bsp;  cmovge  r9,rbp

+  &n= bsp;     cmp     ecx,DWORD[8+r= bx]

+       &nbs= p;pcmpgtd xmm6,xmm0

+     =    cmovge  r10,rbp

+  = ;      cmp     ecx,DWORD[= 12+rbx]

+       =  paddd   xmm7,xmm6

+  &nbs= p;     cmovge  r11,rbp

+

+       = ; movdqu  xmm0,XMMWORD[((0-128))+rdi]

+        pand    xmm8,x= mm6

+       &nbs= p;movdqu  xmm1,XMMWORD[((32-128))+rdi]

+ =        pand    xmm9,xmm6<= br class=3D"">
+        mo= vdqu  xmm2,XMMWORD[((64-128))+rdi]

+ &nbs= p;      pand    xmm10,xmm6

+        movdq= u  xmm5,XMMWORD[((96-128))+rdi]

+  &= nbsp;     pand    xmm11,xmm6

+        paddd &n= bsp; xmm8,xmm0

+     =    movdqu  xmm0,XMMWORD[((128-128))+rdi]
=
+        pand   = ; xmm12,xmm6

+     &n= bsp;  paddd   xmm9,xmm1

+ =        movdqu  xmm1,XMMWORD[((160-1= 28))+rdi]

+      &nbs= p; pand    xmm13,xmm6

+ &n= bsp;      paddd   xmm10,xmm2

+        movdqu &= nbsp;xmm2,XMMWORD[((192-128))+rdi]

+  &nb= sp;     pand    xmm14,xmm6

+        paddd &nb= sp; xmm11,xmm5

+     =    movdqu  xmm5,XMMWORD[((224-128))+rdi]
=
+        pand   = ; xmm15,xmm6

+     &n= bsp;  paddd   xmm12,xmm0

+=        paddd   xmm13,xmm1

+        movdq= u  XMMWORD[(0-128)+rdi],xmm8

+  &nbs= p;     paddd   xmm14,xmm2
=
+        movdqu  XMM= WORD[(32-128)+rdi],xmm9

+    &n= bsp;   paddd   xmm15,xmm5

+        movdqu  XMMWORD[(64= -128)+rdi],xmm10

+     &nb= sp;  movdqu  XMMWORD[(96-128)+rdi],xmm11

+        movdqu  XMMWORD[= (128-128)+rdi],xmm12

+     = ;   movdqu  XMMWORD[(160-128)+rdi],xmm13
=
+        movdqu  XMM= WORD[(192-128)+rdi],xmm14

+    =     movdqu  XMMWORD[(224-128)+rdi],xmm15

+

+    &n= bsp;   movdqa  XMMWORD[rbx],xmm7

+        movdqa  xmm6,XMMWOR= D[$L$pbswap]

+      &= nbsp; dec     edx

+ &= nbsp;      jnz     NEAR $= L$oop

+

+  &= nbsp;     mov     edx,DWORD[28= 0+rsp]

+       &= nbsp;lea     rdi,[16+rdi]

= +        lea     rsi= ,[64+rsi]

+      &nbs= p; dec     edx

+ &nbs= p;      jnz     NEAR $L$o= op_grande

+

+$L$d= one:

+       &nb= sp;mov     rax,QWORD[272+rsp]

+

+       = ; movaps  xmm6,XMMWORD[((-184))+rax]

+        movaps  xmm7,XMMWORD[((-1= 68))+rax]

+      &nbs= p; movaps  xmm8,XMMWORD[((-152))+rax]

+        movaps  xmm9,XMMWORD[((-= 136))+rax]

+      &nb= sp; movaps  xmm10,XMMWORD[((-120))+rax]

+        movaps  xmm11,XMMWO= RD[((-104))+rax]

+     &nb= sp;  movaps  xmm12,XMMWORD[((-88))+rax]

+        movaps  xmm13,XMM= WORD[((-72))+rax]

+     &n= bsp;  movaps  xmm14,XMMWORD[((-56))+rax]

+        movaps  xmm15,XM= MWORD[((-40))+rax]

+     &= nbsp;  mov     rbp,QWORD[((-16))+rax]

+

+    &n= bsp;   mov     rbx,QWORD[((-8))+rax]

+

+   &nbs= p;    lea     rsp,[rax]

+

+$L$epilogue:

+        mov  &nbs= p;  rdi,QWORD[8+rsp]        ;W= IN64 epilogue

+      =   mov     rsi,QWORD[16+rsp]
+        DB   &nbs= p;  0F3h,0C3h         &nb= sp;     ;repret

+

+$L$SEH_end_sha256_multi_block:
+

+ALIGN   32

+sha256_multi_block_shaext:

+        mov    &n= bsp;QWORD[8+rsp],rdi        ;WIN64 prolo= gue

+       &nbs= p;mov     QWORD[16+rsp],rsi

+        mov     r= ax,rsp

+$L$SEH_begin_sha256_multi_block_shaext= :

+        = mov     rdi,rcx

+  &n= bsp;     mov     rsi,rdx

+        mov &nb= sp;   rdx,r8

+
+

+

= +_shaext_shortcut:

+     &= nbsp;  mov     rax,rsp

+

+       = ; push    rbx

+

+        push &nbs= p;  rbp

+

+        lea     = rsp,[((-168))+rsp]

+     &= nbsp;  movaps  XMMWORD[rsp],xmm6

+        movaps  XMMWORD[16+rsp],= xmm7

+       &nb= sp;movaps  XMMWORD[32+rsp],xmm8

+  &= nbsp;     movaps  XMMWORD[48+rsp],xmm9

+        movaps &= nbsp;XMMWORD[(-120)+rax],xmm10

+   &= nbsp;    movaps  XMMWORD[(-104)+rax],xmm11

+        movaps &n= bsp;XMMWORD[(-88)+rax],xmm12

+   &nb= sp;    movaps  XMMWORD[(-72)+rax],xmm13

+        movaps &n= bsp;XMMWORD[(-56)+rax],xmm14

+   &nb= sp;    movaps  XMMWORD[(-40)+rax],xmm15

+        sub  = ;   rsp,288

+    = ;    shl     edx,1
+        and   &n= bsp; rsp,-256

+     &= nbsp;  lea     rdi,[128+rdi]
+        mov   &n= bsp; QWORD[272+rsp],rax

+$L$body_shaext:<= br class=3D"">
+        le= a     rbx,[256+rsp]

+ &nbs= p;      lea     rbp,[((K2= 56_shaext+128))]

+

+$L$oop_grande_shaext:

+    &= nbsp;   mov     DWORD[280+rsp],edx

+        xor &nb= sp;   edx,edx

+   &nb= sp;    mov     r8,QWORD[rsi]

+        mov &nbs= p;   ecx,DWORD[8+rsi]

+  &= nbsp;     cmp     ecx,edx

+        cmovg =   edx,ecx

+     =    test    ecx,ecx

+        mov     = DWORD[rbx],ecx

+      = ;  cmovle  r8,rsp

+   = ;     mov     r9,QWORD[16+rsi]=

+        m= ov     ecx,DWORD[24+rsi]

+=        cmp     ecx,= edx

+       &nbs= p;cmovg   edx,ecx

+   &nbs= p;    test    ecx,ecx

+        mov   &nbs= p; DWORD[4+rbx],ecx

+    &= nbsp;   cmovle  r9,rsp

+ &= nbsp;      test    edx,edx

+        jz &n= bsp;    NEAR $L$done_shaext

+

+       &nbs= p;movq    xmm12,QWORD[((0-128))+rdi]

+        movq    x= mm4,QWORD[((32-128))+rdi]

+    =     movq    xmm13,QWORD[((64-128))+rdi]<= br class=3D"">
+        mo= vq    xmm5,QWORD[((96-128))+rdi]

+        movq    xmm8,Q= WORD[((128-128))+rdi]

+    &nbs= p;   movq    xmm9,QWORD[((160-128))+rdi]

+        movq &= nbsp;  xmm10,QWORD[((192-128))+rdi]

= +        movq    xmm11,QW= ORD[((224-128))+rdi]

+

+        punpckldq   &n= bsp;   xmm12,xmm4

+   = ;     punpckldq      &nbs= p;xmm13,xmm5

+      &= nbsp; punpckldq       xmm8,xmm9

+        punpckldq=       xmm10,xmm11

+        movdqa  xmm3,XMMWORD[((= K256_shaext-16))]

+

+        movdqa  xmm14,xmm12

+        movdq= a  xmm15,xmm13

+     =    punpcklqdq      xmm12,xmm8

+        punpckl= qdq      xmm13,xmm10

= +        punpckhqdq    &n= bsp; xmm14,xmm8

+     = ;   punpckhqdq      xmm15,xmm10

+

+   &nbs= p;    pshufd  xmm12,xmm12,27

+        pshufd  xmm13,xmm1= 3,27

+       &nb= sp;pshufd  xmm14,xmm14,27

+   &= nbsp;    pshufd  xmm15,xmm15,27

+        jmp   &nbs= p; NEAR $L$oop_shaext

+
+ALIGN   32

+$L$oop_shae= xt:

+       &nbs= p;movdqu  xmm4,XMMWORD[r8]

+   =      movdqu  xmm8,XMMWORD[r9]
<= br class=3D"">+        movdqu  xmm5= ,XMMWORD[16+r8]

+     &nbs= p;  movdqu  xmm9,XMMWORD[16+r9]

+        movdqu  xmm6,XMMWORD[32+r= 8]

+DB      102,15,56= ,0,227

+       &= nbsp;movdqu  xmm10,XMMWORD[32+r9]

+DB &nb= sp;    102,68,15,56,0,195

= +        movdqu  xmm7,XMMWORD[48+r8= ]

+        = lea     r8,[64+r8]

+  = ;      movdqu  xmm11,XMMWORD[48+r9]

+        lea &n= bsp;   r9,[64+r9]

+

+        movdqa  = xmm0,XMMWORD[((0-128))+rbp]

+DB   &n= bsp;  102,15,56,0,235

+   =      paddd   xmm0,xmm4
+        pxor   &n= bsp;xmm4,xmm12

+      = ;  movdqa  xmm1,xmm0

+  &n= bsp;     movdqa  xmm2,XMMWORD[((0-128))+rbp]<= br class=3D"">
+DB      102,68,15,56= ,0,203

+       &= nbsp;paddd   xmm2,xmm8

+   = ;     movdqa  XMMWORD[80+rsp],xmm13

+DB      69,15,56,203,236
+        pxor=    xmm8,xmm14

+   &n= bsp;    movdqa  xmm0,xmm2

+        movdqa  XMMWORD[112= +rsp],xmm15

+DB      = 69,15,56,203,254

+     &nb= sp;  pshufd  xmm0,xmm1,0x0e

+ &= nbsp;      pxor    xmm4,xmm12<= br class=3D"">
+        mo= vdqa  XMMWORD[64+rsp],xmm12

+DB  &nb= sp;   69,15,56,203,229

+  =       pshufd  xmm0,xmm2,0x0e

+        pxor  &n= bsp; xmm8,xmm14

+     = ;   movdqa  XMMWORD[96+rsp],xmm14

+        movdqa  xmm1,XMMWO= RD[((16-128))+rbp]

+     &= nbsp;  paddd   xmm1,xmm5

+= DB      102,15,56,0,243

+DB      69,15,56,203,247

+

+      &nbs= p; movdqa  xmm0,xmm1

+   &= nbsp;    movdqa  xmm2,XMMWORD[((16-128))+rbp]

+        paddd =   xmm2,xmm9

+DB    &n= bsp; 69,15,56,203,236

+    = ;    movdqa  xmm0,xmm2

+        prefetcht0    =   [127+r8]

+DB    &nb= sp; 102,15,56,0,251

+DB    = ;  102,68,15,56,0,211

+   =      prefetcht0      [127= +r9]

+DB      69,15,5= 6,203,254

+      &nbs= p; pshufd  xmm0,xmm1,0x0e

+DB  =     102,68,15,56,0,219

+DB=      15,56,204,229

+= DB      69,15,56,203,229

+        pshufd  xmm0,xmm2,0= x0e

+       &nbs= p;movdqa  xmm1,XMMWORD[((32-128))+rbp]

+ =        paddd   xmm1,xmm6

+DB      69,15,56,203,247<= br class=3D"">
+

+   &= nbsp;    movdqa  xmm0,xmm1

+        movdqa  xmm2,XMMWOR= D[((32-128))+rbp]

+     &n= bsp;  paddd   xmm2,xmm10

+= DB      69,15,56,203,236

+DB      69,15,56,204,193
+        movdqa  xmm0,x= mm2

+       &nbs= p;movdqa  xmm3,xmm7

+DB    = ;  69,15,56,203,254

+   &n= bsp;    pshufd  xmm0,xmm1,0x0e

+DB      102,15,58,15,222,4

+        paddd  &n= bsp;xmm4,xmm3

+      =   movdqa  xmm3,xmm11

+DB  =     102,65,15,58,15,218,4

= +DB      15,56,204,238

+DB      69,15,56,203,229

+        pshufd  xmm0,xmm2,0= x0e

+       &nbs= p;movdqa  xmm1,XMMWORD[((48-128))+rbp]

+ =        paddd   xmm1,xmm7

+DB      69,15,56,203,247<= br class=3D"">
+DB      69,15,56,204= ,202

+

+  &n= bsp;     movdqa  xmm0,xmm1

+        movdqa  xmm2,XM= MWORD[((48-128))+rbp]

+    &nbs= p;   paddd   xmm8,xmm3

+        paddd   xmm2,xmm11<= br class=3D"">
+DB      15,56,205,23= 1

+DB      69,15,56,2= 03,236

+       &= nbsp;movdqa  xmm0,xmm2

+   &nbs= p;    movdqa  xmm3,xmm4

+DB      102,15,58,15,223,4

+DB      69,15,56,203,254
=
+DB      69,15,56,205,195

+        pshufd &n= bsp;xmm0,xmm1,0x0e

+     &= nbsp;  paddd   xmm5,xmm3

+=        movdqa  xmm3,xmm8

+DB      102,65,15,58,15,219= ,4

+DB      15,56,204= ,247

+DB      69,15,5= 6,203,229

+      &nbs= p; pshufd  xmm0,xmm2,0x0e

+  &n= bsp;     movdqa  xmm1,XMMWORD[((64-128))+rbp]=

+        p= addd   xmm1,xmm4

+DB   &nb= sp;  69,15,56,203,247

+DB  &nbs= p;   69,15,56,204,211

+  &= nbsp;     movdqa  xmm0,xmm1
+        movdqa  xmm2,X= MMWORD[((64-128))+rbp]

+    &nb= sp;   paddd   xmm9,xmm3

+        paddd   xmm2,xmm8<= br class=3D"">
+DB      15,56,205,23= 6

+DB      69,15,56,2= 03,236

+       &= nbsp;movdqa  xmm0,xmm2

+   &nbs= p;    movdqa  xmm3,xmm5

+DB      102,15,58,15,220,4

+DB      69,15,56,203,254
=
+DB      69,15,56,205,200

+        pshufd &n= bsp;xmm0,xmm1,0x0e

+     &= nbsp;  paddd   xmm6,xmm3

+=        movdqa  xmm3,xmm9

+DB      102,65,15,58,15,216= ,4

+DB      15,56,204= ,252

+DB      69,15,5= 6,203,229

+      &nbs= p; pshufd  xmm0,xmm2,0x0e

+  &n= bsp;     movdqa  xmm1,XMMWORD[((80-128))+rbp]=

+        p= addd   xmm1,xmm5

+DB   &nb= sp;  69,15,56,203,247

+DB  &nbs= p;   69,15,56,204,216

+  &= nbsp;     movdqa  xmm0,xmm1
+        movdqa  xmm2,X= MMWORD[((80-128))+rbp]

+    &nb= sp;   paddd   xmm10,xmm3

+        paddd   xmm2,x= mm9

+DB      15,56,20= 5,245

+DB      69,15,= 56,203,236

+      &nb= sp; movdqa  xmm0,xmm2

+   =      movdqa  xmm3,xmm6

+DB      102,15,58,15,221,4
<= br class=3D"">+DB      69,15,56,203,254

+DB      69,15,56,205,209
+        pshu= fd  xmm0,xmm1,0x0e

+    &n= bsp;   paddd   xmm7,xmm3

+        movdqa  xmm3,xmm10<= br class=3D"">
+DB      102,65,15,58= ,15,217,4

+DB      15= ,56,204,229

+DB      = 69,15,56,203,229

+     &nb= sp;  pshufd  xmm0,xmm2,0x0e

+ &= nbsp;      movdqa  xmm1,XMMWORD[((96-128= ))+rbp]

+       =  paddd   xmm1,xmm6

+DB  &n= bsp;   69,15,56,203,247

+DB &nb= sp;    69,15,56,204,193

+ =        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((96-128))+rbp]

+   = ;     paddd   xmm11,xmm3
<= br class=3D"">+        paddd   = ;xmm2,xmm10

+DB      = 15,56,205,254

+DB     &nbs= p;69,15,56,203,236

+     &= nbsp;  movdqa  xmm0,xmm2

+ &nbs= p;      movdqa  xmm3,xmm7
=
+DB      102,15,58,15,222,4

+DB      69,15,56,203,254
+DB      69,15,56,205,2= 18

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm4,xmm3

+        movdqa  xmm3,xmm1= 1

+DB      102,65,15,= 58,15,218,4

+DB      = 15,56,204,238

+DB     &nbs= p;69,15,56,203,229

+     &= nbsp;  pshufd  xmm0,xmm2,0x0e

+=        movdqa  xmm1,XMMWORD[((112-= 128))+rbp]

+      &nb= sp; paddd   xmm1,xmm7

+DB  = ;    69,15,56,203,247

+DB =      69,15,56,204,202

+        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((112-128))+rbp]

+  &nbs= p;     paddd   xmm8,xmm3
<= br class=3D"">+        paddd   = ;xmm2,xmm11

+DB      = 15,56,205,231

+DB     &nbs= p;69,15,56,203,236

+     &= nbsp;  movdqa  xmm0,xmm2

+ &nbs= p;      movdqa  xmm3,xmm4
=
+DB      102,15,58,15,223,4

+DB      69,15,56,203,254
+DB      69,15,56,205,1= 95

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm5,xmm3

+        movdqa  xmm3,xmm8=

+DB      102,65,15,5= 8,15,219,4

+DB      1= 5,56,204,247

+DB      = ;69,15,56,203,229

+     &n= bsp;  pshufd  xmm0,xmm2,0x0e

+ =        movdqa  xmm1,XMMWORD[((128-1= 28))+rbp]

+      &nbs= p; paddd   xmm1,xmm4

+DB  =     69,15,56,203,247

+DB &= nbsp;    69,15,56,204,211

= +        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((128-128))+rbp]

+  &nbs= p;     paddd   xmm9,xmm3
<= br class=3D"">+        paddd   = ;xmm2,xmm8

+DB      1= 5,56,205,236

+DB      = ;69,15,56,203,236

+     &n= bsp;  movdqa  xmm0,xmm2

+  = ;      movdqa  xmm3,xmm5
<= br class=3D"">+DB      102,15,58,15,220,4

+DB      69,15,56,203,254
+DB      69,15,56,205,2= 00

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm6,xmm3

+        movdqa  xmm3,xmm9=

+DB      102,65,15,5= 8,15,216,4

+DB      1= 5,56,204,252

+DB      = ;69,15,56,203,229

+     &n= bsp;  pshufd  xmm0,xmm2,0x0e

+ =        movdqa  xmm1,XMMWORD[((144-1= 28))+rbp]

+      &nbs= p; paddd   xmm1,xmm5

+DB  =     69,15,56,203,247

+DB &= nbsp;    69,15,56,204,216

= +        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((144-128))+rbp]

+  &nbs= p;     paddd   xmm10,xmm3
=
+        paddd  &nbs= p;xmm2,xmm9

+DB      = 15,56,205,245

+DB     &nbs= p;69,15,56,203,236

+     &= nbsp;  movdqa  xmm0,xmm2

+ &nbs= p;      movdqa  xmm3,xmm6
=
+DB      102,15,58,15,221,4

+DB      69,15,56,203,254
+DB      69,15,56,205,2= 09

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm7,xmm3

+        movdqa  xmm3,xmm1= 0

+DB      102,65,15,= 58,15,217,4

+DB      = 15,56,204,229

+DB     &nbs= p;69,15,56,203,229

+     &= nbsp;  pshufd  xmm0,xmm2,0x0e

+=        movdqa  xmm1,XMMWORD[((160-= 128))+rbp]

+      &nb= sp; paddd   xmm1,xmm6

+DB  = ;    69,15,56,203,247

+DB =      69,15,56,204,193

+        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((160-128))+rbp]

+  &nbs= p;     paddd   xmm11,xmm3
=
+        paddd  &nbs= p;xmm2,xmm10

+DB      = ;15,56,205,254

+DB     &nb= sp;69,15,56,203,236

+     =    movdqa  xmm0,xmm2

+ &nb= sp;      movdqa  xmm3,xmm7

+DB      102,15,58,15,222,4

+DB      69,15,56,203,254
+DB      69,15,56,205,= 218

+       &nbs= p;pshufd  xmm0,xmm1,0x0e

+   &n= bsp;    paddd   xmm4,xmm3

+        movdqa  xmm3,xmm= 11

+DB      102,65,15= ,58,15,218,4

+DB      = ;15,56,204,238

+DB     &nb= sp;69,15,56,203,229

+     =    pshufd  xmm0,xmm2,0x0e

= +        movdqa  xmm1,XMMWORD[((176= -128))+rbp]

+      &n= bsp; paddd   xmm1,xmm7

+DB &nbs= p;    69,15,56,203,247

+DB=      69,15,56,204,202

+        movdqa  xmm0,xmm1

+        movdqa &= nbsp;xmm2,XMMWORD[((176-128))+rbp]

+  &nb= sp;     paddd   xmm8,xmm3
=
+        paddd  &nbs= p;xmm2,xmm11

+DB      = ;15,56,205,231

+DB     &nb= sp;69,15,56,203,236

+     =    movdqa  xmm0,xmm2

+ &nb= sp;      movdqa  xmm3,xmm4

+DB      102,15,58,15,223,4

+DB      69,15,56,203,254
+DB      69,15,56,205,= 195

+       &nbs= p;pshufd  xmm0,xmm1,0x0e

+   &n= bsp;    paddd   xmm5,xmm3

+        movdqa  xmm3,xmm= 8

+DB      102,65,15,= 58,15,219,4

+DB      = 15,56,204,247

+DB     &nbs= p;69,15,56,203,229

+     &= nbsp;  pshufd  xmm0,xmm2,0x0e

+=        movdqa  xmm1,XMMWORD[((192-= 128))+rbp]

+      &nb= sp; paddd   xmm1,xmm4

+DB  = ;    69,15,56,203,247

+DB =      69,15,56,204,211

+        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((192-128))+rbp]

+  &nbs= p;     paddd   xmm9,xmm3
<= br class=3D"">+        paddd   = ;xmm2,xmm8

+DB      1= 5,56,205,236

+DB      = ;69,15,56,203,236

+     &n= bsp;  movdqa  xmm0,xmm2

+  = ;      movdqa  xmm3,xmm5
<= br class=3D"">+DB      102,15,58,15,220,4

+DB      69,15,56,203,254
+DB      69,15,56,205,2= 00

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm6,xmm3

+        movdqa  xmm3,xmm9=

+DB      102,65,15,5= 8,15,216,4

+DB      1= 5,56,204,252

+DB      = ;69,15,56,203,229

+     &n= bsp;  pshufd  xmm0,xmm2,0x0e

+ =        movdqa  xmm1,XMMWORD[((208-1= 28))+rbp]

+      &nbs= p; paddd   xmm1,xmm5

+DB  =     69,15,56,203,247

+DB &= nbsp;    69,15,56,204,216

= +        movdqa  xmm0,xmm1

+        movdqa &n= bsp;xmm2,XMMWORD[((208-128))+rbp]

+  &nbs= p;     paddd   xmm10,xmm3
=
+        paddd  &nbs= p;xmm2,xmm9

+DB      = 15,56,205,245

+DB     &nbs= p;69,15,56,203,236

+     &= nbsp;  movdqa  xmm0,xmm2

+ &nbs= p;      movdqa  xmm3,xmm6
=
+DB      102,15,58,15,221,4

+DB      69,15,56,203,254
+DB      69,15,56,205,2= 09

+        = ;pshufd  xmm0,xmm1,0x0e

+   &nb= sp;    paddd   xmm7,xmm3

+        movdqa  xmm3,xmm1= 0

+DB      102,65,15,= 58,15,217,4

+      &n= bsp; nop

+DB     &nbs= p;69,15,56,203,229

+     &= nbsp;  pshufd  xmm0,xmm2,0x0e

+=        movdqa  xmm1,XMMWORD[((224-= 128))+rbp]

+      &nb= sp; paddd   xmm1,xmm6

+DB  = ;    69,15,56,203,247

+
+        movd= qa  xmm0,xmm1

+     &= nbsp;  movdqa  xmm2,XMMWORD[((224-128))+rbp]
<= br class=3D"">+        paddd   = ;xmm11,xmm3

+      &n= bsp; paddd   xmm2,xmm10

+DB &nb= sp;    15,56,205,254

+ &nb= sp;      nop

+DB=      69,15,56,203,236

+        movdqa  xmm0,xmm2

+        mov &nbs= p;   ecx,1

+    =     pxor    xmm6,xmm6

+DB      69,15,56,203,254

+DB      69,15,56,205,218

+        pshufd &n= bsp;xmm0,xmm1,0x0e

+     &= nbsp;  movdqa  xmm1,XMMWORD[((240-128))+rbp]
<= br class=3D"">+        paddd   = ;xmm1,xmm7

+      &nb= sp; movq    xmm7,QWORD[rbx]

+        nop

+DB      69,15,56,203,229
+        pshufd  xmm0,x= mm2,0x0e

+       = ; movdqa  xmm2,XMMWORD[((240-128))+rbp]

+        paddd   xmm2,x= mm11

+DB      69,15,5= 6,203,247

+

+ &nb= sp;      movdqa  xmm0,xmm1

+        cmp   = ;  ecx,DWORD[rbx]

+   &nbs= p;    cmovge  r8,rsp

= +        cmp     ecx= ,DWORD[4+rbx]

+      =   cmovge  r9,rsp

+   =      pshufd  xmm9,xmm7,0x00
+DB      69,15,56,203,236

+        movdqa  x= mm0,xmm2

+       = ; pshufd  xmm10,xmm7,0x55

+  &n= bsp;     movdqa  xmm11,xmm7
+DB      69,15,56,203,254

+        pshufd  x= mm0,xmm1,0x0e

+      =   pcmpgtd xmm9,xmm6

+   &n= bsp;    pcmpgtd xmm10,xmm6

+DB      69,15,56,203,229

+        pshufd  xmm0,xmm2,0= x0e

+       &nbs= p;pcmpgtd xmm11,xmm6

+     = ;   movdqa  xmm3,XMMWORD[((K256_shaext-16))]

+DB      69,15,56,203,247
+

+   &nb= sp;    pand    xmm13,xmm9
=
+        pand   = ; xmm15,xmm10

+     &= nbsp;  pand    xmm12,xmm9

+        pand    x= mm14,xmm10

+      &nb= sp; paddd   xmm11,xmm7

+

+        paddd &n= bsp; xmm13,XMMWORD[80+rsp]

+   =      paddd   xmm15,XMMWORD[112+rsp]

+        paddd =   xmm12,XMMWORD[64+rsp]

+  &nbs= p;     paddd   xmm14,XMMWORD[96+rsp]

+

+   &nbs= p;    movq    QWORD[rbx],xmm11

+        dec  = ;   edx

+    &nb= sp;   jnz     NEAR $L$oop_shaext

+

+    &n= bsp;   mov     edx,DWORD[280+rsp]

+

+    &= nbsp;   pshufd  xmm12,xmm12,27

+        pshufd  xmm13,xmm13= ,27

+       &nbs= p;pshufd  xmm14,xmm14,27

+   &n= bsp;    pshufd  xmm15,xmm15,27

+

+      &n= bsp; movdqa  xmm5,xmm12

+  &nbs= p;     movdqa  xmm6,xmm13

+        punpckldq   = ;    xmm12,xmm14

+  &= nbsp;     punpckhdq      =  xmm5,xmm14

+     &nb= sp;  punpckldq       xmm13,xmm15
+        punp= ckhdq       xmm6,xmm15

+

+       = ; movq    QWORD[(0-128)+rdi],xmm12

+        psrldq  xmm12,8
+        mov= q    QWORD[(128-128)+rdi],xmm5

= +        psrldq  xmm5,8

+        movq  &n= bsp; QWORD[(32-128)+rdi],xmm12

+  &n= bsp;     movq    QWORD[(160-128)+rd= i],xmm5

+

+  = ;      movq    QWORD[(64-128)+= rdi],xmm13

+      &nb= sp; psrldq  xmm13,8

+   &n= bsp;    movq    QWORD[(192-128)+rdi],xmm= 6

+        = psrldq  xmm6,8

+     =    movq    QWORD[(96-128)+rdi],xmm13

+        movq &nbs= p;  QWORD[(224-128)+rdi],xmm6

+

+        lea &n= bsp;   rdi,[8+rdi]

+  &nbs= p;     lea     rsi,[32+rsi]
+        dec =     edx

+   &nbs= p;    jnz     NEAR $L$oop_grande_sh= aext

+

+$L$done_s= haext:

+

+  =       movaps  xmm6,XMMWORD[((-184))+rax]=

+        m= ovaps  xmm7,XMMWORD[((-168))+rax]

+  = ;      movaps  xmm8,XMMWORD[((-152))+rax= ]

+        = movaps  xmm9,XMMWORD[((-136))+rax]

+ &nbs= p;      movaps  xmm10,XMMWORD[((-120))+r= ax]

+       &nbs= p;movaps  xmm11,XMMWORD[((-104))+rax]

+ &= nbsp;      movaps  xmm12,XMMWORD[((-88))= +rax]

+       &n= bsp;movaps  xmm13,XMMWORD[((-72))+rax]

+ =        movaps  xmm14,XMMWORD[((-56)= )+rax]

+       &= nbsp;movaps  xmm15,XMMWORD[((-40))+rax]

+=        mov     rbp,= QWORD[((-16))+rax]

+

+        mov    &n= bsp;rbx,QWORD[((-8))+rax]

+

+        lea   &nbs= p; rsp,[rax]

+

+$L$epilogue_shaext:

+    &n= bsp;   mov     rdi,QWORD[8+rsp]  &n= bsp;     ;WIN64 epilogue

+        mov    &n= bsp;rsi,QWORD[16+rsp]

+    &nbs= p;   DB      0F3h,0C3h   =             ;re= pret

+

+$L$SEH_en= d_sha256_multi_block_shaext:

+ALIGN  &nbs= p;256

+K256:

+ &n= bsp;      DD      11= 16352408,1116352408,1116352408,1116352408

+ &n= bsp;      DD      11= 16352408,1116352408,1116352408,1116352408

+ &n= bsp;      DD      18= 99447441,1899447441,1899447441,1899447441

+ &n= bsp;      DD      18= 99447441,1899447441,1899447441,1899447441

+ &n= bsp;      DD      30= 49323471,3049323471,3049323471,3049323471

+ &n= bsp;      DD      30= 49323471,3049323471,3049323471,3049323471

+ &n= bsp;      DD      39= 21009573,3921009573,3921009573,3921009573

+ &n= bsp;      DD      39= 21009573,3921009573,3921009573,3921009573

+ &n= bsp;      DD      96= 1987163,961987163,961987163,961987163

+  =       DD      961987= 163,961987163,961987163,961987163

+  &nbs= p;     DD      1508970993= ,1508970993,1508970993,1508970993

+  &nbs= p;     DD      1508970993= ,1508970993,1508970993,1508970993

+  &nbs= p;     DD      2453635748= ,2453635748,2453635748,2453635748

+  &nbs= p;     DD      2453635748= ,2453635748,2453635748,2453635748

+  &nbs= p;     DD      2870763221= ,2870763221,2870763221,2870763221

+  &nbs= p;     DD      2870763221= ,2870763221,2870763221,2870763221

+  &nbs= p;     DD      3624381080= ,3624381080,3624381080,3624381080

+  &nbs= p;     DD      3624381080= ,3624381080,3624381080,3624381080

+  &nbs= p;     DD      310598401,= 310598401,310598401,310598401

+   &n= bsp;    DD      310598401,3105= 98401,310598401,310598401

+    =     DD      607225278,60722527= 8,607225278,607225278

+    &nbs= p;   DD      607225278,607225278,60= 7225278,607225278

+     &n= bsp;  DD      1426881987,1426881987,1426= 881987,1426881987

+     &n= bsp;  DD      1426881987,1426881987,1426= 881987,1426881987

+     &n= bsp;  DD      1925078388,1925078388,1925= 078388,1925078388

+     &n= bsp;  DD      1925078388,1925078388,1925= 078388,1925078388

+     &n= bsp;  DD      2162078206,2162078206,2162= 078206,2162078206

+     &n= bsp;  DD      2162078206,2162078206,2162= 078206,2162078206

+     &n= bsp;  DD      2614888103,2614888103,2614= 888103,2614888103

+     &n= bsp;  DD      2614888103,2614888103,2614= 888103,2614888103

+     &n= bsp;  DD      3248222580,3248222580,3248= 222580,3248222580

+     &n= bsp;  DD      3248222580,3248222580,3248= 222580,3248222580

+     &n= bsp;  DD      3835390401,3835390401,3835= 390401,3835390401

+     &n= bsp;  DD      3835390401,3835390401,3835= 390401,3835390401

+     &n= bsp;  DD      4022224774,4022224774,4022= 224774,4022224774

+     &n= bsp;  DD      4022224774,4022224774,4022= 224774,4022224774

+     &n= bsp;  DD      264347078,264347078,264347= 078,264347078

+      =   DD      264347078,264347078,264347078,= 264347078

+      &nbs= p; DD      604807628,604807628,604807628,6048= 07628

+       &n= bsp;DD      604807628,604807628,604807628,60480762= 8

+        = DD      770255983,770255983,770255983,770255983
+        DD &= nbsp;    770255983,770255983,770255983,770255983

+        DD  = ;    1249150122,1249150122,1249150122,1249150122

+        DD  = ;    1249150122,1249150122,1249150122,1249150122

+        DD  = ;    1555081692,1555081692,1555081692,1555081692

+        DD  = ;    1555081692,1555081692,1555081692,1555081692

+        DD  = ;    1996064986,1996064986,1996064986,1996064986

+        DD  = ;    1996064986,1996064986,1996064986,1996064986

+        DD  = ;    2554220882,2554220882,2554220882,2554220882

+        DD  = ;    2554220882,2554220882,2554220882,2554220882

+        DD  = ;    2821834349,2821834349,2821834349,2821834349

+        DD  = ;    2821834349,2821834349,2821834349,2821834349

+        DD  = ;    2952996808,2952996808,2952996808,2952996808

+        DD  = ;    2952996808,2952996808,2952996808,2952996808

+        DD  = ;    3210313671,3210313671,3210313671,3210313671

+        DD  = ;    3210313671,3210313671,3210313671,3210313671

+        DD  = ;    3336571891,3336571891,3336571891,3336571891

+        DD  = ;    3336571891,3336571891,3336571891,3336571891

+        DD  = ;    3584528711,3584528711,3584528711,3584528711

+        DD  = ;    3584528711,3584528711,3584528711,3584528711

+        DD  = ;    113926993,113926993,113926993,113926993

+        DD  =     113926993,113926993,113926993,113926993

+        DD  &nbs= p;   338241895,338241895,338241895,338241895
<= br class=3D"">+        DD   &n= bsp;  338241895,338241895,338241895,338241895

+        DD    =   666307205,666307205,666307205,666307205

+        DD    &nb= sp; 666307205,666307205,666307205,666307205

+        DD     &= nbsp;773529912,773529912,773529912,773529912

+=        DD      = ;773529912,773529912,773529912,773529912

+ &nb= sp;      DD      129= 4757372,1294757372,1294757372,1294757372

+ &nb= sp;      DD      129= 4757372,1294757372,1294757372,1294757372

+ &nb= sp;      DD      139= 6182291,1396182291,1396182291,1396182291

+ &nb= sp;      DD      139= 6182291,1396182291,1396182291,1396182291

+ &nb= sp;      DD      169= 5183700,1695183700,1695183700,1695183700

+ &nb= sp;      DD      169= 5183700,1695183700,1695183700,1695183700

+ &nb= sp;      DD      198= 6661051,1986661051,1986661051,1986661051

+ &nb= sp;      DD      198= 6661051,1986661051,1986661051,1986661051

+ &nb= sp;      DD      217= 7026350,2177026350,2177026350,2177026350

+ &nb= sp;      DD      217= 7026350,2177026350,2177026350,2177026350

+ &nb= sp;      DD      245= 6956037,2456956037,2456956037,2456956037

+ &nb= sp;      DD      245= 6956037,2456956037,2456956037,2456956037

+ &nb= sp;      DD      273= 0485921,2730485921,2730485921,2730485921

+ &nb= sp;      DD      273= 0485921,2730485921,2730485921,2730485921

+ &nb= sp;      DD      282= 0302411,2820302411,2820302411,2820302411

+ &nb= sp;      DD      282= 0302411,2820302411,2820302411,2820302411

+ &nb= sp;      DD      325= 9730800,3259730800,3259730800,3259730800

+ &nb= sp;      DD      325= 9730800,3259730800,3259730800,3259730800

+ &nb= sp;      DD      334= 5764771,3345764771,3345764771,3345764771

+ &nb= sp;      DD      334= 5764771,3345764771,3345764771,3345764771

+ &nb= sp;      DD      351= 6065817,3516065817,3516065817,3516065817

+ &nb= sp;      DD      351= 6065817,3516065817,3516065817,3516065817

+ &nb= sp;      DD      360= 0352804,3600352804,3600352804,3600352804

+ &nb= sp;      DD      360= 0352804,3600352804,3600352804,3600352804

+ &nb= sp;      DD      409= 4571909,4094571909,4094571909,4094571909

+ &nb= sp;      DD      409= 4571909,4094571909,4094571909,4094571909

+ &nb= sp;      DD      275= 423344,275423344,275423344,275423344

+  &= nbsp;     DD      2754233= 44,275423344,275423344,275423344

+   = ;     DD      430227734,4= 30227734,430227734,430227734

+   &nb= sp;    DD      430227734,43022= 7734,430227734,430227734

+    &= nbsp;   DD      506948616,506948616= ,506948616,506948616

+     = ;   DD      506948616,506948616,506= 948616,506948616

+     &nb= sp;  DD      659060556,659060556,6590605= 56,659060556

+      &= nbsp; DD      659060556,659060556,659060556,6= 59060556

+       = ; DD      883997877,883997877,883997877,88399= 7877

+       &nb= sp;DD      883997877,883997877,883997877,883997877=

+        D= D      958139571,958139571,958139571,958139571

+        DD &n= bsp;    958139571,958139571,958139571,958139571

+        DD  =     1322822218,1322822218,1322822218,1322822218

+        DD  =     1322822218,1322822218,1322822218,1322822218

+        DD  =     1537002063,1537002063,1537002063,1537002063

+        DD  =     1537002063,1537002063,1537002063,1537002063

+        DD  =     1747873779,1747873779,1747873779,1747873779

+        DD  =     1747873779,1747873779,1747873779,1747873779

+        DD  =     1955562222,1955562222,1955562222,1955562222

+        DD  =     1955562222,1955562222,1955562222,1955562222

+        DD  =     2024104815,2024104815,2024104815,2024104815

+        DD  =     2024104815,2024104815,2024104815,2024104815

+        DD  =     2227730452,2227730452,2227730452,2227730452

+        DD  =     2227730452,2227730452,2227730452,2227730452

+        DD  =     2361852424,2361852424,2361852424,2361852424

+        DD  =     2361852424,2361852424,2361852424,2361852424

+        DD  =     2428436474,2428436474,2428436474,2428436474

+        DD  =     2428436474,2428436474,2428436474,2428436474

+        DD  =     2756734187,2756734187,2756734187,2756734187

+        DD  =     2756734187,2756734187,2756734187,2756734187

+        DD  =     3204031479,3204031479,3204031479,3204031479

+        DD  =     3204031479,3204031479,3204031479,3204031479

+        DD  =     3329325298,3329325298,3329325298,3329325298

+        DD  =     3329325298,3329325298,3329325298,3329325298

+$L$pbswap:

+  &nbs= p;     DD      0x00010203= ,0x04050607,0x08090a0b,0x0c0d0e0f

+  &nbs= p;     DD      0x00010203= ,0x04050607,0x08090a0b,0x0c0d0e0f

+K256_shaext= :

+        = DD      0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba= 5

+        = DD      0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed= 5

+        = DD      0xd807aa98,0x12835b01,0x243185be,0x550c7dc= 3

+        = DD      0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf17= 4

+        = DD      0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1c= c

+        = DD      0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988d= a

+        = DD      0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc= 7

+        = DD      0xc6e00bf3,0xd5a79147,0x06ca6351,0x1429296= 7

+        = DD      0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d1= 3

+        = DD      0x650a7354,0x766a0abb,0x81c2c92e,0x92722c8= 5

+        = DD      0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a= 3

+        = DD      0xd192e819,0xd6990624,0xf40e3585,0x106aa07= 0

+        = DD      0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb= 5

+        = DD      0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff= 3

+        = DD      0x748f82ee,0x78a5636f,0x84c87814,0x8cc7020= 8

+        = DD      0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f= 2

+DB      83,72,65,5= 0,53,54,32,109,117,108,116,105,45,98,108,111

+= DB      99,107,32,116,114,97,110,115,102,111,114,1= 09,32,102,111,114

+DB     =  32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71

+DB      65,77,83,32,98,121,32,60,97,112,= 112,114,111,64,111,112

+DB    &= nbsp; 101,110,115,115,108,46,111,114,103,62,0

+EXTERN  __imp_RtlVirtualUnwind

+<= br class=3D"">
+ALIGN   16

+se_handler:

+     =    push    rsi

+=        push    rdi

+        push &n= bsp;  rbx

+     =    push    rbp

+=        push    r12

+        push &n= bsp;  r13

+     =    push    r14

+=        push    r15

+        pushfq<= br class=3D"">
+        su= b     rsp,64

+

+        mov  &nb= sp;  rax,QWORD[120+r8]

+   = ;     mov     rbx,QWORD[248+r8= ]

+

+   = ;     mov     rsi,QWORD[8+r9]<= br class=3D"">
+        mo= v     r11,QWORD[56+r9]

+
+        mov=     r10d,DWORD[r11]

+ &nb= sp;      lea     r10,[r10= *1+rsi]

+       =  cmp     rbx,r10

+ &n= bsp;      jb      NE= AR $L$in_prologue

+

+        mov     = rax,QWORD[152+r8]

+

+        mov     = r10d,DWORD[4+r11]

+     &n= bsp;  lea     r10,[r10*1+rsi]
<= br class=3D"">+        cmp   &= nbsp; rbx,r10

+     &= nbsp;  jae     NEAR $L$in_prologue

+

+    &n= bsp;   mov     rax,QWORD[272+rax]

+

+    &= nbsp;   mov     rbx,QWORD[((-8))+rax]
+        mov =     rbp,QWORD[((-16))+rax]

+        mov     QW= ORD[144+r8],rbx

+     &nbs= p;  mov     QWORD[160+r8],rbp
<= br class=3D"">+

+     &nbs= p;  lea     rsi,[((-24-160))+rax]

+        lea  &nb= sp;  rdi,[512+r8]

+   &nbs= p;    mov     ecx,20
=
+        DD   &= nbsp;  0xa548f3fc

+
+$L$in_prologue:

+   &n= bsp;    mov     rdi,QWORD[8+rax]
+        mov =     rsi,QWORD[16+rax]

+ &n= bsp;      mov     QWORD[1= 52+r8],rax

+      &nb= sp; mov     QWORD[168+r8],rsi

+        mov    =  QWORD[176+r8],rdi

+

+        mov    =  rdi,QWORD[40+r9]

+    &nb= sp;   mov     rsi,r8

+        mov    = ; ecx,154

+      = ;  DD      0xa548f3fc

+

+      &= nbsp; mov     rsi,r9

= +        xor     rcx= ,rcx

+       &nb= sp;mov     rdx,QWORD[8+rsi]

+        mov     r= 8,QWORD[rsi]

+      &= nbsp; mov     r9,QWORD[16+rsi]

+        mov    = ; r10,QWORD[40+rsi]

+    &= nbsp;   lea     r11,[56+rsi]

+        lea  &nb= sp;  r12,[24+rsi]

+   &nbs= p;    mov     QWORD[32+rsp],r10

+        mov &= nbsp;   QWORD[40+rsp],r11

+ &nb= sp;      mov     QWORD[48= +rsp],r12

+      &nbs= p; mov     QWORD[56+rsp],rcx

+        call    = QWORD[__imp_RtlVirtualUnwind]

+
=
+        mov   =   eax,1

+     &n= bsp;  add     rsp,64

+        popfq

+        pop   &nbs= p; r15

+      &n= bsp; pop     r14

+ &n= bsp;      pop     r13

+        pop &= nbsp;   r12

+    = ;    pop     rbp

+        pop   &nbs= p; rbx

+      &n= bsp; pop     rdi

+ &n= bsp;      pop     rsi

+        DB &n= bsp;    0F3h,0C3h       &= nbsp;       ;repret

+

+section .pdata rdata align=3D4

+ALIGN   4

+        DD     &nb= sp;$L$SEH_begin_sha256_multi_block wrt ..imagebase

+        DD    &nb= sp; $L$SEH_end_sha256_multi_block wrt ..imagebase

+        DD    &= nbsp; $L$SEH_info_sha256_multi_block wrt ..imagebase
+        DD   &nbs= p;  $L$SEH_begin_sha256_multi_block_shaext wrt ..imagebase

+        DD  = ;    $L$SEH_end_sha256_multi_block_shaext wrt ..imageba= se

+        = ;DD      $L$SEH_info_sha256_multi_block_shaext wrt= ..imagebase

+section .xdata rdata align=3D8
+ALIGN   8

+$L$SEH_info_sha256_multi_block:

+DB  =     9,0,0,0

+   =      DD      se_handler w= rt ..imagebase

+      = ;  DD      $L$body wrt ..imagebase,$L$ep= ilogue wrt ..imagebase

+$L$SEH_info_sha256_mul= ti_block_shaext:

+DB     &= nbsp;9,0,0,0

+      &= nbsp; DD      se_handler wrt ..imagebase

+        DD &nb= sp;    $L$body_shaext wrt ..imagebase,$L$epilogue_shaex= t
wrt ..imagebase

diff --git a/C= ryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-
x86_64.nasm
b/CryptoPkg/Library/OpensslLib/= X64/crypto/sha/sha256-x86_64.nasm
new file mode 100644
index 0000000000..70e49862a3
--- /dev/null
+++ b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-
x86_64.nasm
@@ -0,0 +1,3313 @@
+; WARNING: do not edit!

+; Generated from openssl/crypto/sha/asm/sha512-x86_6= 4.pl

+;

+; Copyri= ght 2005-2020 The OpenSSL Project Authors. All Rights
Reserved.

+;

+; Licensed= under the OpenSSL license (the "License").  You may not use

+; this file except in compliance with the License. &= nbsp;You can obtain a
= copy

+; in= the file LICENSE in the source distribution or at

+; https://www.openssl.org/source/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%define ZMMWORD

+sect= ion .text code align=3D64

+

+

+EXTERN  OPENSSL_ia32cap_P
+global  sha256_block_data_order

+

+ALIGN   16<= br class=3D"">
+sha256_block_data_order:

+        mov    =  QWORD[8+rsp],rdi        ;WIN64 pro= logue

+       &n= bsp;mov     QWORD[16+rsp],rsi

+        mov    &n= bsp;rax,rsp

+$L$SEH_begin_sha256_block_data_or= der:

+       &nb= sp;mov     rdi,rcx

+  = ;      mov     rsi,rdx
+        mov =     rdx,r8

+

+

+

+        lea     = r11,[OPENSSL_ia32cap_P]

+    &n= bsp;   mov     r9d,DWORD[r11]

+        mov  = ;   r10d,DWORD[4+r11]

+  &= nbsp;     mov     r11d,DWORD[8= +r11]

+       &n= bsp;test    r11d,536870912

+ &n= bsp;      jnz     NEAR _s= haext_shortcut

+      = ;  test    r10d,512

+=        jnz     NEAR= $L$ssse3_shortcut

+     &= nbsp;  mov     rax,rsp

+

+       = ; push    rbx

+

+        push &nbs= p;  rbp

+

+        push    r12
+

+   &n= bsp;    push    r13

+

+      &nb= sp; push    r14

+

+        push &nbs= p;  r15

+

+        shl     = rdx,4

+       &n= bsp;sub     rsp,16*4+4*8

+=        lea     rdx,= [rdx*4+rsi]

+      &n= bsp; and     rsp,-64

= +        mov     QWO= RD[((64+0))+rsp],rdi

+     = ;   mov     QWORD[((64+8))+rsp],rsi

+        mov &n= bsp;   QWORD[((64+16))+rsp],rdx

+        mov     QW= ORD[88+rsp],rax

+

+$L$prologue:

+

= +        mov     eax= ,DWORD[rdi]

+      &n= bsp; mov     ebx,DWORD[4+rdi]

+        mov    =  ecx,DWORD[8+rdi]

+    &nb= sp;   mov     edx,DWORD[12+rdi]

+        mov  = ;   r8d,DWORD[16+rdi]

+  &= nbsp;     mov     r9d,DWORD[20= +rdi]

+       &n= bsp;mov     r10d,DWORD[24+rdi]

+        mov    &n= bsp;r11d,DWORD[28+rdi]

+    &nb= sp;   jmp     NEAR $L$loop

+

+ALIGN   16

+$L$loop:

+   = ;     mov     edi,ebx

+        lea  = ;   rbp,[K256]

+   &n= bsp;    xor     edi,ecx

+        mov  &nb= sp;  r12d,DWORD[rsi]

+   &= nbsp;    mov     r13d,r8d

+        mov  = ;   r14d,eax

+   &nbs= p;    bswap   r12d

+        ror     = r13d,14

+       =  mov     r15d,r9d

+
+        xor=     r13d,r8d

+  &nbs= p;     ror     r14d,9

+        xor  = ;   r15d,r10d

+
<= br class=3D"">+        mov   &= nbsp; DWORD[rsp],r12d

+    = ;    xor     r14d,eax

+        and   = ;  r15d,r8d

+

+        ror    &n= bsp;r13d,5

+      &nb= sp; add     r12d,r11d

+        xor     r1= 5d,r10d

+

+  = ;      ror     r14d,11
+        xor =     r13d,r8d

+   = ;     add     r12d,r15d

+

+    &= nbsp;   mov     r15d,eax
<= br class=3D"">+        add   &= nbsp; r12d,DWORD[rbp]

+    = ;    xor     r14d,eax

+

+     &n= bsp;  xor     r15d,ebx

+        ror    &n= bsp;r13d,6

+      &nb= sp; mov     r11d,ebx

= +

+        = and     edi,r15d

+  &= nbsp;     ror     r14d,2

+        add &nb= sp;   r12d,r13d

+

+        xor   = ;  r11d,edi

+    &nbs= p;   add     edx,r12d

+        add   &nbs= p; r11d,r12d

+

+        lea     = rbp,[4+rbp]

+      &n= bsp; add     r11d,r14d

+        mov     r= 12d,DWORD[4+rsi]

+     &nb= sp;  mov     r13d,edx

+        mov    &n= bsp;r14d,r11d

+      =   bswap   r12d

+  &nb= sp;     ror     r13d,14

+        mov &nbs= p;   edi,r8d

+
+        xor   &n= bsp; r13d,edx

+     &= nbsp;  ror     r14d,9

+        xor    &n= bsp;edi,r9d

+

+ &= nbsp;      mov     DWORD[= 4+rsp],r12d

+      &n= bsp; xor     r14d,r11d

+        and     e= di,edx

+

+  =       ror     r13d,5

+        add &n= bsp;   r12d,r10d

+   =      xor     edi,r9d

+

+    &n= bsp;   ror     r14d,11
+        xor   &nb= sp; r13d,edx

+     &n= bsp;  add     r12d,edi

+

+       = ; mov     edi,r11d

+ =        add     r12d,= DWORD[rbp]

+      &nb= sp; xor     r14d,r11d

+

+        = ;xor     edi,eax

+  &= nbsp;     ror     r13d,6

+        mov &nb= sp;   r10d,eax

+
=
+        and   =   r15d,edi

+     = ;   ror     r14d,2

+        add    &= nbsp;r12d,r13d

+

= +        xor     r10= d,r15d

+       &= nbsp;add     ecx,r12d

+ &n= bsp;      add     r10d,r1= 2d

+

+  &nbs= p;     lea     rbp,[4+rbp]

+        add &= nbsp;   r10d,r14d

+   = ;     mov     r12d,DWORD[8+rsi= ]

+        = mov     r13d,ecx

+  &= nbsp;     mov     r14d,r10d
+        bswa= p   r12d

+     &= nbsp;  ror     r13d,14

+        mov    &n= bsp;r15d,edx

+

+ =        xor     r13d,= ecx

+       &nbs= p;ror     r14d,9

+  &= nbsp;     xor     r15d,r8d

+

+   &nbs= p;    mov     DWORD[8+rsp],r12d

+        xor &= nbsp;   r14d,r10d

+   = ;     and     r15d,ecx

+

+    &n= bsp;   ror     r13d,5

+        add   &nbs= p; r12d,r9d

+     &nb= sp;  xor     r15d,r8d

+

+       = ; ror     r14d,11

+ &= nbsp;      xor     r13d,e= cx

+        = ;add     r12d,r15d

+

+        mov &nb= sp;   r15d,r10d

+   &= nbsp;    add     r12d,DWORD[rbp]
+        xor =     r14d,r10d

+

+        xor  = ;   r15d,r11d

+   &nb= sp;    ror     r13d,6

+        mov   = ;  r9d,r11d

+

+        and    &n= bsp;edi,r15d

+      &= nbsp; ror     r14d,2

= +        add     r12= d,r13d

+

+  =       xor     r9d,edi

+        add &= nbsp;   ebx,r12d

+   =      add     r9d,r12d

+

+    &n= bsp;   lea     rbp,[4+rbp]

+        add   = ;  r9d,r14d

+    &nbs= p;   mov     r12d,DWORD[12+rsi]

+        mov  = ;   r13d,ebx

+   &nbs= p;    mov     r14d,r9d

+        bswap  &n= bsp;r12d

+       = ; ror     r13d,14

+ &= nbsp;      mov     edi,ec= x

+

+   = ;     xor     r13d,ebx

+        ror  = ;   r14d,9

+    =     xor     edi,edx
<= br class=3D"">+

+     &nbs= p;  mov     DWORD[12+rsp],r12d
=
+        xor   =   r14d,r9d

+     = ;   and     edi,ebx

+

+      &nb= sp; ror     r13d,5

+ =        add     r12d,= r8d

+       &nbs= p;xor     edi,edx

+

+        ror &nbs= p;   r14d,11

+   &nbs= p;    xor     r13d,ebx

+        add  &nbs= p;  r12d,edi

+

+        mov    &= nbsp;edi,r9d

+      &= nbsp; add     r12d,DWORD[rbp]

+        xor    =  r14d,r9d

+

= +        xor     edi= ,r10d

+       &n= bsp;ror     r13d,6

+  = ;      mov     r8d,r10d
+

+   &n= bsp;    and     r15d,edi

+        ror  = ;   r14d,2

+    =     add     r12d,r13d

+

+     &n= bsp;  xor     r8d,r15d

+        add    &n= bsp;eax,r12d

+      &= nbsp; add     r8d,r12d

+

+       &nbs= p;lea     rbp,[20+rbp]

+ &= nbsp;      add     r8d,r1= 4d

+        = ;mov     r12d,DWORD[16+rsi]

+        mov     r= 13d,eax

+       =  mov     r14d,r8d

+ &= nbsp;      bswap   r12d

+        ror  &nb= sp;  r13d,14

+    &nb= sp;   mov     r15d,ebx
+

+      =   xor     r13d,eax

+        ror     = r14d,9

+       &= nbsp;xor     r15d,ecx

+
+        mov =     DWORD[16+rsp],r12d

+ &= nbsp;      xor     r14d,r= 8d

+        = ;and     r15d,eax

+

+        ror &nbs= p;   r13d,5

+    = ;    add     r12d,edx

+        xor   = ;  r15d,ecx

+

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r13d,eax

+        add     r1= 2d,r15d

+

+  = ;      mov     r15d,r8d
+        add=     r12d,DWORD[rbp]

+ &nb= sp;      xor     r14d,r8d=

+

+   =      xor     r15d,r9d

+        ror  = ;   r13d,6

+    =     mov     edx,r9d
<= br class=3D"">+

+     &nbs= p;  and     edi,r15d

+        ror    &n= bsp;r14d,2

+      &nb= sp; add     r12d,r13d

+

+        = ;xor     edx,edi

+  &= nbsp;     add     r11d,r12d
+        add =     edx,r12d

+

+        lea  &nb= sp;  rbp,[4+rbp]

+    = ;    add     edx,r14d

+        mov   = ;  r12d,DWORD[20+rsi]

+   =      mov     r13d,r11d

+        mov  = ;   r14d,edx

+   &nbs= p;    bswap   r12d

+        ror     = r13d,14

+       =  mov     edi,eax

+
+        xor =     r13d,r11d

+  &nbs= p;     ror     r14d,9

+        xor  = ;   edi,ebx

+
+        mov   &nb= sp; DWORD[20+rsp],r12d

+   &nbs= p;    xor     r14d,edx

+        and  &nbs= p;  edi,r11d

+

+        ror    &= nbsp;r13d,5

+      &n= bsp; add     r12d,ecx

+        xor     ed= i,ebx

+

+  &= nbsp;     ror     r14d,11

+        xor &n= bsp;   r13d,r11d

+   =      add     r12d,edi

+

+    &n= bsp;   mov     edi,edx
+        add   &nb= sp; r12d,DWORD[rbp]

+    &= nbsp;   xor     r14d,edx
<= br class=3D"">+

+     &nbs= p;  xor     edi,r8d

+        ror    &n= bsp;r13d,6

+      &nb= sp; mov     ecx,r8d

+=

+        a= nd     r15d,edi

+  &n= bsp;     ror     r14d,2

+        add &nbs= p;   r12d,r13d

+
=
+        xor   =   ecx,r15d

+     = ;   add     r10d,r12d

+        add   &nbs= p; ecx,r12d

+

+        lea     r= bp,[4+rbp]

+      &nb= sp; add     ecx,r14d

= +        mov     r12= d,DWORD[24+rsi]

+     &nbs= p;  mov     r13d,r10d

+        mov    &n= bsp;r14d,ecx

+      &= nbsp; bswap   r12d

+  &nbs= p;     ror     r13d,14

+        mov  = ;   r15d,r11d

+
<= br class=3D"">+        xor   &= nbsp; r13d,r10d

+     = ;   ror     r14d,9

+        xor    &= nbsp;r15d,eax

+

+=        mov     DWOR= D[24+rsp],r12d

+      = ;  xor     r14d,ecx

+        and    &n= bsp;r15d,r10d

+

+=        ror     r13d= ,5

+        = ;add     r12d,ebx

+  =       xor     r15d,eax
+

+   &nb= sp;    ror     r14d,11

+        xor  &nbs= p;  r13d,r10d

+    &n= bsp;   add     r12d,r15d
<= br class=3D"">+

+     &nbs= p;  mov     r15d,ecx

+        add    &n= bsp;r12d,DWORD[rbp]

+     =    xor     r14d,ecx

+

+      &nb= sp; xor     r15d,edx

= +        ror     r13= d,6

+       &nbs= p;mov     ebx,edx

+

+        and &nbs= p;   edi,r15d

+   &nb= sp;    ror     r14d,2

+        add   = ;  r12d,r13d

+

+        xor    &= nbsp;ebx,edi

+      &= nbsp; add     r9d,r12d

+        add     e= bx,r12d

+

+  = ;      lea     rbp,[4+rbp= ]

+        = add     ebx,r14d

+  &= nbsp;     mov     r12d,DWORD[2= 8+rsi]

+       &= nbsp;mov     r13d,r9d

+ &n= bsp;      mov     r14d,eb= x

+        = bswap   r12d

+    &nb= sp;   ror     r13d,14

+        mov   &nbs= p; edi,r10d

+

+        xor     r= 13d,r9d

+       =  ror     r14d,9

+ &nb= sp;      xor     edi,r11d=

+

+   =      mov     DWORD[28+rsp],r12= d

+        = xor     r14d,ebx

+  &= nbsp;     and     edi,r9d

+

+    = ;    ror     r13d,5
<= br class=3D"">+        add   &= nbsp; r12d,eax

+     =    xor     edi,r11d

+

+      &nb= sp; ror     r14d,11

+=        xor     r13d= ,r9d

+       &nb= sp;add     r12d,edi

+

+        mov &n= bsp;   edi,ebx

+   &n= bsp;    add     r12d,DWORD[rbp]

+        xor &= nbsp;   r14d,ebx

+

+        xor  &nbs= p;  edi,ecx

+    &nbs= p;   ror     r13d,6

+        mov    =  eax,ecx

+

+=        and     r15d= ,edi

+       &nb= sp;ror     r14d,2

+  =       add     r12d,r13d
+

+   &n= bsp;    xor     eax,r15d

+        add  = ;   r8d,r12d

+   &nbs= p;    add     eax,r12d

+

+     &= nbsp;  lea     rbp,[20+rbp]
+        add   &nb= sp; eax,r14d

+     &n= bsp;  mov     r12d,DWORD[32+rsi]

+        mov  &nbs= p;  r13d,r8d

+    &nb= sp;   mov     r14d,eax
+        bswap   r= 12d

+       &nbs= p;ror     r13d,14

+  =       mov     r15d,r9d
+

+   &nb= sp;    xor     r13d,r8d

+        ror  &nb= sp;  r14d,9

+    &nbs= p;   xor     r15d,r10d
+

+      =   mov     DWORD[32+rsp],r12d
+        xor   &n= bsp; r14d,eax

+     &= nbsp;  and     r15d,r8d

+

+      &nbs= p; ror     r13d,5

+ &= nbsp;      add     r12d,r= 11d

+       &nbs= p;xor     r15d,r10d

+

+        ror &n= bsp;   r14d,11

+   &n= bsp;    xor     r13d,r8d

+        add  = ;   r12d,r15d

+
<= br class=3D"">+        mov   &= nbsp; r15d,eax

+     =    add     r12d,DWORD[rbp]

+        xor   = ;  r14d,eax

+

+        xor    &n= bsp;r15d,ebx

+      &= nbsp; ror     r13d,6

= +        mov     r11= d,ebx

+

+  &= nbsp;     and     edi,r15d

+        ror &= nbsp;   r14d,2

+   &n= bsp;    add     r12d,r13d

+

+    &n= bsp;   xor     r11d,edi
+        add   &n= bsp; edx,r12d

+     &= nbsp;  add     r11d,r12d

+

+      &nb= sp; lea     rbp,[4+rbp]

+        add     = r11d,r14d

+      &nbs= p; mov     r12d,DWORD[36+rsi]

+        mov    =  r13d,edx

+      = ;  mov     r14d,r11d

+        bswap   r12d
+        ror=     r13d,14

+   = ;     mov     edi,r8d

+

+    &n= bsp;   xor     r13d,edx
+        ror   &n= bsp; r14d,9

+     &nb= sp;  xor     edi,r9d

+

+       = ; mov     DWORD[36+rsp],r12d

+        xor    &= nbsp;r14d,r11d

+      = ;  and     edi,edx

+

+       &nb= sp;ror     r13d,5

+  =       add     r12d,r10d
+        xor=     edi,r9d

+

+        ror  &nb= sp;  r14d,11

+    &nb= sp;   xor     r13d,edx
+        add   &nb= sp; r12d,edi

+

+        mov     = edi,r11d

+       = ; add     r12d,DWORD[rbp]

+        xor    &n= bsp;r14d,r11d

+

+=        xor     edi,= eax

+       &nbs= p;ror     r13d,6

+  &= nbsp;     mov     r10d,eax

+

+   &nbs= p;    and     r15d,edi

+        ror  &nbs= p;  r14d,2

+     = ;   add     r12d,r13d

+

+      &= nbsp; xor     r10d,r15d

+        add     = ecx,r12d

+       = ; add     r10d,r12d

+=

+        l= ea     rbp,[4+rbp]

+  = ;      add     r10d,r14d<= br class=3D"">
+        mo= v     r12d,DWORD[40+rsi]

+=        mov     r13d= ,ecx

+       &nb= sp;mov     r14d,r10d

+ &nb= sp;      bswap   r12d

+        ror   = ;  r13d,14

+     = ;   mov     r15d,edx

+

+      &n= bsp; xor     r13d,ecx

+        ror     r1= 4d,9

+       &nb= sp;xor     r15d,r8d

+

+        mov &n= bsp;   DWORD[40+rsp],r12d

+ &nb= sp;      xor     r14d,r10= d

+        = and     r15d,ecx

+

+        ror  = ;   r13d,5

+    =     add     r12d,r9d
=
+        xor   =   r15d,r8d

+

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r13d,ecx

+        add     r1= 2d,r15d

+

+  = ;      mov     r15d,r10d<= br class=3D"">
+        ad= d     r12d,DWORD[rbp]

+ &n= bsp;      xor     r14d,r1= 0d

+

+  &nbs= p;     xor     r15d,r11d

+        ror &nb= sp;   r13d,6

+   &nbs= p;    mov     r9d,r11d

+

+     &= nbsp;  and     edi,r15d

+        ror    &= nbsp;r14d,2

+      &n= bsp; add     r12d,r13d

+

+       &nbs= p;xor     r9d,edi

+  =       add     ebx,r12d
+        add =     r9d,r12d

+

+        lea  &nb= sp;  rbp,[4+rbp]

+    = ;    add     r9d,r14d

+        mov   = ;  r12d,DWORD[44+rsi]

+   =      mov     r13d,ebx

+        mov  = ;   r14d,r9d

+   &nbs= p;    bswap   r12d

+        ror     = r13d,14

+       =  mov     edi,ecx

+
+        xor =     r13d,ebx

+   = ;     ror     r14d,9

+        xor  = ;   edi,edx

+
+        mov   &nb= sp; DWORD[44+rsp],r12d

+   &nbs= p;    xor     r14d,r9d

+        and  &nbs= p;  edi,ebx

+

+        ror    &n= bsp;r13d,5

+      &nb= sp; add     r12d,r8d

= +        xor     edi= ,edx

+

+  &n= bsp;     ror     r14d,11

+        xor &nb= sp;   r13d,ebx

+   &n= bsp;    add     r12d,edi

+

+    &n= bsp;   mov     edi,r9d
+        add   &nb= sp; r12d,DWORD[rbp]

+    &= nbsp;   xor     r14d,r9d
<= br class=3D"">+

+     &nbs= p;  xor     edi,r10d

+        ror    &n= bsp;r13d,6

+      &nb= sp; mov     r8d,r10d

= +

+        = and     r15d,edi

+  &= nbsp;     ror     r14d,2

+        add &nb= sp;   r12d,r13d

+

+        xor   = ;  r8d,r15d

+    &nbs= p;   add     eax,r12d

+        add   &nbs= p; r8d,r12d

+

+        lea     r= bp,[20+rbp]

+      &n= bsp; add     r8d,r14d

+        mov     r1= 2d,DWORD[48+rsi]

+     &nb= sp;  mov     r13d,eax

+        mov    &n= bsp;r14d,r8d

+      &= nbsp; bswap   r12d

+  &nbs= p;     ror     r13d,14

+        mov  = ;   r15d,ebx

+
+        xor   &n= bsp; r13d,eax

+     &= nbsp;  ror     r14d,9

+        xor    &n= bsp;r15d,ecx

+

+ =        mov     DWORD= [48+rsp],r12d

+      =   xor     r14d,r8d

+        and     = r15d,eax

+

+ &nbs= p;      ror     r13d,5
+        add =     r12d,edx

+   = ;     xor     r15d,ecx

+

+    &n= bsp;   ror     r14d,11
+        xor   &nb= sp; r13d,eax

+     &n= bsp;  add     r12d,r15d

+

+      &nbs= p; mov     r15d,r8d

+=        add     r12d= ,DWORD[rbp]

+      &n= bsp; xor     r14d,r8d

+

+        = ;xor     r15d,r9d

+  =       ror     r13d,6

+        mov &n= bsp;   edx,r9d

+
=
+        and   =   edi,r15d

+     = ;   ror     r14d,2

+        add    &= nbsp;r12d,r13d

+

= +        xor     edx= ,edi

+       &nb= sp;add     r11d,r12d

+ &nb= sp;      add     edx,r12d=

+

+   =      lea     rbp,[4+rbp]

+        add &nb= sp;   edx,r14d

+   &n= bsp;    mov     r12d,DWORD[52+rsi]<= br class=3D"">
+        mo= v     r13d,r11d

+  &n= bsp;     mov     r14d,edx

+        bswap =   r12d

+     &nb= sp;  ror     r13d,14

+        mov    &n= bsp;edi,eax

+

+ &= nbsp;      xor     r13d,r= 11d

+       &nbs= p;ror     r14d,9

+  &= nbsp;     xor     edi,ebx

+

+    = ;    mov     DWORD[52+rsp],r12d

+        xor &= nbsp;   r14d,edx

+   =      and     edi,r11d

+

+    &n= bsp;   ror     r13d,5

+        add   &nbs= p; r12d,ecx

+     &nb= sp;  xor     edi,ebx

+

+       = ; ror     r14d,11

+ &= nbsp;      xor     r13d,r= 11d

+       &nbs= p;add     r12d,edi

+

+        mov &nb= sp;   edi,edx

+   &nb= sp;    add     r12d,DWORD[rbp]

+        xor &n= bsp;   r14d,edx

+

+        xor   = ;  edi,r8d

+     = ;   ror     r13d,6

+        mov    &= nbsp;ecx,r8d

+

+ =        and     r15d,= edi

+       &nbs= p;ror     r14d,2

+  &= nbsp;     add     r12d,r13d
+

+   &nb= sp;    xor     ecx,r15d

+        add  &nb= sp;  r10d,r12d

+    &= nbsp;   add     ecx,r12d
<= br class=3D"">+

+     &nbs= p;  lea     rbp,[4+rbp]

+        add    &= nbsp;ecx,r14d

+      =   mov     r12d,DWORD[56+rsi]
+        mov   &n= bsp; r13d,r10d

+     =    mov     r14d,ecx

+        bswap   r12d=

+        r= or     r13d,14

+  &nb= sp;     mov     r15d,r11d

+

+    = ;    xor     r13d,r10d

+        ror  &nbs= p;  r14d,9

+     = ;   xor     r15d,eax

+

+      &n= bsp; mov     DWORD[56+rsp],r12d

+        xor   &nbs= p; r14d,ecx

+     &nb= sp;  and     r15d,r10d

+

+       = ; ror     r13d,5

+ &n= bsp;      add     r12d,eb= x

+        = xor     r15d,eax

+

+        ror  = ;   r14d,11

+    = ;    xor     r13d,r10d

+        add  &nbs= p;  r12d,r15d

+

+        mov    =  r15d,ecx

+      = ;  add     r12d,DWORD[rbp]

+        xor   &nbs= p; r14d,ecx

+

+        xor     r= 15d,edx

+       =  ror     r13d,6

+ &nb= sp;      mov     ebx,edx<= br class=3D"">
+

+   &= nbsp;    and     edi,r15d

+        ror  = ;   r14d,2

+    =     add     r12d,r13d

+

+     &n= bsp;  xor     ebx,edi

+        add    &n= bsp;r9d,r12d

+      &= nbsp; add     ebx,r12d

+

+       &nbs= p;lea     rbp,[4+rbp]

+ &n= bsp;      add     ebx,r14= d

+        = mov     r12d,DWORD[60+rsi]

+        mov     r1= 3d,r9d

+       &= nbsp;mov     r14d,ebx

+ &n= bsp;      bswap   r12d

+        ror  &nbs= p;  r13d,14

+    &nbs= p;   mov     edi,r10d

+

+      &= nbsp; xor     r13d,r9d

+        ror     r= 14d,9

+       &n= bsp;xor     edi,r11d

+

+        mov &= nbsp;   DWORD[60+rsp],r12d

+ &n= bsp;      xor     r14d,eb= x

+        = and     edi,r9d

+

+        ror  = ;   r13d,5

+    =     add     r12d,eax
=
+        xor   =   edi,r11d

+

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r13d,r9d

+        add     r1= 2d,edi

+

+  =       mov     edi,ebx

+        add &= nbsp;   r12d,DWORD[rbp]

+  = ;      xor     r14d,ebx
+

+   &n= bsp;    xor     edi,ecx

+        ror  &nb= sp;  r13d,6

+    &nbs= p;   mov     eax,ecx

+

+      &n= bsp; and     r15d,edi

+        ror     r1= 4d,2

+       &nb= sp;add     r12d,r13d

+

+        xor &= nbsp;   eax,r15d

+   =      add     r8d,r12d

+        add  = ;   eax,r12d

+
+        lea   &n= bsp; rbp,[20+rbp]

+    &nb= sp;   jmp     NEAR $L$rounds_16_xx

+ALIGN   16

= +$L$rounds_16_xx:

+     &n= bsp;  mov     r13d,DWORD[4+rsp]

+        mov   = ;  r15d,DWORD[56+rsp]

+

+        mov  &nbs= p;  r12d,r13d

+    &n= bsp;   ror     r13d,11
+        add   &nb= sp; eax,r14d

+     &n= bsp;  mov     r14d,r15d

+        ror    &= nbsp;r15d,2

+

+ &= nbsp;      xor     r13d,r= 12d

+       &nbs= p;shr     r12d,3

+  &= nbsp;     ror     r13d,7

+        xor &nb= sp;   r15d,r14d

+   &= nbsp;    shr     r14d,10

+

+    &n= bsp;   ror     r15d,17
+        xor   &nb= sp; r12d,r13d

+     &= nbsp;  xor     r15d,r14d

+        add    =  r12d,DWORD[36+rsp]

+

+        add    = ; r12d,DWORD[rsp]

+    &nb= sp;   mov     r13d,r8d
+        add   &nb= sp; r12d,r15d

+     &= nbsp;  mov     r14d,eax

+        ror    &= nbsp;r13d,14

+      &= nbsp; mov     r15d,r9d

+

+       &nbs= p;xor     r13d,r8d

+  = ;      ror     r14d,9

+        xor &= nbsp;   r15d,r10d

+

+        mov  &nb= sp;  DWORD[rsp],r12d

+   &= nbsp;    xor     r14d,eax

+        and  = ;   r15d,r8d

+
+        ror   &n= bsp; r13d,5

+     &nb= sp;  add     r12d,r11d

+        xor    &n= bsp;r15d,r10d

+

+=        ror     r14d= ,11

+       &nbs= p;xor     r13d,r8d

+  = ;      add     r12d,r15d<= br class=3D"">
+

+   &= nbsp;    mov     r15d,eax

+        add  = ;   r12d,DWORD[rbp]

+  &nb= sp;     xor     r14d,eax

+

+    =     xor     r15d,ebx
=
+        ror   =   r13d,6

+     &= nbsp;  mov     r11d,ebx

+

+      &nbs= p; and     edi,r15d

+=        ror     r14d= ,2

+        = ;add     r12d,r13d

+

+        xor &nb= sp;   r11d,edi

+   &n= bsp;    add     edx,r12d

+        add  = ;   r11d,r12d

+
<= br class=3D"">+        lea   &= nbsp; rbp,[4+rbp]

+    &nb= sp;   mov     r13d,DWORD[8+rsp]

+        mov  = ;   edi,DWORD[60+rsp]

+

+        mov  = ;   r12d,r13d

+   &nb= sp;    ror     r13d,11

+        add  &nbs= p;  r11d,r14d

+    &n= bsp;   mov     r14d,edi
+        ror   &n= bsp; edi,2

+

+        xor     r1= 3d,r12d

+       =  shr     r12d,3

+ &nb= sp;      ror     r13d,7
+        xor=     edi,r14d

+  &nbs= p;     shr     r14d,10

+

+    &n= bsp;   ror     edi,17

+        xor   &nbs= p; r12d,r13d

+     &n= bsp;  xor     edi,r14d

+        add    &n= bsp;r12d,DWORD[40+rsp]

+

+        add    &= nbsp;r12d,DWORD[4+rsp]

+    &nb= sp;   mov     r13d,edx
+        add   &nb= sp; r12d,edi

+     &n= bsp;  mov     r14d,r11d

+        ror    &= nbsp;r13d,14

+      &= nbsp; mov     edi,r8d

+

+        = ;xor     r13d,edx

+  =       ror     r14d,9

+        xor &n= bsp;   edi,r9d

+
=
+        mov   =   DWORD[4+rsp],r12d

+   &n= bsp;    xor     r14d,r11d

+        and  = ;   edi,edx

+
+        ror   &nb= sp; r13d,5

+     &nbs= p;  add     r12d,r10d

+        xor    &n= bsp;edi,r9d

+

+ &= nbsp;      ror     r14d,1= 1

+        = xor     r13d,edx

+  &= nbsp;     add     r12d,edi

+

+   &nbs= p;    mov     edi,r11d

+        add  &nbs= p;  r12d,DWORD[rbp]

+   &n= bsp;    xor     r14d,r11d

+

+    &n= bsp;   xor     edi,eax
+        ror   &nb= sp; r13d,6

+     &nbs= p;  mov     r10d,eax

+

+       = ; and     r15d,edi

+ =        ror     r14d,= 2

+        = add     r12d,r13d

+

+        xor &nbs= p;   r10d,r15d

+   &n= bsp;    add     ecx,r12d

+        add  = ;   r10d,r12d

+
<= br class=3D"">+        lea   &= nbsp; rbp,[4+rbp]

+    &nb= sp;   mov     r13d,DWORD[12+rsp]

+        mov  = ;   r15d,DWORD[rsp]

+

+        mov  = ;   r12d,r13d

+   &nb= sp;    ror     r13d,11

+        add  &nbs= p;  r10d,r14d

+    &n= bsp;   mov     r14d,r15d
<= br class=3D"">+        ror   &= nbsp; r15d,2

+

+        xor     = r13d,r12d

+      &nbs= p; shr     r12d,3

+ &= nbsp;      ror     r13d,7=

+        x= or     r15d,r14d

+  &= nbsp;     shr     r14d,10

+

+    = ;    ror     r15d,17
=
+        xor   =   r12d,r13d

+    &nbs= p;   xor     r15d,r14d
+        add   &nb= sp; r12d,DWORD[44+rsp]

+
+        add   &n= bsp; r12d,DWORD[8+rsp]

+   &nbs= p;    mov     r13d,ecx

+        add  &nbs= p;  r12d,r15d

+    &n= bsp;   mov     r14d,r10d
<= br class=3D"">+        ror   &= nbsp; r13d,14

+     &= nbsp;  mov     r15d,edx

+

+      &nbs= p; xor     r13d,ecx

+=        ror     r14d= ,9

+        = ;xor     r15d,r8d

+

+        mov &nbs= p;   DWORD[8+rsp],r12d

+  =       xor     r14d,r10d
+        and=     r15d,ecx

+

+        ror  = ;   r13d,5

+    =     add     r12d,r9d
=
+        xor   =   r15d,r8d

+

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r13d,ecx

+        add     r1= 2d,r15d

+

+  = ;      mov     r15d,r10d<= br class=3D"">
+        ad= d     r12d,DWORD[rbp]

+ &n= bsp;      xor     r14d,r1= 0d

+

+  &nbs= p;     xor     r15d,r11d

+        ror &nb= sp;   r13d,6

+   &nbs= p;    mov     r9d,r11d

+

+     &= nbsp;  and     edi,r15d

+        ror    &= nbsp;r14d,2

+      &n= bsp; add     r12d,r13d

+

+       &nbs= p;xor     r9d,edi

+  =       add     ebx,r12d
+        add =     r9d,r12d

+

+        lea  &nb= sp;  rbp,[4+rbp]

+    = ;    mov     r13d,DWORD[16+rsp]

+        mov &= nbsp;   edi,DWORD[4+rsp]

+

+        mov &n= bsp;   r12d,r13d

+   =      ror     r13d,11

+        add  = ;   r9d,r14d

+   &nbs= p;    mov     r14d,edi

+        ror  &nbs= p;  edi,2

+

+        xor    &n= bsp;r13d,r12d

+      =   shr     r12d,3

+        ror     r1= 3d,7

+       &nb= sp;xor     edi,r14d

+ &nbs= p;      shr     r14d,10
+

+   &n= bsp;    ror     edi,17

+        xor  &nbs= p;  r12d,r13d

+    &n= bsp;   xor     edi,r14d
+        add   &n= bsp; r12d,DWORD[48+rsp]

+
<= br class=3D"">+        add   &= nbsp; r12d,DWORD[12+rsp]

+   &n= bsp;    mov     r13d,ebx

+        add  = ;   r12d,edi

+   &nbs= p;    mov     r14d,r9d

+        ror  &nbs= p;  r13d,14

+    &nbs= p;   mov     edi,ecx

+

+      &n= bsp; xor     r13d,ebx

+        ror     r1= 4d,9

+       &nb= sp;xor     edi,edx

+

+        mov &nb= sp;   DWORD[12+rsp],r12d

+ &nbs= p;      xor     r14d,r9d<= br class=3D"">
+        an= d     edi,ebx

+

+        ror  = ;   r13d,5

+    =     add     r12d,r8d
=
+        xor   =   edi,edx

+

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r13d,ebx

+        add     r1= 2d,edi

+

+  =       mov     edi,r9d

+        add &= nbsp;   r12d,DWORD[rbp]

+  = ;      xor     r14d,r9d
+

+   &n= bsp;    xor     edi,r10d

+        ror  = ;   r13d,6

+    =     mov     r8d,r10d
=
+

+     &nb= sp;  and     r15d,edi

+        ror    &n= bsp;r14d,2

+      &nb= sp; add     r12d,r13d

+

+        = ;xor     r8d,r15d

+  =       add     eax,r12d
+        add =     r8d,r12d

+

+        lea  &nb= sp;  rbp,[20+rbp]

+   &nbs= p;    mov     r13d,DWORD[20+rsp]
+        mov =     r15d,DWORD[8+rsp]

+
+        mov =     r12d,r13d

+  &nbs= p;     ror     r13d,11

+        add  = ;   r8d,r14d

+   &nbs= p;    mov     r14d,r15d

+        ror  &nb= sp;  r15d,2

+

+        xor    &n= bsp;r13d,r12d

+      =   shr     r12d,3

+        ror     r1= 3d,7

+       &nb= sp;xor     r15d,r14d

+ &nb= sp;      shr     r14d,10<= br class=3D"">
+

+   &= nbsp;    ror     r15d,17

+        xor  = ;   r12d,r13d

+   &nb= sp;    xor     r15d,r14d

+        add  = ;   r12d,DWORD[52+rsp]

+

+        add &nbs= p;   r12d,DWORD[16+rsp]

+  = ;      mov     r13d,eax
+        add=     r12d,r15d

+  &nb= sp;     mov     r14d,r8d

+        ror &nb= sp;   r13d,14

+   &nb= sp;    mov     r15d,ebx

+

+     =    xor     r13d,eax

+        ror    =  r14d,9

+      &= nbsp; xor     r15d,ecx

+

+       &nbs= p;mov     DWORD[16+rsp],r12d

+        xor     = r14d,r8d

+       = ; and     r15d,eax

+<= br class=3D"">
+        ro= r     r13d,5

+   = ;     add     r12d,edx

+        xor  = ;   r15d,ecx

+
+        ror   &n= bsp; r14d,11

+     &n= bsp;  xor     r13d,eax

+        add    &n= bsp;r12d,r15d

+

+=        mov     r15d= ,r8d

+       &nb= sp;add     r12d,DWORD[rbp]

+        xor     r1= 4d,r8d

+

+  =       xor     r15d,r9d
+        ror =     r13d,6

+   &= nbsp;    mov     edx,r9d

+

+    &n= bsp;   and     edi,r15d
+        ror   &n= bsp; r14d,2

+     &nb= sp;  add     r12d,r13d

+

+       = ; xor     edx,edi

+ &= nbsp;      add     r11d,r= 12d

+       &nbs= p;add     edx,r12d

+

+        lea &nb= sp;   rbp,[4+rbp]

+   = ;     mov     r13d,DWORD[24+rs= p]

+        = ;mov     edi,DWORD[12+rsp]

+

+        = ;mov     r12d,r13d

+  = ;      ror     r13d,11
+        add =     edx,r14d

+   = ;     mov     r14d,edi

+        ror  = ;   edi,2

+

+        xor    = ; r13d,r12d

+     &nb= sp;  shr     r12d,3

+        ror    &n= bsp;r13d,7

+      &nb= sp; xor     edi,r14d

= +        shr     r14= d,10

+

+  &n= bsp;     ror     edi,17

+        xor &nbs= p;   r12d,r13d

+   &n= bsp;    xor     edi,r14d

+        add  = ;   r12d,DWORD[56+rsp]

+

+        add &nbs= p;   r12d,DWORD[20+rsp]

+  = ;      mov     r13d,r11d<= br class=3D"">
+        ad= d     r12d,edi

+  &nb= sp;     mov     r14d,edx

+        ror &nb= sp;   r13d,14

+   &nb= sp;    mov     edi,eax

+

+     &= nbsp;  xor     r13d,r11d

+        ror    =  r14d,9

+      &= nbsp; xor     edi,ebx

+

+        = ;mov     DWORD[20+rsp],r12d

+        xor     r= 14d,edx

+       =  and     edi,r11d

+
+        ror=     r13d,5

+   =      add     r12d,ecx

+        xor  = ;   edi,ebx

+
+        ror   &nb= sp; r14d,11

+     &nb= sp;  xor     r13d,r11d

+        add    &n= bsp;r12d,edi

+

+ =        mov     edi,e= dx

+        = ;add     r12d,DWORD[rbp]

+=        xor     r14d= ,edx

+

+  &n= bsp;     xor     edi,r8d

+        ror &nb= sp;   r13d,6

+   &nbs= p;    mov     ecx,r8d

+

+     &n= bsp;  and     r15d,edi

+        ror    &n= bsp;r14d,2

+      &nb= sp; add     r12d,r13d

+

+        = ;xor     ecx,r15d

+  =       add     r10d,r12d
+        add=     ecx,r12d

+

+        lea  = ;   rbp,[4+rbp]

+   &= nbsp;    mov     r13d,DWORD[28+rsp]=

+        m= ov     r15d,DWORD[16+rsp]

= +

+        = mov     r12d,r13d

+  =       ror     r13d,11

+        add &= nbsp;   ecx,r14d

+   =      mov     r14d,r15d

+        ror  = ;   r15d,2

+

+        xor   &nbs= p; r13d,r12d

+     &n= bsp;  shr     r12d,3

+        ror    &n= bsp;r13d,7

+      &nb= sp; xor     r15d,r14d

+        shr     r1= 4d,10

+

+  &= nbsp;     ror     r15d,17

+        xor &n= bsp;   r12d,r13d

+   =      xor     r15d,r14d

+        add  = ;   r12d,DWORD[60+rsp]

+

+        add &nbs= p;   r12d,DWORD[24+rsp]

+  = ;      mov     r13d,r10d<= br class=3D"">
+        ad= d     r12d,r15d

+  &n= bsp;     mov     r14d,ecx

+        ror &n= bsp;   r13d,14

+   &n= bsp;    mov     r15d,r11d

+

+    &n= bsp;   xor     r13d,r10d
<= br class=3D"">+        ror   &= nbsp; r14d,9

+     &n= bsp;  xor     r15d,eax

+

+       = ; mov     DWORD[24+rsp],r12d

+        xor    &= nbsp;r14d,ecx

+      =   and     r15d,r10d

+

+       = ; ror     r13d,5

+ &n= bsp;      add     r12d,eb= x

+        = xor     r15d,eax

+

+        ror  = ;   r14d,11

+    = ;    xor     r13d,r10d

+        add  &nbs= p;  r12d,r15d

+

+        mov    =  r15d,ecx

+      = ;  add     r12d,DWORD[rbp]

+        xor   &nbs= p; r14d,ecx

+

+        xor     r= 15d,edx

+       =  ror     r13d,6

+ &nb= sp;      mov     ebx,edx<= br class=3D"">
+

+   &= nbsp;    and     edi,r15d

+        ror  = ;   r14d,2

+    =     add     r12d,r13d

+

+     &n= bsp;  xor     ebx,edi

+        add    &n= bsp;r9d,r12d

+      &= nbsp; add     ebx,r12d

+

+       &nbs= p;lea     rbp,[4+rbp]

+ &n= bsp;      mov     r13d,DW= ORD[32+rsp]

+      &n= bsp; mov     edi,DWORD[20+rsp]

+

+      &n= bsp; mov     r12d,r13d

+        ror     r= 13d,11

+       &= nbsp;add     ebx,r14d

+ &n= bsp;      mov     r14d,ed= i

+        = ror     edi,2

+

+        xor  = ;   r13d,r12d

+   &nb= sp;    shr     r12d,3

+        ror   = ;  r13d,7

+     =    xor     edi,r14d

+        shr    =  r14d,10

+

+=        ror     edi,= 17

+        = ;xor     r12d,r13d

+  = ;      xor     edi,r14d
+        add=     r12d,DWORD[rsp]

+

+        add &= nbsp;   r12d,DWORD[28+rsp]

+ &n= bsp;      mov     r13d,r9= d

+        = add     r12d,edi

+  &= nbsp;     mov     r14d,ebx

+        ror &= nbsp;   r13d,14

+   &= nbsp;    mov     edi,r10d

+

+    &n= bsp;   xor     r13d,r9d
+        ror   &n= bsp; r14d,9

+     &nb= sp;  xor     edi,r11d

+

+       = ; mov     DWORD[28+rsp],r12d

+        xor    &= nbsp;r14d,ebx

+      =   and     edi,r9d

+

+       &nbs= p;ror     r13d,5

+  &= nbsp;     add     r12d,eax

+        xor &= nbsp;   edi,r11d

+

+        ror  &nbs= p;  r14d,11

+    &nbs= p;   xor     r13d,r9d

+        add   &nbs= p; r12d,edi

+

+        mov     e= di,ebx

+       &= nbsp;add     r12d,DWORD[rbp]

+        xor     = r14d,ebx

+

+ &nbs= p;      xor     edi,ecx
+        ror=     r13d,6

+   =      mov     eax,ecx

+

+    &n= bsp;   and     r15d,edi
+        ror   &n= bsp; r14d,2

+     &nb= sp;  add     r12d,r13d

+

+       = ; xor     eax,r15d

+ =        add     r8d,r= 12d

+       &nbs= p;add     eax,r12d

+

+        lea &nb= sp;   rbp,[20+rbp]

+  &nbs= p;     mov     r13d,DWORD[36+r= sp]

+       &nbs= p;mov     r15d,DWORD[24+rsp]

+

+       &nb= sp;mov     r12d,r13d

+ &nb= sp;      ror     r13d,11<= br class=3D"">
+        ad= d     eax,r14d

+  &nb= sp;     mov     r14d,r15d

+        ror &n= bsp;   r15d,2

+
<= br class=3D"">+        xor   &= nbsp; r13d,r12d

+     = ;   shr     r12d,3

+        ror    &= nbsp;r13d,7

+      &n= bsp; xor     r15d,r14d

+        shr     r= 14d,10

+

+  =       ror     r15d,17

+        xor &= nbsp;   r12d,r13d

+   = ;     xor     r15d,r14d

+        add &nbs= p;   r12d,DWORD[4+rsp]

+

+        add &nbs= p;   r12d,DWORD[32+rsp]

+  = ;      mov     r13d,r8d
+        add=     r12d,r15d

+  &nb= sp;     mov     r14d,eax

+        ror &nb= sp;   r13d,14

+   &nb= sp;    mov     r15d,r9d

+

+     =    xor     r13d,r8d

+        ror    =  r14d,9

+      &= nbsp; xor     r15d,r10d

+

+       &nb= sp;mov     DWORD[32+rsp],r12d

+        xor    &n= bsp;r14d,eax

+      &= nbsp; and     r15d,r8d

+

+       &nbs= p;ror     r13d,5

+  &= nbsp;     add     r12d,r11d
+        xor =     r15d,r10d

+

+        ror  = ;   r14d,11

+    = ;    xor     r13d,r8d

+        add   = ;  r12d,r15d

+

+        mov    &= nbsp;r15d,eax

+      =   add     r12d,DWORD[rbp]

+        xor    = ; r14d,eax

+

+        xor     r1= 5d,ebx

+       &= nbsp;ror     r13d,6

+ &nbs= p;      mov     r11d,ebx<= br class=3D"">
+

+   &= nbsp;    and     edi,r15d

+        ror  = ;   r14d,2

+    =     add     r12d,r13d

+

+     &n= bsp;  xor     r11d,edi

+        add    &n= bsp;edx,r12d

+      &= nbsp; add     r11d,r12d

+

+       &nb= sp;lea     rbp,[4+rbp]

+ &= nbsp;      mov     r13d,D= WORD[40+rsp]

+      &= nbsp; mov     edi,DWORD[28+rsp]

+

+      &= nbsp; mov     r12d,r13d

+        ror     = r13d,11

+       =  add     r11d,r14d

+ =        mov     r14d,= edi

+       &nbs= p;ror     edi,2

+

+        xor  = ;   r13d,r12d

+   &nb= sp;    shr     r12d,3

+        ror   = ;  r13d,7

+     =    xor     edi,r14d

+        shr    =  r14d,10

+

+=        ror     edi,= 17

+        = ;xor     r12d,r13d

+  = ;      xor     edi,r14d
+        add=     r12d,DWORD[8+rsp]

+
+        add=     r12d,DWORD[36+rsp]

+ =        mov     r13d,= edx

+       &nbs= p;add     r12d,edi

+  = ;      mov     r14d,r11d<= br class=3D"">
+        ro= r     r13d,14

+  &nbs= p;     mov     edi,r8d

+

+    &n= bsp;   xor     r13d,edx
+        ror   &n= bsp; r14d,9

+     &nb= sp;  xor     edi,r9d

+

+       = ; mov     DWORD[36+rsp],r12d

+        xor    &= nbsp;r14d,r11d

+      = ;  and     edi,edx

+

+       &nb= sp;ror     r13d,5

+  =       add     r12d,r10d
+        xor=     edi,r9d

+

+        ror  &nb= sp;  r14d,11

+    &nb= sp;   xor     r13d,edx
+        add   &nb= sp; r12d,edi

+

+        mov     = edi,r11d

+       = ; add     r12d,DWORD[rbp]

+        xor    &n= bsp;r14d,r11d

+

+=        xor     edi,= eax

+       &nbs= p;ror     r13d,6

+  &= nbsp;     mov     r10d,eax

+

+   &nbs= p;    and     r15d,edi

+        ror  &nbs= p;  r14d,2

+     = ;   add     r12d,r13d

+

+      &= nbsp; xor     r10d,r15d

+        add     = ecx,r12d

+       = ; add     r10d,r12d

+=

+        l= ea     rbp,[4+rbp]

+  = ;      mov     r13d,DWORD= [44+rsp]

+       = ; mov     r15d,DWORD[32+rsp]

+

+      &nbs= p; mov     r12d,r13d

= +        ror     r13= d,11

+       &nb= sp;add     r10d,r14d

+ &nb= sp;      mov     r14d,r15= d

+        = ror     r15d,2

+

+        xor  = ;   r13d,r12d

+   &nb= sp;    shr     r12d,3

+        ror   = ;  r13d,7

+     =    xor     r15d,r14d

+        shr    = ; r14d,10

+

= +        ror     r15= d,17

+       &nb= sp;xor     r12d,r13d

+ &nb= sp;      xor     r15d,r14= d

+        = add     r12d,DWORD[12+rsp]

+

+        = ;add     r12d,DWORD[40+rsp]

+        mov     r= 13d,ecx

+       =  add     r12d,r15d

+ =        mov     r14d,= r10d

+       &nb= sp;ror     r13d,14

+  = ;      mov     r15d,edx
+

+   &n= bsp;    xor     r13d,ecx

+        ror  = ;   r14d,9

+    =     xor     r15d,r8d
=
+

+     &nb= sp;  mov     DWORD[40+rsp],r12d

+        xor   = ;  r14d,r10d

+    &nb= sp;   and     r15d,ecx
+

+      =   ror     r13d,5

+        add     r1= 2d,r9d

+       &= nbsp;xor     r15d,r8d

+
+        ror =     r14d,11

+   =      xor     r13d,ecx

+        add  = ;   r12d,r15d

+
<= br class=3D"">+        mov   &= nbsp; r15d,r10d

+     = ;   add     r12d,DWORD[rbp]

+        xor  &nbs= p;  r14d,r10d

+

+        xor    =  r15d,r11d

+     &nbs= p;  ror     r13d,6

+        mov     = r9d,r11d

+

+ &nbs= p;      and     edi,r15d<= br class=3D"">
+        ro= r     r14d,2

+   = ;     add     r12d,r13d

+

+    &= nbsp;   xor     r9d,edi
+        add   &n= bsp; ebx,r12d

+     &= nbsp;  add     r9d,r12d

+

+      &nbs= p; lea     rbp,[4+rbp]

+        mov     r= 13d,DWORD[48+rsp]

+     &n= bsp;  mov     edi,DWORD[36+rsp]

+

+     &n= bsp;  mov     r12d,r13d

+        ror    &= nbsp;r13d,11

+      &= nbsp; add     r9d,r14d

+        mov     r= 14d,edi

+       =  ror     edi,2

+

+        xor &n= bsp;   r13d,r12d

+   =      shr     r12d,3

+        ror  = ;   r13d,7

+    =     xor     edi,r14d
=
+        shr   =   r14d,10

+

+        ror    &n= bsp;edi,17

+      &nb= sp; xor     r12d,r13d

+        xor     ed= i,r14d

+       &= nbsp;add     r12d,DWORD[16+rsp]

+

+       = ; add     r12d,DWORD[44+rsp]

+        mov    &= nbsp;r13d,ebx

+      =   add     r12d,edi

+        mov     = r14d,r9d

+       = ; ror     r13d,14

+ &= nbsp;      mov     edi,ec= x

+

+   = ;     xor     r13d,ebx

+        ror  = ;   r14d,9

+    =     xor     edi,edx
<= br class=3D"">+

+     &nbs= p;  mov     DWORD[44+rsp],r12d
=
+        xor   =   r14d,r9d

+     = ;   and     edi,ebx

+

+      &nb= sp; ror     r13d,5

+ =        add     r12d,= r8d

+       &nbs= p;xor     edi,edx

+

+        ror &nbs= p;   r14d,11

+   &nbs= p;    xor     r13d,ebx

+        add  &nbs= p;  r12d,edi

+

+        mov    &= nbsp;edi,r9d

+      &= nbsp; add     r12d,DWORD[rbp]

+        xor    =  r14d,r9d

+

= +        xor     edi= ,r10d

+       &n= bsp;ror     r13d,6

+  = ;      mov     r8d,r10d
+

+   &n= bsp;    and     r15d,edi

+        ror  = ;   r14d,2

+    =     add     r12d,r13d

+

+     &n= bsp;  xor     r8d,r15d

+        add    &n= bsp;eax,r12d

+      &= nbsp; add     r8d,r12d

+

+       &nbs= p;lea     rbp,[20+rbp]

+ &= nbsp;      mov     r13d,D= WORD[52+rsp]

+      &= nbsp; mov     r15d,DWORD[40+rsp]
+

+      =   mov     r12d,r13d

+        ror    &n= bsp;r13d,11

+      &n= bsp; add     r8d,r14d

+        mov     r1= 4d,r15d

+       =  ror     r15d,2

+

+        xor &= nbsp;   r13d,r12d

+   = ;     shr     r12d,3

+        ror  = ;   r13d,7

+    =     xor     r15d,r14d

+        shr   = ;  r14d,10

+

+        ror    &n= bsp;r15d,17

+      &n= bsp; xor     r12d,r13d

+        xor     r= 15d,r14d

+       = ; add     r12d,DWORD[20+rsp]

+

+      &nbs= p; add     r12d,DWORD[48+rsp]

+        mov    =  r13d,eax

+      = ;  add     r12d,r15d

+        mov    &n= bsp;r14d,r8d

+      &= nbsp; ror     r13d,14

+        mov     r1= 5d,ebx

+

+  =       xor     r13d,eax
+        ror =     r14d,9

+   &= nbsp;    xor     r15d,ecx

+

+    &n= bsp;   mov     DWORD[48+rsp],r12d

+        xor &nbs= p;   r14d,r8d

+   &nb= sp;    and     r15d,eax

+

+     =    ror     r13d,5

+        add    &n= bsp;r12d,edx

+      &= nbsp; xor     r15d,ecx

+

+       &nbs= p;ror     r14d,11

+  =       xor     r13d,eax
+        add =     r12d,r15d

+

+        mov  = ;   r15d,r8d

+   &nbs= p;    add     r12d,DWORD[rbp]

+        xor &nb= sp;   r14d,r8d

+
=
+        xor   =   r15d,r9d

+     = ;   ror     r13d,6

+        mov    &= nbsp;edx,r9d

+

+ =        and     edi,r= 15d

+       &nbs= p;ror     r14d,2

+  &= nbsp;     add     r12d,r13d
+

+   &nb= sp;    xor     edx,edi

+        add  &nbs= p;  r11d,r12d

+    &n= bsp;   add     edx,r12d
+

+      = ;  lea     rbp,[4+rbp]

+        mov    &n= bsp;r13d,DWORD[56+rsp]

+    &nb= sp;   mov     edi,DWORD[44+rsp]

+

+    &n= bsp;   mov     r12d,r13d
<= br class=3D"">+        ror   &= nbsp; r13d,11

+     &= nbsp;  add     edx,r14d

+        mov    &= nbsp;r14d,edi

+      =   ror     edi,2

= +

+        = xor     r13d,r12d

+  =       shr     r12d,3

+        ror &n= bsp;   r13d,7

+   &nb= sp;    xor     edi,r14d

+        shr  &nb= sp;  r14d,10

+

+        ror    &= nbsp;edi,17

+      &n= bsp; xor     r12d,r13d

+        xor     e= di,r14d

+       =  add     r12d,DWORD[24+rsp]

+

+       = ; add     r12d,DWORD[52+rsp]

+        mov    &= nbsp;r13d,r11d

+      = ;  add     r12d,edi

+        mov    &n= bsp;r14d,edx

+      &= nbsp; ror     r13d,14

+        mov     ed= i,eax

+

+  &= nbsp;     xor     r13d,r11d
+        ror =     r14d,9

+   &= nbsp;    xor     edi,ebx

+

+    &n= bsp;   mov     DWORD[52+rsp],r12d

+        xor &nbs= p;   r14d,edx

+   &nb= sp;    and     edi,r11d

+

+     =    ror     r13d,5

+        add    &n= bsp;r12d,ecx

+      &= nbsp; xor     edi,ebx

+

+        = ;ror     r14d,11

+  &= nbsp;     xor     r13d,r11d
+        add =     r12d,edi

+

+        mov  &nb= sp;  edi,edx

+    &nb= sp;   add     r12d,DWORD[rbp]

+        xor  = ;   r14d,edx

+
+        xor   &n= bsp; edi,r8d

+     &n= bsp;  ror     r13d,6

+        mov    &n= bsp;ecx,r8d

+

+ &= nbsp;      and     r15d,e= di

+        = ;ror     r14d,2

+  &n= bsp;     add     r12d,r13d

+

+   &nbs= p;    xor     ecx,r15d

+        add  &nbs= p;  r10d,r12d

+    &n= bsp;   add     ecx,r12d
+

+      = ;  lea     rbp,[4+rbp]

+        mov    &n= bsp;r13d,DWORD[60+rsp]

+    &nb= sp;   mov     r15d,DWORD[48+rsp]

+

+    &n= bsp;   mov     r12d,r13d
<= br class=3D"">+        ror   &= nbsp; r13d,11

+     &= nbsp;  add     ecx,r14d

+        mov    &= nbsp;r14d,r15d

+      = ;  ror     r15d,2

+

+       &nbs= p;xor     r13d,r12d

+ &nbs= p;      shr     r12d,3
+        ror =     r13d,7

+   &= nbsp;    xor     r15d,r14d

+        shr  = ;   r14d,10

+
+        ror   &nb= sp; r15d,17

+     &nb= sp;  xor     r12d,r13d

+        xor    &n= bsp;r15d,r14d

+      =   add     r12d,DWORD[28+rsp]
+

+      = ;  add     r12d,DWORD[56+rsp]
<= br class=3D"">+        mov   &= nbsp; r13d,r10d

+     = ;   add     r12d,r15d

+        mov   &nbs= p; r14d,ecx

+     &nb= sp;  ror     r13d,14

+        mov    &n= bsp;r15d,r11d

+

+=        xor     r13d= ,r10d

+       &n= bsp;ror     r14d,9

+  = ;      xor     r15d,eax
+

+   &n= bsp;    mov     DWORD[56+rsp],r12d<= br class=3D"">
+        xo= r     r14d,ecx

+  &nb= sp;     and     r15d,r10d

+

+    = ;    ror     r13d,5
<= br class=3D"">+        add   &= nbsp; r12d,ebx

+     =    xor     r15d,eax

+

+      &nb= sp; ror     r14d,11

+=        xor     r13d= ,r10d

+       &n= bsp;add     r12d,r15d

+
+        mov =     r15d,ecx

+   = ;     add     r12d,DWORD[rbp]<= br class=3D"">
+        xo= r     r14d,ecx

+

+        xor  = ;   r15d,edx

+   &nbs= p;    ror     r13d,6
=
+        mov   =   ebx,edx

+

+        and    &n= bsp;edi,r15d

+      &= nbsp; ror     r14d,2

= +        add     r12= d,r13d

+

+  =       xor     ebx,edi

+        add &= nbsp;   r9d,r12d

+   =      add     ebx,r12d

+

+    &n= bsp;   lea     rbp,[4+rbp]

+        mov   = ;  r13d,DWORD[rsp]

+   &nb= sp;    mov     edi,DWORD[52+rsp]
+

+   &nb= sp;    mov     r12d,r13d

+        ror  = ;   r13d,11

+    = ;    add     ebx,r14d

+        mov   = ;  r14d,edi

+    &nbs= p;   ror     edi,2

+

+      &nbs= p; xor     r13d,r12d

= +        shr     r12= d,3

+       &nbs= p;ror     r13d,7

+  &= nbsp;     xor     edi,r14d

+        shr &= nbsp;   r14d,10

+

+        ror   = ;  edi,17

+     =    xor     r12d,r13d

+        xor    = ; edi,r14d

+     &nbs= p;  add     r12d,DWORD[32+rsp]
=
+

+     &nb= sp;  add     r12d,DWORD[60+rsp]

+        mov   = ;  r13d,r9d

+    &nbs= p;   add     r12d,edi

+        mov   &nbs= p; r14d,ebx

+     &nb= sp;  ror     r13d,14

+        mov    &n= bsp;edi,r10d

+

+ =        xor     r13d,= r9d

+       &nbs= p;ror     r14d,9

+  &= nbsp;     xor     edi,r11d

+

+   &nbs= p;    mov     DWORD[60+rsp],r12d
+        xor =     r14d,ebx

+   = ;     and     edi,r9d

+

+    &n= bsp;   ror     r13d,5

+        add   &nbs= p; r12d,eax

+     &nb= sp;  xor     edi,r11d

+

+       = ; ror     r14d,11

+ &= nbsp;      xor     r13d,r= 9d

+        = ;add     r12d,edi

+

+        mov &nbs= p;   edi,ebx

+   &nbs= p;    add     r12d,DWORD[rbp]

+        xor &nb= sp;   r14d,ebx

+
=
+        xor   =   edi,ecx

+     =    ror     r13d,6

+        mov    &n= bsp;eax,ecx

+

+ &= nbsp;      and     r15d,e= di

+        = ;ror     r14d,2

+  &n= bsp;     add     r12d,r13d

+

+   &nbs= p;    xor     eax,r15d

+        add  &nbs= p;  r8d,r12d

+    &nb= sp;   add     eax,r12d
+

+      =   lea     rbp,[20+rbp]

+        cmp    &n= bsp;BYTE[3+rbp],0

+     &n= bsp;  jnz     NEAR $L$rounds_16_xx

+

+    &n= bsp;   mov     rdi,QWORD[((64+0))+rsp]
+        add=     eax,r14d

+  &nbs= p;     lea     rsi,[64+rsi]
+

+   &nb= sp;    add     eax,DWORD[rdi]

+        add &nb= sp;   ebx,DWORD[4+rdi]

+  =       add     ecx,DWORD[8= +rdi]

+       &n= bsp;add     edx,DWORD[12+rdi]

+        add    &n= bsp;r8d,DWORD[16+rdi]

+    &nbs= p;   add     r9d,DWORD[20+rdi]

+        add  = ;   r10d,DWORD[24+rdi]

+  =       add     r11d,DWORD[= 28+rdi]

+

+  = ;      cmp     rsi,QWORD[= ((64+16))+rsp]

+

= +        mov     DWO= RD[rdi],eax

+      &n= bsp; mov     DWORD[4+rdi],ebx

+        mov    =  DWORD[8+rdi],ecx

+    &nb= sp;   mov     DWORD[12+rdi],edx

+        mov  = ;   DWORD[16+rdi],r8d

+  &= nbsp;     mov     DWORD[20+rdi= ],r9d

+       &n= bsp;mov     DWORD[24+rdi],r10d

+        mov    &n= bsp;DWORD[28+rdi],r11d

+    &nb= sp;   jb      NEAR $L$loop

+

+    &n= bsp;   mov     rsi,QWORD[88+rsp]

+

+    &n= bsp;   mov     r15,QWORD[((-48))+rsi]
+

+   &nb= sp;    mov     r14,QWORD[((-40))+rs= i]

+

+  &nbs= p;     mov     r13,QWORD[((-32= ))+rsi]

+

+  = ;      mov     r12,QWORD[= ((-24))+rsi]

+

+ =        mov     rbp,Q= WORD[((-16))+rsi]

+

+        mov     = rbx,QWORD[((-8))+rsi]

+

+        lea    &n= bsp;rsp,[rsi]

+

+= $L$epilogue:

+      &= nbsp; mov     rdi,QWORD[8+rsp]    &= nbsp;   ;WIN64 epilogue

+  = ;      mov     rsi,QWORD[= 16+rsp]

+       =  DB      0F3h,0C3h     &n= bsp;         ;repret

+

+$L$SEH_end_sha256_blo= ck_data_order:

+ALIGN   64

+

+K256:
<= br class=3D"">+        DD   &n= bsp;  0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
<= br class=3D"">+        DD   &n= bsp;  0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
<= br class=3D"">+        DD   &n= bsp;  0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
<= br class=3D"">+        DD   &n= bsp;  0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
<= br class=3D"">+        DD   &n= bsp;  0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
<= br class=3D"">+        DD   &n= bsp;  0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
<= br class=3D"">+        DD   &n= bsp;  0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
<= br class=3D"">+        DD   &n= bsp;  0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
<= br class=3D"">+        DD   &n= bsp;  0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
<= br class=3D"">+        DD   &n= bsp;  0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
<= br class=3D"">+        DD   &n= bsp;  0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
<= br class=3D"">+        DD   &n= bsp;  0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
<= br class=3D"">+        DD   &n= bsp;  0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
<= br class=3D"">+        DD   &n= bsp;  0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
<= br class=3D"">+        DD   &n= bsp;  0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
<= br class=3D"">+        DD   &n= bsp;  0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
<= br class=3D"">+        DD   &n= bsp;  0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
<= br class=3D"">+        DD   &n= bsp;  0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
<= br class=3D"">+        DD   &n= bsp;  0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
<= br class=3D"">+        DD   &n= bsp;  0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
<= br class=3D"">+        DD   &n= bsp;  0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
<= br class=3D"">+        DD   &n= bsp;  0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
<= br class=3D"">+        DD   &n= bsp;  0xd192e819,0xd6990624,0xf40e3585,0x106aa070
<= br class=3D"">+        DD   &n= bsp;  0xd192e819,0xd6990624,0xf40e3585,0x106aa070
<= br class=3D"">+        DD   &n= bsp;  0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
<= br class=3D"">+        DD   &n= bsp;  0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
<= br class=3D"">+        DD   &n= bsp;  0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
<= br class=3D"">+        DD   &n= bsp;  0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
<= br class=3D"">+        DD   &n= bsp;  0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
<= br class=3D"">+        DD   &n= bsp;  0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
<= br class=3D"">+        DD   &n= bsp;  0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
<= br class=3D"">+        DD   &n= bsp;  0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
<= br class=3D"">+

+     &nbs= p;  DD      0x00010203,0x04050607,0x0809= 0a0b,0x0c0d0e0f

+     &nbs= p;  DD      0x00010203,0x04050607,0x0809= 0a0b,0x0c0d0e0f

+     &nbs= p;  DD      0x03020100,0x0b0a0908,0xffff= ffff,0xffffffff

+     &nbs= p;  DD      0x03020100,0x0b0a0908,0xffff= ffff,0xffffffff

+     &nbs= p;  DD      0xffffffff,0xffffffff,0x0302= 0100,0x0b0a0908

+     &nbs= p;  DD      0xffffffff,0xffffffff,0x0302= 0100,0x0b0a0908

+DB     &n= bsp;83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97

+DB      110,115,102,111,114,109,32,102= ,111,114,32,120,56,54,95,54

+DB   &n= bsp;  52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121

+DB      32,60,97,112,112,11= 4,111,64,111,112,101,110,115,115,108,46

+DB &n= bsp;    111,114,103,62,0

+=

+ALIGN   64

+sha256_block_data_order_shaext:

+ &nbs= p;      mov     QWORD[8+r= sp],rdi        ;WIN64 prologue

+        mov  = ;   QWORD[16+rsp],rsi

+  &= nbsp;     mov     rax,rsp

+$L$SEH_begin_sha256_block_data_order_shaext:

+        mov &n= bsp;   rdi,rcx

+   &n= bsp;    mov     rsi,rdx

+        mov  &nb= sp;  rdx,r8

+

+

+_shaext_shortcut:

+

+      &= nbsp; lea     rsp,[((-88))+rsp]

+        movaps  XMMWORD= [(-8-80)+rax],xmm6

+     &= nbsp;  movaps  XMMWORD[(-8-64)+rax],xmm7

+        movaps  XMMWORD[= (-8-48)+rax],xmm8

+     &n= bsp;  movaps  XMMWORD[(-8-32)+rax],xmm9

+        movaps  XMMWORD[(= -8-16)+rax],xmm10

+$L$prologue_shaext:

+        lea  = ;   rcx,[((K256+128))]

+  =       movdqu  xmm1,XMMWORD[rdi]

+        movdqu &n= bsp;xmm2,XMMWORD[16+rdi]

+    &= nbsp;   movdqa  xmm7,XMMWORD[((512-128))+rcx]

+

+    &n= bsp;   pshufd  xmm0,xmm1,0x1b

+        pshufd  xmm1,xmm1,0= xb1

+       &nbs= p;pshufd  xmm2,xmm2,0x1b

+   &n= bsp;    movdqa  xmm8,xmm7

+DB      102,15,58,15,202,8
<= br class=3D"">+        punpcklqdq  =     xmm2,xmm0

+  &nbs= p;     jmp     NEAR $L$oop_sha= ext

+

+ALIGN &nbs= p; 16

+$L$oop_shaext:

+        movdqu  xmm3,XMM= WORD[rsi]

+      &nbs= p; movdqu  xmm4,XMMWORD[16+rsi]

+ &n= bsp;      movdqu  xmm5,XMMWORD[32+rsi]
+DB      102,15,56,0,2= 23

+        = ;movdqu  xmm6,XMMWORD[48+rsi]

+

+        movdqa &n= bsp;xmm0,XMMWORD[((0-128))+rcx]

+   =      paddd   xmm0,xmm3
+DB      102,15,56,0,231

+        movdqa  xm= m10,xmm2

+DB      15,= 56,203,209

+      &nb= sp; pshufd  xmm0,xmm0,0x0e

+  &= nbsp;     nop

+  = ;      movdqa  xmm9,xmm1
<= br class=3D"">+DB      15,56,203,202

+

+     &n= bsp;  movdqa  xmm0,XMMWORD[((32-128))+rcx]
+        paddd   x= mm0,xmm4

+DB      102= ,15,56,0,239

+DB      = ;15,56,203,209

+      = ;  pshufd  xmm0,xmm0,0x0e

+ &nb= sp;      lea     rsi,[64+= rsi]

+DB      15,56,2= 04,220

+DB      15,56= ,203,202

+

+ &nbs= p;      movdqa  xmm0,XMMWORD[((64-128))+= rcx]

+       &nb= sp;paddd   xmm0,xmm5

+DB   = ;   102,15,56,0,247

+DB  &= nbsp;   15,56,203,209

+  &= nbsp;     pshufd  xmm0,xmm0,0x0e

+        movdqa  x= mm7,xmm6

+DB      102= ,15,58,15,253,4

+     &nbs= p;  nop

+     &n= bsp;  paddd   xmm3,xmm7

+D= B      15,56,204,229

= +DB      15,56,203,202

+

+       &nbs= p;movdqa  xmm0,XMMWORD[((96-128))+rcx]

+ =        paddd   xmm0,xmm6

+DB      15,56,205,222

+DB      15,56,203,209
+        psh= ufd  xmm0,xmm0,0x0e

+    &= nbsp;   movdqa  xmm7,xmm3

= +DB      102,15,58,15,254,4

+        nop

+        paddd   xmm4= ,xmm7

+DB      15,56,= 204,238

+DB      15,5= 6,203,202

+      &nbs= p; movdqa  xmm0,XMMWORD[((128-128))+rcx]

+        paddd   xmm0,x= mm3

+DB      15,56,20= 5,227

+DB      15,56,= 203,209

+       =  pshufd  xmm0,xmm0,0x0e

+  &nbs= p;     movdqa  xmm7,xmm4

+DB      102,15,58,15,251,4

+        nop

+        paddd  &= nbsp;xmm5,xmm7

+DB     &nb= sp;15,56,204,243

+DB     &= nbsp;15,56,203,202

+     &= nbsp;  movdqa  xmm0,XMMWORD[((160-128))+rcx]
<= br class=3D"">+        paddd   = ;xmm0,xmm4

+DB      1= 5,56,205,236

+DB      = ;15,56,203,209

+      = ;  pshufd  xmm0,xmm0,0x0e

+ &nb= sp;      movdqa  xmm7,xmm5

+DB      102,15,58,15,252,4

+        nop

+        paddd =   xmm6,xmm7

+DB    &n= bsp; 15,56,204,220

+DB    =   15,56,203,202

+    =     movdqa  xmm0,XMMWORD[((192-128))+rcx]

+        paddd &nb= sp; xmm0,xmm5

+DB     = ; 15,56,205,245

+DB    &nb= sp; 15,56,203,209

+    &nb= sp;   pshufd  xmm0,xmm0,0x0e

+        movdqa  xmm7,xmm6

+DB      102,15,58,15,253,= 4

+        = nop

+       &nbs= p;paddd   xmm3,xmm7

+DB   =    15,56,204,229

+DB  &nbs= p;   15,56,203,202

+  &nbs= p;     movdqa  xmm0,XMMWORD[((224-128))+rcx]<= br class=3D"">
+        pa= ddd   xmm0,xmm6

+DB   &nbs= p;  15,56,205,222

+DB   &n= bsp;  15,56,203,209

+   &n= bsp;    pshufd  xmm0,xmm0,0x0e

+        movdqa  xmm7,xmm= 3

+DB      102,15,58,= 15,254,4

+       = ; nop

+      &nb= sp; paddd   xmm4,xmm7

+DB  = ;    15,56,204,238

+DB &nb= sp;    15,56,203,202

+ &nb= sp;      movdqa  xmm0,XMMWORD[((256-128)= )+rcx]

+       &= nbsp;paddd   xmm0,xmm3

+DB  &nb= sp;   15,56,205,227

+DB  &= nbsp;   15,56,203,209

+  &= nbsp;     pshufd  xmm0,xmm0,0x0e

+        movdqa  x= mm7,xmm4

+DB      102= ,15,58,15,251,4

+     &nbs= p;  nop

+     &n= bsp;  paddd   xmm5,xmm7

+D= B      15,56,204,243

= +DB      15,56,203,202

+        movdqa  xmm0,XMMWORD[((2= 88-128))+rcx]

+      =   paddd   xmm0,xmm4

+DB &n= bsp;    15,56,205,236

+DB =      15,56,203,209

+ =        pshufd  xmm0,xmm0,0x0e

+        movdqa =  xmm7,xmm5

+DB     &n= bsp;102,15,58,15,252,4

+    &nb= sp;   nop

+    &= nbsp;   paddd   xmm6,xmm7

+DB      15,56,204,220

+DB      15,56,203,202

+        movdqa  xmm0,XM= MWORD[((320-128))+rcx]

+    &nb= sp;   paddd   xmm0,xmm5

+DB      15,56,205,245

+DB      15,56,203,209

+        pshufd  xmm0,xmm0= ,0x0e

+       &n= bsp;movdqa  xmm7,xmm6

+DB   &nb= sp;  102,15,58,15,253,4

+  &nbs= p;     nop

+  &n= bsp;     paddd   xmm3,xmm7

+DB      15,56,204,229

+DB      15,56,203,202

+        movdqa &n= bsp;xmm0,XMMWORD[((352-128))+rcx]

+  &nbs= p;     paddd   xmm0,xmm6
<= br class=3D"">+DB      15,56,205,222

+DB      15,56,203,209

+        pshufd  = xmm0,xmm0,0x0e

+      = ;  movdqa  xmm7,xmm3

+DB  =     102,15,58,15,254,4

+ &= nbsp;      nop

+=        paddd   xmm4,xmm7

+DB      15,56,204,238
+DB      15,56,203,202<= br class=3D"">
+        mo= vdqa  xmm0,XMMWORD[((384-128))+rcx]

+ &nb= sp;      paddd   xmm0,xmm3

+DB      15,56,205,227

+DB      15,56,203,209

+        pshuf= d  xmm0,xmm0,0x0e

+    &nb= sp;   movdqa  xmm7,xmm4

+D= B      102,15,58,15,251,4

+        nop

+        paddd   xmm5= ,xmm7

+DB      15,56,= 204,243

+DB      15,5= 6,203,202

+      &nbs= p; movdqa  xmm0,XMMWORD[((416-128))+rcx]

+        paddd   xmm0,x= mm4

+DB      15,56,20= 5,236

+DB      15,56,= 203,209

+       =  pshufd  xmm0,xmm0,0x0e

+  &nbs= p;     movdqa  xmm7,xmm5

+DB      102,15,58,15,252,4

+DB      15,56,203,202

+        paddd  &= nbsp;xmm6,xmm7

+

= +        movdqa  xmm0,XMMWORD[((448= -128))+rcx]

+      &n= bsp; paddd   xmm0,xmm5

+DB &nbs= p;    15,56,203,209

+ &nbs= p;      pshufd  xmm0,xmm0,0x0e

+DB      15,56,205,245

+        movdqa =  xmm7,xmm8

+DB     &n= bsp;15,56,203,202

+

+        movdqa  xmm0,XMMWORD[((= 480-128))+rcx]

+      = ;  paddd   xmm0,xmm6

+ &nb= sp;      nop

+DB=      15,56,203,209

+=        pshufd  xmm0,xmm0,0x0e

+        dec &n= bsp;   rdx

+    =     nop

+DB   &n= bsp;  15,56,203,202

+
=
+        paddd  &nbs= p;xmm2,xmm10

+      &= nbsp; paddd   xmm1,xmm9

+  = ;      jnz     NEAR $L$oo= p_shaext

+

+ &nbs= p;      pshufd  xmm2,xmm2,0xb1

+        pshufd &n= bsp;xmm7,xmm1,0x1b

+     &= nbsp;  pshufd  xmm1,xmm1,0xb1

+=        punpckhqdq    &nb= sp; xmm1,xmm2

+DB     = ; 102,15,58,15,215,8

+

+        movdqu  XMMWORD= [rdi],xmm1

+      &nb= sp; movdqu  XMMWORD[16+rdi],xmm2

+ &= nbsp;      movaps  xmm6,XMMWORD[((-8-80)= )+rax]

+       &= nbsp;movaps  xmm7,XMMWORD[((-8-64))+rax]

= +        movaps  xmm8,XMMWORD[((-8-= 48))+rax]

+      &nbs= p; movaps  xmm9,XMMWORD[((-8-32))+rax]

+        movaps  xmm10,XMMWORD[(= (-8-16))+rax]

+      =   mov     rsp,rax

+$L$epilogue_shaext:

+    &nb= sp;   mov     rdi,QWORD[8+rsp]  &nb= sp;     ;WIN64 epilogue

+        mov     = rsi,QWORD[16+rsp]

+     &n= bsp;  DB      0F3h,0C3h   &nbs= p;           ;repret=

+

+$L$SEH_end_sh= a256_block_data_order_shaext:

+
=
+ALIGN   64

+sha256_b= lock_data_order_ssse3:

+    &nb= sp;   mov     QWORD[8+rsp],rdi  &nb= sp;     ;WIN64 prologue

+        mov     = QWORD[16+rsp],rsi

+     &n= bsp;  mov     rax,rsp

+$L$SEH_begin_sha256_block_data_order_ssse3:

+        mov    &n= bsp;rdi,rcx

+      &n= bsp; mov     rsi,rdx

= +        mov     rdx= ,r8

+

+

+

+$L$ssse3_shortcut:
+        mov =     rax,rsp

+

+        push  &nb= sp; rbx

+

+ =        push    rbp

+

+    &= nbsp;   push    r12

+

+       = ; push    r13

+

+        push &nbs= p;  r14

+

+        push    r15
+

+   &n= bsp;    shl     rdx,4

+        sub   = ;  rsp,160

+     = ;   lea     rdx,[rdx*4+rsi]

+        and  &nbs= p;  rsp,-64

+    &nbs= p;   mov     QWORD[((64+0))+rsp],rdi

+        mov &= nbsp;   QWORD[((64+8))+rsp],rsi

+        mov     QW= ORD[((64+16))+rsp],rdx

+    &nb= sp;   mov     QWORD[88+rsp],rax

+

+    &n= bsp;   movaps  XMMWORD[(64+32)+rsp],xmm6
=
+        movaps  XMM= WORD[(64+48)+rsp],xmm7

+    &nb= sp;   movaps  XMMWORD[(64+64)+rsp],xmm8
<= br class=3D"">+        movaps  XMMW= ORD[(64+80)+rsp],xmm9

+$L$prologue_ssse3:

+

+    = ;    mov     eax,DWORD[rdi]

+        mov  = ;   ebx,DWORD[4+rdi]

+  &n= bsp;     mov     ecx,DWORD[8+r= di]

+       &nbs= p;mov     edx,DWORD[12+rdi]

+        mov     r= 8d,DWORD[16+rdi]

+     &nb= sp;  mov     r9d,DWORD[20+rdi]
=
+        mov   =   r10d,DWORD[24+rdi]

+   &= nbsp;    mov     r11d,DWORD[28+rdi]=

+

+

+        jmp  &nbs= p;  NEAR $L$loop_ssse3

+ALIGN  =  16

+$L$loop_ssse3:

+        movdqa  xmm7,XMMWO= RD[((K256+512))]

+     &nb= sp;  movdqu  xmm0,XMMWORD[rsi]

= +        movdqu  xmm1,XMMWORD[16+rs= i]

+        = ;movdqu  xmm2,XMMWORD[32+rsi]

+DB  &= nbsp;   102,15,56,0,199

+  = ;      movdqu  xmm3,XMMWORD[48+rsi]

+        lea &n= bsp;   rbp,[K256]

+DB  &nb= sp;   102,15,56,0,207

+  &= nbsp;     movdqa  xmm4,XMMWORD[rbp]

+        movdqa &n= bsp;xmm5,XMMWORD[32+rbp]

+DB    = ;  102,15,56,0,215

+   &nb= sp;    paddd   xmm4,xmm0

+        movdqa  xmm6,XMMW= ORD[64+rbp]

+DB      = 102,15,56,0,223

+     &nbs= p;  movdqa  xmm7,XMMWORD[96+rbp]

+        paddd   xmm5,xmm1
+        pad= dd   xmm6,xmm2

+    &= nbsp;   paddd   xmm7,xmm3

+        movdqa  XMMWORD[rsp= ],xmm4

+       &= nbsp;mov     r14d,eax

+ &n= bsp;      movdqa  XMMWORD[16+rsp],xmm5
+        mov=     edi,ebx

+   = ;     movdqa  XMMWORD[32+rsp],xmm6

+        xor  = ;   edi,ecx

+    = ;    movdqa  XMMWORD[48+rsp],xmm7
+        mov   &n= bsp; r13d,r8d

+     &= nbsp;  jmp     NEAR $L$ssse3_00_47

+

+ALIGN   16<= br class=3D"">
+$L$ssse3_00_47:

= +        sub     rbp= ,-128

+       &n= bsp;ror     r13d,14

+ &nbs= p;      movdqa  xmm4,xmm1
=
+        mov   =   eax,r14d

+     = ;   mov     r12d,r9d

+        movdqa  xmm7,xmm= 3

+        = ror     r14d,9

+  &nb= sp;     xor     r13d,r8d

+        xor &nb= sp;   r12d,r10d

+   &= nbsp;    ror     r13d,5

+        xor  &nb= sp;  r14d,eax

+DB    =   102,15,58,15,224,4

+   &= nbsp;    and     r12d,r8d

+        xor  = ;   r13d,r8d

+DB   &n= bsp;  102,15,58,15,250,4

+  &nb= sp;     add     r11d,DWORD[rsp= ]

+        = mov     r15d,eax

+  &= nbsp;     xor     r12d,r10d
+        ror =     r14d,11

+   =      movdqa  xmm5,xmm4

+        xor    &n= bsp;r15d,ebx

+      &= nbsp; add     r11d,r12d

+        movdqa  xmm6,xmm4

+        ror &nb= sp;   r13d,6

+   &nbs= p;    and     edi,r15d

+        psrld  &n= bsp;xmm4,3

+      &nb= sp; xor     r14d,eax

= +        add     r11= d,r13d

+       &= nbsp;xor     edi,ebx

+ &nb= sp;      paddd   xmm0,xmm7

+        ror  = ;   r14d,2

+    =     add     edx,r11d
=
+        psrld  &nbs= p;xmm6,7

+       = ; add     r11d,edi

+ =        mov     r13d,= edx

+       &nbs= p;pshufd  xmm7,xmm3,250

+   &nb= sp;    add     r14d,r11d

+        ror  = ;   r13d,14

+    = ;    pslld   xmm5,14

+        mov    &n= bsp;r11d,r14d

+      =   mov     r12d,r8d

+        pxor    xmm4,= xmm6

+       &nb= sp;ror     r14d,9

+  =       xor     r13d,edx
+        xor =     r12d,r9d

+   = ;     ror     r13d,5

+        psrld &nb= sp; xmm6,11

+     &nb= sp;  xor     r14d,r11d

+        pxor    x= mm4,xmm5

+       = ; and     r12d,edx

+ =        xor     r13d,= edx

+       &nbs= p;pslld   xmm5,11

+   &nbs= p;    add     r10d,DWORD[4+rsp]

+        mov &= nbsp;   edi,r11d

+   =      pxor    xmm4,xmm6

+        xor  &nbs= p;  r12d,r9d

+    &nb= sp;   ror     r14d,11

+        movdqa  xmm6,xm= m7

+        = ;xor     edi,eax

+  &= nbsp;     add     r10d,r12d
+        pxor=    xmm4,xmm5

+   &nb= sp;    ror     r13d,6

+        and   = ;  r15d,edi

+    &nbs= p;   xor     r14d,r11d
+        psrld   x= mm7,10

+       &= nbsp;add     r10d,r13d

+ &= nbsp;      xor     r15d,e= ax

+        = ;paddd   xmm0,xmm4

+   &nb= sp;    ror     r14d,2

+        add   = ;  ecx,r10d

+    &nbs= p;   psrlq   xmm6,17

= +        add     r10= d,r15d

+       &= nbsp;mov     r13d,ecx

+ &n= bsp;      add     r14d,r1= 0d

+        = ;pxor    xmm7,xmm6

+  &nbs= p;     ror     r13d,14

+        mov  = ;   r10d,r14d

+   &nb= sp;    mov     r12d,edx

+        ror  &nb= sp;  r14d,9

+    &nbs= p;   psrlq   xmm6,2

+=        xor     r13d= ,ecx

+       &nb= sp;xor     r12d,r8d

+ &nbs= p;      pxor    xmm7,xmm6

+        ror &n= bsp;   r13d,5

+   &nb= sp;    xor     r14d,r10d

+        and  = ;   r12d,ecx

+   &nbs= p;    pshufd  xmm7,xmm7,128

+        xor    &n= bsp;r13d,ecx

+      &= nbsp; add     r9d,DWORD[8+rsp]

+        mov    = ; r15d,r10d

+     &nb= sp;  psrldq  xmm7,8

+  &nb= sp;     xor     r12d,r8d

+        ror &nb= sp;   r14d,11

+   &nb= sp;    xor     r15d,r11d

+        add  = ;   r9d,r12d

+   &nbs= p;    ror     r13d,6
=
+        paddd  &nbs= p;xmm0,xmm7

+      &n= bsp; and     edi,r15d

+        xor     r1= 4d,r10d

+       =  add     r9d,r13d

+ &= nbsp;      pshufd  xmm7,xmm0,80

+        xor  = ;   edi,r11d

+   &nbs= p;    ror     r14d,2
=
+        add   =   ebx,r9d

+     =    movdqa  xmm6,xmm7

+ &nb= sp;      add     r9d,edi<= br class=3D"">
+        mo= v     r13d,ebx

+  &nb= sp;     psrld   xmm7,10
+        add   &n= bsp; r14d,r9d

+     &= nbsp;  ror     r13d,14

+        psrlq   xmm6,1= 7

+        = mov     r9d,r14d

+  &= nbsp;     mov     r12d,ecx

+        pxor =    xmm7,xmm6

+   &nbs= p;    ror     r14d,9
=
+        xor   =   r13d,ebx

+     = ;   xor     r12d,edx

+        ror    = ; r13d,5

+      =   xor     r14d,r9d

+        psrlq   xmm6,2

+        and &= nbsp;   r12d,ebx

+   =      xor     r13d,ebx

+        add  = ;   r8d,DWORD[12+rsp]

+  &= nbsp;     pxor    xmm7,xmm6

+        mov  = ;   edi,r9d

+    = ;    xor     r12d,edx

+        ror   = ;  r14d,11

+     = ;   pshufd  xmm7,xmm7,8

+ =        xor     edi,r= 10d

+       &nbs= p;add     r8d,r12d

+  = ;      movdqa  xmm6,XMMWORD[rbp]

+        ror  = ;   r13d,6

+    =     and     r15d,edi
=
+        pslldq  xmm= 7,8

+       &nbs= p;xor     r14d,r9d

+  = ;      add     r8d,r13d
+        xor=     r15d,r10d

+  &nb= sp;     paddd   xmm0,xmm7
=
+        ror   =   r14d,2

+     &= nbsp;  add     eax,r8d

+        add    &n= bsp;r8d,r15d

+      &= nbsp; paddd   xmm6,xmm0

+  = ;      mov     r13d,eax
+        add=     r14d,r8d

+  &nbs= p;     movdqa  XMMWORD[rsp],xmm6

+        ror  &nbs= p;  r13d,14

+    &nbs= p;   movdqa  xmm4,xmm2

+ &= nbsp;      mov     r8d,r1= 4d

+        = ;mov     r12d,ebx

+  =       movdqa  xmm7,xmm0
+        ror   &n= bsp; r14d,9

+     &nb= sp;  xor     r13d,eax

+        xor    &n= bsp;r12d,ecx

+      &= nbsp; ror     r13d,5

= +        xor     r14= d,r8d

+DB      102,15= ,58,15,225,4

+      &= nbsp; and     r12d,eax

+        xor     r= 13d,eax

+DB      102,= 15,58,15,251,4

+      = ;  add     edx,DWORD[16+rsp]
+        mov   &n= bsp; r15d,r8d

+     &= nbsp;  xor     r12d,ecx

+        ror    &= nbsp;r14d,11

+      &= nbsp; movdqa  xmm5,xmm4

+  &nbs= p;     xor     r15d,r9d

+        add &nbs= p;   edx,r12d

+   &nb= sp;    movdqa  xmm6,xmm4

+        ror    &n= bsp;r13d,6

+      &nb= sp; and     edi,r15d

= +        psrld   xmm4,3

+        xor &nbs= p;   r14d,r8d

+   &nb= sp;    add     edx,r13d

+        xor  &nb= sp;  edi,r9d

+    &nb= sp;   paddd   xmm1,xmm7

+        ror     = r14d,2

+       &= nbsp;add     r11d,edx

+ &n= bsp;      psrld   xmm6,7

+        add  = ;   edx,edi

+    = ;    mov     r13d,r11d

+        pshufd  x= mm7,xmm0,250

+      &= nbsp; add     r14d,edx

+        ror     r= 13d,14

+       &= nbsp;pslld   xmm5,14

+   &= nbsp;    mov     edx,r14d

+        mov  = ;   r12d,eax

+   &nbs= p;    pxor    xmm4,xmm6
+        ror   &n= bsp; r14d,9

+     &nb= sp;  xor     r13d,r11d

+        xor    &n= bsp;r12d,ebx

+      &= nbsp; ror     r13d,5

= +        psrld   xmm6,11

+        xor &nb= sp;   r14d,edx

+   &n= bsp;    pxor    xmm4,xmm5
=
+        and   =   r12d,r11d

+    &nbs= p;   xor     r13d,r11d
+        pslld   x= mm5,11

+       &= nbsp;add     ecx,DWORD[20+rsp]

+        mov    &n= bsp;edi,edx

+      &n= bsp; pxor    xmm4,xmm6

+ &= nbsp;      xor     r12d,e= bx

+        = ;ror     r14d,11

+  &= nbsp;     movdqa  xmm6,xmm7
+        xor   &nb= sp; edi,r8d

+     &nb= sp;  add     ecx,r12d

+        pxor    x= mm4,xmm5

+       = ; ror     r13d,6

+ &n= bsp;      and     r15d,ed= i

+        = xor     r14d,edx

+  &= nbsp;     psrld   xmm7,10
=
+        add   =   ecx,r13d

+     = ;   xor     r15d,r8d

+        paddd   xmm= 1,xmm4

+       &= nbsp;ror     r14d,2

+ &nbs= p;      add     r10d,ecx<= br class=3D"">
+        ps= rlq   xmm6,17

+    &n= bsp;   add     ecx,r15d
+        mov   &n= bsp; r13d,r10d

+     =    add     r14d,ecx

+        pxor    = ;xmm7,xmm6

+      &nb= sp; ror     r13d,14

+=        mov     ecx,= r14d

+       &nb= sp;mov     r12d,r11d

+ &nb= sp;      ror     r14d,9
+        psr= lq   xmm6,2

+    &nbs= p;   xor     r13d,r10d
+        xor   &nb= sp; r12d,eax

+     &n= bsp;  pxor    xmm7,xmm6

+        ror     = r13d,5

+       &= nbsp;xor     r14d,ecx

+ &n= bsp;      and     r12d,r1= 0d

+        = ;pshufd  xmm7,xmm7,128

+   &nbs= p;    xor     r13d,r10d

+        add  &nb= sp;  ebx,DWORD[24+rsp]

+   = ;     mov     r15d,ecx

+        psrldq &n= bsp;xmm7,8

+      &nb= sp; xor     r12d,eax

= +        ror     r14= d,11

+       &nb= sp;xor     r15d,edx

+ &nbs= p;      add     ebx,r12d<= br class=3D"">
+        ro= r     r13d,6

+   = ;     paddd   xmm1,xmm7
+        and   &n= bsp; edi,r15d

+     &= nbsp;  xor     r14d,ecx

+        add    &= nbsp;ebx,r13d

+      =   pshufd  xmm7,xmm1,80

+  =       xor     edi,edx

+        ror &= nbsp;   r14d,2

+   &n= bsp;    add     r9d,ebx

+        movdqa  = xmm6,xmm7

+      &nbs= p; add     ebx,edi

+ =        mov     r13d,= r9d

+       &nbs= p;psrld   xmm7,10

+   &nbs= p;    add     r14d,ebx

+        ror  &nbs= p;  r13d,14

+    &nbs= p;   psrlq   xmm6,17

= +        mov     ebx= ,r14d

+       &n= bsp;mov     r12d,r10d

+ &n= bsp;      pxor    xmm7,xmm6
+        ror =     r14d,9

+   &= nbsp;    xor     r13d,r9d

+        xor  = ;   r12d,r11d

+   &nb= sp;    ror     r13d,5

+        xor   = ;  r14d,ebx

+    &nbs= p;   psrlq   xmm6,2

+=        and     r12d= ,r9d

+       &nb= sp;xor     r13d,r9d

+ &nbs= p;      add     eax,DWORD= [28+rsp]

+       = ; pxor    xmm7,xmm6

+ &nbs= p;      mov     edi,ebx
+        xor=     r12d,r11d

+  &nb= sp;     ror     r14d,11

+        pshufd &= nbsp;xmm7,xmm7,8

+     &nb= sp;  xor     edi,ecx

+        add    &n= bsp;eax,r12d

+      &= nbsp; movdqa  xmm6,XMMWORD[32+rbp]

+=        ror     r13d= ,6

+        = ;and     r15d,edi

+  =       pslldq  xmm7,8

+        xor    = ; r14d,ebx

+     &nbs= p;  add     eax,r13d

+        xor    &n= bsp;r15d,ecx

+      &= nbsp; paddd   xmm1,xmm7

+  = ;      ror     r14d,2

+        add &= nbsp;   r8d,eax

+   &= nbsp;    add     eax,r15d

+        paddd &nb= sp; xmm6,xmm1

+     &= nbsp;  mov     r13d,r8d

+        add    &= nbsp;r14d,eax

+      =   movdqa  XMMWORD[16+rsp],xmm6

= +        ror     r13= d,14

+       &nb= sp;movdqa  xmm4,xmm3

+    =     mov     eax,r14d
=
+        mov   =   r12d,r9d

+     = ;   movdqa  xmm7,xmm1

+ &n= bsp;      ror     r14d,9<= br class=3D"">
+        xo= r     r13d,r8d

+  &nb= sp;     xor     r12d,r10d

+        ror &n= bsp;   r13d,5

+   &nb= sp;    xor     r14d,eax

+DB      102,15,58,15,226,4

+        and &n= bsp;   r12d,r8d

+   &= nbsp;    xor     r13d,r8d

+DB      102,15,58,15,248,4<= br class=3D"">
+        ad= d     r11d,DWORD[32+rsp]

+=        mov     r15d= ,eax

+       &nb= sp;xor     r12d,r10d

+ &nb= sp;      ror     r14d,11<= br class=3D"">
+        mo= vdqa  xmm5,xmm4

+     = ;   xor     r15d,ebx

+        add    = ; r11d,r12d

+     &nb= sp;  movdqa  xmm6,xmm4

+  =       ror     r13d,6

+        and &n= bsp;   edi,r15d

+   &= nbsp;    psrld   xmm4,3

+        xor    &= nbsp;r14d,eax

+      =   add     r11d,r13d

+        xor    &n= bsp;edi,ebx

+      &n= bsp; paddd   xmm2,xmm7

+  =       ror     r14d,2

+        add &n= bsp;   edx,r11d

+   &= nbsp;    psrld   xmm6,7

+        add    &= nbsp;r11d,edi

+      =   mov     r13d,edx

+        pshufd  xmm7,xmm1,250
+        add=     r14d,r11d

+  &nb= sp;     ror     r13d,14

+        pslld &n= bsp; xmm5,14

+     &n= bsp;  mov     r11d,r14d

+        mov    &= nbsp;r12d,r8d

+      =   pxor    xmm4,xmm6

+=        ror     r14d= ,9

+        = ;xor     r13d,edx

+  =       xor     r12d,r9d
+        ror =     r13d,5

+   &= nbsp;    psrld   xmm6,11

+        xor    =  r14d,r11d

+     &nbs= p;  pxor    xmm4,xmm5

+        and     r1= 2d,edx

+       &= nbsp;xor     r13d,edx

+ &n= bsp;      pslld   xmm5,11

+        add  = ;   r10d,DWORD[36+rsp]

+  =       mov     edi,r11d
+        pxor=    xmm4,xmm6

+   &nb= sp;    xor     r12d,r9d

+        ror  &nb= sp;  r14d,11

+    &nb= sp;   movdqa  xmm6,xmm7

+ =        xor     edi,e= ax

+        = ;add     r10d,r12d

+  = ;      pxor    xmm4,xmm5

+        ror &nb= sp;   r13d,6

+   &nbs= p;    and     r15d,edi

+        xor  &nbs= p;  r14d,r11d

+    &n= bsp;   psrld   xmm7,10

+        add     r= 10d,r13d

+       = ; xor     r15d,eax

+ =        paddd   xmm2,xmm4

+        ror &nb= sp;   r14d,2

+   &nbs= p;    add     ecx,r10d

+        psrlq  &n= bsp;xmm6,17

+      &n= bsp; add     r10d,r15d

+        mov     r= 13d,ecx

+       =  add     r14d,r10d

+ =        pxor    xmm7,xmm6<= br class=3D"">
+        ro= r     r13d,14

+  &nbs= p;     mov     r10d,r14d

+        mov &nb= sp;   r12d,edx

+   &n= bsp;    ror     r14d,9

+        psrlq  &n= bsp;xmm6,2

+      &nb= sp; xor     r13d,ecx

= +        xor     r12= d,r8d

+       &n= bsp;pxor    xmm7,xmm6

+  &= nbsp;     ror     r13d,5

+        xor &nb= sp;   r14d,r10d

+   &= nbsp;    and     r12d,ecx

+        pshufd &n= bsp;xmm7,xmm7,128

+     &n= bsp;  xor     r13d,ecx

+        add    &n= bsp;r9d,DWORD[40+rsp]

+    &nbs= p;   mov     r15d,r10d
+        psrldq  xmm7,8=

+        x= or     r12d,r8d

+  &n= bsp;     ror     r14d,11

+        xor &nb= sp;   r15d,r11d

+   &= nbsp;    add     r9d,r12d

+        ror  = ;   r13d,6

+    =     paddd   xmm2,xmm7

+        and    &n= bsp;edi,r15d

+      &= nbsp; xor     r14d,r10d

+        add     = r9d,r13d

+       = ; pshufd  xmm7,xmm2,80

+   = ;     xor     edi,r11d

+        ror  = ;   r14d,2

+    =     add     ebx,r9d
<= br class=3D"">+        movdqa  xmm6= ,xmm7

+       &n= bsp;add     r9d,edi

+ &nbs= p;      mov     r13d,ebx<= br class=3D"">
+        ps= rld   xmm7,10

+    &n= bsp;   add     r14d,r9d
+        ror   &n= bsp; r13d,14

+     &n= bsp;  psrlq   xmm6,17

+ &n= bsp;      mov     r9d,r14= d

+        = mov     r12d,ecx

+  &= nbsp;     pxor    xmm7,xmm6

+        ror  = ;   r14d,9

+    =     xor     r13d,ebx
=
+        xor   =   r12d,edx

+     = ;   ror     r13d,5

+        xor    &= nbsp;r14d,r9d

+      =   psrlq   xmm6,2

+  &= nbsp;     and     r12d,ebx

+        xor &= nbsp;   r13d,ebx

+   =      add     r8d,DWORD[44+rsp]=

+        p= xor    xmm7,xmm6

+   =      mov     edi,r9d

+        xor  = ;   r12d,edx

+   &nbs= p;    ror     r14d,11

+        pshufd  xm= m7,xmm7,8

+      &nbs= p; xor     edi,r10d

+=        add     r8d,= r12d

+       &nb= sp;movdqa  xmm6,XMMWORD[64+rbp]

+  &= nbsp;     ror     r13d,6

+        and &nb= sp;   r15d,edi

+   &n= bsp;    pslldq  xmm7,8

+        xor     r= 14d,r9d

+       =  add     r8d,r13d

+ &= nbsp;      xor     r15d,r= 10d

+       &nbs= p;paddd   xmm2,xmm7

+   &n= bsp;    ror     r14d,2

+        add  &nbs= p;  eax,r8d

+    &nbs= p;   add     r8d,r15d

+        paddd   xm= m6,xmm2

+       =  mov     r13d,eax

+ &= nbsp;      add     r14d,r= 8d

+        = ;movdqa  XMMWORD[32+rsp],xmm6

+  &nb= sp;     ror     r13d,14

+        movdqa &= nbsp;xmm4,xmm0

+      = ;  mov     r8d,r14d

+        mov    &n= bsp;r12d,ebx

+      &= nbsp; movdqa  xmm7,xmm2

+  &nbs= p;     ror     r14d,9

+        xor  = ;   r13d,eax

+   &nbs= p;    xor     r12d,ecx

+        ror  &nbs= p;  r13d,5

+     = ;   xor     r14d,r8d

+DB      102,15,58,15,227,4

+        and  &nbs= p;  r12d,eax

+    &nb= sp;   xor     r13d,eax
+DB      102,15,58,15,249,4

+        add  = ;   edx,DWORD[48+rsp]

+  &= nbsp;     mov     r15d,r8d

+        xor &= nbsp;   r12d,ecx

+   =      ror     r14d,11

+        movdqa &n= bsp;xmm5,xmm4

+      =   xor     r15d,r9d

+        add     = edx,r12d

+       = ; movdqa  xmm6,xmm4

+   &n= bsp;    ror     r13d,6

+        and  &nbs= p;  edi,r15d

+    &nb= sp;   psrld   xmm4,3

= +        xor     r14= d,r8d

+       &n= bsp;add     edx,r13d

+ &nb= sp;      xor     edi,r9d<= br class=3D"">
+        pa= ddd   xmm3,xmm7

+    =     ror     r14d,2
+        add   &n= bsp; r11d,edx

+     &= nbsp;  psrld   xmm6,7

+ &n= bsp;      add     edx,edi=

+        m= ov     r13d,r11d

+  &= nbsp;     pshufd  xmm7,xmm2,250

+        add   = ;  r14d,edx

+    &nbs= p;   ror     r13d,14

+        pslld   xmm= 5,14

+       &nb= sp;mov     edx,r14d

+ &nbs= p;      mov     r12d,eax<= br class=3D"">
+        px= or    xmm4,xmm6

+   &= nbsp;    ror     r14d,9

+        xor  &nb= sp;  r13d,r11d

+    &= nbsp;   xor     r12d,ebx
<= br class=3D"">+        ror   &= nbsp; r13d,5

+     &n= bsp;  psrld   xmm6,11

+ &n= bsp;      xor     r14d,ed= x

+        = pxor    xmm4,xmm5

+   = ;     and     r12d,r11d

+        xor &nbs= p;   r13d,r11d

+   &n= bsp;    pslld   xmm5,11

+        add    &= nbsp;ecx,DWORD[52+rsp]

+    &nb= sp;   mov     edi,edx

+        pxor   &nb= sp;xmm4,xmm6

+      &= nbsp; xor     r12d,ebx

+        ror     r= 14d,11

+       &= nbsp;movdqa  xmm6,xmm7

+   &nbs= p;    xor     edi,r8d

+        add   = ;  ecx,r12d

+    &nbs= p;   pxor    xmm4,xmm5

+        ror    &n= bsp;r13d,6

+      &nb= sp; and     r15d,edi

= +        xor     r14= d,edx

+       &n= bsp;psrld   xmm7,10

+   &n= bsp;    add     ecx,r13d

+        xor  = ;   r15d,r8d

+   &nbs= p;    paddd   xmm3,xmm4

+        ror    &= nbsp;r14d,2

+      &n= bsp; add     r10d,ecx

+        psrlq   xmm6,17

+        add &n= bsp;   ecx,r15d

+   &= nbsp;    mov     r13d,r10d

+        add  = ;   r14d,ecx

+   &nbs= p;    pxor    xmm7,xmm6
+        ror   &n= bsp; r13d,14

+     &n= bsp;  mov     ecx,r14d

+        mov    &n= bsp;r12d,r11d

+      =   ror     r14d,9

+        psrlq   xmm6,2

+        xor &nb= sp;   r13d,r10d

+   &= nbsp;    xor     r12d,eax

+        pxor &nbs= p;  xmm7,xmm6

+    &n= bsp;   ror     r13d,5

+        xor   &nbs= p; r14d,ecx

+     &nb= sp;  and     r12d,r10d

+        pshufd  xmm7,xmm7,1= 28

+        = ;xor     r13d,r10d

+  = ;      add     ebx,DWORD[= 56+rsp]

+       =  mov     r15d,ecx

+ &= nbsp;      psrldq  xmm7,8
=
+        xor   =   r12d,eax

+     = ;   ror     r14d,11

+        xor    =  r15d,edx

+      = ;  add     ebx,r12d

+        ror    &n= bsp;r13d,6

+      &nb= sp; paddd   xmm3,xmm7

+  &= nbsp;     and     edi,r15d

+        xor &= nbsp;   r14d,ecx

+   =      add     ebx,r13d

+        pshufd &n= bsp;xmm7,xmm3,80

+     &nb= sp;  xor     edi,edx

+        ror    &n= bsp;r14d,2

+      &nb= sp; add     r9d,ebx

+=        movdqa  xmm6,xmm7

+        add  = ;   ebx,edi

+    = ;    mov     r13d,r9d

+        psrld  &nb= sp;xmm7,10

+      &nb= sp; add     r14d,ebx

= +        ror     r13= d,14

+       &nb= sp;psrlq   xmm6,17

+   &nb= sp;    mov     ebx,r14d

+        mov  &nb= sp;  r12d,r10d

+    &= nbsp;   pxor    xmm7,xmm6

+        ror    = ; r14d,9

+      =   xor     r13d,r9d

+        xor     = r12d,r11d

+      &nbs= p; ror     r13d,5

+ &= nbsp;      xor     r14d,e= bx

+        = ;psrlq   xmm6,2

+    =     and     r12d,r9d
=
+        xor   =   r13d,r9d

+     = ;   add     eax,DWORD[60+rsp]

+        pxor &nbs= p;  xmm7,xmm6

+    &n= bsp;   mov     edi,ebx
+        xor   &nb= sp; r12d,r11d

+     &= nbsp;  ror     r14d,11

+        pshufd  xmm7,xmm7,8=

+        x= or     edi,ecx

+  &nb= sp;     add     eax,r12d

+        movdqa =  xmm6,XMMWORD[96+rbp]

+    = ;    ror     r13d,6
<= br class=3D"">+        and   &= nbsp; r15d,edi

+     =    pslldq  xmm7,8

+  =       xor     r14d,ebx
+        add =     eax,r13d

+   = ;     xor     r15d,ecx

+        paddd &nb= sp; xmm3,xmm7

+     &= nbsp;  ror     r14d,2

+        add    &n= bsp;r8d,eax

+      &n= bsp; add     eax,r15d

+        paddd   xmm6,xmm3
+        mov =     r13d,r8d

+   = ;     add     r14d,eax

+        movdqa &n= bsp;XMMWORD[48+rsp],xmm6

+    &= nbsp;   cmp     BYTE[131+rbp],0

+        jne  = ;   NEAR $L$ssse3_00_47

+  = ;      ror     r13d,14
+        mov =     eax,r14d

+   = ;     mov     r12d,r9d

+        ror  = ;   r14d,9

+    =     xor     r13d,r8d
=
+        xor   =   r12d,r10d

+    &nbs= p;   ror     r13d,5

+        xor    =  r14d,eax

+      = ;  and     r12d,r8d

+        xor    &n= bsp;r13d,r8d

+      &= nbsp; add     r11d,DWORD[rsp]

+        mov    =  r15d,eax

+      = ;  xor     r12d,r10d

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r15d,ebx

+        add     r1= 1d,r12d

+       =  ror     r13d,6

+ &nb= sp;      and     edi,r15d=

+        x= or     r14d,eax

+  &n= bsp;     add     r11d,r13d

+        xor &= nbsp;   edi,ebx

+   &= nbsp;    ror     r14d,2

+        add  &nb= sp;  edx,r11d

+    &n= bsp;   add     r11d,edi
+        mov   &n= bsp; r13d,edx

+     &= nbsp;  add     r14d,r11d

+        ror    =  r13d,14

+      =   mov     r11d,r14d

+        mov    &n= bsp;r12d,r8d

+      &= nbsp; ror     r14d,9

= +        xor     r13= d,edx

+       &n= bsp;xor     r12d,r9d

+ &nb= sp;      ror     r13d,5
+        xor=     r14d,r11d

+  &nb= sp;     and     r12d,edx

+        xor &nb= sp;   r13d,edx

+   &n= bsp;    add     r10d,DWORD[4+rsp]
+        mov=     edi,r11d

+  &nbs= p;     xor     r12d,r9d

+        ror &nbs= p;   r14d,11

+   &nbs= p;    xor     edi,eax

+        add   = ;  r10d,r12d

+    &nb= sp;   ror     r13d,6

+        and    = ; r15d,edi

+     &nbs= p;  xor     r14d,r11d

+        add    &n= bsp;r10d,r13d

+      =   xor     r15d,eax

+        ror     = r14d,2

+       &= nbsp;add     ecx,r10d

+ &n= bsp;      add     r10d,r1= 5d

+        = ;mov     r13d,ecx

+  =       add     r14d,r10d
+        ror=     r13d,14

+   = ;     mov     r10d,r14d

+        mov &nbs= p;   r12d,edx

+   &nb= sp;    ror     r14d,9

+        xor   = ;  r13d,ecx

+    &nbs= p;   xor     r12d,r8d

+        ror   &nbs= p; r13d,5

+      = ;  xor     r14d,r10d

+        and    &n= bsp;r12d,ecx

+      &= nbsp; xor     r13d,ecx

+        add     r= 9d,DWORD[8+rsp]

+     &nbs= p;  mov     r15d,r10d

+        xor    &n= bsp;r12d,r8d

+      &= nbsp; ror     r14d,11

+        xor     r1= 5d,r11d

+       =  add     r9d,r12d

+ &= nbsp;      ror     r13d,6=

+        a= nd     edi,r15d

+  &n= bsp;     xor     r14d,r10d

+        add &= nbsp;   r9d,r13d

+   =      xor     edi,r11d

+        ror  = ;   r14d,2

+    =     add     ebx,r9d
<= br class=3D"">+        add   &= nbsp; r9d,edi

+     &= nbsp;  mov     r13d,ebx

+        add    &= nbsp;r14d,r9d

+      =   ror     r13d,14

+        mov     r= 9d,r14d

+       =  mov     r12d,ecx

+ &= nbsp;      ror     r14d,9=

+        x= or     r13d,ebx

+  &n= bsp;     xor     r12d,edx

+        ror &n= bsp;   r13d,5

+   &nb= sp;    xor     r14d,r9d

+        and  &nb= sp;  r12d,ebx

+    &n= bsp;   xor     r13d,ebx
+        add   &n= bsp; r8d,DWORD[12+rsp]

+   &nbs= p;    mov     edi,r9d

+        xor   = ;  r12d,edx

+    &nbs= p;   ror     r14d,11

+        xor    = ; edi,r10d

+     &nbs= p;  add     r8d,r12d

+        ror    &n= bsp;r13d,6

+      &nb= sp; and     r15d,edi

= +        xor     r14= d,r9d

+       &n= bsp;add     r8d,r13d

+ &nb= sp;      xor     r15d,r10= d

+        = ror     r14d,2

+  &nb= sp;     add     eax,r8d

+        add &nbs= p;   r8d,r15d

+   &nb= sp;    mov     r13d,eax

+        add  &nb= sp;  r14d,r8d

+    &n= bsp;   ror     r13d,14
+        mov   &nb= sp; r8d,r14d

+     &n= bsp;  mov     r12d,ebx

+        ror    &n= bsp;r14d,9

+      &nb= sp; xor     r13d,eax

= +        xor     r12= d,ecx

+       &n= bsp;ror     r13d,5

+  = ;      xor     r14d,r8d
+        and=     r12d,eax

+  &nbs= p;     xor     r13d,eax

+        add &nbs= p;   edx,DWORD[16+rsp]

+  =       mov     r15d,r8d
+        xor =     r12d,ecx

+   = ;     ror     r14d,11

+        xor  = ;   r15d,r9d

+   &nbs= p;    add     edx,r12d

+        ror  &nbs= p;  r13d,6

+     = ;   and     edi,r15d

+        xor    = ; r14d,r8d

+     &nbs= p;  add     edx,r13d

+        xor    &n= bsp;edi,r9d

+      &n= bsp; ror     r14d,2

+=        add     r11d= ,edx

+       &nb= sp;add     edx,edi

+  = ;      mov     r13d,r11d<= br class=3D"">
+        ad= d     r14d,edx

+  &nb= sp;     ror     r13d,14

+        mov &nbs= p;   edx,r14d

+   &nb= sp;    mov     r12d,eax

+        ror  &nb= sp;  r14d,9

+    &nbs= p;   xor     r13d,r11d
+        xor   &nb= sp; r12d,ebx

+     &n= bsp;  ror     r13d,5

+        xor    &n= bsp;r14d,edx

+      &= nbsp; and     r12d,r11d

+        xor     = r13d,r11d

+      &nbs= p; add     ecx,DWORD[20+rsp]

+        mov    &= nbsp;edi,edx

+      &= nbsp; xor     r12d,ebx

+        ror     r= 14d,11

+       &= nbsp;xor     edi,r8d

+ &nb= sp;      add     ecx,r12d=

+        r= or     r13d,6

+  &nbs= p;     and     r15d,edi

+        xor &nbs= p;   r14d,edx

+   &nb= sp;    add     ecx,r13d

+        xor  &nb= sp;  r15d,r8d

+    &n= bsp;   ror     r14d,2

+        add   &nbs= p; r10d,ecx

+     &nb= sp;  add     ecx,r15d

+        mov    &n= bsp;r13d,r10d

+      =   add     r14d,ecx

+        ror     = r13d,14

+       =  mov     ecx,r14d

+ &= nbsp;      mov     r12d,r= 11d

+       &nbs= p;ror     r14d,9

+  &= nbsp;     xor     r13d,r10d
+        xor =     r12d,eax

+   = ;     ror     r13d,5

+        xor  = ;   r14d,ecx

+   &nbs= p;    and     r12d,r10d

+        xor  &nb= sp;  r13d,r10d

+    &= nbsp;   add     ebx,DWORD[24+rsp]

+        mov &nbs= p;   r15d,ecx

+   &nb= sp;    xor     r12d,eax

+        ror  &nb= sp;  r14d,11

+    &nb= sp;   xor     r15d,edx
+        add   &nb= sp; ebx,r12d

+     &n= bsp;  ror     r13d,6

+        and    &n= bsp;edi,r15d

+      &= nbsp; xor     r14d,ecx

+        add     e= bx,r13d

+       =  xor     edi,edx

+ &n= bsp;      ror     r14d,2<= br class=3D"">
+        ad= d     r9d,ebx

+  &nbs= p;     add     ebx,edi

+        mov  = ;   r13d,r9d

+   &nbs= p;    add     r14d,ebx

+        ror  &nbs= p;  r13d,14

+    &nbs= p;   mov     ebx,r14d

+        mov   &nbs= p; r12d,r10d

+     &n= bsp;  ror     r14d,9

+        xor    &n= bsp;r13d,r9d

+      &= nbsp; xor     r12d,r11d

+        ror     = r13d,5

+       &= nbsp;xor     r14d,ebx

+ &n= bsp;      and     r12d,r9= d

+        = xor     r13d,r9d

+  &= nbsp;     add     eax,DWORD[28= +rsp]

+       &n= bsp;mov     edi,ebx

+ &nbs= p;      xor     r12d,r11d=

+        r= or     r14d,11

+  &nb= sp;     xor     edi,ecx

+        add &nbs= p;   eax,r12d

+   &nb= sp;    ror     r13d,6

+        and   = ;  r15d,edi

+    &nbs= p;   xor     r14d,ebx

+        add   &nbs= p; eax,r13d

+     &nb= sp;  xor     r15d,ecx

+        ror    &n= bsp;r14d,2

+      &nb= sp; add     r8d,eax

+=        add     eax,= r15d

+       &nb= sp;mov     r13d,r8d

+ &nbs= p;      add     r14d,eax<= br class=3D"">
+        ro= r     r13d,14

+  &nbs= p;     mov     eax,r14d

+        mov &nbs= p;   r12d,r9d

+   &nb= sp;    ror     r14d,9

+        xor   = ;  r13d,r8d

+    &nbs= p;   xor     r12d,r10d
+        ror   &nb= sp; r13d,5

+     &nbs= p;  xor     r14d,eax

+        and    &n= bsp;r12d,r8d

+      &= nbsp; xor     r13d,r8d

+        add     r= 11d,DWORD[32+rsp]

+     &n= bsp;  mov     r15d,eax

+        xor    &n= bsp;r12d,r10d

+      =   ror     r14d,11

+        xor     r= 15d,ebx

+       =  add     r11d,r12d

+ =        ror     r13d,= 6

+        = and     edi,r15d

+  &= nbsp;     xor     r14d,eax

+        add &= nbsp;   r11d,r13d

+   = ;     xor     edi,ebx

+        ror  = ;   r14d,2

+    =     add     edx,r11d
=
+        add   =   r11d,edi

+     = ;   mov     r13d,edx

+        add    = ; r14d,r11d

+     &nb= sp;  ror     r13d,14

+        mov    &n= bsp;r11d,r14d

+      =   mov     r12d,r8d

+        ror     = r14d,9

+       &= nbsp;xor     r13d,edx

+ &n= bsp;      xor     r12d,r9= d

+        = ror     r13d,5

+  &nb= sp;     xor     r14d,r11d

+        and &n= bsp;   r12d,edx

+   &= nbsp;    xor     r13d,edx

+        add  = ;   r10d,DWORD[36+rsp]

+  =       mov     edi,r11d
+        xor =     r12d,r9d

+   = ;     ror     r14d,11

+        xor  = ;   edi,eax

+    = ;    add     r10d,r12d

+        ror  &nbs= p;  r13d,6

+     = ;   and     r15d,edi

+        xor    = ; r14d,r11d

+     &nb= sp;  add     r10d,r13d

+        xor    &n= bsp;r15d,eax

+      &= nbsp; ror     r14d,2

= +        add     ecx= ,r10d

+       &n= bsp;add     r10d,r15d

+ &n= bsp;      mov     r13d,ec= x

+        = add     r14d,r10d

+  =       ror     r13d,14

+        mov &= nbsp;   r10d,r14d

+   = ;     mov     r12d,edx

+        ror  = ;   r14d,9

+    =     xor     r13d,ecx
=
+        xor   =   r12d,r8d

+     = ;   ror     r13d,5

+        xor    &= nbsp;r14d,r10d

+      = ;  and     r12d,ecx

+        xor    &n= bsp;r13d,ecx

+      &= nbsp; add     r9d,DWORD[40+rsp]

+        mov   &nbs= p; r15d,r10d

+     &n= bsp;  xor     r12d,r8d

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     r15d,r11d

+        add     r= 9d,r12d

+       =  ror     r13d,6

+ &nb= sp;      and     edi,r15d=

+        x= or     r14d,r10d

+  &= nbsp;     add     r9d,r13d

+        xor &= nbsp;   edi,r11d

+   =      ror     r14d,2

+        add  = ;   ebx,r9d

+    = ;    add     r9d,edi
=
+        mov   =   r13d,ebx

+     = ;   add     r14d,r9d

+        ror    = ; r13d,14

+      = ;  mov     r9d,r14d

+        mov    &n= bsp;r12d,ecx

+      &= nbsp; ror     r14d,9

= +        xor     r13= d,ebx

+       &n= bsp;xor     r12d,edx

+ &nb= sp;      ror     r13d,5
+        xor=     r14d,r9d

+  &nbs= p;     and     r12d,ebx

+        xor &nbs= p;   r13d,ebx

+   &nb= sp;    add     r8d,DWORD[44+rsp]
+        mov =     edi,r9d

+   =      xor     r12d,edx

+        ror  = ;   r14d,11

+    = ;    xor     edi,r10d

+        add   = ;  r8d,r12d

+    &nbs= p;   ror     r13d,6

+        and    =  r15d,edi

+      = ;  xor     r14d,r9d

+        add    &n= bsp;r8d,r13d

+      &= nbsp; xor     r15d,r10d

+        ror     = r14d,2

+       &= nbsp;add     eax,r8d

+ &nb= sp;      add     r8d,r15d=

+        m= ov     r13d,eax

+  &n= bsp;     add     r14d,r8d

+        ror &n= bsp;   r13d,14

+   &n= bsp;    mov     r8d,r14d

+        mov  = ;   r12d,ebx

+   &nbs= p;    ror     r14d,9
=
+        xor   =   r13d,eax

+     = ;   xor     r12d,ecx

+        ror    = ; r13d,5

+      =   xor     r14d,r8d

+        and     = r12d,eax

+       = ; xor     r13d,eax

+ =        add     edx,D= WORD[48+rsp]

+      &= nbsp; mov     r15d,r8d

+        xor     r= 12d,ecx

+       =  ror     r14d,11

+ &n= bsp;      xor     r15d,r9= d

+        = add     edx,r12d

+  &= nbsp;     ror     r13d,6

+        and &nb= sp;   edi,r15d

+   &n= bsp;    xor     r14d,r8d

+        add  = ;   edx,r13d

+   &nbs= p;    xor     edi,r9d

+        ror   = ;  r14d,2

+     =    add     r11d,edx

+        add    =  edx,edi

+      =   mov     r13d,r11d

+        add    &n= bsp;r14d,edx

+      &= nbsp; ror     r13d,14

+        mov     ed= x,r14d

+       &= nbsp;mov     r12d,eax

+ &n= bsp;      ror     r14d,9<= br class=3D"">
+        xo= r     r13d,r11d

+  &n= bsp;     xor     r12d,ebx

+        ror &n= bsp;   r13d,5

+   &nb= sp;    xor     r14d,edx

+        and  &nb= sp;  r12d,r11d

+    &= nbsp;   xor     r13d,r11d
=
+        add   =   ecx,DWORD[52+rsp]

+   &n= bsp;    mov     edi,edx

+        xor  &nb= sp;  r12d,ebx

+    &n= bsp;   ror     r14d,11
+        xor   &nb= sp; edi,r8d

+     &nb= sp;  add     ecx,r12d

+        ror    &n= bsp;r13d,6

+      &nb= sp; and     r15d,edi

= +        xor     r14= d,edx

+       &n= bsp;add     ecx,r13d

+ &nb= sp;      xor     r15d,r8d=

+        r= or     r14d,2

+  &nbs= p;     add     r10d,ecx

+        add &nbs= p;   ecx,r15d

+   &nb= sp;    mov     r13d,r10d

+        add  = ;   r14d,ecx

+   &nbs= p;    ror     r13d,14

+        mov   = ;  ecx,r14d

+    &nbs= p;   mov     r12d,r11d
+        ror   &nb= sp; r14d,9

+     &nbs= p;  xor     r13d,r10d

+        xor    &n= bsp;r12d,eax

+      &= nbsp; ror     r13d,5

= +        xor     r14= d,ecx

+       &n= bsp;and     r12d,r10d

+ &n= bsp;      xor     r13d,r1= 0d

+        = ;add     ebx,DWORD[56+rsp]

+        mov     r1= 5d,ecx

+       &= nbsp;xor     r12d,eax

+ &n= bsp;      ror     r14d,11=

+        x= or     r15d,edx

+  &n= bsp;     add     ebx,r12d

+        ror &n= bsp;   r13d,6

+   &nb= sp;    and     edi,r15d

+        xor  &nb= sp;  r14d,ecx

+    &n= bsp;   add     ebx,r13d
+        xor   &n= bsp; edi,edx

+     &n= bsp;  ror     r14d,2

+        add    &n= bsp;r9d,ebx

+      &n= bsp; add     ebx,edi

= +        mov     r13= d,r9d

+       &n= bsp;add     r14d,ebx

+ &nb= sp;      ror     r13d,14<= br class=3D"">
+        mo= v     ebx,r14d

+  &nb= sp;     mov     r12d,r10d

+        ror &n= bsp;   r14d,9

+   &nb= sp;    xor     r13d,r9d

+        xor  &nb= sp;  r12d,r11d

+    &= nbsp;   ror     r13d,5
+        xor   &nb= sp; r14d,ebx

+     &n= bsp;  and     r12d,r9d

+        xor    &n= bsp;r13d,r9d

+      &= nbsp; add     eax,DWORD[60+rsp]

+        mov   &nbs= p; edi,ebx

+     &nbs= p;  xor     r12d,r11d

+        ror    &n= bsp;r14d,11

+      &n= bsp; xor     edi,ecx

= +        add     eax= ,r12d

+       &n= bsp;ror     r13d,6

+  = ;      and     r15d,edi
+        xor=     r14d,ebx

+  &nbs= p;     add     eax,r13d

+        xor &nbs= p;   r15d,ecx

+   &nb= sp;    ror     r14d,2

+        add   = ;  r8d,eax

+     = ;   add     eax,r15d

+        mov    = ; r13d,r8d

+     &nbs= p;  add     r14d,eax

+        mov    &n= bsp;rdi,QWORD[((64+0))+rsp]

+   &nbs= p;    mov     eax,r14d

+

+     &= nbsp;  add     eax,DWORD[rdi]
<= br class=3D"">+        lea   &= nbsp; rsi,[64+rsi]

+    &n= bsp;   add     ebx,DWORD[4+rdi]

+        add  = ;   ecx,DWORD[8+rdi]

+  &n= bsp;     add     edx,DWORD[12+= rdi]

+       &nb= sp;add     r8d,DWORD[16+rdi]

+        add     = r9d,DWORD[20+rdi]

+     &n= bsp;  add     r10d,DWORD[24+rdi]

+        add  &nbs= p;  r11d,DWORD[28+rdi]

+

+        cmp  &nb= sp;  rsi,QWORD[((64+16))+rsp]

+

+        mov &n= bsp;   DWORD[rdi],eax

+  &= nbsp;     mov     DWORD[4+rdi]= ,ebx

+       &nb= sp;mov     DWORD[8+rdi],ecx

+        mov     D= WORD[12+rdi],edx

+     &nb= sp;  mov     DWORD[16+rdi],r8d
=
+        mov   =   DWORD[20+rdi],r9d

+   &n= bsp;    mov     DWORD[24+rdi],r10d<= br class=3D"">
+        mo= v     DWORD[28+rdi],r11d

+=        jb      = ;NEAR $L$loop_ssse3

+

+        mov    &n= bsp;rsi,QWORD[88+rsp]

+

+        movaps  xmm6,XMMWOR= D[((64+32))+rsp]

+     &nb= sp;  movaps  xmm7,XMMWORD[((64+48))+rsp]

+        movaps  xmm8,XMM= WORD[((64+64))+rsp]

+     =    movaps  xmm9,XMMWORD[((64+80))+rsp]
+        mov   &n= bsp; r15,QWORD[((-48))+rsi]

+

+        mov  &nb= sp;  r14,QWORD[((-40))+rsi]

+

+        mov &nbs= p;   r13,QWORD[((-32))+rsi]

+
+        mov=     r12,QWORD[((-24))+rsi]

+

+       &nbs= p;mov     rbp,QWORD[((-16))+rsi]

+

+       = ; mov     rbx,QWORD[((-8))+rsi]

+

+      &= nbsp; lea     rsp,[rsi]

+

+$L$epilogue_ssse3:

+        mov    &= nbsp;rdi,QWORD[8+rsp]        ;WIN64 epil= ogue

+       &nb= sp;mov     rsi,QWORD[16+rsp]

+        DB     &= nbsp;0F3h,0C3h           =     ;repret

+

+$L$SEH_end_sha256_block_data_order_ssse3:
<= br class=3D"">+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16
<= br class=3D"">+se_handler:

+    = ;    push    rsi

+        push    r= di

+        = ;push    rbx

+   &nbs= p;    push    rbp

+        push    r= 12

+        = ;push    r13

+   &nbs= p;    push    r14

+        push    r= 15

+        = ;pushfq

+       =  sub     rsp,64

+

+        mov &= nbsp;   rax,QWORD[120+r8]

+ &nb= sp;      mov     rbx,QWOR= D[248+r8]

+

+ &nb= sp;      mov     rsi,QWOR= D[8+r9]

+       =  mov     r11,QWORD[56+r9]

+

+       = ; mov     r10d,DWORD[r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jb    &n= bsp; NEAR $L$in_prologue

+
=
+        mov   =   rax,QWORD[152+r8]

+
=
+        mov   =   r10d,DWORD[4+r11]

+   &n= bsp;    lea     r10,[r10*1+rsi]

+        cmp &= nbsp;   rbx,r10

+   &= nbsp;    jae     NEAR $L$in_prologu= e

+        = mov     rsi,rax

+  &n= bsp;     mov     rax,QWORD[((6= 4+24))+rax]

+

+ &= nbsp;      mov     rbx,QW= ORD[((-8))+rax]

+     &nbs= p;  mov     rbp,QWORD[((-16))+rax]

+        mov  = ;   r12,QWORD[((-24))+rax]

+ &n= bsp;      mov     r13,QWO= RD[((-32))+rax]

+     &nbs= p;  mov     r14,QWORD[((-40))+rax]

+        mov  = ;   r15,QWORD[((-48))+rax]

+ &n= bsp;      mov     QWORD[1= 44+r8],rbx

+      &nb= sp; mov     QWORD[160+r8],rbp

+        mov    =  QWORD[216+r8],r12

+    &n= bsp;   mov     QWORD[224+r8],r13

+        mov  = ;   QWORD[232+r8],r14

+  &= nbsp;     mov     QWORD[240+r8= ],r15

+

+  &= nbsp;     lea     r10,[$L$epil= ogue]

+       &n= bsp;cmp     rbx,r10

+ &nbs= p;      jb      NEAR= $L$in_prologue

+

+        lea     rs= i,[((64+32))+rsi]

+     &n= bsp;  lea     rdi,[512+r8]

+        mov   &nbs= p; ecx,8

+      =   DD      0xa548f3fc

+

+$L$in_prologue:
+        mov   &nb= sp; rdi,QWORD[8+rax]

+    =     mov     rsi,QWORD[16+rax]

+        mov &nb= sp;   QWORD[152+r8],rax

+  = ;      mov     QWORD[168+= r8],rsi

+       =  mov     QWORD[176+r8],rdi

+

+       = ; mov     rdi,QWORD[40+r9]

+        mov    &n= bsp;rsi,r8

+      &nb= sp; mov     ecx,154

+=        DD      = ;0xa548f3fc

+

+ &= nbsp;      mov     rsi,r9=

+        x= or     rcx,rcx

+  &nb= sp;     mov     rdx,QWORD[8+rs= i]

+        = ;mov     r8,QWORD[rsi]

+ &= nbsp;      mov     r9,QWO= RD[16+rsi]

+      &nb= sp; mov     r10,QWORD[40+rsi]

+        lea    =  r11,[56+rsi]

+     &= nbsp;  lea     r12,[24+rsi]
+        mov   &nb= sp; QWORD[32+rsp],r10

+    = ;    mov     QWORD[40+rsp],r11

+        mov &n= bsp;   QWORD[48+rsp],r12

+ &nbs= p;      mov     QWORD[56+= rsp],rcx

+       = ; call    QWORD[__imp_RtlVirtualUnwind]
<= br class=3D"">+

+     &nbs= p;  mov     eax,1

+        add     r= sp,64

+       &n= bsp;popfq

+      &nbs= p; pop     r15

+ &nbs= p;      pop     r14

+        pop &nb= sp;   r13

+    &= nbsp;   pop     r12

+        pop    =  rbp

+      &nbs= p; pop     rbx

+ &nbs= p;      pop     rdi

+        pop &nb= sp;   rsi

+    &= nbsp;   DB      0F3h,0C3h  &nb= sp;            = ;repret

+

+

+ALIGN   16

= +shaext_handler:

+     &nb= sp;  push    rsi

+ &n= bsp;      push    rdi

+        push &nbs= p;  rbx

+     &n= bsp;  push    rbp

+ &= nbsp;      push    r12

+        push &nbs= p;  r13

+     &n= bsp;  push    r14

+ &= nbsp;      push    r15

+        pushfq
+        sub =     rsp,64

+

+        mov   = ;  rax,QWORD[120+r8]

+   &= nbsp;    mov     rbx,QWORD[248+r8]<= br class=3D"">
+

+   &= nbsp;    lea     r10,[$L$prologue_s= haext]

+       &= nbsp;cmp     rbx,r10

+ &nb= sp;      jb      NEA= R $L$in_prologue

+

+        lea     r= 10,[$L$epilogue_shaext]

+    &n= bsp;   cmp     rbx,r10
+        jae   &nb= sp; NEAR $L$in_prologue

+
<= br class=3D"">+        lea   &= nbsp; rsi,[((-8-80))+rax]

+   &= nbsp;    lea     rdi,[512+r8]

+        mov &nb= sp;   ecx,10

+   &nbs= p;    DD      0xa548f3fc

+

+    =     jmp     NEAR $L$in_prologue

+

+section .pdata rd= ata align=3D4

+ALIGN   4

+        DD  &nbs= p;   $L$SEH_begin_sha256_block_data_order wrt ..imagebase
+        DD &= nbsp;    $L$SEH_end_sha256_block_data_order wrt ..image= base

+       &nb= sp;DD      $L$SEH_info_sha256_block_data_order wrt= ..imagebase

+      &= nbsp; DD      $L$SEH_begin_sha256_block_data_= order_shaext
wrt ..imagebase

+        DD  =     $L$SEH_end_sha256_block_data_order_shaext wrt
..imagebase
<= blockquote type=3D"cite" class=3D"">

+     = ;   DD      $L$SEH_info_sha256_bloc= k_data_order_shaext wrt
..imagebase

+        DD    &nb= sp; $L$SEH_begin_sha256_block_data_order_ssse3 wrt
..imagebase

+       =  DD      $L$SEH_end_sha256_block_data_order_s= sse3 wrt
..imagebase

+  &nb= sp;     DD      $L$SEH_in= fo_sha256_block_data_order_ssse3 wrt
..imagebase

+section .xdata rdata align=3D8

+ALIGN   8

+$L$SEH_info_sha256_bl= ock_data_order:

+DB     &n= bsp;9,0,0,0

+      &n= bsp; DD      se_handler wrt ..imagebase

+        DD &nbs= p;    $L$prologue wrt ..imagebase,$L$epilogue wrt
..imagebase
<= blockquote type=3D"cite" class=3D"">

+$L$SEH_info_sha256_block= _data_order_shaext:

+DB    &nbs= p; 9,0,0,0

+     &nbs= p;  DD      shaext_handler wrt ..imageba= se

+$L$SEH_info_sha256_block_data_order_ssse3:=

+DB      9,0,0,0

+        DD &n= bsp;    se_handler wrt ..imagebase

+        DD    &= nbsp; $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3
wrt ..imagebase

diff --git a/CryptoPkg/Libra= ry/OpensslLib/X64/crypto/sha/sha512-
x86_64.nasm
b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sh= a512-x86_64.nasm
new file mode 100644
index 000= 0000000..c6397d4393
--- /dev/null
+++ b/CryptoP= kg/Library/OpensslLib/X64/crypto/sha/sha512-
x86_64.nasm
@@ -0,0 +1,1938= @@
+; WARNING: do not edit!

+; = Generated from openssl/crypto/sha/asm/sha512-x86_64.pl

+;

+; Copyright 2005-2020 The OpenSSL= Project Authors. All Rights
Reserved.

+;

+; Licensed under the OpenSSL licens= e (the "License").  You may not use

+; th= is file except in compliance with the License.  You can obtain a
copy

+; in the file LICENSE in the so= urce distribution or at

+; https://www.openssl.org/sou= rce/license.html

+

+default rel

+%define XMMWORD

+%define YMMWORD

+%defin= e ZMMWORD

+section .text code align=3D64

+

+

+EXTERN  OPENSSL_ia32cap_P

+gl= obal  sha512_block_data_order

+

+ALIGN   16

+s= ha512_block_data_order:

+    &n= bsp;   mov     QWORD[8+rsp],rdi  &n= bsp;     ;WIN64 prologue

+        mov    &n= bsp;QWORD[16+rsp],rsi

+    &nbs= p;   mov     rax,rsp

+$L$SEH_begin_sha512_block_data_order:

+        mov     = rdi,rcx

+       =  mov     rsi,rdx

+ &n= bsp;      mov     rdx,r8<= br class=3D"">
+

+

+

+     &n= bsp;  mov     rax,rsp

+

+       = ; push    rbx

+

+        push &nbs= p;  rbp

+

+        push    r12
+

+   &n= bsp;    push    r13

+

+      &nb= sp; push    r14

+

+        push &nbs= p;  r15

+

+        shl     = rdx,4

+       &n= bsp;sub     rsp,16*8+4*8

+=        lea     rdx,= [rdx*8+rsi]

+      &n= bsp; and     rsp,-64

= +        mov     QWO= RD[((128+0))+rsp],rdi

+    &nbs= p;   mov     QWORD[((128+8))+rsp],rsi
+        mov =     QWORD[((128+16))+rsp],rdx

+        mov    &n= bsp;QWORD[152+rsp],rax

+

+$L$prologue:

+

+        mov    &n= bsp;rax,QWORD[rdi]

+     &= nbsp;  mov     rbx,QWORD[8+rdi]

+        mov   = ;  rcx,QWORD[16+rdi]

+   &= nbsp;    mov     rdx,QWORD[24+rdi]<= br class=3D"">
+        mo= v     r8,QWORD[32+rdi]

+ &= nbsp;      mov     r9,QWO= RD[40+rdi]

+      &nb= sp; mov     r10,QWORD[48+rdi]

+        mov    =  r11,QWORD[56+rdi]

+    &n= bsp;   jmp     NEAR $L$loop

+

+ALIGN   16

+$L$loop:

+  &nbs= p;     mov     rdi,rbx

+        lea  = ;   rbp,[K512]

+   &n= bsp;    xor     rdi,rcx

+        mov  &nb= sp;  r12,QWORD[rsi]

+   &n= bsp;    mov     r13,r8

+        mov  &nbs= p;  r14,rax

+    &nbs= p;   bswap   r12

+ &n= bsp;      ror     r13,23<= br class=3D"">
+        mo= v     r15,r9

+

+        xor  &nb= sp;  r13,r8

+    &nbs= p;   ror     r14,5

+        xor    &= nbsp;r15,r10

+

+ =        mov     QWORD= [rsp],r12

+      &nbs= p; xor     r14,rax

+ =        and     r15,r= 8

+

+   = ;     ror     r13,4

+        add  = ;   r12,r11

+    = ;    xor     r15,r10
=
+

+     &nb= sp;  ror     r14,6

+        xor     = r13,r8

+       &= nbsp;add     r12,r15

+

+        mov &= nbsp;   r15,rax

+   &= nbsp;    add     r12,QWORD[rbp]

+        xor &= nbsp;   r14,rax

+

+        xor   = ;  r15,rbx

+     = ;   ror     r13,14

+        mov    &= nbsp;r11,rbx

+

+ =        and     rdi,r= 15

+        = ;ror     r14,28

+  &n= bsp;     add     r12,r13

+

+    =     xor     r11,rdi
<= br class=3D"">+        add   &= nbsp; rdx,r12

+     &= nbsp;  add     r11,r12

+

+       = ; lea     rbp,[8+rbp]

+        add     r1= 1,r14

+       &n= bsp;mov     r12,QWORD[8+rsi]

+        mov     = r13,rdx

+       =  mov     r14,r11

+ &n= bsp;      bswap   r12

+        ror   = ;  r13,23

+     =    mov     rdi,r8

+

+       = ; xor     r13,rdx

+ &= nbsp;      ror     r14,5<= br class=3D"">
+        xo= r     rdi,r9

+

+        mov  &nb= sp;  QWORD[8+rsp],r12

+   =      xor     r14,r11

+        and  = ;   rdi,rdx

+
+        ror   &nb= sp; r13,4

+      = ;  add     r12,r10

+        xor     = rdi,r9

+

+  =       ror     r14,6

+        xor &nb= sp;   r13,rdx

+   &nb= sp;    add     r12,rdi

+

+     &= nbsp;  mov     rdi,r11

+        add    &n= bsp;r12,QWORD[rbp]

+     &= nbsp;  xor     r14,r11

+

+       = ; xor     rdi,rax

+ &= nbsp;      ror     r13,14=

+        m= ov     r10,rax

+

+        and  = ;   r15,rdi

+    = ;    ror     r14,28
<= br class=3D"">+        add   &= nbsp; r12,r13

+

+        xor    &n= bsp;r10,r15

+      &n= bsp; add     rcx,r12

= +        add     r10= ,r12

+

+  &n= bsp;     lea     rbp,[24+rbp]<= br class=3D"">
+        ad= d     r10,r14

+  &nbs= p;     mov     r12,QWORD[16+rs= i]

+        = ;mov     r13,rcx

+  &= nbsp;     mov     r14,r10

+        bswap =   r12

+     &nbs= p;  ror     r13,23

+        mov     = r15,rdx

+

+  = ;      xor     r13,rcx
+        ror =     r14,5

+   &n= bsp;    xor     r15,r8

+

+     &= nbsp;  mov     QWORD[16+rsp],r12

+        xor  &nbs= p;  r14,r10

+    &nbs= p;   and     r15,rcx

+

+      &n= bsp; ror     r13,4

+ =        add     r12,r= 9

+        = xor     r15,r8

+

+        ror  = ;   r14,6

+    &= nbsp;   xor     r13,rcx
+        add   &n= bsp; r12,r15

+

+        mov     = r15,r10

+       =  add     r12,QWORD[rbp]

+        xor     = r14,r10

+

+  = ;      xor     r15,r11
+        ror =     r13,14

+   &= nbsp;    mov     r9,r11

+

+     =    and     rdi,r15

+        ror    &= nbsp;r14,28

+      &n= bsp; add     r12,r13

= +

+        = xor     r9,rdi

+  &nb= sp;     add     rbx,r12

+        add &nbs= p;   r9,r12

+
+        lea   &nb= sp; rbp,[8+rbp]

+     = ;   add     r9,r14

+        mov    &= nbsp;r12,QWORD[24+rsi]

+    &nb= sp;   mov     r13,rbx

+        mov   &nbs= p; r14,r9

+      = ;  bswap   r12

+  &nb= sp;     ror     r13,23

+        mov  = ;   rdi,rcx

+
+        xor   &nb= sp; r13,rbx

+     &nb= sp;  ror     r14,5

+        xor     = rdi,rdx

+

+  = ;      mov     QWORD[24+r= sp],r12

+       =  xor     r14,r9

+ &nb= sp;      and     rdi,rbx<= br class=3D"">
+

+   &= nbsp;    ror     r13,4

+        add  &nbs= p;  r12,r8

+     = ;   xor     rdi,rdx

+

+      &nb= sp; ror     r14,6

+ &= nbsp;      xor     r13,rb= x

+        = add     r12,rdi

+

+        mov  = ;   rdi,r9

+    =     add     r12,QWORD[rbp]

+        xor  = ;   r14,r9

+

+        xor   &nbs= p; rdi,r10

+     &nbs= p;  ror     r13,14

+        mov     = r8,r10

+

+  =       and     r15,rdi

+        ror &= nbsp;   r14,28

+   &n= bsp;    add     r12,r13

+

+     =    xor     r8,r15

+        add    &n= bsp;rax,r12

+      &n= bsp; add     r8,r12

+=

+        l= ea     rbp,[24+rbp]

+ &nbs= p;      add     r8,r14
+        mov =     r12,QWORD[32+rsi]

+ &n= bsp;      mov     r13,rax=

+        m= ov     r14,r8

+  &nbs= p;     bswap   r12

+        ror    &= nbsp;r13,23

+      &n= bsp; mov     r15,rbx

= +

+        = xor     r13,rax

+  &n= bsp;     ror     r14,5

+        xor  = ;   r15,rcx

+
+        mov   &nb= sp; QWORD[32+rsp],r12

+    = ;    xor     r14,r8
<= br class=3D"">+        and   &= nbsp; r15,rax

+

+        ror    &n= bsp;r13,4

+      &nbs= p; add     r12,rdx

+ =        xor     r15,r= cx

+

+  &nbs= p;     ror     r14,6

+        xor  = ;   r13,rax

+    = ;    add     r12,r15
=
+

+     &nb= sp;  mov     r15,r8

+        add    &n= bsp;r12,QWORD[rbp]

+     &= nbsp;  xor     r14,r8

+

+       = ; xor     r15,r9

+ &n= bsp;      ror     r13,14<= br class=3D"">
+        mo= v     rdx,r9

+

+        and  &nb= sp;  rdi,r15

+    &nb= sp;   ror     r14,28

+        add    = ; r12,r13

+

= +        xor     rdx= ,rdi

+       &nb= sp;add     r11,r12

+  = ;      add     rdx,r12
+

+   &nb= sp;    lea     rbp,[8+rbp]

+        add  = ;   rdx,r14

+    = ;    mov     r12,QWORD[40+rsi]

+        mov &n= bsp;   r13,r11

+   &n= bsp;    mov     r14,rdx

+        bswap  &= nbsp;r12

+       = ; ror     r13,23

+ &n= bsp;      mov     rdi,rax=

+

+   =      xor     r13,r11

+        ror  = ;   r14,5

+    &= nbsp;   xor     rdi,rbx
+

+      = ;  mov     QWORD[40+rsp],r12
+        xor   &n= bsp; r14,rdx

+     &n= bsp;  and     rdi,r11

+

+       = ; ror     r13,4

+ &nb= sp;      add     r12,rcx<= br class=3D"">
+        xo= r     rdi,rbx

+

+        ror  = ;   r14,6

+    &= nbsp;   xor     r13,r11
+        add   &n= bsp; r12,rdi

+

+        mov     = rdi,rdx

+       =  add     r12,QWORD[rbp]

+        xor     = r14,rdx

+

+  = ;      xor     rdi,r8

+        ror &= nbsp;   r13,14

+   &n= bsp;    mov     rcx,r8

+

+     &= nbsp;  and     r15,rdi

+        ror    &n= bsp;r14,28

+      &nb= sp; add     r12,r13

+=

+        x= or     rcx,r15

+  &nb= sp;     add     r10,r12

+        add &nbs= p;   rcx,r12

+
+        lea   &n= bsp; rbp,[24+rbp]

+    &nb= sp;   add     rcx,r14

+        mov   &nbs= p; r12,QWORD[48+rsi]

+    =     mov     r13,r10
<= br class=3D"">+        mov   &= nbsp; r14,rcx

+     &= nbsp;  bswap   r12

+  = ;      ror     r13,23

+        mov &= nbsp;   r15,r11

+

+        xor   = ;  r13,r10

+     = ;   ror     r14,5

+        xor    &n= bsp;r15,rax

+

+ &= nbsp;      mov     QWORD[= 48+rsp],r12

+      &n= bsp; xor     r14,rcx

= +        and     r15= ,r10

+

+  &n= bsp;     ror     r13,4

+        add  = ;   r12,rbx

+    = ;    xor     r15,rax
=
+

+     &nb= sp;  ror     r14,6

+        xor     = r13,r10

+       =  add     r12,r15

+
+        mov =     r15,rcx

+   =      add     r12,QWORD[rbp]
+        xor =     r14,rcx

+

+        xor  &nbs= p;  r15,rdx

+    &nbs= p;   ror     r13,14

+        mov    =  rbx,rdx

+

+=        and     rdi,= r15

+       &nbs= p;ror     r14,28

+  &= nbsp;     add     r12,r13

+

+    = ;    xor     rbx,rdi
=
+        add   =   r9,r12

+     &= nbsp;  add     rbx,r12

+

+       = ; lea     rbp,[8+rbp]

+        add     rb= x,r14

+       &n= bsp;mov     r12,QWORD[56+rsi]

+        mov    &n= bsp;r13,r9

+      &nb= sp; mov     r14,rbx

+=        bswap   r12

+        ror  = ;   r13,23

+    =     mov     rdi,r10
<= br class=3D"">+

+     &nbs= p;  xor     r13,r9

+        ror     = r14,5

+       &n= bsp;xor     rdi,r11

+

+        mov &n= bsp;   QWORD[56+rsp],r12

+ &nbs= p;      xor     r14,rbx
+        and=     rdi,r9

+

+        ror  &nbs= p;  r13,4

+     =    add     r12,rax

+        xor    &= nbsp;rdi,r11

+

+ =        ror     r14,6=

+        x= or     r13,r9

+  &nbs= p;     add     r12,rdi

+

+    &n= bsp;   mov     rdi,rbx
+        add   &nb= sp; r12,QWORD[rbp]

+    &n= bsp;   xor     r14,rbx
+

+      =   xor     rdi,rcx

+        ror     r= 13,14

+       &n= bsp;mov     rax,rcx

+

+        and &n= bsp;   r15,rdi

+   &n= bsp;    ror     r14,28

+        add  &nbs= p;  r12,r13

+

+        xor    &n= bsp;rax,r15

+      &n= bsp; add     r8,r12

+=        add     rax,= r12

+

+  &nb= sp;     lea     rbp,[24+rbp]
+        add=     rax,r14

+   = ;     mov     r12,QWORD[64+rsi= ]

+        = mov     r13,r8

+  &nb= sp;     mov     r14,rax

+        bswap &n= bsp; r12

+      =   ror     r13,23

+        mov     r1= 5,r9

+

+  &n= bsp;     xor     r13,r8

+        ror &nbs= p;   r14,5

+    =     xor     r15,r10
<= br class=3D"">+

+     &nbs= p;  mov     QWORD[64+rsp],r12
<= br class=3D"">+        xor   &= nbsp; r14,rax

+     &= nbsp;  and     r15,r8

+

+       = ; ror     r13,4

+ &nb= sp;      add     r12,r11<= br class=3D"">
+        xo= r     r15,r10

+

+        ror  = ;   r14,6

+    &= nbsp;   xor     r13,r8
+        add   &nb= sp; r12,r15

+

+        mov     r= 15,rax

+       &= nbsp;add     r12,QWORD[rbp]

+        xor     r= 14,rax

+

+  =       xor     r15,rbx

+        ror &= nbsp;   r13,14

+   &n= bsp;    mov     r11,rbx

+

+     =    and     rdi,r15

+        ror    &= nbsp;r14,28

+      &n= bsp; add     r12,r13

= +

+        = xor     r11,rdi

+  &n= bsp;     add     rdx,r12

+        add &nb= sp;   r11,r12

+
<= br class=3D"">+        lea   &= nbsp; rbp,[8+rbp]

+    &nb= sp;   add     r11,r14

+        mov   &nbs= p; r12,QWORD[72+rsi]

+    =     mov     r13,rdx
<= br class=3D"">+        mov   &= nbsp; r14,r11

+     &= nbsp;  bswap   r12

+  = ;      ror     r13,23

+        mov &= nbsp;   rdi,r8

+
=
+        xor   =   r13,rdx

+     =    ror     r14,5

+        xor    &n= bsp;rdi,r9

+

+ &n= bsp;      mov     QWORD[7= 2+rsp],r12

+      &nb= sp; xor     r14,r11

+=        and     rdi,= rdx

+

+  &nb= sp;     ror     r13,4

+        add  = ;   r12,r10

+    = ;    xor     rdi,r9
<= br class=3D"">+

+     &nbs= p;  ror     r14,6

+        xor     r= 13,rdx

+       &= nbsp;add     r12,rdi

+

+        mov &= nbsp;   rdi,r11

+   &= nbsp;    add     r12,QWORD[rbp]

+        xor &= nbsp;   r14,r11

+

+        xor   = ;  rdi,rax

+     = ;   ror     r13,14

+        mov    &= nbsp;r10,rax

+

+ =        and     r15,r= di

+        = ;ror     r14,28

+  &n= bsp;     add     r12,r13

+

+    =     xor     r10,r15
<= br class=3D"">+        add   &= nbsp; rcx,r12

+     &= nbsp;  add     r10,r12

+

+       = ; lea     rbp,[24+rbp]

+        add     r= 10,r14

+       &= nbsp;mov     r12,QWORD[80+rsi]

+        mov    &n= bsp;r13,rcx

+      &n= bsp; mov     r14,r10

= +        bswap   r12

+        ror  = ;   r13,23

+    =     mov     r15,rdx
<= br class=3D"">+

+     &nbs= p;  xor     r13,rcx

+        ror    &n= bsp;r14,5

+      &nbs= p; xor     r15,r8

+
+        mov=     QWORD[80+rsp],r12

+ &= nbsp;      xor     r14,r1= 0

+        = and     r15,rcx

+

+        ror  = ;   r13,4

+    &= nbsp;   add     r12,r9
+        xor   &nb= sp; r15,r8

+

+        ror     r1= 4,6

+       &nbs= p;xor     r13,rcx

+  =       add     r12,r15

+

+   &nbs= p;    mov     r15,r10

+        add   = ;  r12,QWORD[rbp]

+   &nbs= p;    xor     r14,r10

+

+     &n= bsp;  xor     r15,r11

+        ror    &n= bsp;r13,14

+      &nb= sp; mov     r9,r11

+<= br class=3D"">
+        an= d     rdi,r15

+  &nbs= p;     ror     r14,28

+        add  = ;   r12,r13

+
+        xor   &nb= sp; r9,rdi

+     &nbs= p;  add     rbx,r12

+        add    &n= bsp;r9,r12

+

+ &n= bsp;      lea     rbp,[8+= rbp]

+       &nb= sp;add     r9,r14

+  =       mov     r12,QWORD[8= 8+rsi]

+       &= nbsp;mov     r13,rbx

+ &nb= sp;      mov     r14,r9
+        bsw= ap   r12

+     &= nbsp;  ror     r13,23

+        mov    &n= bsp;rdi,rcx

+

+ &= nbsp;      xor     r13,rb= x

+        = ror     r14,5

+  &nbs= p;     xor     rdi,rdx

+

+    &n= bsp;   mov     QWORD[88+rsp],r12

+        xor  = ;   r14,r9

+    =     and     rdi,rbx
<= br class=3D"">+

+     &nbs= p;  ror     r13,4

+        add     r= 12,r8

+       &n= bsp;xor     rdi,rdx

+

+        ror &n= bsp;   r14,6

+   &nbs= p;    xor     r13,rbx

+        add   = ;  r12,rdi

+

+        mov    &n= bsp;rdi,r9

+      &nb= sp; add     r12,QWORD[rbp]

+        xor    &n= bsp;r14,r9

+

+ &n= bsp;      xor     rdi,r10=

+        r= or     r13,14

+  &nbs= p;     mov     r8,r10

+

+    &n= bsp;   and     r15,rdi
+        ror   &nb= sp; r14,28

+     &nbs= p;  add     r12,r13

+

+       = ; xor     r8,r15

+ &n= bsp;      add     rax,r12=

+        a= dd     r8,r12

+

+        lea  = ;   rbp,[24+rbp]

+   =      add     r8,r14

+        mov  = ;   r12,QWORD[96+rsi]

+  &= nbsp;     mov     r13,rax

+        mov &n= bsp;   r14,r8

+   &nb= sp;    bswap   r12

+        ror     = r13,23

+       &= nbsp;mov     r15,rbx

+

+        xor &= nbsp;   r13,rax

+   &= nbsp;    ror     r14,5

+        xor  &nbs= p;  r15,rcx

+

+        mov    &n= bsp;QWORD[96+rsp],r12

+    &nbs= p;   xor     r14,r8

+        and    =  r15,rax

+

+=        ror     r13,= 4

+        = add     r12,rdx

+  &n= bsp;     xor     r15,rcx

+

+    =     ror     r14,6
+        xor   &nb= sp; r13,rax

+     &nb= sp;  add     r12,r15

+

+       = ; mov     r15,r8

+ &n= bsp;      add     r12,QWO= RD[rbp]

+       =  xor     r14,r8

+

+        xor &= nbsp;   r15,r9

+   &n= bsp;    ror     r13,14

+        mov  &nbs= p;  rdx,r9

+

+        and    &n= bsp;rdi,r15

+      &n= bsp; ror     r14,28

+=        add     r12,= r13

+

+  &nb= sp;     xor     rdx,rdi

+        add &nbs= p;   r11,r12

+   &nbs= p;    add     rdx,r12

+

+     &n= bsp;  lea     rbp,[8+rbp]

+        add    = ; rdx,r14

+      = ;  mov     r12,QWORD[104+rsi]
<= br class=3D"">+        mov   &= nbsp; r13,r11

+     &= nbsp;  mov     r14,rdx

+        bswap   r12
+        ror =     r13,23

+   &= nbsp;    mov     rdi,rax

+

+    &n= bsp;   xor     r13,r11
+        ror   &nb= sp; r14,5

+      = ;  xor     rdi,rbx

+

+       &nb= sp;mov     QWORD[104+rsp],r12

+        xor    &n= bsp;r14,rdx

+      &n= bsp; and     rdi,r11

= +

+        = ror     r13,4

+  &nbs= p;     add     r12,rcx

+        xor  = ;   rdi,rbx

+
+        ror   &nb= sp; r14,6

+      = ;  xor     r13,r11

+        add     = r12,rdi

+

+  = ;      mov     rdi,rdx
+        add =     r12,QWORD[rbp]

+  = ;      xor     r14,rdx
+

+   &nb= sp;    xor     rdi,r8

+        ror   = ;  r13,14

+     =    mov     rcx,r8

+

+       = ; and     r15,rdi

+ &= nbsp;      ror     r14,28=

+        a= dd     r12,r13

+

+        xor  = ;   rcx,r15

+    = ;    add     r10,r12
=
+        add   =   rcx,r12

+

+        lea    &n= bsp;rbp,[24+rbp]

+     &nb= sp;  add     rcx,r14

+        mov    &n= bsp;r12,QWORD[112+rsi]

+    &nb= sp;   mov     r13,r10

+        mov   &nbs= p; r14,rcx

+     &nbs= p;  bswap   r12

+  &n= bsp;     ror     r13,23

+        mov &nbs= p;   r15,r11

+
+        xor   &n= bsp; r13,r10

+     &n= bsp;  ror     r14,5

+        xor    &n= bsp;r15,rax

+

+ &= nbsp;      mov     QWORD[= 112+rsp],r12

+      &= nbsp; xor     r14,rcx

+        and     r1= 5,r10

+

+  &= nbsp;     ror     r13,4

+        add &nbs= p;   r12,rbx

+   &nbs= p;    xor     r15,rax

+

+     &n= bsp;  ror     r14,6

+        xor    &n= bsp;r13,r10

+      &n= bsp; add     r12,r15

= +

+        = mov     r15,rcx

+  &n= bsp;     add     r12,QWORD[rbp= ]

+        = xor     r14,rcx

+

+        xor  = ;   r15,rdx

+    = ;    ror     r13,14
<= br class=3D"">+        mov   &= nbsp; rbx,rdx

+

+        and    &n= bsp;rdi,r15

+      &n= bsp; ror     r14,28

+=        add     r12,= r13

+

+  &nb= sp;     xor     rbx,rdi

+        add &nbs= p;   r9,r12

+    = ;    add     rbx,r12
=
+

+     &nb= sp;  lea     rbp,[8+rbp]

+        add    =  rbx,r14

+      =   mov     r12,QWORD[120+rsi]
+        mov   &n= bsp; r13,r9

+     &nb= sp;  mov     r14,rbx

+        bswap   r12
+        ror =     r13,23

+   &= nbsp;    mov     rdi,r10

+

+    &n= bsp;   xor     r13,r9

+        ror   &nbs= p; r14,5

+      =   xor     rdi,r11

+

+       &nbs= p;mov     QWORD[120+rsp],r12

+        xor     = r14,rbx

+       =  and     rdi,r9

+

+        ror &= nbsp;   r13,4

+   &nb= sp;    add     r12,rax

+        xor  &nbs= p;  rdi,r11

+

+        ror    &n= bsp;r14,6

+      &nbs= p; xor     r13,r9

+ &= nbsp;      add     r12,rd= i

+

+   = ;     mov     rdi,rbx

+        add  = ;   r12,QWORD[rbp]

+  &nbs= p;     xor     r14,rbx

+

+    &n= bsp;   xor     rdi,rcx
+        ror   &nb= sp; r13,14

+     &nbs= p;  mov     rax,rcx

+

+       = ; and     r15,rdi

+ &= nbsp;      ror     r14,28=

+        a= dd     r12,r13

+

+        xor  = ;   rax,r15

+    = ;    add     r8,r12
<= br class=3D"">+        add   &= nbsp; rax,r12

+

+        lea    &n= bsp;rbp,[24+rbp]

+     &nb= sp;  jmp     NEAR $L$rounds_16_xx

+ALIGN   16

+$L$ro= unds_16_xx:

+      &n= bsp; mov     r13,QWORD[8+rsp]

+        mov    =  r15,QWORD[112+rsp]

+

+        mov    = ; r12,r13

+      = ;  ror     r13,7

+        add     ra= x,r14

+       &n= bsp;mov     r14,r15

+ &nbs= p;      ror     r15,42
+

+   &nb= sp;    xor     r13,r12

+        shr  &nbs= p;  r12,7

+     =    ror     r13,1

+        xor    &n= bsp;r15,r14

+      &n= bsp; shr     r14,6

+<= br class=3D"">
+        ro= r     r15,19

+   = ;     xor     r12,r13

+        xor  = ;   r15,r14

+    = ;    add     r12,QWORD[72+rsp]

+

+    = ;    add     r12,QWORD[rsp]

+        mov  = ;   r13,r8

+    =     add     r12,r15
<= br class=3D"">+        mov   &= nbsp; r14,rax

+     &= nbsp;  ror     r13,23

+        mov    &n= bsp;r15,r9

+

+ &n= bsp;      xor     r13,r8<= br class=3D"">
+        ro= r     r14,5

+   =      xor     r15,r10

+

+    &n= bsp;   mov     QWORD[rsp],r12

+        xor  = ;   r14,rax

+    = ;    and     r15,r8
<= br class=3D"">+

+     &nbs= p;  ror     r13,4

+        add     r= 12,r11

+       &= nbsp;xor     r15,r10

+

+        ror &= nbsp;   r14,6

+   &nb= sp;    xor     r13,r8

+        add   = ;  r12,r15

+

+        mov    &n= bsp;r15,rax

+      &n= bsp; add     r12,QWORD[rbp]

+        xor    &n= bsp;r14,rax

+

+ &= nbsp;      xor     r15,rb= x

+        = ror     r13,14

+  &nb= sp;     mov     r11,rbx

+

+    &= nbsp;   and     rdi,r15
+        ror   &n= bsp; r14,28

+     &nb= sp;  add     r12,r13

+

+       = ; xor     r11,rdi

+ &= nbsp;      add     rdx,r1= 2

+        = add     r11,r12

+

+        lea  = ;   rbp,[8+rbp]

+   &= nbsp;    mov     r13,QWORD[16+rsp]<= br class=3D"">
+        mo= v     rdi,QWORD[120+rsp]

+=

+        m= ov     r12,r13

+  &nb= sp;     ror     r13,7

+        add  = ;   r11,r14

+    = ;    mov     r14,rdi
=
+        ror   =   rdi,42

+

+        xor    &n= bsp;r13,r12

+      &n= bsp; shr     r12,7

+ =        ror     r13,1=

+        x= or     rdi,r14

+  &nb= sp;     shr     r14,6

+

+    &n= bsp;   ror     rdi,19

+        xor   &nbs= p; r12,r13

+     &nbs= p;  xor     rdi,r14

+        add    &n= bsp;r12,QWORD[80+rsp]

+

+        add    &n= bsp;r12,QWORD[8+rsp]

+     = ;   mov     r13,rdx

+        add    =  r12,rdi

+      =   mov     r14,r11

+        ror     r= 13,23

+       &n= bsp;mov     rdi,r8

+

+        xor &nb= sp;   r13,rdx

+   &nb= sp;    ror     r14,5
=
+        xor   =   rdi,r9

+

+        mov    &n= bsp;QWORD[8+rsp],r12

+     = ;   xor     r14,r11

+        and    =  rdi,rdx

+

+=        ror     r13,= 4

+        = add     r12,r10

+  &n= bsp;     xor     rdi,r9

+

+    &= nbsp;   ror     r14,6

+        xor   &nbs= p; r13,rdx

+     &nbs= p;  add     r12,rdi

+

+       = ; mov     rdi,r11

+ &= nbsp;      add     r12,QW= ORD[rbp]

+       = ; xor     r14,r11

+
+        xor=     rdi,rax

+   = ;     ror     r13,14

+        mov  = ;   r10,rax

+
+        and   &nb= sp; r15,rdi

+     &nb= sp;  ror     r14,28

+        add    &n= bsp;r12,r13

+

+ &= nbsp;      xor     r10,r1= 5

+        = add     rcx,r12

+  &n= bsp;     add     r10,r12

+

+    =     lea     rbp,[24+rbp]

+        mov  = ;   r13,QWORD[24+rsp]

+  &= nbsp;     mov     r15,QWORD[rs= p]

+

+  &nbs= p;     mov     r12,r13

+        ror  = ;   r13,7

+    &= nbsp;   add     r10,r14
+        mov   &n= bsp; r14,r15

+     &n= bsp;  ror     r15,42

+

+       = ; xor     r13,r12

+ &= nbsp;      shr     r12,7<= br class=3D"">
+        ro= r     r13,1

+   =      xor     r15,r14

+        shr  = ;   r14,6

+

+        ror    = ; r15,19

+      =   xor     r12,r13

+        xor     r= 15,r14

+       &= nbsp;add     r12,QWORD[88+rsp]

+

+       = ; add     r12,QWORD[16+rsp]

+        mov    &n= bsp;r13,rcx

+      &n= bsp; add     r12,r15

= +        mov     r14= ,r10

+       &nb= sp;ror     r13,23

+  =       mov     r15,rdx

+

+   &nbs= p;    xor     r13,rcx

+        ror   = ;  r14,5

+     &= nbsp;  xor     r15,r8

+

+       = ; mov     QWORD[16+rsp],r12

+        xor    &n= bsp;r14,r10

+      &n= bsp; and     r15,rcx

= +

+        = ror     r13,4

+  &nbs= p;     add     r12,r9

+        xor  = ;   r15,r8

+

+        ror   &nbs= p; r14,6

+      =   xor     r13,rcx

+        add     r= 12,r15

+

+  =       mov     r15,r10

+        add &= nbsp;   r12,QWORD[rbp]

+  =       xor     r14,r10

+

+   &nbs= p;    xor     r15,r11

+        ror   = ;  r13,14

+     =    mov     r9,r11

+

+       = ; and     rdi,r15

+ &= nbsp;      ror     r14,28=

+        a= dd     r12,r13

+

+        xor  = ;   r9,rdi

+    =     add     rbx,r12
<= br class=3D"">+        add   &= nbsp; r9,r12

+

+        lea     = rbp,[8+rbp]

+      &n= bsp; mov     r13,QWORD[32+rsp]

+        mov    = ; rdi,QWORD[8+rsp]

+

+        mov    =  r12,r13

+      =   ror     r13,7

= +        add     r9,= r14

+       &nbs= p;mov     r14,rdi

+  =       ror     rdi,42

+

+    = ;    xor     r13,r12
=
+        shr   =   r12,7

+     &n= bsp;  ror     r13,1

+        xor    &n= bsp;rdi,r14

+      &n= bsp; shr     r14,6

+<= br class=3D"">
+        ro= r     rdi,19

+   = ;     xor     r12,r13

+        xor  = ;   rdi,r14

+    = ;    add     r12,QWORD[96+rsp]

+

+    = ;    add     r12,QWORD[24+rsp]

+        mov &n= bsp;   r13,rbx

+   &n= bsp;    add     r12,rdi

+        mov  &nb= sp;  r14,r9

+    &nbs= p;   ror     r13,23

+        mov    =  rdi,rcx

+

+=        xor     r13,= rbx

+       &nbs= p;ror     r14,5

+  &n= bsp;     xor     rdi,rdx

+

+    =     mov     QWORD[24+rsp],r12

+        xor &nb= sp;   r14,r9

+   &nbs= p;    and     rdi,rbx

+

+     &n= bsp;  ror     r13,4

+        add    &n= bsp;r12,r8

+      &nb= sp; xor     rdi,rdx

+=

+        r= or     r14,6

+   = ;     xor     r13,rbx

+        add  = ;   r12,rdi

+
+        mov   &nb= sp; rdi,r9

+     &nbs= p;  add     r12,QWORD[rbp]

+        xor   &nbs= p; r14,r9

+

= +        xor     rdi= ,r10

+       &nb= sp;ror     r13,14

+  =       mov     r8,r10

+

+    = ;    and     r15,rdi
=
+        ror   =   r14,28

+     &= nbsp;  add     r12,r13

+

+       = ; xor     r8,r15

+ &n= bsp;      add     rax,r12=

+        a= dd     r8,r12

+

+        lea  = ;   rbp,[24+rbp]

+   =      mov     r13,QWORD[40+rsp]=

+        m= ov     r15,QWORD[16+rsp]

+=

+        m= ov     r12,r13

+  &nb= sp;     ror     r13,7

+        add  = ;   r8,r14

+    =     mov     r14,r15
<= br class=3D"">+        ror   &= nbsp; r15,42

+

+        xor     = r13,r12

+       =  shr     r12,7

+ &nbs= p;      ror     r13,1

+        xor &= nbsp;   r15,r14

+   &= nbsp;    shr     r14,6

+

+     &= nbsp;  ror     r15,19

+        xor    &n= bsp;r12,r13

+      &n= bsp; xor     r15,r14

= +        add     r12= ,QWORD[104+rsp]

+

+        add     r1= 2,QWORD[32+rsp]

+     &nbs= p;  mov     r13,rax

+        add    &n= bsp;r12,r15

+      &n= bsp; mov     r14,r8

+=        ror     r13,= 23

+        = ;mov     r15,rbx

+

+        xor  = ;   r13,rax

+    = ;    ror     r14,5
+        xor   &n= bsp; r15,rcx

+

+        mov     = QWORD[32+rsp],r12

+     &n= bsp;  xor     r14,r8

+        and    &n= bsp;r15,rax

+

+ &= nbsp;      ror     r13,4<= br class=3D"">
+        ad= d     r12,rdx

+  &nbs= p;     xor     r15,rcx

+

+    &n= bsp;   ror     r14,6

+        xor    = ; r13,rax

+      = ;  add     r12,r15

+

+       &nb= sp;mov     r15,r8

+  =       add     r12,QWORD[r= bp]

+       &nbs= p;xor     r14,r8

+

+        xor  = ;   r15,r9

+    =     ror     r13,14
+        mov   &n= bsp; rdx,r9

+

+        and     r= di,r15

+       &= nbsp;ror     r14,28

+ &nbs= p;      add     r12,r13
+

+   &n= bsp;    xor     rdx,rdi

+        add  &nb= sp;  r11,r12

+    &nb= sp;   add     rdx,r12

+

+      &= nbsp; lea     rbp,[8+rbp]

+        mov    &n= bsp;r13,QWORD[48+rsp]

+    &nbs= p;   mov     rdi,QWORD[24+rsp]

+

+    &n= bsp;   mov     r12,r13
+        ror   &nb= sp; r13,7

+      = ;  add     rdx,r14

+        mov     = r14,rdi

+       =  ror     rdi,42

+

+        xor &= nbsp;   r13,r12

+   &= nbsp;    shr     r12,7

+        ror  &nbs= p;  r13,1

+     =    xor     rdi,r14

+        shr    &= nbsp;r14,6

+

+ &n= bsp;      ror     rdi,19<= br class=3D"">
+        xo= r     r12,r13

+  &nbs= p;     xor     rdi,r14

+        add  = ;   r12,QWORD[112+rsp]

+

+        add &nbs= p;   r12,QWORD[40+rsp]

+  =       mov     r13,r11

+        add &= nbsp;   r12,rdi

+   &= nbsp;    mov     r14,rdx

+        ror  = ;   r13,23

+    =     mov     rdi,rax
<= br class=3D"">+

+     &nbs= p;  xor     r13,r11

+        ror    &n= bsp;r14,5

+      &nbs= p; xor     rdi,rbx

+<= br class=3D"">
+        mo= v     QWORD[40+rsp],r12

+ =        xor     r14,r= dx

+        = ;and     rdi,r11

+

+        ror  = ;   r13,4

+    &= nbsp;   add     r12,rcx
+        xor   &n= bsp; rdi,rbx

+

+        ror     = r14,6

+       &n= bsp;xor     r13,r11

+ &nbs= p;      add     r12,rdi
+

+   &n= bsp;    mov     rdi,rdx

+        add  &nb= sp;  r12,QWORD[rbp]

+   &n= bsp;    xor     r14,rdx

+

+     =    xor     rdi,r8

+        ror    &n= bsp;r13,14

+      &nb= sp; mov     rcx,r8

+<= br class=3D"">
+        an= d     r15,rdi

+  &nbs= p;     ror     r14,28

+        add  = ;   r12,r13

+
+        xor   &nb= sp; rcx,r15

+     &nb= sp;  add     r10,r12

+        add    &n= bsp;rcx,r12

+

+ &= nbsp;      lea     rbp,[2= 4+rbp]

+       &= nbsp;mov     r13,QWORD[56+rsp]

+        mov    &n= bsp;r15,QWORD[32+rsp]

+

+        mov    &n= bsp;r12,r13

+      &n= bsp; ror     r13,7

+ =        add     rcx,r= 14

+        = ;mov     r14,r15

+  &= nbsp;     ror     r15,42

+

+    =     xor     r13,r12
<= br class=3D"">+        shr   &= nbsp; r12,7

+     &nb= sp;  ror     r13,1

+        xor     = r15,r14

+       =  shr     r14,6

+

+        ror &n= bsp;   r15,19

+   &nb= sp;    xor     r12,r13

+        xor  &nbs= p;  r15,r14

+    &nbs= p;   add     r12,QWORD[120+rsp]

+

+    &n= bsp;   add     r12,QWORD[48+rsp]

+        mov  = ;   r13,r10

+    = ;    add     r12,r15
=
+        mov   =   r14,rcx

+     =    ror     r13,23

+        mov    &n= bsp;r15,r11

+

+ &= nbsp;      xor     r13,r1= 0

+        = ror     r14,5

+  &nbs= p;     xor     r15,rax

+

+    &n= bsp;   mov     QWORD[48+rsp],r12

+        xor  = ;   r14,rcx

+    = ;    and     r15,r10
=
+

+     &nb= sp;  ror     r13,4

+        add     = r12,rbx

+       =  xor     r15,rax

+
+        ror =     r14,6

+   &n= bsp;    xor     r13,r10

+        add  &nb= sp;  r12,r15

+

+        mov    &= nbsp;r15,rcx

+      &= nbsp; add     r12,QWORD[rbp]

+        xor    &= nbsp;r14,rcx

+

+ =        xor     r15,r= dx

+        = ;ror     r13,14

+  &n= bsp;     mov     rbx,rdx

+

+    =     and     rdi,r15
<= br class=3D"">+        ror   &= nbsp; r14,28

+     &n= bsp;  add     r12,r13

+

+       = ; xor     rbx,rdi

+ &= nbsp;      add     r9,r12=

+        a= dd     rbx,r12

+

+        lea  = ;   rbp,[8+rbp]

+   &= nbsp;    mov     r13,QWORD[64+rsp]<= br class=3D"">
+        mo= v     rdi,QWORD[40+rsp]

+<= br class=3D"">
+        mo= v     r12,r13

+  &nbs= p;     ror     r13,7

+        add  = ;   rbx,r14

+    = ;    mov     r14,rdi
=
+        ror   =   rdi,42

+

+        xor    &n= bsp;r13,r12

+      &n= bsp; shr     r12,7

+ =        ror     r13,1=

+        x= or     rdi,r14

+  &nb= sp;     shr     r14,6

+

+    &n= bsp;   ror     rdi,19

+        xor   &nbs= p; r12,r13

+     &nbs= p;  xor     rdi,r14

+        add    &n= bsp;r12,QWORD[rsp]

+

+        add    &n= bsp;r12,QWORD[56+rsp]

+    &nbs= p;   mov     r13,r9

+        add    =  r12,rdi

+      =   mov     r14,rbx

+        ror     r= 13,23

+       &n= bsp;mov     rdi,r10

+

+        xor &n= bsp;   r13,r9

+   &nb= sp;    ror     r14,5
=
+        xor   =   rdi,r11

+

+        mov    &n= bsp;QWORD[56+rsp],r12

+    &nbs= p;   xor     r14,rbx

+        and    = ; rdi,r9

+

+=        ror     r13,= 4

+        = add     r12,rax

+  &n= bsp;     xor     rdi,r11

+

+    =     ror     r14,6
+        xor   &nb= sp; r13,r9

+     &nbs= p;  add     r12,rdi

+

+       = ; mov     rdi,rbx

+ &= nbsp;      add     r12,QW= ORD[rbp]

+       = ; xor     r14,rbx

+
+        xor=     rdi,rcx

+   = ;     ror     r13,14

+        mov  = ;   rax,rcx

+
+        and   &nb= sp; r15,rdi

+     &nb= sp;  ror     r14,28

+        add    &n= bsp;r12,r13

+

+ &= nbsp;      xor     rax,r1= 5

+        = add     r8,r12

+  &nb= sp;     add     rax,r12

+

+    &= nbsp;   lea     rbp,[24+rbp]

+        mov  &nb= sp;  r13,QWORD[72+rsp]

+   = ;     mov     r15,QWORD[48+rsp= ]

+

+   = ;     mov     r12,r13

+        ror  = ;   r13,7

+    &= nbsp;   add     rax,r14
+        mov   &n= bsp; r14,r15

+     &n= bsp;  ror     r15,42

+

+       = ; xor     r13,r12

+ &= nbsp;      shr     r12,7<= br class=3D"">
+        ro= r     r13,1

+   =      xor     r15,r14

+        shr  = ;   r14,6

+

+        ror    = ; r15,19

+      =   xor     r12,r13

+        xor     r= 15,r14

+       &= nbsp;add     r12,QWORD[8+rsp]

+

+       = ; add     r12,QWORD[64+rsp]

+        mov    &n= bsp;r13,r8

+      &nb= sp; add     r12,r15

+=        mov     r14,= rax

+       &nbs= p;ror     r13,23

+  &= nbsp;     mov     r15,r9

+

+    =     xor     r13,r8
+        ror   &n= bsp; r14,5

+     &nbs= p;  xor     r15,r10

+

+       = ; mov     QWORD[64+rsp],r12

+        xor    &n= bsp;r14,rax

+      &n= bsp; and     r15,r8

+=

+        r= or     r13,4

+   = ;     add     r12,r11

+        xor  = ;   r15,r10

+
+        ror   &nb= sp; r14,6

+      = ;  xor     r13,r8

+        add     r= 12,r15

+

+  =       mov     r15,rax

+        add &= nbsp;   r12,QWORD[rbp]

+  =       xor     r14,rax

+

+   &nbs= p;    xor     r15,rbx

+        ror   = ;  r13,14

+     =    mov     r11,rbx

+

+      &nbs= p; and     rdi,r15

+ =        ror     r14,2= 8

+        = add     r12,r13

+

+        xor  = ;   r11,rdi

+    = ;    add     rdx,r12
=
+        add   =   r11,r12

+

+        lea    &n= bsp;rbp,[8+rbp]

+     &nbs= p;  mov     r13,QWORD[80+rsp]
<= br class=3D"">+        mov   &= nbsp; rdi,QWORD[56+rsp]

+
<= br class=3D"">+        mov   &= nbsp; r12,r13

+     &= nbsp;  ror     r13,7

+        add    &n= bsp;r11,r14

+      &n= bsp; mov     r14,rdi

= +        ror     rdi= ,42

+

+  &nb= sp;     xor     r13,r12

+        shr &nbs= p;   r12,7

+    =     ror     r13,1
+        xor   &nb= sp; rdi,r14

+     &nb= sp;  shr     r14,6

+

+       &nb= sp;ror     rdi,19

+  =       xor     r12,r13

+        xor &= nbsp;   rdi,r14

+   &= nbsp;    add     r12,QWORD[16+rsp]<= br class=3D"">
+

+   &= nbsp;    add     r12,QWORD[72+rsp]<= br class=3D"">
+        mo= v     r13,rdx

+  &nbs= p;     add     r12,rdi

+        mov  = ;   r14,r11

+    = ;    ror     r13,23
<= br class=3D"">+        mov   &= nbsp; rdi,r8

+

+        xor     = r13,rdx

+       =  ror     r14,5

+ &nbs= p;      xor     rdi,r9
+

+   &nb= sp;    mov     QWORD[72+rsp],r12
+        xor =     r14,r11

+   =      and     rdi,rdx

+

+    &n= bsp;   ror     r13,4

+        add    = ; r12,r10

+      = ;  xor     rdi,r9

+

+       &nbs= p;ror     r14,6

+  &n= bsp;     xor     r13,rdx

+        add &nb= sp;   r12,rdi

+
<= br class=3D"">+        mov   &= nbsp; rdi,r11

+     &= nbsp;  add     r12,QWORD[rbp]
<= br class=3D"">+        xor   &= nbsp; r14,r11

+

+        xor    &n= bsp;rdi,rax

+      &n= bsp; ror     r13,14

+=        mov     r10,= rax

+

+  &nb= sp;     and     r15,rdi

+        ror &nbs= p;   r14,28

+    = ;    add     r12,r13
=
+

+     &nb= sp;  xor     r10,r15

+        add    &n= bsp;rcx,r12

+      &n= bsp; add     r10,r12

= +

+        = lea     rbp,[24+rbp]

+ &nb= sp;      mov     r13,QWOR= D[88+rsp]

+      &nbs= p; mov     r15,QWORD[64+rsp]

+

+      &nbs= p; mov     r12,r13

+ =        ror     r13,7=

+        a= dd     r10,r14

+  &nb= sp;     mov     r14,r15

+        ror &nbs= p;   r15,42

+
+        xor   &nb= sp; r13,r12

+     &nb= sp;  shr     r12,7

+        ror     = r13,1

+       &n= bsp;xor     r15,r14

+ &nbs= p;      shr     r14,6

+

+   &nbs= p;    ror     r15,19
=
+        xor   =   r12,r13

+     =    xor     r15,r14

+        add    &= nbsp;r12,QWORD[24+rsp]

+

+        add    &= nbsp;r12,QWORD[80+rsp]

+    &nb= sp;   mov     r13,rcx

+        add   &nbs= p; r12,r15

+     &nbs= p;  mov     r14,r10

+        ror    &n= bsp;r13,23

+      &nb= sp; mov     r15,rdx

+=

+        x= or     r13,rcx

+  &nb= sp;     ror     r14,5

+        xor  = ;   r15,r8

+

+        mov   &nbs= p; QWORD[80+rsp],r12

+    =     xor     r14,r10
<= br class=3D"">+        and   &= nbsp; r15,rcx

+

+        ror    &n= bsp;r13,4

+      &nbs= p; add     r12,r9

+ &= nbsp;      xor     r15,r8=

+

+   =      ror     r14,6

+        xor  &nb= sp;  r13,rcx

+    &nb= sp;   add     r12,r15

+

+      &= nbsp; mov     r15,r10

+        add     r1= 2,QWORD[rbp]

+      &= nbsp; xor     r14,r10

+

+        = ;xor     r15,r11

+  &= nbsp;     ror     r13,14

+        mov &nb= sp;   r9,r11

+
+        and   &n= bsp; rdi,r15

+     &n= bsp;  ror     r14,28

+        add    &n= bsp;r12,r13

+

+ &= nbsp;      xor     r9,rdi=

+        a= dd     rbx,r12

+  &nb= sp;     add     r9,r12

+

+    &n= bsp;   lea     rbp,[8+rbp]

+        mov   = ;  r13,QWORD[96+rsp]

+   &= nbsp;    mov     rdi,QWORD[72+rsp]<= br class=3D"">
+

+   &= nbsp;    mov     r12,r13

+        ror  = ;   r13,7

+    &= nbsp;   add     r9,r14
+        mov   &nb= sp; r14,rdi

+     &nb= sp;  ror     rdi,42

+

+       = ; xor     r13,r12

+ &= nbsp;      shr     r12,7<= br class=3D"">
+        ro= r     r13,1

+   =      xor     rdi,r14

+        shr  = ;   r14,6

+

+        ror    = ; rdi,19

+      =   xor     r12,r13

+        xor     r= di,r14

+       &= nbsp;add     r12,QWORD[32+rsp]

+

+       = ; add     r12,QWORD[88+rsp]

+        mov    &n= bsp;r13,rbx

+      &n= bsp; add     r12,rdi

= +        mov     r14= ,r9

+       &nbs= p;ror     r13,23

+  &= nbsp;     mov     rdi,rcx

+

+    = ;    xor     r13,rbx
=
+        ror   =   r14,5

+     &n= bsp;  xor     rdi,rdx

+

+       = ; mov     QWORD[88+rsp],r12

+        xor    &n= bsp;r14,r9

+      &nb= sp; and     rdi,rbx

+=

+        r= or     r13,4

+   = ;     add     r12,r8

+        xor  = ;   rdi,rdx

+
+        ror   &nb= sp; r14,6

+      = ;  xor     r13,rbx

+        add     = r12,rdi

+

+  = ;      mov     rdi,r9

+        add &= nbsp;   r12,QWORD[rbp]

+  =       xor     r14,r9

+

+    = ;    xor     rdi,r10
=
+        ror   =   r13,14

+     &= nbsp;  mov     r8,r10

+

+       = ; and     r15,rdi

+ &= nbsp;      ror     r14,28=

+        a= dd     r12,r13

+

+        xor  = ;   r8,r15

+    =     add     rax,r12
<= br class=3D"">+        add   &= nbsp; r8,r12

+

+        lea     = rbp,[24+rbp]

+      &= nbsp; mov     r13,QWORD[104+rsp]
+        mov   &nb= sp; r15,QWORD[80+rsp]

+
+        mov   &nb= sp; r12,r13

+     &nb= sp;  ror     r13,7

+        add     = r8,r14

+       &= nbsp;mov     r14,r15

+ &nb= sp;      ror     r15,42
+

+   &n= bsp;    xor     r13,r12

+        shr  &nb= sp;  r12,7

+     = ;   ror     r13,1

+        xor    &n= bsp;r15,r14

+      &n= bsp; shr     r14,6

+<= br class=3D"">
+        ro= r     r15,19

+   = ;     xor     r12,r13

+        xor  = ;   r15,r14

+    = ;    add     r12,QWORD[40+rsp]

+

+    = ;    add     r12,QWORD[96+rsp]

+        mov &n= bsp;   r13,rax

+   &n= bsp;    add     r12,r15

+        mov  &nb= sp;  r14,r8

+    &nbs= p;   ror     r13,23

+        mov    =  r15,rbx

+

+=        xor     r13,= rax

+       &nbs= p;ror     r14,5

+  &n= bsp;     xor     r15,rcx

+

+    =     mov     QWORD[96+rsp],r12

+        xor &nb= sp;   r14,r8

+   &nbs= p;    and     r15,rax

+

+     &n= bsp;  ror     r13,4

+        add    &n= bsp;r12,rdx

+      &n= bsp; xor     r15,rcx

= +

+        = ror     r14,6

+  &nbs= p;     xor     r13,rax

+        add  = ;   r12,r15

+
+        mov   &nb= sp; r15,r8

+     &nbs= p;  add     r12,QWORD[rbp]

+        xor   &nbs= p; r14,r8

+

= +        xor     r15= ,r9

+       &nbs= p;ror     r13,14

+  &= nbsp;     mov     rdx,r9

+

+    =     and     rdi,r15
<= br class=3D"">+        ror   &= nbsp; r14,28

+     &n= bsp;  add     r12,r13

+

+       = ; xor     rdx,rdi

+ &= nbsp;      add     r11,r1= 2

+        = add     rdx,r12

+

+        lea  = ;   rbp,[8+rbp]

+   &= nbsp;    mov     r13,QWORD[112+rsp]=

+        m= ov     rdi,QWORD[88+rsp]

+=

+        m= ov     r12,r13

+  &nb= sp;     ror     r13,7

+        add  = ;   rdx,r14

+    = ;    mov     r14,rdi
=
+        ror   =   rdi,42

+

+        xor    &n= bsp;r13,r12

+      &n= bsp; shr     r12,7

+ =        ror     r13,1=

+        x= or     rdi,r14

+  &nb= sp;     shr     r14,6

+

+    &n= bsp;   ror     rdi,19

+        xor   &nbs= p; r12,r13

+     &nbs= p;  xor     rdi,r14

+        add    &n= bsp;r12,QWORD[48+rsp]

+

+        add    &n= bsp;r12,QWORD[104+rsp]

+    &nb= sp;   mov     r13,r11

+        add   &nbs= p; r12,rdi

+     &nbs= p;  mov     r14,rdx

+        ror    &n= bsp;r13,23

+      &nb= sp; mov     rdi,rax

+=

+        x= or     r13,r11

+  &nb= sp;     ror     r14,5

+        xor  = ;   rdi,rbx

+
+        mov   &nb= sp; QWORD[104+rsp],r12

+   &nbs= p;    xor     r14,rdx

+        and   = ;  rdi,r11

+

+        ror    &n= bsp;r13,4

+      &nbs= p; add     r12,rcx

+ =        xor     rdi,r= bx

+

+  &nbs= p;     ror     r14,6

+        xor  = ;   r13,r11

+    = ;    add     r12,rdi
=
+

+     &nb= sp;  mov     rdi,rdx

+        add    &n= bsp;r12,QWORD[rbp]

+     &= nbsp;  xor     r14,rdx

+

+       = ; xor     rdi,r8

+ &n= bsp;      ror     r13,14<= br class=3D"">
+        mo= v     rcx,r8

+

+        and  &nb= sp;  r15,rdi

+    &nb= sp;   ror     r14,28

+        add    = ; r12,r13

+

= +        xor     rcx= ,r15

+       &nb= sp;add     r10,r12

+  = ;      add     rcx,r12
+

+   &nb= sp;    lea     rbp,[24+rbp]

+        mov  = ;   r13,QWORD[120+rsp]

+  =       mov     r15,QWORD[9= 6+rsp]

+

+  =       mov     r12,r13

+        ror &= nbsp;   r13,7

+   &nb= sp;    add     rcx,r14

+        mov  &nbs= p;  r14,r15

+    &nbs= p;   ror     r15,42

+

+      &nb= sp; xor     r13,r12

+=        shr     r12,= 7

+        = ror     r13,1

+  &nbs= p;     xor     r15,r14

+        shr  = ;   r14,6

+

+        ror    = ; r15,19

+      =   xor     r12,r13

+        xor     r= 15,r14

+       &= nbsp;add     r12,QWORD[56+rsp]

+

+       = ; add     r12,QWORD[112+rsp]

+        mov    &= nbsp;r13,r10

+      &= nbsp; add     r12,r15

+        mov     r1= 4,rcx

+       &n= bsp;ror     r13,23

+  = ;      mov     r15,r11
+

+   &nb= sp;    xor     r13,r10

+        ror  &nbs= p;  r14,5

+     =    xor     r15,rax

+

+      &nbs= p; mov     QWORD[112+rsp],r12

+        xor    =  r14,rcx

+      =   and     r15,r10

+

+       &nbs= p;ror     r13,4

+  &n= bsp;     add     r12,rbx

+        xor &nb= sp;   r15,rax

+
<= br class=3D"">+        ror   &= nbsp; r14,6

+     &nb= sp;  xor     r13,r10

+        add    &n= bsp;r12,r15

+

+ &= nbsp;      mov     r15,rc= x

+        = add     r12,QWORD[rbp]

+ &= nbsp;      xor     r14,rc= x

+

+   = ;     xor     r15,rdx

+        ror  = ;   r13,14

+    =     mov     rbx,rdx
<= br class=3D"">+

+     &nbs= p;  and     rdi,r15

+        ror    &n= bsp;r14,28

+      &nb= sp; add     r12,r13

+=

+        x= or     rbx,rdi

+  &nb= sp;     add     r9,r12

+        add  = ;   rbx,r12

+
+        lea   &nb= sp; rbp,[8+rbp]

+     = ;   mov     r13,QWORD[rsp]

+        mov   = ;  rdi,QWORD[104+rsp]

+

+        mov  &nbs= p;  r12,r13

+    &nbs= p;   ror     r13,7

+        add    &= nbsp;rbx,r14

+      &= nbsp; mov     r14,rdi

+        ror     rd= i,42

+

+  &n= bsp;     xor     r13,r12

+        shr &nb= sp;   r12,7

+    = ;    ror     r13,1
+        xor   &n= bsp; rdi,r14

+     &n= bsp;  shr     r14,6

+

+       = ; ror     rdi,19

+ &n= bsp;      xor     r12,r13=

+        x= or     rdi,r14

+  &nb= sp;     add     r12,QWORD[64+r= sp]

+

+  &nb= sp;     add     r12,QWORD[120+= rsp]

+       &nb= sp;mov     r13,r9

+  =       add     r12,rdi

+        mov &= nbsp;   r14,rbx

+   &= nbsp;    ror     r13,23

+        mov  &nb= sp;  rdi,r10

+

+        xor    &= nbsp;r13,r9

+      &n= bsp; ror     r14,5

+ =        xor     rdi,r= 11

+

+  &nbs= p;     mov     QWORD[120+rsp],= r12

+       &nbs= p;xor     r14,rbx

+  =       and     rdi,r9

+

+    = ;    ror     r13,4
+        add   &n= bsp; r12,rax

+     &n= bsp;  xor     rdi,r11

+

+       = ; ror     r14,6

+ &nb= sp;      xor     r13,r9
+        add=     r12,rdi

+

+        mov  &nb= sp;  rdi,rbx

+    &nb= sp;   add     r12,QWORD[rbp]

+        xor  &nb= sp;  r14,rbx

+

+        xor    &= nbsp;rdi,rcx

+      &= nbsp; ror     r13,14

= +        mov     rax= ,rcx

+

+  &n= bsp;     and     r15,rdi

+        ror &nb= sp;   r14,28

+   &nbs= p;    add     r12,r13

+

+     &n= bsp;  xor     rax,r15

+        add    &n= bsp;r8,r12

+      &nb= sp; add     rax,r12

+=

+        l= ea     rbp,[24+rbp]

+ &nbs= p;      cmp     BYTE[7+rb= p],0

+       &nb= sp;jnz     NEAR $L$rounds_16_xx

+

+       = ; mov     rdi,QWORD[((128+0))+rsp]
<= br class=3D"">+        add   &= nbsp; rax,r14

+     &= nbsp;  lea     rsi,[128+rsi]
+

+      = ;  add     rax,QWORD[rdi]

+        add    = ; rbx,QWORD[8+rdi]

+    &n= bsp;   add     rcx,QWORD[16+rdi]

+        add  = ;   rdx,QWORD[24+rdi]

+  &= nbsp;     add     r8,QWORD[32+= rdi]

+       &nb= sp;add     r9,QWORD[40+rdi]

+        add     r= 10,QWORD[48+rdi]

+     &nb= sp;  add     r11,QWORD[56+rdi]
=
+

+     &nb= sp;  cmp     rsi,QWORD[((128+16))+rsp]

+

+    &= nbsp;   mov     QWORD[rdi],rax

+        mov  = ;   QWORD[8+rdi],rbx

+  &n= bsp;     mov     QWORD[16+rdi]= ,rcx

+       &nb= sp;mov     QWORD[24+rdi],rdx

+        mov     = QWORD[32+rdi],r8

+     &nb= sp;  mov     QWORD[40+rdi],r9
<= br class=3D"">+        mov   &= nbsp; QWORD[48+rdi],r10

+   &nb= sp;    mov     QWORD[56+rdi],r11
+        jb &= nbsp;    NEAR $L$loop

+
+        mov =     rsi,QWORD[152+rsp]

+
+        mov=     r15,QWORD[((-48))+rsi]

+

+       &nbs= p;mov     r14,QWORD[((-40))+rsi]

+

+       = ; mov     r13,QWORD[((-32))+rsi]
+

+      =   mov     r12,QWORD[((-24))+rsi]

+

+     &= nbsp;  mov     rbp,QWORD[((-16))+rsi]

+

+    &n= bsp;   mov     rbx,QWORD[((-8))+rsi]

+

+   &nbs= p;    lea     rsp,[rsi]

+

+$L$epilogue:

+        mov  &nbs= p;  rdi,QWORD[8+rsp]        ;W= IN64 epilogue

+      =   mov     rsi,QWORD[16+rsp]
+        DB   &nbs= p;  0F3h,0C3h         &nb= sp;     ;repret

+

+$L$SEH_end_sha512_block_data_order:

+ALIGN   64

+

+K512:

+   &= nbsp;    DQ      0x428a2f98d72= 8ae22,0x7137449123ef65cd

+    &= nbsp;   DQ      0x428a2f98d728ae22,= 0x7137449123ef65cd

+     &= nbsp;  DQ      0xb5c0fbcfec4d3b2f,0xe9b5= dba58189dbbc

+      &= nbsp; DQ      0xb5c0fbcfec4d3b2f,0xe9b5dba581= 89dbbc

+       &= nbsp;DQ      0x3956c25bf348b538,0x59f111f1b605d019=

+        D= Q      0x3956c25bf348b538,0x59f111f1b605d019

+        DQ &nbs= p;    0x923f82a4af194f9b,0xab1c5ed5da6d8118

+        DQ  &nbs= p;   0x923f82a4af194f9b,0xab1c5ed5da6d8118
+        DQ   &nbs= p;  0xd807aa98a3030242,0x12835b0145706fbe

+        DQ    &nb= sp; 0xd807aa98a3030242,0x12835b0145706fbe

+        DQ     &nb= sp;0x243185be4ee4b28c,0x550c7dc3d5ffb4e2

+ &nb= sp;      DQ      0x2= 43185be4ee4b28c,0x550c7dc3d5ffb4e2

+  &nb= sp;     DQ      0x72be5d7= 4f27b896f,0x80deb1fe3b1696b1

+   &nb= sp;    DQ      0x72be5d74f27b8= 96f,0x80deb1fe3b1696b1

+    &nb= sp;   DQ      0x9bdc06a725c71235,0x= c19bf174cf692694

+     &nb= sp;  DQ      0x9bdc06a725c71235,0xc19bf1= 74cf692694

+      &nb= sp; DQ      0xe49b69c19ef14ad2,0xefbe4786384f= 25e3

+       &nb= sp;DQ      0xe49b69c19ef14ad2,0xefbe4786384f25e3
+        DQ =      0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65

+        DQ  =     0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65

+        DQ   =    0x2de92c6f592b0275,0x4a7484aa6ea6e483

+        DQ    =   0x2de92c6f592b0275,0x4a7484aa6ea6e483

+        DQ    &nb= sp; 0x5cb0a9dcbd41fbd4,0x76f988da831153b5

+        DQ     &nb= sp;0x5cb0a9dcbd41fbd4,0x76f988da831153b5

+ &nb= sp;      DQ      0x9= 83e5152ee66dfab,0xa831c66d2db43210

+  &nb= sp;     DQ      0x983e515= 2ee66dfab,0xa831c66d2db43210

+   &nb= sp;    DQ      0xb00327c898fb2= 13f,0xbf597fc7beef0ee4

+    &nb= sp;   DQ      0xb00327c898fb213f,0x= bf597fc7beef0ee4

+     &nb= sp;  DQ      0xc6e00bf33da88fc2,0xd5a791= 47930aa725

+      &nb= sp; DQ      0xc6e00bf33da88fc2,0xd5a79147930a= a725

+       &nb= sp;DQ      0x06ca6351e003826f,0x142929670a0e6e70
+        DQ =      0x06ca6351e003826f,0x142929670a0e6e70

+        DQ  =     0x27b70a8546d22ffc,0x2e1b21385c26c926

+        DQ   =    0x27b70a8546d22ffc,0x2e1b21385c26c926

+        DQ    =   0x4d2c6dfc5ac42aed,0x53380d139d95b3df

+        DQ    &nb= sp; 0x4d2c6dfc5ac42aed,0x53380d139d95b3df

+        DQ     &nb= sp;0x650a73548baf63de,0x766a0abb3c77b2a8

+ &nb= sp;      DQ      0x6= 50a73548baf63de,0x766a0abb3c77b2a8

+  &nb= sp;     DQ      0x81c2c92= e47edaee6,0x92722c851482353b

+   &nb= sp;    DQ      0x81c2c92e47eda= ee6,0x92722c851482353b

+    &nb= sp;   DQ      0xa2bfe8a14cf10364,0x= a81a664bbc423001

+     &nb= sp;  DQ      0xa2bfe8a14cf10364,0xa81a66= 4bbc423001

+      &nb= sp; DQ      0xc24b8b70d0f89791,0xc76c51a30654= be30

+       &nb= sp;DQ      0xc24b8b70d0f89791,0xc76c51a30654be30
+        DQ =      0xd192e819d6ef5218,0xd69906245565a910

+        DQ  =     0xd192e819d6ef5218,0xd69906245565a910

+        DQ   =    0xf40e35855771202a,0x106aa07032bbd1b8

+        DQ    =   0xf40e35855771202a,0x106aa07032bbd1b8

+        DQ    &nb= sp; 0x19a4c116b8d2d0c8,0x1e376c085141ab53

+        DQ     &nb= sp;0x19a4c116b8d2d0c8,0x1e376c085141ab53

+ &nb= sp;      DQ      0x2= 748774cdf8eeb99,0x34b0bcb5e19b48a8

+  &nb= sp;     DQ      0x2748774= cdf8eeb99,0x34b0bcb5e19b48a8

+   &nb= sp;    DQ      0x391c0cb3c5c95= a63,0x4ed8aa4ae3418acb

+    &nb= sp;   DQ      0x391c0cb3c5c95a63,0x= 4ed8aa4ae3418acb

+     &nb= sp;  DQ      0x5b9cca4f7763e373,0x682e6f= f3d6b2b8a3

+      &nb= sp; DQ      0x5b9cca4f7763e373,0x682e6ff3d6b2= b8a3

+       &nb= sp;DQ      0x748f82ee5defb2fc,0x78a5636f43172f60
+        DQ =      0x748f82ee5defb2fc,0x78a5636f43172f60

+        DQ  =     0x84c87814a1f0ab72,0x8cc702081a6439ec

+        DQ   =    0x84c87814a1f0ab72,0x8cc702081a6439ec

+        DQ    =   0x90befffa23631e28,0xa4506cebde82bde9

+        DQ    &nb= sp; 0x90befffa23631e28,0xa4506cebde82bde9

+        DQ     &nb= sp;0xbef9a3f7b2c67915,0xc67178f2e372532b

+ &nb= sp;      DQ      0xb= ef9a3f7b2c67915,0xc67178f2e372532b

+  &nb= sp;     DQ      0xca273ec= eea26619c,0xd186b8c721c0c207

+   &nb= sp;    DQ      0xca273eceea266= 19c,0xd186b8c721c0c207

+    &nb= sp;   DQ      0xeada7dd6cde0eb1e,0x= f57d4f7fee6ed178

+     &nb= sp;  DQ      0xeada7dd6cde0eb1e,0xf57d4f= 7fee6ed178

+      &nb= sp; DQ      0x06f067aa72176fba,0x0a637dc5a2c8= 98a6

+       &nb= sp;DQ      0x06f067aa72176fba,0x0a637dc5a2c898a6
+        DQ =      0x113f9804bef90dae,0x1b710b35131c471b

+        DQ  =     0x113f9804bef90dae,0x1b710b35131c471b

+        DQ   =    0x28db77f523047d84,0x32caab7b40c72493

+        DQ    =   0x28db77f523047d84,0x32caab7b40c72493

+        DQ    &nb= sp; 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c

+        DQ     &nb= sp;0x3c9ebe0a15c9bebc,0x431d67c49c100d4c

+ &nb= sp;      DQ      0x4= cc5d4becb3e42b6,0x597f299cfc657e2a

+  &nb= sp;     DQ      0x4cc5d4b= ecb3e42b6,0x597f299cfc657e2a

+   &nb= sp;    DQ      0x5fcb6fab3ad6f= aec,0x6c44198c4a475817

+    &nb= sp;   DQ      0x5fcb6fab3ad6faec,0x= 6c44198c4a475817

+

+        DQ     &n= bsp;0x0001020304050607,0x08090a0b0c0d0e0f

+ &n= bsp;      DQ      0x= 0001020304050607,0x08090a0b0c0d0e0f

+DB  =     83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,9= 7

+DB      110,115,10= 2,111,114,109,32,102,111,114,32,120,56,54,95,54

+DB      52,44,32,67,82,89,80,84,79,71,65,77,83,= 32,98,121

+DB      32= ,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46

+DB      111,114,103,62,0

+EXTERN  __imp_RtlVirtualUnwind

+

+ALIGN   16
<= br class=3D"">+se_handler:

+    = ;    push    rsi

+        push    r= di

+        = ;push    rbx

+   &nbs= p;    push    rbp

+        push    r= 12

+        = ;push    r13

+   &nbs= p;    push    r14

+        push    r= 15

+        = ;pushfq

+       =  sub     rsp,64

+

+        mov &= nbsp;   rax,QWORD[120+r8]

+ &nb= sp;      mov     rbx,QWOR= D[248+r8]

+

+ &nb= sp;      mov     rsi,QWOR= D[8+r9]

+       =  mov     r11,QWORD[56+r9]

+

+       = ; mov     r10d,DWORD[r11]

+        lea    &n= bsp;r10,[r10*1+rsi]

+     =    cmp     rbx,r10

+        jb    &n= bsp; NEAR $L$in_prologue

+
=
+        mov   =   rax,QWORD[152+r8]

+
=
+        mov   =   r10d,DWORD[4+r11]

+   &n= bsp;    lea     r10,[r10*1+rsi]

+        cmp &= nbsp;   rbx,r10

+   &= nbsp;    jae     NEAR $L$in_prologu= e

+        = mov     rsi,rax

+  &n= bsp;     mov     rax,QWORD[((1= 28+24))+rax]

+

+ =        mov     rbx,Q= WORD[((-8))+rax]

+     &nb= sp;  mov     rbp,QWORD[((-16))+rax]

+        mov  = ;   r12,QWORD[((-24))+rax]

+ &n= bsp;      mov     r13,QWO= RD[((-32))+rax]

+     &nbs= p;  mov     r14,QWORD[((-40))+rax]

+        mov  = ;   r15,QWORD[((-48))+rax]

+ &n= bsp;      mov     QWORD[1= 44+r8],rbx

+      &nb= sp; mov     QWORD[160+r8],rbp

+        mov    =  QWORD[216+r8],r12

+    &n= bsp;   mov     QWORD[224+r8],r13

+        mov  = ;   QWORD[232+r8],r14

+  &= nbsp;     mov     QWORD[240+r8= ],r15

+

+  &= nbsp;     lea     r10,[$L$epil= ogue]

+       &n= bsp;cmp     rbx,r10

+ &nbs= p;      jb      NEAR= $L$in_prologue

+

+        lea     rs= i,[((128+32))+rsi]

+     &= nbsp;  lea     rdi,[512+r8]
+        mov   &nb= sp; ecx,12

+     &nbs= p;  DD      0xa548f3fc
+

+$L$in_prologue:
<= br class=3D"">+        mov   &= nbsp; rdi,QWORD[8+rax]

+   &nbs= p;    mov     rsi,QWORD[16+rax]

+        mov &= nbsp;   QWORD[152+r8],rax

+ &nb= sp;      mov     QWORD[16= 8+r8],rsi

+      &nbs= p; mov     QWORD[176+r8],rdi

+

+      &nbs= p; mov     rdi,QWORD[40+r9]

+        mov    &n= bsp;rsi,r8

+      &nb= sp; mov     ecx,154

+=        DD      = ;0xa548f3fc

+

+ &= nbsp;      mov     rsi,r9=

+        x= or     rcx,rcx

+  &nb= sp;     mov     rdx,QWORD[8+rs= i]

+        = ;mov     r8,QWORD[rsi]

+ &= nbsp;      mov     r9,QWO= RD[16+rsi]

+      &nb= sp; mov     r10,QWORD[40+rsi]

+        lea    =  r11,[56+rsi]

+     &= nbsp;  lea     r12,[24+rsi]
+        mov   &nb= sp; QWORD[32+rsp],r10

+    = ;    mov     QWORD[40+rsp],r11

+        mov &n= bsp;   QWORD[48+rsp],r12

+ &nbs= p;      mov     QWORD[56+= rsp],rcx

+       = ; call    QWORD[__imp_RtlVirtualUnwind]
<= br class=3D"">+

+     &nbs= p;  mov     eax,1

+        add     r= sp,64

+       &n= bsp;popfq

+      &nbs= p; pop     r15

+ &nbs= p;      pop     r14

+        pop &nb= sp;   r13

+    &= nbsp;   pop     r12

+        pop    =  rbp

+      &nbs= p; pop     rbx

+ &nbs= p;      pop     rdi

+        pop &nb= sp;   rsi

+    &= nbsp;   DB      0F3h,0C3h  &nb= sp;            = ;repret

+

+sectio= n .pdata rdata align=3D4

+ALIGN   4<= br class=3D"">
+        DD=      $L$SEH_begin_sha512_block_data_order wrt ..i= magebase

+       = ; DD      $L$SEH_end_sha512_block_data_order = wrt ..imagebase

+     &nbs= p;  DD      $L$SEH_info_sha512_block_dat= a_order wrt ..imagebase

+section .xdata rdata = align=3D8

+ALIGN   8
<= br class=3D"">+$L$SEH_info_sha512_block_data_order:

+DB      9,0,0,0

+        DD     &= nbsp;se_handler wrt ..imagebase

+   =      DD      $L$prologue = wrt ..imagebase,$L$epilogue wrt
..imagebase
diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpui= d.nasm
b/CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.= nasm
new file mode 100644
index 0000000000..2a3= d5bcf72
--- /dev/null
+++ b/CryptoPkg/Library/O= pensslLib/X64/crypto/x86_64cpuid.nasm
@@ -0,0 +1,491 @@
+; WARNING: do not edit!

+; Generated= from openssl/crypto/x86_64cpuid.pl

+;

+; Copyright 2005-2020 The OpenSSL Project Authors. A= ll Rights
Reserved.

+;

+; Licensed under the OpenSSL license (the "License")= .  You may not use

+; this file except in= compliance with the License.  You can obtain a
copy

+; in the file LICENSE in the source distribution= or at

+; https://www.openssl.org/source/license.html<= /a>

+

+default re= l

+%define XMMWORD

+%define YMMWORD

+%define ZMMWORD

+EXTERN  OPENSSL_cpuid_setup

+

+section .CRT$XCU rdata align=3D8<= br class=3D"">
+        &n= bsp;       DQ     &n= bsp;OPENSSL_cpuid_setup

+

+

+common  OPENSSL_ia32cap_P 16<= br class=3D"">
+

+section .text = code align=3D64

+

+

+global  OPENSSL_atomic_add

+

+ALIGN   16<= br class=3D"">
+OPENSSL_atomic_add:

+

+       = ; mov     eax,DWORD[rcx]

+$L$spin:        lea   =   r8,[rax*1+rdx]

+DB   &nb= sp;  0xf0

+     =    cmpxchg DWORD[rcx],r8d

+ &nb= sp;      jne     NEAR $L$= spin

+       &nb= sp;mov     eax,r8d

+DB &nb= sp;    0x48,0x98

+  &= nbsp;     DB      0F3h,0C= 3h             =   ;repret

+

+

+

+globa= l  OPENSSL_rdtsc

+

+ALIGN   16

+OPENSSL_rdtsc:
+

+   &n= bsp;    rdtsc

+  &nbs= p;     shl     rdx,32

+        or  =     rax,rdx

+   =      DB      0F3h,0C3h &n= bsp;            = ; ;repret

+

= +

+

+global  = ;OPENSSL_ia32_cpuid

+

+ALIGN   16

+OPENSSL_ia32_cpu= id:

+       &nbs= p;mov     QWORD[8+rsp],rdi     &nbs= p;  ;WIN64 prologue

+   &n= bsp;    mov     QWORD[16+rsp],rsi
+        mov=     rax,rsp

+$L$SEH_begin= _OPENSSL_ia32_cpuid:

+     = ;   mov     rdi,rcx

+

+

+
+        mov =     r8,rbx

+

+

+     &n= bsp;  xor     eax,eax

+        mov    &n= bsp;QWORD[8+rdi],rax

+     = ;   cpuid

+    &= nbsp;   mov     r11d,eax
<= br class=3D"">+

+     &nbs= p;  xor     eax,eax

+        cmp    &n= bsp;ebx,0x756e6547

+     &= nbsp;  setne   al

+  =       mov     r9d,eax

+        cmp &= nbsp;   edx,0x49656e69

+  =       setne   al

+        or    = ;  r9d,eax

+     = ;   cmp     ecx,0x6c65746e

+        setne  &nb= sp;al

+       &n= bsp;or      r9d,eax

+=        jz      = ;NEAR $L$intel

+

= +        cmp     ebx= ,0x68747541

+      &n= bsp; setne   al

+   &= nbsp;    mov     r10d,eax

+        cmp  = ;   edx,0x69746E65

+  &nbs= p;     setne   al

+        or    &nb= sp; r10d,eax

+     &n= bsp;  cmp     ecx,0x444D4163
+        setne   = al

+        = ;or      r10d,eax

+ &= nbsp;      jnz     NEAR $= L$intel

+

+

+        mov &nb= sp;   eax,0x80000000

+  &n= bsp;     cpuid

+ &nbs= p;      cmp     eax,0x800= 00001

+       &n= bsp;jb      NEAR $L$intel

+        mov    &n= bsp;r10d,eax

+      &= nbsp; mov     eax,0x80000001

+        cpuid
+        or   &nbs= p;  r9d,ecx

+    &nbs= p;   and     r9d,0x00000801

+

+     &= nbsp;  cmp     r10d,0x80000008
=
+        jb   &= nbsp;  NEAR $L$intel

+

+        mov   = ;  eax,0x80000008

+   &nbs= p;    cpuid

+   =      movzx   r10,cl

+        inc    =  r10

+

+ &nb= sp;      mov     eax,1
+        cpui= d

+        = bt      edx,28

+ &nbs= p;      jnc     NEAR $L$g= eneric

+       &= nbsp;shr     ebx,16

+ &nbs= p;      cmp     bl,r10b
+        ja =      NEAR $L$generic

= +        and     edx= ,0xefffffff

+      &n= bsp; jmp     NEAR $L$generic

+

+$L$intel:

+        cmp    &n= bsp;r11d,4

+      &nb= sp; mov     r10d,-1

+=        jb      = ;NEAR $L$nocacheinfo

+

+        mov    &n= bsp;eax,4

+      &nbs= p; mov     ecx,0

+ &n= bsp;      cpuid

= +        mov     r10= d,eax

+       &n= bsp;shr     r10d,14

+ &nbs= p;      and     r10d,0xff= f

+

+$L$nocachein= fo:

+       &nbs= p;mov     eax,1

+  &n= bsp;     cpuid

+ &nbs= p;      movd    xmm0,eax

+        and &nb= sp;   edx,0xbfefffff

+  &n= bsp;     cmp     r9d,0

+        jne  = ;   NEAR $L$notintel

+  &n= bsp;     or      edx,0x40= 000000

+       &= nbsp;and     ah,15

+  = ;      cmp     ah,15

+        jne &n= bsp;   NEAR $L$notP4

+  &n= bsp;     or      edx,0x00= 100000

+$L$notP4:

+        cmp     ah= ,6

+        = ;jne     NEAR $L$notintel

= +        and     eax= ,0x0fff0ff0

+      &n= bsp; cmp     eax,0x00050670

+        je    &nb= sp; NEAR $L$knights

+    &= nbsp;   cmp     eax,0x00080650

+        jne  = ;   NEAR $L$notintel

+$L$knight= s:

+        = ;and     ecx,0xfbffffff

+<= br class=3D"">
+$L$notintel:

+ &= nbsp;      bt      e= dx,28

+       &n= bsp;jnc     NEAR $L$generic

+        and     e= dx,0xefffffff

+      =   cmp     r10d,0

+        je     &nb= sp;NEAR $L$generic

+

+        or    &nb= sp; edx,0x10000000

+    &n= bsp;   shr     ebx,16

+        cmp   &nbs= p; bl,1

+      &= nbsp; ja      NEAR $L$generic
<= br class=3D"">+        and   &= nbsp; edx,0xefffffff

+$L$generic:

+        and  = ;   r9d,0x00000800

+  &nbs= p;     and     ecx,0xfffff7ff<= br class=3D"">
+        or=      r9d,ecx

+

+        mov &nb= sp;   r10d,edx

+
=
+        cmp   =   r11d,7

+     &= nbsp;  jb      NEAR $L$no_extended_info<= br class=3D"">
+        mo= v     eax,7

+   =      xor     ecx,ecx

+        cpuid

+        bt &n= bsp;    r9d,26

+  &nb= sp;     jc      NEAR $L$n= otknights

+      &nbs= p; and     ebx,0xfff7ffff

+$L$notknights:

+    &nb= sp;   movd    eax,xmm0

+        and    &n= bsp;eax,0x0fff0ff0

+     &= nbsp;  cmp     eax,0x00050650
<= br class=3D"">+        jne   &= nbsp; NEAR $L$notskylakex

+   &= nbsp;    and     ebx,0xfffeffff

+

+$L$notskylakex:
+        mov=     DWORD[8+rdi],ebx

+ &n= bsp;      mov     DWORD[1= 2+rdi],ecx

+$L$no_extended_info:

+

+     &n= bsp;  bt      r9d,27

+        jnc    = ; NEAR $L$clear_avx

+    &= nbsp;   xor     ecx,ecx
+DB      0x0f,0x01,0xd0

+        and   = ;  eax,0xe6

+    &nbs= p;   cmp     eax,0xe6

+        je    = ;  NEAR $L$done

+    =     and     DWORD[8+rdi],0x3fdeffff=

+

+

+

+

+        and    &n= bsp;eax,6

+      &nbs= p; cmp     eax,6

+ &n= bsp;      je      NE= AR $L$done

+$L$clear_avx:

+        mov    =  eax,0xefffe7ff

+     = ;   and     r9d,eax

+        mov    =  eax,0x3fdeffdf

+     = ;   and     DWORD[8+rdi],eax

+$L$done:

+   &nbs= p;    shl     r9,32
<= br class=3D"">+        mov   &= nbsp; eax,r10d

+     =    mov     rbx,r8

+

+       = ; or      rax,r9

+        mov     rd= i,QWORD[8+rsp]        ;WIN64 epilogue
+        mov =     rsi,QWORD[16+rsp]

+ &n= bsp;      DB      0F= 3h,0C3h            &= nbsp;  ;repret

+

+$L$SEH_end_OPENSSL_ia32_cpuid:

+
+global  OPENSSL_cleanse

+

+ALIGN   16

+OPENSSL_cleanse:

+

+        xor  = ;   rax,rax

+    = ;    cmp     rdx,15
<= br class=3D"">+        jae   &= nbsp; NEAR $L$ot

+    &nbs= p;   cmp     rdx,0

+        je    &n= bsp; NEAR $L$ret

+$L$ittle:

+        mov   = ;  BYTE[rcx],al

+    =     sub     rdx,1
+        lea   &nb= sp; rcx,[1+rcx]

+     = ;   jnz     NEAR $L$ittle
=
+$L$ret:

+    &n= bsp;   DB      0F3h,0C3h  &nbs= p;            ;= repret

+ALIGN   16
+$L$ot:

+     =    test    rcx,7

+        jz     &nb= sp;NEAR $L$aligned

+     &= nbsp;  mov     BYTE[rcx],al
+        lea   &nb= sp; rdx,[((-1))+rdx]

+    =     lea     rcx,[1+rcx]

+        jmp  &nb= sp;  NEAR $L$ot

+$L$aligned:

+        mov  = ;   QWORD[rcx],rax

+  &nbs= p;     lea     rdx,[((-8))+rdx= ]

+        = test    rdx,-8

+   &n= bsp;    lea     rcx,[8+rcx]

+        jnz  = ;   NEAR $L$aligned

+  &nb= sp;     cmp     rdx,0

+        jne  = ;   NEAR $L$ittle

+   = ;     DB      0F3h,0C3h &= nbsp;           &nbs= p; ;repret

+

+

+

+global &nbs= p;CRYPTO_memcmp

+

+ALIGN   16

+CRYPTO_memcmp:

+

+    &n= bsp;   xor     rax,rax
+        xor   &nb= sp; r10,r10

+     &nb= sp;  cmp     r8,0

+        je     &n= bsp;NEAR $L$no_data

+     =    cmp     r8,16

+        jne    &n= bsp;NEAR $L$oop_cmp

+     =    mov     r10,QWORD[rcx]
=
+        mov   =   r11,QWORD[8+rcx]

+   &nb= sp;    mov     r8,1
<= br class=3D"">+        xor   &= nbsp; r10,QWORD[rdx]

+    =     xor     r11,QWORD[8+rdx]

+        or  = ;    r10,r11

+   = ;     cmovnz  rax,r8

+        DB    &nb= sp; 0F3h,0C3h          &n= bsp;    ;repret

+

+ALIGN   16

+$= L$oop_cmp:

+      &nb= sp; mov     r10b,BYTE[rcx]

+        lea    &n= bsp;rcx,[1+rcx]

+     &nbs= p;  xor     r10b,BYTE[rdx]

+        lea   &nbs= p; rdx,[1+rdx]

+     =    or      al,r10b
+        dec   &n= bsp; r8

+      &= nbsp; jnz     NEAR $L$oop_cmp

+        neg    =  rax

+      &nbs= p; shr     rax,63

+$L= $no_data:

+      &nbs= p; DB      0F3h,0C3h     =           ;repret

+

+

+global  OPENSSL_wipe_cpu

+

+ALIGN   16

+OPENSSL_wipe_cpu:

+     =    pxor    xmm0,xmm0

+        pxor    x= mm1,xmm1

+       = ; pxor    xmm2,xmm2

+ &nbs= p;      pxor    xmm3,xmm3

+        pxor &= nbsp;  xmm4,xmm4

+    = ;    pxor    xmm5,xmm5
+        xor   &nb= sp; rcx,rcx

+     &nb= sp;  xor     rdx,rdx

+        xor    &n= bsp;r8,r8

+      &nbs= p; xor     r9,r9

+ &n= bsp;      xor     r10,r10=

+        x= or     r11,r11

+  &nb= sp;     lea     rax,[8+rsp]
+        DB &= nbsp;    0F3h,0C3h       =         ;repret

+

+global  OPENSSL_instrument_b= us

+

+ALIGN  = ; 16

+OPENSSL_instrument_bus:

+

+     =    mov     r10,rcx

+        mov    &= nbsp;rcx,rdx

+      &= nbsp; mov     r11,rdx

+

+        = ;rdtsc

+       &= nbsp;mov     r8d,eax

+ &nb= sp;      mov     r9d,0
+        clfl= ush [r10]

+DB      0x= f0

+        = ;add     DWORD[r10],r9d

+ =        jmp     NEAR = $L$oop

+ALIGN   16
+$L$oop: rdtsc

+    = ;    mov     edx,eax
=
+        sub   =   eax,r8d

+     =    mov     r8d,edx

+        mov    &= nbsp;r9d,eax

+      &= nbsp; clflush [r10]

+DB    = ;  0xf0

+     &n= bsp;  add     DWORD[r10],eax
+        lea   &n= bsp; r10,[4+r10]

+    &nbs= p;   sub     rcx,1

+        jnz    &= nbsp;NEAR $L$oop

+

+        mov     r= ax,r11

+       &= nbsp;DB      0F3h,0C3h     &nb= sp;         ;repret

+

+

+

+global  OPENSSL_instrument_bu= s2

+

+ALIGN  = ; 16

+OPENSSL_instrument_bus2:

+

+    &n= bsp;   mov     r10,rcx
+        mov   &nb= sp; rcx,rdx

+     &nb= sp;  mov     r11,r8

+        mov    &n= bsp;QWORD[8+rsp],rcx

+

+        rdtsc

+        mov   &nbs= p; r8d,eax

+     &nbs= p;  mov     r9d,0

+

+       &nbs= p;clflush [r10]

+DB     &n= bsp;0xf0

+       = ; add     DWORD[r10],r9d

+

+       = ; rdtsc

+      &= nbsp; mov     edx,eax

+        sub     ea= x,r8d

+       &n= bsp;mov     r8d,edx

+ &nbs= p;      mov     r9d,eax
+$L$oop2:

+  =       clflush [r10]

+DB      0xf0

= +        add     DWO= RD[r10],eax

+

+ &= nbsp;      sub     r11,1<= br class=3D"">
+        jz=      NEAR $L$done2

+=

+        r= dtsc

+       &nb= sp;mov     edx,eax

+  = ;      sub     eax,r8d
+        mov =     r8d,edx

+   =      cmp     eax,r9d

+        mov  = ;   r9d,eax

+    = ;    mov     edx,0
+        setne   = dl

+        = ;sub     rcx,rdx

+  &= nbsp;     lea     r10,[rdx*4+r= 10]

+       &nbs= p;jnz     NEAR $L$oop2

+
+$L$done2:

+  = ;      mov     rax,QWORD[= 8+rsp]

+       &= nbsp;sub     rax,rcx

+ &nb= sp;      DB      0F3= h,0C3h            &n= bsp;  ;repret

+

+

+global  OPENSSL_ia32_rdrand_b= ytes

+

+ALIGN &nb= sp; 16

+OPENSSL_ia32_rdrand_bytes:

+

+    &= nbsp;   xor     rax,rax
+        cmp   &n= bsp; rdx,0

+     &nbs= p;  je      NEAR $L$done_rdrand_bytes
+

+   &nb= sp;    mov     r11,8
=
+$L$oop_rdrand_bytes:

+DB  = ;    73,15,199,242

+  = ;      jc      NEAR = $L$break_rdrand_bytes

+    &nbs= p;   dec     r11

+        jnz    &n= bsp;NEAR $L$oop_rdrand_bytes

+   &nb= sp;    jmp     NEAR $L$done_rdrand_= bytes

+

+ALIGN &n= bsp; 16

+$L$break_rdrand_bytes:

+        cmp  = ;   rdx,8

+    &= nbsp;   jb      NEAR $L$tail_rdrand= _bytes

+       &= nbsp;mov     QWORD[rcx],r10

+        lea     r= cx,[8+rcx]

+      &nb= sp; add     rax,8

+ &= nbsp;      sub     rdx,8<= br class=3D"">
+        jz=      NEAR $L$done_rdrand_bytes

+        mov   &nbs= p; r11,8

+      =   jmp     NEAR $L$oop_rdrand_bytes

+

+ALIGN   16<= br class=3D"">
+$L$tail_rdrand_bytes:

+        mov    &n= bsp;BYTE[rcx],r10b

+     &= nbsp;  lea     rcx,[1+rcx]

+        inc   &nbs= p; rax

+      &n= bsp; shr     r10,8

+ =        dec     rdx
+        jnz=     NEAR $L$tail_rdrand_bytes

+

+$L$done_rdrand_bytes:
=
+        xor   =   r10,r10

+     =    DB      0F3h,0C3h   &n= bsp;           ;repr= et

+

+

+global  OPENSSL_ia32_rdseed_bytes

+

+ALIGN   16

+OPENSSL_ia32_rdseed_bytes:

+

+       = ; xor     rax,rax

+ &= nbsp;      cmp     rdx,0<= br class=3D"">
+        je=      NEAR $L$done_rdseed_bytes

+

+      &= nbsp; mov     r11,8

+= $L$oop_rdseed_bytes:

+DB    &nb= sp; 73,15,199,250

+    &nb= sp;   jc      NEAR $L$break_rdseed_= bytes

+       &n= bsp;dec     r11

+  &n= bsp;     jnz     NEAR $L$oop_r= dseed_bytes

+      &n= bsp; jmp     NEAR $L$done_rdseed_bytes

+

+ALIGN   16

+$L$break_rdseed_bytes:

+        cmp     = rdx,8

+       &n= bsp;jb      NEAR $L$tail_rdseed_bytes

+        mov  &nbs= p;  QWORD[rcx],r10

+   &nb= sp;    lea     rcx,[8+rcx]

+        add  = ;   rax,8

+    &= nbsp;   sub     rdx,8

+        jz    = ;  NEAR $L$done_rdseed_bytes

+  = ;      mov     r11,8

+        jmp &n= bsp;   NEAR $L$oop_rdseed_bytes

+

+ALIGN   16

+$L$tail_rdseed_bytes:

+   &= nbsp;    mov     BYTE[rcx],r10b

+        lea &= nbsp;   rcx,[1+rcx]

+  &nb= sp;     inc     rax

+        shr  = ;   r10,8

+    &= nbsp;   dec     rdx

+        jnz    =  NEAR $L$tail_rdseed_bytes

+

+$L$done_rdseed_bytes:

+ &nbs= p;      xor     r10,r10
+        DB =      0F3h,0C3h       = ;        ;repret

+

+

--=
2.28.0.windows.1




--Apple-Mail=_CF94D665-A9A8-46A7-9B3A-463F28816A39--