Function at 0x14005abe0
Capabilities:
Hash data using sha384

Disassembly:
push rbx
push rdi
sub rsp, 0x38
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
je 0x14005af9c
test rdx, rdx
je 0x14005af9c
cmp byte [rcx + 0x229], 0
jne 0x14005ac15
call fcn.14005ab30
test eax, eax
jne 0x14005afa1
movzx ecx, byte [rbx + 0x228]
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
sub ecx, 3
je 0x14005af1d
sub ecx, 1
je 0x14005aec3
sub ecx, 2
je 0x14005ae51
sub ecx, 1
je 0x14005acd3
cmp ecx, 1
je 0x14005ac69
mov eax, 0xffffff53
jmp 0x14005af77
lea rsi, [rbx + 0x1e0]
mov rcx, rbx
mov rdx, rsi
call fcn.140076700
test eax, eax
jne 0x14005af77
lea rdx, [rbx + 0x160]
test rdx, rdx
je 0x14005ac5f
mov r8d, 0x80
mov rcx, rbx
call fcn.140076420
test eax, eax
jne 0x14005af77
test rsi, rsi
je 0x14005ac5f
mov r8d, 0x40
mov rdx, rsi
mov rcx, rbx
call fcn.140076420
test eax, eax
jne 0x14005af77
mov rdx, rdi
mov rcx, rbx
call fcn.140076700
jmp 0x14005af6d
lea rsi, [rbx + 0x1e0]
test rsi, rsi
je 0x14005ac5f
mov rcx, rbx
call fcn.1400765c0
test eax, eax
jne 0x14005af77
movups xmm0, xmmword [rbx]
xor ebp, ebp
lea rdx, [rbx + 0x160]
movabs rax, 0x67332667ffc00b31
movabs r14, 0xcbbb9d5dc1059ed8
movabs r15, 0x629a292a367cd507
movabs r12, 0x9159015a3070dd17
movabs r13, 0x152fecd8f70e5939
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rsi + 0x20], xmm0
mov qword [rbx + 0x20], rax
movabs rax, 0x8eb44a8768581511
mov qword [rbx + 0x28], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rbx + 0x30], rax
movabs rax, 0x47b5481dbefa4fa4
mov qword [rbx + 0x38], rax
mov qword [rbx], r14
mov qword [rbx + 8], r15
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r13
mov dword [rbx + 0xc0], ebp
mov qword [rbx + 0xc8], rbp
mov qword [rbx + 0xd0], rbp
test rdx, rdx
je 0x14005ac5f
mov r8d, 0x80
mov rcx, rbx
call fcn.140076420
test eax, eax
jne 0x14005af77
mov r8d, 0x30
mov rdx, rsi
mov rcx, rbx
call fcn.140076420
test eax, eax
jne 0x14005af77
mov rcx, rbx
call fcn.1400765c0
test eax, eax
jne 0x14005af77
movups xmm0, xmmword [rbx]
movabs rax, 0x67332667ffc00b31
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rdi + 0x20], xmm0
mov qword [rbx + 0x20], rax
movabs rax, 0x8eb44a8768581511
mov qword [rbx + 0x28], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rbx + 0x30], rax
movabs rax, 0x47b5481dbefa4fa4
mov qword [rbx + 0x38], rax
mov eax, ebp
mov qword [rbx], r14
mov qword [rbx + 8], r15
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r13
mov dword [rbx + 0xc0], ebp
mov qword [rbx + 0xc8], rbp
mov qword [rbx + 0xd0], rbp
jmp 0x14005af6d
lea rsi, [rbx + 0x1e0]
mov rcx, rbx
mov rdx, rsi
call fcn.140081e30
test eax, eax
jne 0x14005af77
lea rdx, [rbx + 0x160]
test rdx, rdx
je 0x14005ac5f
mov r8d, 0x40
mov rcx, rbx
call fcn.140081640
test eax, eax
jne 0x14005af77
test rsi, rsi
je 0x14005ac5f
mov r8d, 0x20
mov rdx, rsi
mov rcx, rbx
call fcn.140081640
test eax, eax
jne 0x14005af77
mov rdx, rdi
mov rcx, rbx
call fcn.140081e30
jmp 0x14005af6d
lea rdx, [rbx + 0x1e0]
mov rcx, rbx
call fcn.140073570
test eax, eax
jne 0x14005af77
lea rdx, [rbx + 0x160]
mov r8d, 0x40
mov rcx, rbx
call fcn.1400730d0
test eax, eax
jne 0x14005af77
mov r8d, reloc.WS2_32.dll_sendto
lea rdx, [rbx + 0x1e0]
mov rcx, rbx
call fcn.1400730d0
test eax, eax
jne 0x14005af77
mov rdx, rdi
mov rcx, rbx
call fcn.140073570
jmp 0x14005af6d
lea rdx, [rbx + 0x1e0]
mov rcx, rbx
call fcn.1400868a0
test eax, eax
jne 0x14005af77
lea rdx, [rbx + 0x160]
mov r8d, 0x40
mov rcx, rbx
call fcn.140086730
test eax, eax
jne 0x14005af77
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rbx + 0x1e0]
mov rcx, rbx
call fcn.140086730
test eax, eax
jne 0x14005af77
mov rdx, rdi
mov rcx, rbx
call fcn.1400868a0
test eax, eax
jne 0x14005af77
mov byte [rbx + 0x229], al
mov r15, qword [rsp + 0x20]
mov r14, qword [rsp + 0x28]
mov r13, qword [rsp + 0x30]
mov r12, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
add rsp, 0x38
pop rdi
pop rbx
ret
mov eax, 0xffffff53
add rsp, 0x38
pop rdi
pop rbx
ret