Function at 0x140012d80
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov rax, qword [0x1400c9948]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r13, r9
mov rax, r8
movzx edi, dl
mov qword [rsp + 0x28], rax
xor edx, edx
mov r15, rcx
movabs rsi, 0x6a09e667f3bcc908
movabs rbx, 0x5be0cd19137e2179
movabs r14, 0xbb67ae8584caa73b
movabs r12, 0x3c6ef372fe94f82b
movabs r8, 0xa54ff53a5f1d36f1
movabs r9, 0x510e527fade682d1
movabs r10, 0x9b05688c2b3e6c1f
movabs r11, 0x1f83d9abfb41bd6b
cmp r13, 0x40
jbe 0x140012ef7
xorps xmm0, xmm0
mov qword [rsp + 0x30], rdx
xor ecx, ecx
mov qword [rsp + 0x38], rdx
mov qword [rbp], rcx
mov rdx, rax
mov qword [rsp + 0x58], r8
lea rcx, [rsp + 0x30]
mov r8, r13
mov qword [rsp + 0x40], rsi
movups xmmword [rbp - 0x80], xmm0
mov qword [rsp + 0x48], r14
movups xmmword [rbp - 0x70], xmm0
mov qword [rsp + 0x50], r12
movups xmmword [rbp - 0x60], xmm0
mov qword [rsp + 0x60], r9
movups xmmword [rbp - 0x50], xmm0
mov qword [rsp + 0x68], r10
movups xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x70], r11
movups xmmword [rbp - 0x30], xmm0
mov qword [rsp + 0x78], rbx
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
call fcn.140024cf0
mov ebx, eax
test eax, eax
jne 0x140012e98
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x30]
call fcn.140024e00
mov ebx, eax
mov rax, qword [fcn.140080540]
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0xd8
call rax
test ebx, ebx
jne 0x140013039
xor edx, edx
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
movabs rbx, 0x5be0cd19137e2179
movabs r8, 0xa54ff53a5f1d36f1
movabs r9, 0x510e527fade682d1
movabs r10, 0x9b05688c2b3e6c1f
movabs r11, 0x1f83d9abfb41bd6b
lea r13d, [rdx + 0x40]
cmp dword [r15], 0
mov byte [rsp + 0x20], dil
mov byte [rsp + 0x21], r13b
jne 0x140012f36
mov qword [r15 + 8], rdx
mov qword [r15 + 0x10], rdx
mov qword [r15 + 0x18], rsi
mov qword [r15 + 0x20], r14
mov qword [r15 + 0x28], r12
mov qword [r15 + 0x30], r8
mov qword [r15 + 0x38], r9
mov qword [r15 + 0x40], r10
mov qword [r15 + 0x48], r11
mov qword [r15 + 0x50], rbx
mov dword [r15 + 0xd8], edx
mov dword [r15], 1
lea rsi, [rsp + 0x20]
mov r12d, dword [r15 + 8]
add r15, 8
and r12d, 0x7f
mov r14d, 2
mov edi, 0x80
sub edi, r12d
add qword [r15], r14
cmp qword [r15], r14
jae 0x140012f68
inc qword [r15 + 8]
test r12d, r12d
je 0x140013012
cmp rdi, r14
ja 0x140013012
mov eax, r12d
lea rcx, [r15 + 0x50]
add rcx, rax
lea rdx, [rsp + 0x20]
mov r8, rdi
call fcn.140080780
lea rdx, [r15 + 0x50]
mov rcx, r15
call fcn.1400242a0
mov ebx, eax
test eax, eax
jne 0x140013039
lea rsi, [rsp + 0x20]
sub r14, rdi
add rsi, rdi
xor r12d, r12d
cmp r14, 0x80
jb 0x14001300d
nop
mov rdi, r14
xor ebx, ebx
nop word [rax + rax]
lea rdx, [rbx + rsi]
mov rcx, r15
call fcn.1400242a0
test eax, eax
jne 0x140013076
add rdi, 0xffffffffffffff80
sub rbx, 0xffffffffffffff80
cmp rdi, 0x80
jae 0x140012fd0
cmp rbx, 0x80
jb 0x140013076
add rsi, rbx
sub r14, rbx
cmp r14, 0x80
jae 0x140012fc0
test r14, r14
je 0x140013027
mov eax, r12d
lea rcx, [r15 + 0x50]
add rcx, rax
mov r8, r14
mov rdx, rsi
call fcn.140080780
mov rdx, qword [rsp + 0x28]
mov r8, r13
mov rcx, r15
call fcn.140024cf0
mov ebx, eax
mov r9, qword [fcn.140080540]
lea rcx, [rbp + 0x10]
xor edx, edx
lea r8d, [rdx + 0x40]
call r9
mov eax, ebx
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.1400946f0
mov rbx, qword [rsp + 0x1a8]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ebx, 0xffffffff
jmp 0x140013039