Function at 0x14015fff0
Capabilities:
Hash data using sha1
Hash data using sha256
Hash data using sha384
Hash data using sha512

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx]
movsxd rax, dword [rcx]
cmp eax, 0xe
ja case.default.0x14016001a
lea r8, [0x140000000]
mov edx, dword [r8 + rax*4 + 0x16028c]
add rdx, r8
jmp rdx
xor edx, edx
mov dword [rcx + 8], 0x67452301
mov qword [rcx + 0x20], rdx
mov dword [rcx + 0xc], 0xefcdab89
mov dword [rcx + 0x10], 0x98badcfe
mov dword [rcx + 0x14], 0x10325476
mov dword [rcx + 0x18], 0xc3d2e1f0
jmp case.default.0x14016001a
xor edx, edx
mov dword [rcx + 0x10], 0x67452301
mov qword [rcx + 8], rdx
mov dword [rcx + 0x14], 0xefcdab89
mov dword [rcx + 0x18], 0x98badcfe
mov dword [rcx + 0x1c], 0x10325476
jmp case.default.0x14016001a
xor edx, edx
mov dword [rcx + 8], 0x67452301
mov dword [rcx + 0x1c], edx
mov dword [rcx + 0xc], 0xefcdab89
mov dword [rcx + 0x10], 0x98badcfe
mov qword [rcx + 0x14], 0x10325476
jmp case.default.0x14016001a
add rcx, 8
je case.default.0x14016001a
xor edx, edx
mov qword [rcx + 0x20], rdx
mov word [rcx + 0x28], dx
mov eax, dword [0x14048f818]
mov dword [rcx], eax
mov eax, dword [0x14048f81c]
mov dword [rcx + 4], eax
mov eax, dword [0x14048f820]
mov dword [rcx + 8], eax
mov eax, dword [0x14048f824]
mov dword [rcx + 0xc], eax
mov eax, dword [0x14048f828]
mov dword [rcx + 0x10], eax
mov eax, dword [0x14048f82c]
mov dword [rcx + 0x14], eax
mov eax, dword [0x14048f830]
mov dword [rcx + 0x18], eax
mov eax, dword [0x14048f834]
mov dword [rcx + 0x1c], eax
mov qword [rcx + 0x6c], rdx
jmp case.default.0x14016001a
add rcx, 8
je case.default.0x14016001a
xor edx, edx
mov qword [rcx + 0x20], rdx
mov word [rcx + 0x28], dx
mov eax, dword [0x14048f838]
mov dword [rcx], eax
mov eax, dword [0x14048f83c]
mov dword [rcx + 4], eax
mov eax, dword [0x14048f840]
mov dword [rcx + 8], eax
mov eax, dword [0x14048f844]
mov dword [rcx + 0xc], eax
mov eax, dword [0x14048f848]
mov dword [rcx + 0x10], eax
mov eax, dword [0x14048f84c]
mov dword [rcx + 0x14], eax
mov eax, dword [0x14048f850]
mov dword [rcx + 0x18], eax
mov eax, dword [0x14048f854]
mov dword [rcx + 0x1c], eax
mov qword [rcx + 0x6c], rdx
jmp case.default.0x14016001a
add rcx, 8
je case.default.0x14016001a
xor edx, edx
mov word [rcx + 0x50], dx
mov qword [rcx + 0x48], rdx
mov qword [rcx + 0x40], rdx
mov rax, qword [0x14048f860]
mov qword [rcx], rax
mov rax, qword [0x14048f868]
mov qword [rcx + 8], rax
mov rax, qword [0x14048f870]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14048f878]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14048f880]
mov qword [rcx + 0x20], rax
mov rax, qword [0x14048f888]
mov qword [rcx + 0x28], rax
mov rax, qword [0x14048f890]
mov qword [rcx + 0x30], rax
mov rax, qword [0x14048f898]
mov qword [rcx + 0x38], rax
mov qword [rcx + 0xd4], rdx
jmp case.default.0x14016001a
add rcx, 8
je case.default.0x14016001a
xor edx, edx
mov word [rcx + 0x50], dx
mov qword [rcx + 0x48], rdx
mov qword [rcx + 0x40], rdx
mov rax, qword [0x14048f8a0]
mov qword [rcx], rax
mov rax, qword [0x14048f8a8]
mov qword [rcx + 8], rax
mov rax, qword [0x14048f8b0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14048f8b8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14048f8c0]
mov qword [rcx + 0x20], rax
mov rax, qword [0x14048f8c8]
mov qword [rcx + 0x28], rax
mov rax, qword [0x14048f8d0]
mov qword [rcx + 0x30], rax
mov rax, qword [0x14048f8d8]
mov qword [rcx + 0x38], rax
mov qword [rcx + 0xd4], rdx
jmp case.default.0x14016001a
mov edx, 0xe0
jmp 0x14016026d
mov edx, 0x100
jmp 0x14016026d
mov edx, 0x180
jmp 0x14016026d
mov edx, 0x200
add rcx, 8
call fcn.140131570
mov rcx, qword [rbx]
add rcx, 0x1b0
add rsp, 0x20
pop rbx
jmp fcn.1400b0c40