Function at 0x140103e7c
Capabilities:
Hash data using sha512

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x588
mov rdi, rdx
mov r15, rcx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rdx
lea rsi, [rsp + 0x32f]
mov rcx, rsi
call fcn.1400d5403
mov rcx, rsi
call fcn.14007e1eb
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
test rdi, rdi
je 0x14010425c
test rdx, rdx
je 0x14010425c
mov qword [rsp + 0x40], rdx
xor eax, eax
mov qword [rsp + 0x28], rax
lea r14, [rsp + 0x488]
mov r8d, 0x100
mov rcx, r14
xor edx, edx
call sub.msvcrt.dll_memset
lea r9, [0x1401f0d90]
mov edx, 0x100
mov r8d, 0x40
mov rcx, r14
call fcn.1400100e5
mov rbx, rax
mov rsi, rdx
lea r13, [rsp + 0x210]
mov rcx, r13
mov rdx, r15
mov r8, rdi
call fcn.1400d41bc
lea rdi, [rsp + 0x140]
mov rcx, rdi
call fcn.14010f7c2
mov byte [rdi + 0x80], 0
movups xmm0, xmmword [0x1401f7180]
movaps xmmword [rdi - 0x50], xmm0
movups xmm0, xmmword [0x1401f7190]
movaps xmmword [rdi - 0x40], xmm0
movups xmm0, xmmword [0x1401f71a0]
movaps xmmword [rdi - 0x30], xmm0
movups xmm0, xmmword [0x1401f71b0]
movaps xmmword [rdi - 0x20], xmm0
xorps xmm0, xmm0
movaps xmmword [rdi - 0x10], xmm0
lea rcx, [rsp + 0x250]
lea r15, [rsp + 0xf0]
mov r8d, 0xd8
mov rdx, r15
call sub.msvcrt.dll_memcpy
lea r12, [rsp + 0x370]
mov r8d, 0x118
mov rcx, r12
mov rdx, r13
call sub.msvcrt.dll_memcpy
lea rbp, [rsp + 0x90]
lea rdi, [rsp + 0x60]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rsi
mov rax, rsi
test rax, rax
je 0x140104137
cmp rax, 0x20
mov esi, 0x20
mov qword [rsp + 0x58], rax
cmovb rsi, rax
lea rax, [rbx + rsi]
mov qword [rsp + 0x50], rax
xor eax, eax
cmp rsi, rax
je 0x140104020
mov byte [rbx + rax], 0
inc rax
jmp 0x140104012
mov rcx, r15
mov rdx, r12
call fcn.1400d421e
mov rcx, r15
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
call fcn.14000b24f
mov rax, qword [rsp + 0x28]
inc eax
mov qword [rsp + 0x28], rax
bswap eax
mov dword [rsp + 0x210], eax
mov r8d, 4
mov rcx, r15
mov rdx, r13
call fcn.14000b24f
mov r8d, 0x118
mov rcx, r13
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov rcx, rbp
mov rdx, r13
call fcn.1400d4248
xor eax, eax
cmp rsi, rax
je 0x140104095
mov cl, byte [rsp + rax + 0x90]
xor byte [rbx + rax], cl
inc rax
jmp 0x140104081
movups xmm0, xmmword [rsp + 0x90]
movups xmm1, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
mov r14d, 1
cmp r14d, 0x24
je 0x140104125
mov rcx, r15
mov rdx, r12
call fcn.1400d421e
mov r8d, 0x20
mov rcx, r15
mov rdx, rdi
call fcn.14000b24f
mov r8d, 0x118
mov rcx, r13
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov rcx, rbp
mov rdx, r13
call fcn.1400d4248
movups xmm0, xmmword [rsp + 0x90]
movups xmm1, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm1
xor eax, eax
cmp rsi, rax
je 0x140104120
mov cl, byte [rsp + rax + 0x60]
xor byte [rbx + rax], cl
inc rax
jmp 0x14010410f
inc r14d
jmp 0x1401040b5
mov rax, qword [rsp + 0x58]
sub rax, rsi
mov rbx, qword [rsp + 0x50]
jmp 0x140103fec
xor eax, eax
xor r9d, r9d
mov rdx, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
cmp r9, 0x40
je 0x140104178
mov r8, r9
shr r8, 1
mov ecx, eax
and ecx, 0x20
add rcx, r8
cmp rcx, rdx
jae 0x140104250
mov cl, byte [r10 + rcx]
mov byte [rsp + r9 + 0xb0], cl
inc r9
add rax, 0x20
jmp 0x140104146
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmm2, xmmword [rsp + 0xd0]
movaps xmm3, xmmword [rsp + 0xe0]
lea rsi, [rsp + 0x210]
movaps xmmword [rsi + 0x30], xmm3
movaps xmmword [rsi + 0x20], xmm2
movaps xmmword [rsi + 0x10], xmm1
movaps xmmword [rsi], xmm0
mov r8d, 0x40
mov rcx, r12
mov rdx, rsi
call fcn.1400d6eff
mov qword [rsp + 0xf0], r12
lea rax, [0x140017a51]
mov qword [rsp + 0xf8], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x100], rax
lea rax, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
mov qword [rsi], rax
mov qword [rsi + 8], 3
and qword [rsi + 0x20], 0
lea rax, [fcn.140055bde]
mov qword [rsp + 0x108], rax
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], 2
lea rcx, [rsp + 0x210]
call fcn.140138ff0
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
call fcn.1400759fa
nop
add rsp, 0x588
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x1401f0da8]
call fcn.1400478b0
lea rax, [rsp + 0x370]
mov byte [rax], 0
lea rdx, [rsp + 0xf0]
mov qword [rdx], rax
lea rax, str.Error:
lea rcx, [rsp + 0x210]
mov qword [rcx], rax
mov qword [rcx + 8], 2
and qword [rcx + 0x20], 0
lea rax, [0x14000b1ef]
mov qword [rdx + 8], rax
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], 1
call fcn.1401390f0
mov ecx, 1
call fcn.14013a9b0
int3