Function at 0x1400ac56c
Capabilities:
Hash data using sha256 via x86 extensions

Disassembly:
mov rax, rsp
sub rsp, 0x68
movaps xmmword [rax - 0x18], xmm6
mov r10, rdx
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rsp], xmm11
movdqu xmm2, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmm0, xmm2
punpcklqdq xmm0, xmm1
punpckhqdq xmm2, xmm1
pshufd xmm10, xmm0, 0x1b
pshufd xmm11, xmm2, 0x1b
cmp r8, 0x40
jb 0x1400ac8dc
mov rdx, r8
shr rdx, 6
imul rax, rdx, 0xffffffffffffffc0
add r8, rax
movdqu xmm1, xmmword [r10]
movdqu xmm2, xmmword [r10 + 0x10]
pshufb xmm1, xmmword [0x1400c8340]
pshufb xmm2, xmmword [0x1400c8340]
movdqu xmm3, xmmword [r10 + 0x20]
movdqu xmm4, xmmword [r10 + 0x30]
lea r10, [r10 + 0x40]
pshufb xmm3, xmmword [0x1400c8340]
pshufb xmm4, xmmword [0x1400c8340]
movdqa xmm0, xmmword [0x1400c8200]
movdqa xmm9, xmm10
paddd xmm0, xmm1
movdqa xmm5, xmm4
sha256msg1 xmm1, xmm2
palignr xmm5, xmm3, 4
movdqa xmm8, xmm11
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
paddd xmm5, xmm1
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8210]
paddd xmm0, xmm2
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8220]
paddd xmm0, xmm3
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8230]
paddd xmm0, xmm4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8240]
sha256msg2 xmm5, xmm4
paddd xmm0, xmm5
movdqa xmm1, xmm5
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8250]
sha256msg1 xmm2, xmm3
sha256msg1 xmm3, xmm4
palignr xmm1, xmm4, 4
sha256msg1 xmm4, xmm5
paddd xmm1, xmm2
sha256msg2 xmm1, xmm5
paddd xmm0, xmm1
movdqa xmm2, xmm1
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8260]
palignr xmm2, xmm5, 4
paddd xmm2, xmm3
sha256msg2 xmm2, xmm1
paddd xmm0, xmm2
movdqa xmm3, xmm2
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8270]
palignr xmm3, xmm1, 4
paddd xmm3, xmm4
sha256msg2 xmm3, xmm2
paddd xmm0, xmm3
movdqa xmm4, xmm3
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8280]
palignr xmm4, xmm2, 4
sha256msg1 xmm5, xmm1
paddd xmm4, xmm5
sha256msg2 xmm4, xmm3
paddd xmm0, xmm4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c8290]
movdqa xmm5, xmm4
palignr xmm5, xmm3, 4
sha256msg1 xmm1, xmm2
paddd xmm5, xmm1
sha256msg1 xmm2, xmm3
sha256msg2 xmm5, xmm4
paddd xmm0, xmm5
movdqa xmm6, xmm5
palignr xmm6, xmm4, 4
paddd xmm6, xmm2
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c82a0]
sha256msg2 xmm6, xmm5
paddd xmm0, xmm6
movdqa xmm7, xmm6
palignr xmm7, xmm5, 4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c82b0]
sha256msg1 xmm3, xmm4
paddd xmm7, xmm3
sha256msg2 xmm7, xmm6
paddd xmm0, xmm7
movdqa xmm3, xmm7
palignr xmm3, xmm6, 4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c82c0]
sha256msg1 xmm4, xmm5
paddd xmm3, xmm4
sha256msg2 xmm3, xmm7
paddd xmm0, xmm3
movdqa xmm2, xmm3
palignr xmm2, xmm7, 4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c82d0]
sha256msg1 xmm5, xmm6
paddd xmm2, xmm5
sha256msg2 xmm2, xmm3
paddd xmm0, xmm2
movdqa xmm1, xmm2
palignr xmm1, xmm3, 4
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmmword [0x1400c82e0]
sha256msg1 xmm6, xmm7
paddd xmm1, xmm6
sha256msg2 xmm1, xmm2
paddd xmm0, xmm1
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
sha256rnds2 xmm10, xmm8, xmm0
movdqa xmm0, xmm1
palignr xmm0, xmm2, 4
sha256msg1 xmm7, xmm3
paddd xmm0, xmm7
sha256msg2 xmm0, xmm1
paddd xmm0, xmmword [0x1400c82f0]
sha256rnds2 xmm8, xmm10, xmm0
pshufd xmm0, xmm0, 0xe
paddd xmm11, xmm8
sha256rnds2 xmm10, xmm8, xmm0
paddd xmm10, xmm9
sub rdx, 1
jne 0x1400ac5cb
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm9, xmmword [rsp + 0x20]
pshufd xmm2, xmm10, 0x1b
movaps xmm10, xmmword [rsp + 0x10]
movdqa xmm0, xmm2
pshufd xmm1, xmm11, 0x1b
movaps xmm11, xmmword [rsp]
punpcklqdq xmm0, xmm1
movdqu xmmword [rcx], xmm0
punpckhqdq xmm2, xmm1
movdqu xmmword [rcx + 0x10], xmm2
mov qword [r9], r8
add rsp, 0x68
ret