Function at 0x1400b5ec0
Capabilities:
Hash data using sha512

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x168
mov r10, rdx
mov rbx, rcx
mov rdx, r8
mov r8, r9
cmp r10, 0x40
ja 0x1400b5fe8
movabs rax, 0x5be0cd19137e2179
lea rsi, [rsp + 0x80]
movabs rdi, 0xbb67ae8584caa73b
movabs rbp, 0x3c6ef372fe94f82b
mov qword [rsp + 0xb8], rax
mov rax, r10
movabs rcx, 0x6a09e667f3bcc908
pxor xmm0, xmm0
mov qword [rsp + 0x88], rdi
or rax, 0x1010000
movabs rdi, 0xa54ff53a5f1d36f1
mov qword [rsp + 0x90], rbp
xor rax, rcx
mov rcx, rsi
movabs rbp, 0x510e527fade682d1
mov qword [rsp + 0x98], rdi
movabs rdi, 0x9b05688c2b3e6c1f
mov qword [rsp + 0xa0], rbp
movabs rbp, 0x1f83d9abfb41bd6b
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rbp
mov qword [rsp + 0x80], rax
mov dword [rsp + 0xd0], r10d
mov qword [rsp + 0x1b8], r10
mov qword [rsp + 0x150], 4
movaps xmmword [rsp + 0xc0], xmm0
call fcn.1400b5ca0
mov r8, qword [rsp + 0x1b8]
mov rdx, rbx
mov rcx, rsi
call fcn.1400b5e00
nop
add rsp, 0x168
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movabs rdi, 0xbb67ae8584caa73b
lea rax, [rsp + 0x80]
pxor xmm0, xmm0
movabs rbp, 0x3c6ef372fe94f82b
mov qword [rsp + 0x88], rdi
mov rcx, rax
movabs rdi, 0xa54ff53a5f1d36f1
mov qword [rsp + 0x98], rdi
movabs rdi, 0x9b05688c2b3e6c1f
mov qword [rsp + 0x90], rbp
movabs rbp, 0x510e527fade682d1
mov qword [rsp + 0xa8], rdi
movabs rdi, 0x5be0cd19137e2179
mov qword [rsp + 0xa0], rbp
movabs rbp, 0x1f83d9abfb41bd6b
mov qword [rsp + 0xb8], rdi
movabs rdi, 0x6a09e667f2bdc948
mov qword [rsp + 0xb0], rbp
lea rbp, [rsp + 0x40]
mov qword [rsp + 0x80], rdi
mov rdi, rax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0xd0], r10d
mov qword [rsp + 0x1b8], r10
movaps xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0x150], 4
call fcn.1400b5ca0
mov r8d, 0x40
mov rdx, rbp
mov rcx, rdi
call fcn.1400b5e00
movdqa xmm2, xmmword [rsp + 0x40]
movdqa xmm3, xmmword [rsp + 0x50]
lea rax, [rbx + 0x20]
mov r10, qword [rsp + 0x1b8]
movups xmmword [rbx], xmm2
lea esi, [r10 - 0x20]
movups xmmword [rbx + 0x10], xmm3
cmp esi, 0x40
jbe 0x1400b63f6
movabs r14, 0xbb67ae8584caa73b
lea edx, [r10 - 0x61]
movabs r15, 0x3c6ef372fe94f82b
movabs r12, 0xa54ff53a5f1d36f1
movabs r13, 0x510e527fade682d1
shr edx, 5
movabs rsi, 0x9b05688c2b3e6c1f
lea ecx, [rdx + 2]
mov dword [rsp + 0x3c], edx
shl rcx, 5
lea rdi, [rbx + rcx]
lea rbx, [rsp + 0x88]
mov rcx, rbx
mov qword [rsp + 0x30], rdi
mov rbx, rax
movabs rdi, 0x1f83d9abfb41bd6b
mov rax, rcx
nop word [rax + rax]
movdqa xmm1, xmmword [rsp + 0x40]
movdqa xmm2, xmmword [rsp + 0x50]
mov qword [rax + 0x28], rdi
movabs rcx, 0x5be0cd19137e2179
mov qword [rax + 0x30], rcx
mov rcx, qword [rsp + 0x28]
pxor xmm0, xmm0
mov rdx, rbp
movdqa xmm3, xmmword [rsp + 0x60]
movdqa xmm4, xmmword [rsp + 0x70]
mov qword [rax + 0x18], r13
add rbx, 0x20
mov qword [rax + 0x20], rsi
mov r8d, 0x40
mov qword [rax + 8], r15
mov qword [rax + 0x10], r12
mov qword [rax], r14
mov qword [rsp + 0x20], rax
movabs rax, 0x6a09e667f2bdc948
mov qword [rsp + 0x80], rax
movaps xmmword [rsp + 0xd0], xmm1
mov qword [rsp + 0x150], 0x40
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xe0], xmm2
movaps xmmword [rsp + 0xf0], xmm3
movaps xmmword [rsp + 0x100], xmm4
call fcn.1400b5e00
movdqa xmm5, xmmword [rbp]
movdqa xmm1, xmmword [rbp + 0x10]
mov rax, qword [rsp + 0x30]
movups xmmword [rbx - 0x20], xmm5
movups xmmword [rbx - 0x10], xmm1
cmp rbx, rax
mov rax, qword [rsp + 0x20]
jne 0x1400b6168
mov r10, qword [rsp + 0x1b8]
mov edx, dword [rsp + 0x3c]
sub r10d, 0x40
shl edx, 5
mov esi, r10d
sub esi, edx
movdqa xmm4, xmmword [rsp + 0x40]
movdqa xmm5, xmmword [rsp + 0x50]
mov edi, esi
pxor xmm0, xmm0
movdqa xmm2, xmmword [rsp + 0x60]
movdqa xmm3, xmmword [rsp + 0x70]
movabs rax, 0xbb67ae8584caa73b
movabs rdx, 0x3c6ef372fe94f82b
mov qword [rsp + 0x88], rax
mov rcx, qword [rsp + 0x28]
mov r8, rdi
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rsp + 0x98], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rsp + 0x90], rdx
movabs rdx, 0x510e527fade682d1
mov qword [rsp + 0xa8], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rsp + 0xa0], rdx
movabs rdx, 0x1f83d9abfb41bd6b
mov qword [rsp + 0xb8], rax
mov eax, esi
or eax, 0x1010000
mov qword [rsp + 0xb0], rdx
movabs rdx, 0x6a09e667f3bcc908
xor rax, rdx
mov rdx, rbp
mov qword [rsp + 0x150], 0x40
mov qword [rsp + 0x80], rax
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xd0], xmm4
movaps xmmword [rsp + 0xe0], xmm5
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0x100], xmm3
call fcn.1400b5e00
cmp esi, 8
jae 0x1400b6370
test sil, 4
jne 0x1400b6400
test esi, esi
jne 0x1400b63cd
mov edx, 0x40
mov rcx, rbp
call fcn.1400b2a60
jmp 0x1400b5fd1
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov r9, rbp
mov qword [rdx], rax
mov rax, qword [rbp + rdi - 8]
lea rcx, [rdx + 8]
and rcx, 0xfffffffffffffff8
mov qword [rdx + rdi - 8], rax
mov rax, rdx
sub rax, rcx
add esi, eax
sub r9, rax
and esi, 0xfffffff8
cmp esi, 8
jb 0x1400b6357
and esi, 0xfffffff8
xor eax, eax
mov edx, eax
add eax, 8
mov r8, qword [r9 + rdx]
mov qword [rcx + rdx], r8
cmp eax, esi
jb 0x1400b63aa
mov edx, 0x40
mov rcx, rbp
call fcn.1400b2a60
jmp 0x1400b5fd1
movzx eax, byte [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
and esi, 2
mov byte [rbx], al
je 0x1400b6357
movzx eax, word [rbp + rdi - 2]
mov rsi, qword [rsp + 0x30]
mov word [rsi + rdi - 2], ax
jmp 0x1400b6357
mov qword [rsp + 0x30], rax
jmp 0x1400b6248
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
mov dword [rsi], eax
mov eax, dword [rbp + rdi - 4]
mov dword [rsi + rdi - 4], eax
jmp 0x1400b6357