Function at 0x14016e80f
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov eax, 0x2078
call fcn.1402a7dd0
sub rsp, rax
mov qword [rsp + 0x60], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
xor eax, eax
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x68]
xorps xmm0, xmm0
movaps xmmword [rsp + rcx + 0x70], xmm0
movabs rax, 0xe95170c4d53898fd
sub rcx, rax
add rcx, 0x10
movabs rax, 0x9c5980a48ba34b62
movabs rdx, 0x7508f0605e9bd39f
xor rax, rdx
add rcx, rax
xor eax, eax
cmp rcx, 0x2000
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x58], rax
jne 0x14016dfa7
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x40], rax
xor ecx, ecx
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x54], eax
mov edx, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x48]
mov r8d, edx
shr r8d, 1
and edx, 1
mov r9d, 0xedb88320
xor eax, eax
cmp edx, 0
cmove r9d, eax
mov edx, r9d
xor edx, 0xffffffff
mov eax, 0x29271364
xor eax, 0x8143dee6
and eax, edx
mov r10d, 0xffffffff
xor r10d, 0xa864cd82
and r9d, r10d
mov edx, r8d
xor edx, 0xffffffff
and edx, 0xa864cd82
and r8d, r10d
or eax, r9d
or edx, r8d
xor eax, edx
mov dword [rsp + 0x3c], eax
movabs rdx, 0xc3a79d94e076f0fa
add rcx, rdx
add rcx, 1
movabs rdx, 0xc3a79d94e076f0fa
sub rcx, rdx
movabs rdx, 0x11f5e109cf94654c
movabs r8, 0x11f5e109cf946544
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x54], eax
jne 0x14016e00d
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x3c]
mov dword [rsp + rcx*4 + 0x70], eax
add rcx, 1
movabs rdx, 0x1825c19380fb0017
movabs rax, 0x1825c19380fb0117
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x30], rax
jne 0x14016dff8
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x20], rcx
mov eax, dword [rsp + rcx*4 + 0x70]
mov edx, eax
shr edx, 8
mov r9d, 0x731a66d1
xor r9d, 0x731a66d0
mov r8d, eax
add r8d, r9d
xor eax, 0xffffffff
or eax, 0xff
add eax, r8d
mov eax, eax
xor edx, dword [rsp + rax*4 + 0x70]
mov dword [rsp + rcx*4 + 0x470], edx
mov eax, edx
shr eax, 8
mov r8d, 0xe6256b4
xor r8d, 0xe62564b
and edx, r8d
mov edx, edx
xor eax, dword [rsp + rdx*4 + 0x70]
mov dword [rsp + rcx*4 + 0x870], eax
mov edx, eax
shr edx, 8
mov r8d, eax
add r8d, 1
xor eax, 0xffffffff
or eax, 0xff
add eax, r8d
mov eax, eax
xor edx, dword [rsp + rax*4 + 0x70]
mov dword [rsp + rcx*4 + 0xc70], edx
mov eax, edx
shr eax, 8
and edx, 0xff
mov edx, edx
mov r8d, dword [rsp + rdx*4 + 0x70]
mov r9d, eax
xor r9d, 0xffffffff
mov edx, r8d
and edx, r9d
xor r8d, 0xffffffff
and eax, r8d
or edx, eax
mov dword [rsp + rcx*4 + 0x1070], edx
mov eax, edx
shr eax, 8
mov r8d, edx
xor r8d, 0xff
mov r9d, 0x865dee85
xor r9d, 0x79a2117a
xor r8d, r9d
mov r9d, 0xd9c82ea
xor r9d, 0xd9c8215
or edx, r9d
and edx, r8d
mov edx, edx
xor eax, dword [rsp + rdx*4 + 0x70]
mov dword [rsp + rcx*4 + 0x1470], eax
mov edx, eax
shr edx, 8
mov r8d, 0x3ed2ec4
xor r8d, 0x3ed2e3b
and eax, r8d
mov eax, eax
mov r8d, dword [rsp + rax*4 + 0x70]
mov r9d, edx
xor r9d, 0xffffffff
mov eax, r8d
and eax, r9d
xor r8d, 0xffffffff
and edx, r8d
or eax, edx
mov dword [rsp + rcx*4 + 0x1870], eax
mov edx, eax
shr edx, 8
and eax, 0xff
mov eax, eax
mov r8d, dword [rsp + rax*4 + 0x70]
mov r9d, edx
xor r9d, 0xffffffff
mov eax, r8d
and eax, r9d
xor r8d, 0xffffffff
and edx, r8d
or eax, edx
mov dword [rsp + rcx*4 + 0x1c70], eax
add rcx, 1
xor eax, eax
cmp rcx, 0x100
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
jne 0x14016e0f0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x60]
movdqa xmm0, xmmword [rsp + rax + 0x70]
movdqu xmmword [rcx + rax], xmm0
mov rcx, 0xffffffffffffffff
xor rcx, 0x10
movabs rdx, 0x290d614b0f4fbfaf
movabs r8, 0x290d614b0f4fbfaf
xor rdx, r8
movabs r8, 0xc1c97ea9ac96ac50
movabs r9, 0xc1c97ea9ac96ac51
xor r8, r9
sub rdx, r8
sub rcx, rdx
sub rax, rcx
cmp rax, 0x2000
mov qword [rsp + 0x28], rax
jne 0x14016e266
add rsp, 0x2078
ret
sub rsp, 0x28
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
lea rcx, [0x1402d5aa0]
add rsp, 0x28
jmp 0x14016df80