.text .globl sha256_multi_block .type sha256_multi_block,@function .align 32 sha256_multi_block: .cfi_startproc movq OPENSSL_ia32cap_P+4(%rip),%rcx btq $61,%rcx jc _shaext_shortcut movq %rsp,%rax .cfi_def_cfa_register %rax pushq %rbx .cfi_offset %rbx,-16 pushq %rbp .cfi_offset %rbp,-24 subq $288,%rsp andq $-256,%rsp movq %rax,272(%rsp) .cfi_escape 0x0f,0x06,0x77,0x90,0x02,0x06,0x23,0x08 .Lbody: leaq K256+128(%rip),%rbp leaq 256(%rsp),%rbx leaq 128(%rdi),%rdi .Loop_grande: movl %edx,280(%rsp) xorl %edx,%edx movq 0(%rsi),%r8 movl 8(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,0(%rbx) cmovleq %rbp,%r8 movq 16(%rsi),%r9 movl 24(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,4(%rbx) cmovleq %rbp,%r9 movq 32(%rsi),%r10 movl 40(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,8(%rbx) cmovleq %rbp,%r10 movq 48(%rsi),%r11 movl 56(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,12(%rbx) cmovleq %rbp,%r11 testl %edx,%edx jz .Ldone movdqu 0-128(%rdi),%xmm8 leaq 128(%rsp),%rax movdqu 32-128(%rdi),%xmm9 movdqu 64-128(%rdi),%xmm10 movdqu 96-128(%rdi),%xmm11 movdqu 128-128(%rdi),%xmm12 movdqu 160-128(%rdi),%xmm13 movdqu 192-128(%rdi),%xmm14 movdqu 224-128(%rdi),%xmm15 movdqu .Lpbswap(%rip),%xmm6 jmp .Loop .align 32 .Loop: movdqa %xmm10,%xmm4 pxor %xmm9,%xmm4 movd 0(%r8),%xmm5 movd 0(%r9),%xmm0 movd 0(%r10),%xmm1 movd 0(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm12,%xmm7 .byte 102,15,56,0,238 movdqa %xmm12,%xmm2 psrld $6,%xmm7 movdqa %xmm12,%xmm1 pslld $7,%xmm2 movdqa %xmm5,0-128(%rax) paddd %xmm15,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -128(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm12,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm3 pslld $26-21,%xmm2 pandn %xmm14,%xmm0 pand %xmm13,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm8,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm9,%xmm3 movdqa %xmm8,%xmm7 pslld $10,%xmm2 pxor %xmm8,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm9,%xmm15 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm15 paddd %xmm5,%xmm11 pxor %xmm2,%xmm7 paddd %xmm5,%xmm15 paddd %xmm7,%xmm15 movd 4(%r8),%xmm5 movd 4(%r9),%xmm0 movd 4(%r10),%xmm1 movd 4(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm11,%xmm7 movdqa %xmm11,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm11,%xmm1 pslld $7,%xmm2 movdqa %xmm5,16-128(%rax) paddd %xmm14,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -96(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm11,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm4 pslld $26-21,%xmm2 pandn %xmm13,%xmm0 pand %xmm12,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm15,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm8,%xmm4 movdqa %xmm15,%xmm7 pslld $10,%xmm2 pxor %xmm15,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm8,%xmm14 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm14 paddd %xmm5,%xmm10 pxor %xmm2,%xmm7 paddd %xmm5,%xmm14 paddd %xmm7,%xmm14 movd 8(%r8),%xmm5 movd 8(%r9),%xmm0 movd 8(%r10),%xmm1 movd 8(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm10,%xmm7 .byte 102,15,56,0,238 movdqa %xmm10,%xmm2 psrld $6,%xmm7 movdqa %xmm10,%xmm1 pslld $7,%xmm2 movdqa %xmm5,32-128(%rax) paddd %xmm13,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm10,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm3 pslld $26-21,%xmm2 pandn %xmm12,%xmm0 pand %xmm11,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm14,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm15,%xmm3 movdqa %xmm14,%xmm7 pslld $10,%xmm2 pxor %xmm14,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm15,%xmm13 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm13 paddd %xmm5,%xmm9 pxor %xmm2,%xmm7 paddd %xmm5,%xmm13 paddd %xmm7,%xmm13 movd 12(%r8),%xmm5 movd 12(%r9),%xmm0 movd 12(%r10),%xmm1 movd 12(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm9,%xmm7 movdqa %xmm9,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm9,%xmm1 pslld $7,%xmm2 movdqa %xmm5,48-128(%rax) paddd %xmm12,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -32(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm9,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm4 pslld $26-21,%xmm2 pandn %xmm11,%xmm0 pand %xmm10,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm13,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm14,%xmm4 movdqa %xmm13,%xmm7 pslld $10,%xmm2 pxor %xmm13,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm14,%xmm12 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm12 paddd %xmm5,%xmm8 pxor %xmm2,%xmm7 paddd %xmm5,%xmm12 paddd %xmm7,%xmm12 movd 16(%r8),%xmm5 movd 16(%r9),%xmm0 movd 16(%r10),%xmm1 movd 16(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm8,%xmm7 .byte 102,15,56,0,238 movdqa %xmm8,%xmm2 psrld $6,%xmm7 movdqa %xmm8,%xmm1 pslld $7,%xmm2 movdqa %xmm5,64-128(%rax) paddd %xmm11,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 0(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm8,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm3 pslld $26-21,%xmm2 pandn %xmm10,%xmm0 pand %xmm9,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm12,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm13,%xmm3 movdqa %xmm12,%xmm7 pslld $10,%xmm2 pxor %xmm12,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm13,%xmm11 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm11 paddd %xmm5,%xmm15 pxor %xmm2,%xmm7 paddd %xmm5,%xmm11 paddd %xmm7,%xmm11 movd 20(%r8),%xmm5 movd 20(%r9),%xmm0 movd 20(%r10),%xmm1 movd 20(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm15,%xmm7 movdqa %xmm15,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm15,%xmm1 pslld $7,%xmm2 movdqa %xmm5,80-128(%rax) paddd %xmm10,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 32(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm15,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm4 pslld $26-21,%xmm2 pandn %xmm9,%xmm0 pand %xmm8,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm11,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm12,%xmm4 movdqa %xmm11,%xmm7 pslld $10,%xmm2 pxor %xmm11,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm12,%xmm10 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm10 paddd %xmm5,%xmm14 pxor %xmm2,%xmm7 paddd %xmm5,%xmm10 paddd %xmm7,%xmm10 movd 24(%r8),%xmm5 movd 24(%r9),%xmm0 movd 24(%r10),%xmm1 movd 24(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm14,%xmm7 .byte 102,15,56,0,238 movdqa %xmm14,%xmm2 psrld $6,%xmm7 movdqa %xmm14,%xmm1 pslld $7,%xmm2 movdqa %xmm5,96-128(%rax) paddd %xmm9,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm14,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm3 pslld $26-21,%xmm2 pandn %xmm8,%xmm0 pand %xmm15,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm10,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm11,%xmm3 movdqa %xmm10,%xmm7 pslld $10,%xmm2 pxor %xmm10,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm11,%xmm9 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm9 paddd %xmm5,%xmm13 pxor %xmm2,%xmm7 paddd %xmm5,%xmm9 paddd %xmm7,%xmm9 movd 28(%r8),%xmm5 movd 28(%r9),%xmm0 movd 28(%r10),%xmm1 movd 28(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm13,%xmm7 movdqa %xmm13,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm13,%xmm1 pslld $7,%xmm2 movdqa %xmm5,112-128(%rax) paddd %xmm8,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 96(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm13,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm4 pslld $26-21,%xmm2 pandn %xmm15,%xmm0 pand %xmm14,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm9,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm10,%xmm4 movdqa %xmm9,%xmm7 pslld $10,%xmm2 pxor %xmm9,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm10,%xmm8 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm8 paddd %xmm5,%xmm12 pxor %xmm2,%xmm7 paddd %xmm5,%xmm8 paddd %xmm7,%xmm8 leaq 256(%rbp),%rbp movd 32(%r8),%xmm5 movd 32(%r9),%xmm0 movd 32(%r10),%xmm1 movd 32(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm12,%xmm7 .byte 102,15,56,0,238 movdqa %xmm12,%xmm2 psrld $6,%xmm7 movdqa %xmm12,%xmm1 pslld $7,%xmm2 movdqa %xmm5,128-128(%rax) paddd %xmm15,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -128(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm12,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm3 pslld $26-21,%xmm2 pandn %xmm14,%xmm0 pand %xmm13,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm8,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm9,%xmm3 movdqa %xmm8,%xmm7 pslld $10,%xmm2 pxor %xmm8,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm9,%xmm15 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm15 paddd %xmm5,%xmm11 pxor %xmm2,%xmm7 paddd %xmm5,%xmm15 paddd %xmm7,%xmm15 movd 36(%r8),%xmm5 movd 36(%r9),%xmm0 movd 36(%r10),%xmm1 movd 36(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm11,%xmm7 movdqa %xmm11,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm11,%xmm1 pslld $7,%xmm2 movdqa %xmm5,144-128(%rax) paddd %xmm14,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -96(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm11,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm4 pslld $26-21,%xmm2 pandn %xmm13,%xmm0 pand %xmm12,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm15,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm8,%xmm4 movdqa %xmm15,%xmm7 pslld $10,%xmm2 pxor %xmm15,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm8,%xmm14 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm14 paddd %xmm5,%xmm10 pxor %xmm2,%xmm7 paddd %xmm5,%xmm14 paddd %xmm7,%xmm14 movd 40(%r8),%xmm5 movd 40(%r9),%xmm0 movd 40(%r10),%xmm1 movd 40(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm10,%xmm7 .byte 102,15,56,0,238 movdqa %xmm10,%xmm2 psrld $6,%xmm7 movdqa %xmm10,%xmm1 pslld $7,%xmm2 movdqa %xmm5,160-128(%rax) paddd %xmm13,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm10,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm3 pslld $26-21,%xmm2 pandn %xmm12,%xmm0 pand %xmm11,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm14,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm15,%xmm3 movdqa %xmm14,%xmm7 pslld $10,%xmm2 pxor %xmm14,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm15,%xmm13 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm13 paddd %xmm5,%xmm9 pxor %xmm2,%xmm7 paddd %xmm5,%xmm13 paddd %xmm7,%xmm13 movd 44(%r8),%xmm5 movd 44(%r9),%xmm0 movd 44(%r10),%xmm1 movd 44(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm9,%xmm7 movdqa %xmm9,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm9,%xmm1 pslld $7,%xmm2 movdqa %xmm5,176-128(%rax) paddd %xmm12,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -32(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm9,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm4 pslld $26-21,%xmm2 pandn %xmm11,%xmm0 pand %xmm10,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm13,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm14,%xmm4 movdqa %xmm13,%xmm7 pslld $10,%xmm2 pxor %xmm13,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm14,%xmm12 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm12 paddd %xmm5,%xmm8 pxor %xmm2,%xmm7 paddd %xmm5,%xmm12 paddd %xmm7,%xmm12 movd 48(%r8),%xmm5 movd 48(%r9),%xmm0 movd 48(%r10),%xmm1 movd 48(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm8,%xmm7 .byte 102,15,56,0,238 movdqa %xmm8,%xmm2 psrld $6,%xmm7 movdqa %xmm8,%xmm1 pslld $7,%xmm2 movdqa %xmm5,192-128(%rax) paddd %xmm11,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 0(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm8,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm3 pslld $26-21,%xmm2 pandn %xmm10,%xmm0 pand %xmm9,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm12,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm13,%xmm3 movdqa %xmm12,%xmm7 pslld $10,%xmm2 pxor %xmm12,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm13,%xmm11 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm11 paddd %xmm5,%xmm15 pxor %xmm2,%xmm7 paddd %xmm5,%xmm11 paddd %xmm7,%xmm11 movd 52(%r8),%xmm5 movd 52(%r9),%xmm0 movd 52(%r10),%xmm1 movd 52(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm15,%xmm7 movdqa %xmm15,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm15,%xmm1 pslld $7,%xmm2 movdqa %xmm5,208-128(%rax) paddd %xmm10,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 32(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm15,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm4 pslld $26-21,%xmm2 pandn %xmm9,%xmm0 pand %xmm8,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm11,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm12,%xmm4 movdqa %xmm11,%xmm7 pslld $10,%xmm2 pxor %xmm11,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm12,%xmm10 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm10 paddd %xmm5,%xmm14 pxor %xmm2,%xmm7 paddd %xmm5,%xmm10 paddd %xmm7,%xmm10 movd 56(%r8),%xmm5 movd 56(%r9),%xmm0 movd 56(%r10),%xmm1 movd 56(%r11),%xmm2 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm14,%xmm7 .byte 102,15,56,0,238 movdqa %xmm14,%xmm2 psrld $6,%xmm7 movdqa %xmm14,%xmm1 pslld $7,%xmm2 movdqa %xmm5,224-128(%rax) paddd %xmm9,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm14,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm3 pslld $26-21,%xmm2 pandn %xmm8,%xmm0 pand %xmm15,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm10,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm11,%xmm3 movdqa %xmm10,%xmm7 pslld $10,%xmm2 pxor %xmm10,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm11,%xmm9 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm9 paddd %xmm5,%xmm13 pxor %xmm2,%xmm7 paddd %xmm5,%xmm9 paddd %xmm7,%xmm9 movd 60(%r8),%xmm5 leaq 64(%r8),%r8 movd 60(%r9),%xmm0 leaq 64(%r9),%r9 movd 60(%r10),%xmm1 leaq 64(%r10),%r10 movd 60(%r11),%xmm2 leaq 64(%r11),%r11 punpckldq %xmm1,%xmm5 punpckldq %xmm2,%xmm0 punpckldq %xmm0,%xmm5 movdqa %xmm13,%xmm7 movdqa %xmm13,%xmm2 .byte 102,15,56,0,238 psrld $6,%xmm7 movdqa %xmm13,%xmm1 pslld $7,%xmm2 movdqa %xmm5,240-128(%rax) paddd %xmm8,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 96(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm13,%xmm0 prefetcht0 63(%r8) pxor %xmm2,%xmm7 movdqa %xmm13,%xmm4 pslld $26-21,%xmm2 pandn %xmm15,%xmm0 pand %xmm14,%xmm4 pxor %xmm1,%xmm7 prefetcht0 63(%r9) movdqa %xmm9,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm4,%xmm0 movdqa %xmm10,%xmm4 movdqa %xmm9,%xmm7 pslld $10,%xmm2 pxor %xmm9,%xmm4 prefetcht0 63(%r10) psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 prefetcht0 63(%r11) psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm10,%xmm8 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm8 paddd %xmm5,%xmm12 pxor %xmm2,%xmm7 paddd %xmm5,%xmm8 paddd %xmm7,%xmm8 leaq 256(%rbp),%rbp movdqu 0-128(%rax),%xmm5 movl $3,%ecx jmp .Loop_16_xx .align 32 .Loop_16_xx: movdqa 16-128(%rax),%xmm6 paddd 144-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 224-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm12,%xmm7 movdqa %xmm12,%xmm2 psrld $6,%xmm7 movdqa %xmm12,%xmm1 pslld $7,%xmm2 movdqa %xmm5,0-128(%rax) paddd %xmm15,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -128(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm12,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm3 pslld $26-21,%xmm2 pandn %xmm14,%xmm0 pand %xmm13,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm8,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm9,%xmm3 movdqa %xmm8,%xmm7 pslld $10,%xmm2 pxor %xmm8,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm9,%xmm15 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm15 paddd %xmm5,%xmm11 pxor %xmm2,%xmm7 paddd %xmm5,%xmm15 paddd %xmm7,%xmm15 movdqa 32-128(%rax),%xmm5 paddd 160-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 240-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm11,%xmm7 movdqa %xmm11,%xmm2 psrld $6,%xmm7 movdqa %xmm11,%xmm1 pslld $7,%xmm2 movdqa %xmm6,16-128(%rax) paddd %xmm14,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -96(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm11,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm4 pslld $26-21,%xmm2 pandn %xmm13,%xmm0 pand %xmm12,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm15,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm8,%xmm4 movdqa %xmm15,%xmm7 pslld $10,%xmm2 pxor %xmm15,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm8,%xmm14 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm14 paddd %xmm6,%xmm10 pxor %xmm2,%xmm7 paddd %xmm6,%xmm14 paddd %xmm7,%xmm14 movdqa 48-128(%rax),%xmm6 paddd 176-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 0-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm10,%xmm7 movdqa %xmm10,%xmm2 psrld $6,%xmm7 movdqa %xmm10,%xmm1 pslld $7,%xmm2 movdqa %xmm5,32-128(%rax) paddd %xmm13,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm10,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm3 pslld $26-21,%xmm2 pandn %xmm12,%xmm0 pand %xmm11,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm14,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm15,%xmm3 movdqa %xmm14,%xmm7 pslld $10,%xmm2 pxor %xmm14,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm15,%xmm13 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm13 paddd %xmm5,%xmm9 pxor %xmm2,%xmm7 paddd %xmm5,%xmm13 paddd %xmm7,%xmm13 movdqa 64-128(%rax),%xmm5 paddd 192-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 16-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm9,%xmm7 movdqa %xmm9,%xmm2 psrld $6,%xmm7 movdqa %xmm9,%xmm1 pslld $7,%xmm2 movdqa %xmm6,48-128(%rax) paddd %xmm12,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -32(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm9,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm4 pslld $26-21,%xmm2 pandn %xmm11,%xmm0 pand %xmm10,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm13,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm14,%xmm4 movdqa %xmm13,%xmm7 pslld $10,%xmm2 pxor %xmm13,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm14,%xmm12 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm12 paddd %xmm6,%xmm8 pxor %xmm2,%xmm7 paddd %xmm6,%xmm12 paddd %xmm7,%xmm12 movdqa 80-128(%rax),%xmm6 paddd 208-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 32-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm8,%xmm7 movdqa %xmm8,%xmm2 psrld $6,%xmm7 movdqa %xmm8,%xmm1 pslld $7,%xmm2 movdqa %xmm5,64-128(%rax) paddd %xmm11,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 0(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm8,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm3 pslld $26-21,%xmm2 pandn %xmm10,%xmm0 pand %xmm9,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm12,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm13,%xmm3 movdqa %xmm12,%xmm7 pslld $10,%xmm2 pxor %xmm12,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm13,%xmm11 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm11 paddd %xmm5,%xmm15 pxor %xmm2,%xmm7 paddd %xmm5,%xmm11 paddd %xmm7,%xmm11 movdqa 96-128(%rax),%xmm5 paddd 224-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 48-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm15,%xmm7 movdqa %xmm15,%xmm2 psrld $6,%xmm7 movdqa %xmm15,%xmm1 pslld $7,%xmm2 movdqa %xmm6,80-128(%rax) paddd %xmm10,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 32(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm15,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm4 pslld $26-21,%xmm2 pandn %xmm9,%xmm0 pand %xmm8,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm11,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm12,%xmm4 movdqa %xmm11,%xmm7 pslld $10,%xmm2 pxor %xmm11,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm12,%xmm10 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm10 paddd %xmm6,%xmm14 pxor %xmm2,%xmm7 paddd %xmm6,%xmm10 paddd %xmm7,%xmm10 movdqa 112-128(%rax),%xmm6 paddd 240-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 64-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm14,%xmm7 movdqa %xmm14,%xmm2 psrld $6,%xmm7 movdqa %xmm14,%xmm1 pslld $7,%xmm2 movdqa %xmm5,96-128(%rax) paddd %xmm9,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm14,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm3 pslld $26-21,%xmm2 pandn %xmm8,%xmm0 pand %xmm15,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm10,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm11,%xmm3 movdqa %xmm10,%xmm7 pslld $10,%xmm2 pxor %xmm10,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm11,%xmm9 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm9 paddd %xmm5,%xmm13 pxor %xmm2,%xmm7 paddd %xmm5,%xmm9 paddd %xmm7,%xmm9 movdqa 128-128(%rax),%xmm5 paddd 0-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 80-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm13,%xmm7 movdqa %xmm13,%xmm2 psrld $6,%xmm7 movdqa %xmm13,%xmm1 pslld $7,%xmm2 movdqa %xmm6,112-128(%rax) paddd %xmm8,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 96(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm13,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm4 pslld $26-21,%xmm2 pandn %xmm15,%xmm0 pand %xmm14,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm9,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm10,%xmm4 movdqa %xmm9,%xmm7 pslld $10,%xmm2 pxor %xmm9,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm10,%xmm8 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm8 paddd %xmm6,%xmm12 pxor %xmm2,%xmm7 paddd %xmm6,%xmm8 paddd %xmm7,%xmm8 leaq 256(%rbp),%rbp movdqa 144-128(%rax),%xmm6 paddd 16-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 96-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm12,%xmm7 movdqa %xmm12,%xmm2 psrld $6,%xmm7 movdqa %xmm12,%xmm1 pslld $7,%xmm2 movdqa %xmm5,128-128(%rax) paddd %xmm15,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -128(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm12,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm3 pslld $26-21,%xmm2 pandn %xmm14,%xmm0 pand %xmm13,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm8,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm9,%xmm3 movdqa %xmm8,%xmm7 pslld $10,%xmm2 pxor %xmm8,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm9,%xmm15 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm15 paddd %xmm5,%xmm11 pxor %xmm2,%xmm7 paddd %xmm5,%xmm15 paddd %xmm7,%xmm15 movdqa 160-128(%rax),%xmm5 paddd 32-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 112-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm11,%xmm7 movdqa %xmm11,%xmm2 psrld $6,%xmm7 movdqa %xmm11,%xmm1 pslld $7,%xmm2 movdqa %xmm6,144-128(%rax) paddd %xmm14,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -96(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm11,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm4 pslld $26-21,%xmm2 pandn %xmm13,%xmm0 pand %xmm12,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm15,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm8,%xmm4 movdqa %xmm15,%xmm7 pslld $10,%xmm2 pxor %xmm15,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm8,%xmm14 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm14 paddd %xmm6,%xmm10 pxor %xmm2,%xmm7 paddd %xmm6,%xmm14 paddd %xmm7,%xmm14 movdqa 176-128(%rax),%xmm6 paddd 48-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 128-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm10,%xmm7 movdqa %xmm10,%xmm2 psrld $6,%xmm7 movdqa %xmm10,%xmm1 pslld $7,%xmm2 movdqa %xmm5,160-128(%rax) paddd %xmm13,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm10,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm3 pslld $26-21,%xmm2 pandn %xmm12,%xmm0 pand %xmm11,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm14,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm15,%xmm3 movdqa %xmm14,%xmm7 pslld $10,%xmm2 pxor %xmm14,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm15,%xmm13 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm13 paddd %xmm5,%xmm9 pxor %xmm2,%xmm7 paddd %xmm5,%xmm13 paddd %xmm7,%xmm13 movdqa 192-128(%rax),%xmm5 paddd 64-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 144-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm9,%xmm7 movdqa %xmm9,%xmm2 psrld $6,%xmm7 movdqa %xmm9,%xmm1 pslld $7,%xmm2 movdqa %xmm6,176-128(%rax) paddd %xmm12,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd -32(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm9,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm4 pslld $26-21,%xmm2 pandn %xmm11,%xmm0 pand %xmm10,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm13,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm14,%xmm4 movdqa %xmm13,%xmm7 pslld $10,%xmm2 pxor %xmm13,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm14,%xmm12 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm12 paddd %xmm6,%xmm8 pxor %xmm2,%xmm7 paddd %xmm6,%xmm12 paddd %xmm7,%xmm12 movdqa 208-128(%rax),%xmm6 paddd 80-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 160-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm8,%xmm7 movdqa %xmm8,%xmm2 psrld $6,%xmm7 movdqa %xmm8,%xmm1 pslld $7,%xmm2 movdqa %xmm5,192-128(%rax) paddd %xmm11,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 0(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm8,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm8,%xmm3 pslld $26-21,%xmm2 pandn %xmm10,%xmm0 pand %xmm9,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm12,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm12,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm13,%xmm3 movdqa %xmm12,%xmm7 pslld $10,%xmm2 pxor %xmm12,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm13,%xmm11 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm11 paddd %xmm5,%xmm15 pxor %xmm2,%xmm7 paddd %xmm5,%xmm11 paddd %xmm7,%xmm11 movdqa 224-128(%rax),%xmm5 paddd 96-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 176-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm15,%xmm7 movdqa %xmm15,%xmm2 psrld $6,%xmm7 movdqa %xmm15,%xmm1 pslld $7,%xmm2 movdqa %xmm6,208-128(%rax) paddd %xmm10,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 32(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm15,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm15,%xmm4 pslld $26-21,%xmm2 pandn %xmm9,%xmm0 pand %xmm8,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm11,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm11,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm12,%xmm4 movdqa %xmm11,%xmm7 pslld $10,%xmm2 pxor %xmm11,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm12,%xmm10 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm10 paddd %xmm6,%xmm14 pxor %xmm2,%xmm7 paddd %xmm6,%xmm10 paddd %xmm7,%xmm10 movdqa 240-128(%rax),%xmm6 paddd 112-128(%rax),%xmm5 movdqa %xmm6,%xmm7 movdqa %xmm6,%xmm1 psrld $3,%xmm7 movdqa %xmm6,%xmm2 psrld $7,%xmm1 movdqa 192-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm3 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm3,%xmm1 psrld $17,%xmm3 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 psrld $19-17,%xmm3 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm3,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm5 movdqa %xmm14,%xmm7 movdqa %xmm14,%xmm2 psrld $6,%xmm7 movdqa %xmm14,%xmm1 pslld $7,%xmm2 movdqa %xmm5,224-128(%rax) paddd %xmm9,%xmm5 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 64(%rbp),%xmm5 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm14,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm14,%xmm3 pslld $26-21,%xmm2 pandn %xmm8,%xmm0 pand %xmm15,%xmm3 pxor %xmm1,%xmm7 movdqa %xmm10,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm10,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm5 pxor %xmm3,%xmm0 movdqa %xmm11,%xmm3 movdqa %xmm10,%xmm7 pslld $10,%xmm2 pxor %xmm10,%xmm3 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm5 pslld $19-10,%xmm2 pand %xmm3,%xmm4 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm11,%xmm9 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm4,%xmm9 paddd %xmm5,%xmm13 pxor %xmm2,%xmm7 paddd %xmm5,%xmm9 paddd %xmm7,%xmm9 movdqa 0-128(%rax),%xmm5 paddd 128-128(%rax),%xmm6 movdqa %xmm5,%xmm7 movdqa %xmm5,%xmm1 psrld $3,%xmm7 movdqa %xmm5,%xmm2 psrld $7,%xmm1 movdqa 208-128(%rax),%xmm0 pslld $14,%xmm2 pxor %xmm1,%xmm7 psrld $18-7,%xmm1 movdqa %xmm0,%xmm4 pxor %xmm2,%xmm7 pslld $25-14,%xmm2 pxor %xmm1,%xmm7 psrld $10,%xmm0 movdqa %xmm4,%xmm1 psrld $17,%xmm4 pxor %xmm2,%xmm7 pslld $13,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 psrld $19-17,%xmm4 pxor %xmm1,%xmm0 pslld $15-13,%xmm1 pxor %xmm4,%xmm0 pxor %xmm1,%xmm0 paddd %xmm0,%xmm6 movdqa %xmm13,%xmm7 movdqa %xmm13,%xmm2 psrld $6,%xmm7 movdqa %xmm13,%xmm1 pslld $7,%xmm2 movdqa %xmm6,240-128(%rax) paddd %xmm8,%xmm6 psrld $11,%xmm1 pxor %xmm2,%xmm7 pslld $21-7,%xmm2 paddd 96(%rbp),%xmm6 pxor %xmm1,%xmm7 psrld $25-11,%xmm1 movdqa %xmm13,%xmm0 pxor %xmm2,%xmm7 movdqa %xmm13,%xmm4 pslld $26-21,%xmm2 pandn %xmm15,%xmm0 pand %xmm14,%xmm4 pxor %xmm1,%xmm7 movdqa %xmm9,%xmm1 pxor %xmm2,%xmm7 movdqa %xmm9,%xmm2 psrld $2,%xmm1 paddd %xmm7,%xmm6 pxor %xmm4,%xmm0 movdqa %xmm10,%xmm4 movdqa %xmm9,%xmm7 pslld $10,%xmm2 pxor %xmm9,%xmm4 psrld $13,%xmm7 pxor %xmm2,%xmm1 paddd %xmm0,%xmm6 pslld $19-10,%xmm2 pand %xmm4,%xmm3 pxor %xmm7,%xmm1 psrld $22-13,%xmm7 pxor %xmm2,%xmm1 movdqa %xmm10,%xmm8 pslld $30-19,%xmm2 pxor %xmm1,%xmm7 pxor %xmm3,%xmm8 paddd %xmm6,%xmm12 pxor %xmm2,%xmm7 paddd %xmm6,%xmm8 paddd %xmm7,%xmm8 leaq 256(%rbp),%rbp decl %ecx jnz .Loop_16_xx movl $1,%ecx leaq K256+128(%rip),%rbp movdqa (%rbx),%xmm7 cmpl 0(%rbx),%ecx pxor %xmm0,%xmm0 cmovgeq %rbp,%r8 cmpl 4(%rbx),%ecx movdqa %xmm7,%xmm6 cmovgeq %rbp,%r9 cmpl 8(%rbx),%ecx pcmpgtd %xmm0,%xmm6 cmovgeq %rbp,%r10 cmpl 12(%rbx),%ecx paddd %xmm6,%xmm7 cmovgeq %rbp,%r11 movdqu 0-128(%rdi),%xmm0 pand %xmm6,%xmm8 movdqu 32-128(%rdi),%xmm1 pand %xmm6,%xmm9 movdqu 64-128(%rdi),%xmm2 pand %xmm6,%xmm10 movdqu 96-128(%rdi),%xmm5 pand %xmm6,%xmm11 paddd %xmm0,%xmm8 movdqu 128-128(%rdi),%xmm0 pand %xmm6,%xmm12 paddd %xmm1,%xmm9 movdqu 160-128(%rdi),%xmm1 pand %xmm6,%xmm13 paddd %xmm2,%xmm10 movdqu 192-128(%rdi),%xmm2 pand %xmm6,%xmm14 paddd %xmm5,%xmm11 movdqu 224-128(%rdi),%xmm5 pand %xmm6,%xmm15 paddd %xmm0,%xmm12 paddd %xmm1,%xmm13 movdqu %xmm8,0-128(%rdi) paddd %xmm2,%xmm14 movdqu %xmm9,32-128(%rdi) paddd %xmm5,%xmm15 movdqu %xmm10,64-128(%rdi) movdqu %xmm11,96-128(%rdi) movdqu %xmm12,128-128(%rdi) movdqu %xmm13,160-128(%rdi) movdqu %xmm14,192-128(%rdi) movdqu %xmm15,224-128(%rdi) movdqa %xmm7,(%rbx) movdqa .Lpbswap(%rip),%xmm6 decl %edx jnz .Loop movl 280(%rsp),%edx leaq 16(%rdi),%rdi leaq 64(%rsi),%rsi decl %edx jnz .Loop_grande .Ldone: movq 272(%rsp),%rax .cfi_def_cfa %rax,8 movq -16(%rax),%rbp .cfi_restore %rbp movq -8(%rax),%rbx .cfi_restore %rbx leaq (%rax),%rsp .cfi_def_cfa_register %rsp .Lepilogue: .byte 0xf3,0xc3 .cfi_endproc .size sha256_multi_block,.-sha256_multi_block .type sha256_multi_block_shaext,@function .align 32 sha256_multi_block_shaext: .cfi_startproc _shaext_shortcut: movq %rsp,%rax .cfi_def_cfa_register %rax pushq %rbx .cfi_offset %rbx,-16 pushq %rbp .cfi_offset %rbp,-24 subq $288,%rsp shll $1,%edx andq $-256,%rsp leaq 128(%rdi),%rdi movq %rax,272(%rsp) .Lbody_shaext: leaq 256(%rsp),%rbx leaq K256_shaext+128(%rip),%rbp .Loop_grande_shaext: movl %edx,280(%rsp) xorl %edx,%edx movq 0(%rsi),%r8 movl 8(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,0(%rbx) cmovleq %rsp,%r8 movq 16(%rsi),%r9 movl 24(%rsi),%ecx cmpl %edx,%ecx cmovgl %ecx,%edx testl %ecx,%ecx movl %ecx,4(%rbx) cmovleq %rsp,%r9 testl %edx,%edx jz .Ldone_shaext movq 0-128(%rdi),%xmm12 movq 32-128(%rdi),%xmm4 movq 64-128(%rdi),%xmm13 movq 96-128(%rdi),%xmm5 movq 128-128(%rdi),%xmm8 movq 160-128(%rdi),%xmm9 movq 192-128(%rdi),%xmm10 movq 224-128(%rdi),%xmm11 punpckldq %xmm4,%xmm12 punpckldq %xmm5,%xmm13 punpckldq %xmm9,%xmm8 punpckldq %xmm11,%xmm10 movdqa K256_shaext-16(%rip),%xmm3 movdqa %xmm12,%xmm14 movdqa %xmm13,%xmm15 punpcklqdq %xmm8,%xmm12 punpcklqdq %xmm10,%xmm13 punpckhqdq %xmm8,%xmm14 punpckhqdq %xmm10,%xmm15 pshufd $27,%xmm12,%xmm12 pshufd $27,%xmm13,%xmm13 pshufd $27,%xmm14,%xmm14 pshufd $27,%xmm15,%xmm15 jmp .Loop_shaext .align 32 .Loop_shaext: movdqu 0(%r8),%xmm4 movdqu 0(%r9),%xmm8 movdqu 16(%r8),%xmm5 movdqu 16(%r9),%xmm9 movdqu 32(%r8),%xmm6 .byte 102,15,56,0,227 movdqu 32(%r9),%xmm10 .byte 102,68,15,56,0,195 movdqu 48(%r8),%xmm7 leaq 64(%r8),%r8 movdqu 48(%r9),%xmm11 leaq 64(%r9),%r9 movdqa 0-128(%rbp),%xmm0 .byte 102,15,56,0,235 paddd %xmm4,%xmm0 pxor %xmm12,%xmm4 movdqa %xmm0,%xmm1 movdqa 0-128(%rbp),%xmm2 .byte 102,68,15,56,0,203 paddd %xmm8,%xmm2 movdqa %xmm13,80(%rsp) .byte 69,15,56,203,236 pxor %xmm14,%xmm8 movdqa %xmm2,%xmm0 movdqa %xmm15,112(%rsp) .byte 69,15,56,203,254 pshufd $0x0e,%xmm1,%xmm0 pxor %xmm12,%xmm4 movdqa %xmm12,64(%rsp) .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 pxor %xmm14,%xmm8 movdqa %xmm14,96(%rsp) movdqa 16-128(%rbp),%xmm1 paddd %xmm5,%xmm1 .byte 102,15,56,0,243 .byte 69,15,56,203,247 movdqa %xmm1,%xmm0 movdqa 16-128(%rbp),%xmm2 paddd %xmm9,%xmm2 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 prefetcht0 127(%r8) .byte 102,15,56,0,251 .byte 102,68,15,56,0,211 prefetcht0 127(%r9) .byte 69,15,56,203,254 pshufd $0x0e,%xmm1,%xmm0 .byte 102,68,15,56,0,219 .byte 15,56,204,229 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 32-128(%rbp),%xmm1 paddd %xmm6,%xmm1 .byte 69,15,56,203,247 movdqa %xmm1,%xmm0 movdqa 32-128(%rbp),%xmm2 paddd %xmm10,%xmm2 .byte 69,15,56,203,236 .byte 69,15,56,204,193 movdqa %xmm2,%xmm0 movdqa %xmm7,%xmm3 .byte 69,15,56,203,254 pshufd $0x0e,%xmm1,%xmm0 .byte 102,15,58,15,222,4 paddd %xmm3,%xmm4 movdqa %xmm11,%xmm3 .byte 102,65,15,58,15,218,4 .byte 15,56,204,238 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 48-128(%rbp),%xmm1 paddd %xmm7,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,202 movdqa %xmm1,%xmm0 movdqa 48-128(%rbp),%xmm2 paddd %xmm3,%xmm8 paddd %xmm11,%xmm2 .byte 15,56,205,231 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm4,%xmm3 .byte 102,15,58,15,223,4 .byte 69,15,56,203,254 .byte 69,15,56,205,195 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm5 movdqa %xmm8,%xmm3 .byte 102,65,15,58,15,219,4 .byte 15,56,204,247 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 64-128(%rbp),%xmm1 paddd %xmm4,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,211 movdqa %xmm1,%xmm0 movdqa 64-128(%rbp),%xmm2 paddd %xmm3,%xmm9 paddd %xmm8,%xmm2 .byte 15,56,205,236 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm5,%xmm3 .byte 102,15,58,15,220,4 .byte 69,15,56,203,254 .byte 69,15,56,205,200 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm6 movdqa %xmm9,%xmm3 .byte 102,65,15,58,15,216,4 .byte 15,56,204,252 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 80-128(%rbp),%xmm1 paddd %xmm5,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,216 movdqa %xmm1,%xmm0 movdqa 80-128(%rbp),%xmm2 paddd %xmm3,%xmm10 paddd %xmm9,%xmm2 .byte 15,56,205,245 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm6,%xmm3 .byte 102,15,58,15,221,4 .byte 69,15,56,203,254 .byte 69,15,56,205,209 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm7 movdqa %xmm10,%xmm3 .byte 102,65,15,58,15,217,4 .byte 15,56,204,229 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 96-128(%rbp),%xmm1 paddd %xmm6,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,193 movdqa %xmm1,%xmm0 movdqa 96-128(%rbp),%xmm2 paddd %xmm3,%xmm11 paddd %xmm10,%xmm2 .byte 15,56,205,254 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm7,%xmm3 .byte 102,15,58,15,222,4 .byte 69,15,56,203,254 .byte 69,15,56,205,218 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm4 movdqa %xmm11,%xmm3 .byte 102,65,15,58,15,218,4 .byte 15,56,204,238 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 112-128(%rbp),%xmm1 paddd %xmm7,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,202 movdqa %xmm1,%xmm0 movdqa 112-128(%rbp),%xmm2 paddd %xmm3,%xmm8 paddd %xmm11,%xmm2 .byte 15,56,205,231 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm4,%xmm3 .byte 102,15,58,15,223,4 .byte 69,15,56,203,254 .byte 69,15,56,205,195 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm5 movdqa %xmm8,%xmm3 .byte 102,65,15,58,15,219,4 .byte 15,56,204,247 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 128-128(%rbp),%xmm1 paddd %xmm4,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,211 movdqa %xmm1,%xmm0 movdqa 128-128(%rbp),%xmm2 paddd %xmm3,%xmm9 paddd %xmm8,%xmm2 .byte 15,56,205,236 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm5,%xmm3 .byte 102,15,58,15,220,4 .byte 69,15,56,203,254 .byte 69,15,56,205,200 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm6 movdqa %xmm9,%xmm3 .byte 102,65,15,58,15,216,4 .byte 15,56,204,252 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 144-128(%rbp),%xmm1 paddd %xmm5,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,216 movdqa %xmm1,%xmm0 movdqa 144-128(%rbp),%xmm2 paddd %xmm3,%xmm10 paddd %xmm9,%xmm2 .byte 15,56,205,245 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm6,%xmm3 .byte 102,15,58,15,221,4 .byte 69,15,56,203,254 .byte 69,15,56,205,209 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm7 movdqa %xmm10,%xmm3 .byte 102,65,15,58,15,217,4 .byte 15,56,204,229 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 160-128(%rbp),%xmm1 paddd %xmm6,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,193 movdqa %xmm1,%xmm0 movdqa 160-128(%rbp),%xmm2 paddd %xmm3,%xmm11 paddd %xmm10,%xmm2 .byte 15,56,205,254 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm7,%xmm3 .byte 102,15,58,15,222,4 .byte 69,15,56,203,254 .byte 69,15,56,205,218 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm4 movdqa %xmm11,%xmm3 .byte 102,65,15,58,15,218,4 .byte 15,56,204,238 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 176-128(%rbp),%xmm1 paddd %xmm7,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,202 movdqa %xmm1,%xmm0 movdqa 176-128(%rbp),%xmm2 paddd %xmm3,%xmm8 paddd %xmm11,%xmm2 .byte 15,56,205,231 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm4,%xmm3 .byte 102,15,58,15,223,4 .byte 69,15,56,203,254 .byte 69,15,56,205,195 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm5 movdqa %xmm8,%xmm3 .byte 102,65,15,58,15,219,4 .byte 15,56,204,247 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 192-128(%rbp),%xmm1 paddd %xmm4,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,211 movdqa %xmm1,%xmm0 movdqa 192-128(%rbp),%xmm2 paddd %xmm3,%xmm9 paddd %xmm8,%xmm2 .byte 15,56,205,236 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm5,%xmm3 .byte 102,15,58,15,220,4 .byte 69,15,56,203,254 .byte 69,15,56,205,200 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm6 movdqa %xmm9,%xmm3 .byte 102,65,15,58,15,216,4 .byte 15,56,204,252 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 208-128(%rbp),%xmm1 paddd %xmm5,%xmm1 .byte 69,15,56,203,247 .byte 69,15,56,204,216 movdqa %xmm1,%xmm0 movdqa 208-128(%rbp),%xmm2 paddd %xmm3,%xmm10 paddd %xmm9,%xmm2 .byte 15,56,205,245 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movdqa %xmm6,%xmm3 .byte 102,15,58,15,221,4 .byte 69,15,56,203,254 .byte 69,15,56,205,209 pshufd $0x0e,%xmm1,%xmm0 paddd %xmm3,%xmm7 movdqa %xmm10,%xmm3 .byte 102,65,15,58,15,217,4 nop .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 224-128(%rbp),%xmm1 paddd %xmm6,%xmm1 .byte 69,15,56,203,247 movdqa %xmm1,%xmm0 movdqa 224-128(%rbp),%xmm2 paddd %xmm3,%xmm11 paddd %xmm10,%xmm2 .byte 15,56,205,254 nop .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 movl $1,%ecx pxor %xmm6,%xmm6 .byte 69,15,56,203,254 .byte 69,15,56,205,218 pshufd $0x0e,%xmm1,%xmm0 movdqa 240-128(%rbp),%xmm1 paddd %xmm7,%xmm1 movq (%rbx),%xmm7 nop .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 movdqa 240-128(%rbp),%xmm2 paddd %xmm11,%xmm2 .byte 69,15,56,203,247 movdqa %xmm1,%xmm0 cmpl 0(%rbx),%ecx cmovgeq %rsp,%r8 cmpl 4(%rbx),%ecx cmovgeq %rsp,%r9 pshufd $0x00,%xmm7,%xmm9 .byte 69,15,56,203,236 movdqa %xmm2,%xmm0 pshufd $0x55,%xmm7,%xmm10 movdqa %xmm7,%xmm11 .byte 69,15,56,203,254 pshufd $0x0e,%xmm1,%xmm0 pcmpgtd %xmm6,%xmm9 pcmpgtd %xmm6,%xmm10 .byte 69,15,56,203,229 pshufd $0x0e,%xmm2,%xmm0 pcmpgtd %xmm6,%xmm11 movdqa K256_shaext-16(%rip),%xmm3 .byte 69,15,56,203,247 pand %xmm9,%xmm13 pand %xmm10,%xmm15 pand %xmm9,%xmm12 pand %xmm10,%xmm14 paddd %xmm7,%xmm11 paddd 80(%rsp),%xmm13 paddd 112(%rsp),%xmm15 paddd 64(%rsp),%xmm12 paddd 96(%rsp),%xmm14 movq %xmm11,(%rbx) decl %edx jnz .Loop_shaext movl 280(%rsp),%edx pshufd $27,%xmm12,%xmm12 pshufd $27,%xmm13,%xmm13 pshufd $27,%xmm14,%xmm14 pshufd $27,%xmm15,%xmm15 movdqa %xmm12,%xmm5 movdqa %xmm13,%xmm6 punpckldq %xmm14,%xmm12 punpckhdq %xmm14,%xmm5 punpckldq %xmm15,%xmm13 punpckhdq %xmm15,%xmm6 movq %xmm12,0-128(%rdi) psrldq $8,%xmm12 movq %xmm5,128-128(%rdi) psrldq $8,%xmm5 movq %xmm12,32-128(%rdi) movq %xmm5,160-128(%rdi) movq %xmm13,64-128(%rdi) psrldq $8,%xmm13 movq %xmm6,192-128(%rdi) psrldq $8,%xmm6 movq %xmm13,96-128(%rdi) movq %xmm6,224-128(%rdi) leaq 8(%rdi),%rdi leaq 32(%rsi),%rsi decl %edx jnz .Loop_grande_shaext .Ldone_shaext: movq -16(%rax),%rbp .cfi_restore %rbp movq -8(%rax),%rbx .cfi_restore %rbx leaq (%rax),%rsp .cfi_def_cfa_register %rsp .Lepilogue_shaext: .byte 0xf3,0xc3 .cfi_endproc .size sha256_multi_block_shaext,.-sha256_multi_block_shaext .align 256 K256: .long 1116352408,1116352408,1116352408,1116352408 .long 1116352408,1116352408,1116352408,1116352408 .long 1899447441,1899447441,1899447441,1899447441 .long 1899447441,1899447441,1899447441,1899447441 .long 3049323471,3049323471,3049323471,3049323471 .long 3049323471,3049323471,3049323471,3049323471 .long 3921009573,3921009573,3921009573,3921009573 .long 3921009573,3921009573,3921009573,3921009573 .long 961987163,961987163,961987163,961987163 .long 961987163,961987163,961987163,961987163 .long 1508970993,1508970993,1508970993,1508970993 .long 1508970993,1508970993,1508970993,1508970993 .long 2453635748,2453635748,2453635748,2453635748 .long 2453635748,2453635748,2453635748,2453635748 .long 2870763221,2870763221,2870763221,2870763221 .long 2870763221,2870763221,2870763221,2870763221 .long 3624381080,3624381080,3624381080,3624381080 .long 3624381080,3624381080,3624381080,3624381080 .long 310598401,310598401,310598401,310598401 .long 310598401,310598401,310598401,310598401 .long 607225278,607225278,607225278,607225278 .long 607225278,607225278,607225278,607225278 .long 1426881987,1426881987,1426881987,1426881987 .long 1426881987,1426881987,1426881987,1426881987 .long 1925078388,1925078388,1925078388,1925078388 .long 1925078388,1925078388,1925078388,1925078388 .long 2162078206,2162078206,2162078206,2162078206 .long 2162078206,2162078206,2162078206,2162078206 .long 2614888103,2614888103,2614888103,2614888103 .long 2614888103,2614888103,2614888103,2614888103 .long 3248222580,3248222580,3248222580,3248222580 .long 3248222580,3248222580,3248222580,3248222580 .long 3835390401,3835390401,3835390401,3835390401 .long 3835390401,3835390401,3835390401,3835390401 .long 4022224774,4022224774,4022224774,4022224774 .long 4022224774,4022224774,4022224774,4022224774 .long 264347078,264347078,264347078,264347078 .long 264347078,264347078,264347078,264347078 .long 604807628,604807628,604807628,604807628 .long 604807628,604807628,604807628,604807628 .long 770255983,770255983,770255983,770255983 .long 770255983,770255983,770255983,770255983 .long 1249150122,1249150122,1249150122,1249150122 .long 1249150122,1249150122,1249150122,1249150122 .long 1555081692,1555081692,1555081692,1555081692 .long 1555081692,1555081692,1555081692,1555081692 .long 1996064986,1996064986,1996064986,1996064986 .long 1996064986,1996064986,1996064986,1996064986 .long 2554220882,2554220882,2554220882,2554220882 .long 2554220882,2554220882,2554220882,2554220882 .long 2821834349,2821834349,2821834349,2821834349 .long 2821834349,2821834349,2821834349,2821834349 .long 2952996808,2952996808,2952996808,2952996808 .long 2952996808,2952996808,2952996808,2952996808 .long 3210313671,3210313671,3210313671,3210313671 .long 3210313671,3210313671,3210313671,3210313671 .long 3336571891,3336571891,3336571891,3336571891 .long 3336571891,3336571891,3336571891,3336571891 .long 3584528711,3584528711,3584528711,3584528711 .long 3584528711,3584528711,3584528711,3584528711 .long 113926993,113926993,113926993,113926993 .long 113926993,113926993,113926993,113926993 .long 338241895,338241895,338241895,338241895 .long 338241895,338241895,338241895,338241895 .long 666307205,666307205,666307205,666307205 .long 666307205,666307205,666307205,666307205 .long 773529912,773529912,773529912,773529912 .long 773529912,773529912,773529912,773529912 .long 1294757372,1294757372,1294757372,1294757372 .long 1294757372,1294757372,1294757372,1294757372 .long 1396182291,1396182291,1396182291,1396182291 .long 1396182291,1396182291,1396182291,1396182291 .long 1695183700,1695183700,1695183700,1695183700 .long 1695183700,1695183700,1695183700,1695183700 .long 1986661051,1986661051,1986661051,1986661051 .long 1986661051,1986661051,1986661051,1986661051 .long 2177026350,2177026350,2177026350,2177026350 .long 2177026350,2177026350,2177026350,2177026350 .long 2456956037,2456956037,2456956037,2456956037 .long 2456956037,2456956037,2456956037,2456956037 .long 2730485921,2730485921,2730485921,2730485921 .long 2730485921,2730485921,2730485921,2730485921 .long 2820302411,2820302411,2820302411,2820302411 .long 2820302411,2820302411,2820302411,2820302411 .long 3259730800,3259730800,3259730800,3259730800 .long 3259730800,3259730800,3259730800,3259730800 .long 3345764771,3345764771,3345764771,3345764771 .long 3345764771,3345764771,3345764771,3345764771 .long 3516065817,3516065817,3516065817,3516065817 .long 3516065817,3516065817,3516065817,3516065817 .long 3600352804,3600352804,3600352804,3600352804 .long 3600352804,3600352804,3600352804,3600352804 .long 4094571909,4094571909,4094571909,4094571909 .long 4094571909,4094571909,4094571909,4094571909 .long 275423344,275423344,275423344,275423344 .long 275423344,275423344,275423344,275423344 .long 430227734,430227734,430227734,430227734 .long 430227734,430227734,430227734,430227734 .long 506948616,506948616,506948616,506948616 .long 506948616,506948616,506948616,506948616 .long 659060556,659060556,659060556,659060556 .long 659060556,659060556,659060556,659060556 .long 883997877,883997877,883997877,883997877 .long 883997877,883997877,883997877,883997877 .long 958139571,958139571,958139571,958139571 .long 958139571,958139571,958139571,958139571 .long 1322822218,1322822218,1322822218,1322822218 .long 1322822218,1322822218,1322822218,1322822218 .long 1537002063,1537002063,1537002063,1537002063 .long 1537002063,1537002063,1537002063,1537002063 .long 1747873779,1747873779,1747873779,1747873779 .long 1747873779,1747873779,1747873779,1747873779 .long 1955562222,1955562222,1955562222,1955562222 .long 1955562222,1955562222,1955562222,1955562222 .long 2024104815,2024104815,2024104815,2024104815 .long 2024104815,2024104815,2024104815,2024104815 .long 2227730452,2227730452,2227730452,2227730452 .long 2227730452,2227730452,2227730452,2227730452 .long 2361852424,2361852424,2361852424,2361852424 .long 2361852424,2361852424,2361852424,2361852424 .long 2428436474,2428436474,2428436474,2428436474 .long 2428436474,2428436474,2428436474,2428436474 .long 2756734187,2756734187,2756734187,2756734187 .long 2756734187,2756734187,2756734187,2756734187 .long 3204031479,3204031479,3204031479,3204031479 .long 3204031479,3204031479,3204031479,3204031479 .long 3329325298,3329325298,3329325298,3329325298 .long 3329325298,3329325298,3329325298,3329325298 .Lpbswap: .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f K256_shaext: .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 .byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0