Function at 0x14019ccb0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x140546618]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rax, qword [rcx]
lea r11, [0x1404aa6d1]
movups xmm0, xmmword [rdx]
mov rbx, qword [rcx + 0x48]
mov rdi, rax
movups xmm1, xmmword [rdx + 0x10]
mov r13, qword [rcx + 0x50]
movabs r9, 0x6a09e667f3bcc908
mov r14, qword [rcx + 0x40]
mov r15, qword [rcx + 0x58]
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x80], rax
mov r12, rax
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x78], rax
mov rsi, rax
mov rax, qword [rcx + 0x18]
mov qword [rbp - 0x70], rax
mov qword [rsp + 0x18], rax
mov rax, qword [rcx + 0x20]
mov qword [rbp - 0x68], rax
mov r10, rax
mov rax, qword [rcx + 0x28]
mov qword [rbp - 0x60], rax
mov qword [rsp + 0x48], rax
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x10], rax
mov qword [rbp - 0x58], rax
mov rax, qword [rcx + 0x38]
mov qword [rbp - 0x50], rax
mov qword [rsp + 8], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rsp + 0x20], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rsp + 0x38], rax
movabs rax, 0xa54ff53a5f1d36f1
movups xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x40], rax
movabs rax, 0x9b05688c2b3e6c1f
movups xmm0, xmmword [rdx + 0x20]
xor rbx, rax
movabs rax, 0x1f83d9abfb41bd6b
movups xmmword [rbp - 0x30], xmm1
xor r13, rax
movabs rax, 0x5be0cd19137e2179
movups xmm1, xmmword [rdx + 0x30]
mov qword [rsp + 0x78], rcx
mov rcx, qword [rsp + 0x10]
movups xmmword [rbp - 0x20], xmm0
mov qword [rsp], r11
movups xmm0, xmmword [rdx + 0x40]
mov qword [rsp + 0x50], 0xc
movups xmmword [rbp - 0x10], xmm1
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdx + 0x70]
movabs rdx, 0x510e527fade682d1
xor r14, rdx
xor r15, rax
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm1
jmp 0x14019ce25
mov r15, qword [rsp + 0x30]
movzx eax, byte [r11 - 1]
mov r8, qword [rbp + rax*8 - 0x40]
movzx eax, byte [r11]
add r8, r10
add r8, rdi
xor r14, r8
ror r14, 0x20
add r9, r14
mov qword [rsp + 0x30], r14
mov r14, qword [rbp + rax*8 - 0x40]
xor r10, r9
ror r10, 0x18
add r14, r10
add r14, r8
mov rax, r14
xor rax, qword [rsp + 0x30]
ror rax, 0x10
mov qword [rsp + 0x28], rax
add rax, r9
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x10], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x58], rax
movzx eax, byte [r11 + 1]
mov r8, qword [rbp + rax*8 - 0x40]
add r8, qword [rsp + 0x48]
add r8, r12
mov r10, r8
xor r10, rbx
mov rbx, qword [rsp]
ror r10, 0x20
add r9, r10
mov r11, r9
xor r11, qword [rsp + 0x48]
movzx eax, byte [rbx + 2]
ror r11, 0x18
mov r12, qword [rbp + rax*8 - 0x40]
add r12, r11
add r12, r8
mov rax, r12
xor rax, r10
ror rax, 0x10
mov qword [rsp + 0x20], rax
add rax, r9
mov r9, qword [rsp + 0x38]
mov rdi, rax
mov qword [rsp + 0x68], rax
xor rdi, r11
movzx eax, byte [rbx + 3]
rol rdi, 1
mov r8, qword [rbp + rax*8 - 0x40]
movzx eax, byte [rbx + 4]
add r8, rcx
add r8, rsi
mov r10, r8
xor r10, r13
mov r13, qword [rbp + rax*8 - 0x40]
ror r10, 0x20
add r9, r10
mov r11, r9
xor r11, rcx
mov rcx, rbx
ror r11, 0x18
add r13, r11
add r13, r8
mov rax, r13
xor rax, r10
mov r10, qword [rsp + 8]
ror rax, 0x10
mov qword [rsp + 0x60], rax
lea rbx, [rax + r9]
movzx eax, byte [rcx + 5]
mov rsi, rbx
xor rsi, r11
rol rsi, 1
mov r8, qword [rbp + rax*8 - 0x40]
add r8, r10
add r8, qword [rsp + 0x18]
xor r15, r8
ror r15, 0x20
movzx eax, byte [rcx + 6]
mov r9, qword [rsp + 0x40]
add r9, r15
xor r10, r9
mov rax, qword [rbp + rax*8 - 0x40]
ror r10, 0x18
add rax, r10
mov qword [rsp + 8], r10
add rax, r8
mov r10, rax
mov qword [rsp + 0x18], rax
movzx eax, byte [rcx + 7]
xor r10, r15
ror r10, 0x10
mov r8, qword [rbp + rax*8 - 0x40]
movzx eax, byte [rcx + 8]
lea r11, [r10 + r9]
add r8, rdi
mov r15, r11
xor r15, qword [rsp + 8]
add r8, r14
mov r9, r8
rol r15, 1
xor r9, r10
ror r9, 0x20
lea r10, [r9 + rbx]
mov rbx, r10
xor rbx, rdi
mov rdi, qword [rbp + rax*8 - 0x40]
ror rbx, 0x18
add rdi, rbx
add rdi, r8
mov rax, rdi
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, r10
mov r10, qword [rsp + 0x28]
xor rbx, rax
mov qword [rsp + 0x38], rax
movzx eax, byte [rcx + 9]
rol rbx, 1
mov qword [rsp + 0x48], rbx
mov r8, qword [rbp + rax*8 - 0x40]
movzx eax, byte [rcx + 0xa]
add r8, rsi
add r8, r12
xor r10, r8
ror r10, 0x20
mov r12, qword [rbp + rax*8 - 0x40]
lea r9, [r11 + r10]
mov r11, qword [rsp]
xor rsi, r9
ror rsi, 0x18
add r12, rsi
add r12, r8
mov r14, r12
xor r14, r10
mov r10, qword [rsp + 0x20]
ror r14, 0x10
lea rax, [r14 + r9]
mov r9, qword [rsp + 0x10]
mov rcx, rax
mov qword [rsp + 0x40], rax
movzx eax, byte [r11 + 0xb]
xor rcx, rsi
rol rcx, 1
mov r8, qword [rbp + rax*8 - 0x40]
movzx eax, byte [r11 + 0xc]
add r8, r15
add r8, r13
xor r10, r8
ror r10, 0x20
mov rsi, qword [rbp + rax*8 - 0x40]
add r9, r10
xor r15, r9
ror r15, 0x18
add rsi, r15
add rsi, r8
mov rbx, rsi
xor rbx, r10
mov r10, qword [rsp + 0x60]
ror rbx, 0x10
lea rax, [rbx + r9]
mov r9, qword [rsp + 0x68]
mov qword [rsp + 0x28], rax
xor rax, r15
rol rax, 1
mov qword [rsp + 8], rax
movzx eax, byte [r11 + 0xd]
mov r11, qword [rsp + 0x58]
mov r8, qword [rbp + rax*8 - 0x40]
add r8, qword [rsp + 0x18]
mov rax, qword [rsp]
add r8, r11
xor r10, r8
ror r10, 0x20
add r9, r10
movzx eax, byte [rax + 0xe]
xor r11, r9
ror r11, 0x18
mov rdx, qword [rbp + rax*8 - 0x40]
add rdx, r11
add rdx, r8
mov r13, rdx
mov qword [rsp + 0x18], rdx
xor r13, r10
ror r13, 0x10
lea rax, [r9 + r13]
mov r9, qword [rsp + 0x28]
mov r10, rax
mov qword [rsp + 0x20], rax
xor r10, r11
mov r11, qword [rsp]
add r11, 0x10
rol r10, 1
sub qword [rsp + 0x50], 1
mov qword [rsp], r11
jne 0x14019ce20
xor r12, qword [rbp - 0x80]
xor rdi, qword [rsp + 0x70]
xor r12, rax
xor rsi, qword [rbp - 0x78]
xor rdi, r9
xor r10, qword [rbp - 0x68]
xor rbx, qword [rbp - 0x60]
xor r10, r14
xor rsi, qword [rsp + 0x38]
xor rbx, qword [rsp + 0x48]
mov rax, qword [rbp - 0x70]
xor rax, rdx
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x78]
xor rax, qword [rsp + 0x40]
mov qword [rcx + 0x18], rax
mov rax, qword [rsp + 0x10]
xor rax, qword [rbp - 0x58]
xor rax, r13
mov qword [rcx], rdi
mov qword [rcx + 0x30], rax
mov rax, qword [rbp - 0x50]
xor rax, qword [rsp + 0x30]
xor rax, qword [rsp + 8]
mov qword [rcx + 0x38], rax
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x20], r10
mov qword [rcx + 0x28], rbx
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.14036fcc0
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret