Function at 0x14001ff10
Capabilities:
Hash data using sha224
Hash data using sha256
Hash data using sha384
Hash data using sha512

Disassembly:
push rbx
mov r10, r9
mov r11, r8
mov rbx, rdx
test rcx, rcx
jne 0x14001ff27
mov eax, 0xffffaf00
pop rbx
ret
mov ecx, dword [rcx + 8]
sub ecx, 3
je 0x14001ff6a
sub ecx, 1
je 0x14001ff65
sub ecx, 1
je 0x14001ff50
cmp ecx, 1
jne 0x14001ff20
xor r9d, r9d
mov r8, r10
mov rdx, r11
mov rcx, rbx
pop rbx
jmp 0x140028a40
mov r9d, 1
mov r8, r10
mov rdx, r11
mov rcx, rbx
pop rbx
jmp 0x140028a40
xor r9d, r9d
jmp 0x14001ff70
mov r9d, 1
mov r8, r10
mov rdx, r11
mov rcx, rbx
pop rbx
jmp 0x140027a70
push rbx
push rbp
push rsi
push r14
sub rsp, 0xa8
mov rax, qword [0x140120678]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov ebx, r9d
mov r14, r8
mov rsi, rdx
mov rbp, rcx
cmp r9d, 1
jbe 0x140027aab
mov eax, 0xffffff8c
jmp 0x140027bef
xor edx, edx
lea rcx, [rsp + 0x20]
lea r8d, [rdx + 0x6c]
call fcn.1400a20f0
cmp ebx, 1
jbe 0x140027aca
mov ebx, 0xffffff8c
jmp 0x140027bde
test ebx, ebx
jne 0x140027b10
mov dword [rsp + 0x28], 0x6a09e667
mov dword [rsp + 0x2c], 0xbb67ae85
mov dword [rsp + 0x30], 0x3c6ef372
mov dword [rsp + 0x34], 0xa54ff53a
mov dword [rsp + 0x38], 0x510e527f
mov dword [rsp + 0x3c], 0x9b05688c
mov dword [rsp + 0x40], 0x1f83d9ab
mov dword [rsp + 0x44], 0x5be0cd19
jmp 0x140027b50
mov dword [rsp + 0x28], 0xc1059ed8
mov dword [rsp + 0x2c], 0x367cd507
mov dword [rsp + 0x30], 0x3070dd17
mov dword [rsp + 0x34], 0xf70e5939
mov dword [rsp + 0x38], 0xffc00b31
mov dword [rsp + 0x3c], 0x68581511
mov dword [rsp + 0x40], 0x64f98fa7
mov dword [rsp + 0x44], 0xbefa4fa4
mov qword [rsp + 0xa0], rdi
mov dword [rsp + 0x88], ebx
test rsi, rsi
je 0x140027bc7
mov dword [rsp + 0x20], esi
cmp rsi, 0x40
jb 0x140027bb2
nop
mov rdi, rsi
xor ebx, ebx
nop word [rax + rax]
lea rdx, [rbx + rbp]
lea rcx, [rsp + 0x20]
call fcn.140026c80
test eax, eax
jne 0x140027c0c
sub rdi, 0x40
add rbx, 0x40
cmp rdi, 0x40
jae 0x140027b80
cmp rbx, 0x40
jb 0x140027c0c
add rbp, rbx
sub rsi, rbx
cmp rsi, 0x40
jae 0x140027b70
test rsi, rsi
je 0x140027bc7
mov r8, rsi
lea rcx, [rsp + 0x48]
mov rdx, rbp
call fcn.1400a1c90
mov rdx, r14
lea rcx, [rsp + 0x20]
call fcn.140027c20
mov ebx, eax
mov rdi, qword [rsp + 0xa0]
mov edx, WSAGetLastError
lea rcx, [rsp + 0x20]
call fcn.140023aa0
mov eax, ebx
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1400a0360
add rsp, 0xa8
pop r14
pop rsi
pop rbp
pop rbx
ret
mov ebx, 0xffffffff
jmp 0x140027bd6
push rbx
push rbp
push rsi
push r14
sub rsp, 0x118
mov rax, qword [0x140120678]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov ebx, r9d
mov r14, r8
mov rsi, rdx
mov rbp, rcx
cmp r9d, 1
jbe 0x140028a7b
mov eax, 0xffffff8b
jmp 0x140028c4c
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0xd8
call fcn.1400a20f0
cmp ebx, 1
jbe 0x140028aa0
mov ebx, 0xffffff8b
jmp 0x140028c3b
test ebx, ebx
jne 0x140028b19
movabs rax, 0x6a09e667f3bcc908
mov qword [rsp + 0x30], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rsp + 0x38], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rsp + 0x40], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rsp + 0x48], rax
movabs rax, 0x510e527fade682d1
mov qword [rsp + 0x50], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rsp + 0x58], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rsp + 0x60], rax
movabs rax, 0x5be0cd19137e2179
jmp 0x140028b8c
movabs rax, 0xcbbb9d5dc1059ed8
mov qword [rsp + 0x30], rax
movabs rax, 0x629a292a367cd507
mov qword [rsp + 0x38], rax
movabs rax, 0x9159015a3070dd17
mov qword [rsp + 0x40], rax
movabs rax, 0x152fecd8f70e5939
mov qword [rsp + 0x48], rax
movabs rax, 0x67332667ffc00b31
mov qword [rsp + 0x50], rax
movabs rax, 0x8eb44a8768581511
mov qword [rsp + 0x58], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rsp + 0x60], rax
movabs rax, 0x47b5481dbefa4fa4
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x110], rdi
mov dword [rsp + 0xf0], ebx
test rsi, rsi
je 0x140028c24
mov qword [rsp + 0x20], rsi
cmp rsi, 0x80
jb 0x140028c0f
nop dword [rax]
nop word [rax + rax]
mov rdi, rsi
xor ebx, ebx
nop word [rax + rax]
lea rdx, [rbx + rbp]
lea rcx, [rsp + 0x20]
call fcn.140028000
test eax, eax
jne 0x140028c69
add rdi, 0xffffffffffffff80
sub rbx, 0xffffffffffffff80
cmp rdi, 0x80
jae 0x140028bd0
cmp rbx, 0x80
jb 0x140028c69
add rbp, rbx
sub rsi, rbx
cmp rsi, 0x80
jae 0x140028bc0
test rsi, rsi
je 0x140028c24
mov r8, rsi
lea rcx, [rsp + 0x70]
mov rdx, rbp
call fcn.1400a1c90
mov rdx, r14
lea rcx, [rsp + 0x20]
call fcn.140028c70
mov ebx, eax
mov rdi, qword [rsp + 0x110]
mov edx, 0xd8
lea rcx, [rsp + 0x20]
call fcn.140023aa0
mov eax, ebx
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.1400a0360
add rsp, 0x118
pop r14
pop rsi
pop rbp
pop rbx
ret
mov ebx, 0xffffffff
jmp 0x140028c33