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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xf0
mov rax, qword [0x1400c2138]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov r14d, r9d
mov r12, r8
mov r15, rcx
lea edi, [r14 + 0x10]
test dil, 7
jne 0x14001efbb
mov ebx, edi
mov ecx, edi
call fcn.1400679f4
mov rsi, rax
xor r13d, r13d
test rax, rax
je 0x14001efbb
movups xmm0, xmmword [r15]
movdqu xmmword [rax], xmm0
mov r8d, r14d
lea rcx, [rax + 0x10]
mov rdx, r12
call fcn.140061930
mov ecx, ebx
call fcn.1400679f4
mov r12, rax
test rax, rax
jne 0x14001efe4
mov rcx, rsi
call fcn.1400679e0
xor eax, eax
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.14005ccc0
mov rbx, qword [rsp + 0x138]
add rsp, 0xf0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x10
call fcn.14005d5a4
mov qword [rsp + 0x38], rax
mov edx, dword [rbp + 0x7f]
lea rcx, [rsp + 0x38]
call fcn.14001ea68
mov ecx, 8
call fcn.14005d5a4
mov rbx, rax
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400c2ec0]
mov qword [rbx], rax
xor edx, edx
mov r8d, 0x8c
lea rcx, [rsp + 0x50]
call fcn.140061fe0
mov rax, qword [0x1400c2ec0]
mov qword [rbx], rax
mov r8, qword [rsp + 0x38]
lea rcx, [rsp + 0x50]
call fcn.140022094
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, edi
mov rdx, r12
mov rcx, rsi
call fcn.140021594
mov edx, edi
mov rcx, r12
call fcn.14001ee94
mov r14, rax
call fcn.14000923c
mov rcx, rax
test rax, rax
je 0x14001f1eb
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x48], rbx
mov edx, r13d
or rax, 0xffffffffffffffff
inc rax
cmp word [r14 + rax*2], r13w
jne 0x14001f09b
add eax, eax
movsxd r9, eax
test eax, eax
jle 0x14001f0d1
mov r8, r13
movzx ecx, byte [r8 + r14]
movzx eax, dl
xor rcx, rax
lea rax, [0x1400ac820]
shr edx, 8
xor edx, dword [rax + rcx*4]
inc r8
cmp r8, r9
jl 0x14001f0b1
not edx
mov dword [rsp + 0x30], edx
mov edx, 4
lea rcx, [rsp + 0x30]
call fcn.14001ee94
mov r15, rax
lea eax, [rdi + rdi]
mov dword [rsp + 0x34], eax
lea r13d, [rax + 9]
mov ecx, r13d
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.14005d5a4
mov rdi, rax
test rax, rax
je 0x14001f175
test r14, r14
je 0x14001f15b
test r15, r15
je 0x14001f15b
mov r9d, 8
mov r8, r15
mov edx, r13d
mov rcx, rax
call fcn.14006f088
mov r9d, dword [rsp + 0x34]
lea edx, [r13 - 8]
lea rcx, [rdi + 0x10]
mov r8, r14
call fcn.14006f088
lea eax, [r13 - 1]
xor r13d, r13d
mov word [rdi + rax*2], r13w
jmp 0x14001f184
mov dword [0x1400c6a50], 0x6e
mov rcx, rdi
call fcn.14005cb40
xor r13d, r13d
mov edi, r13d
jmp 0x14001f17f
mov dword [0x1400c6a50], 0x6e
test r15, r15
je 0x14001f18c
mov rcx, r15
call fcn.14005cb40
test r14, r14
je 0x14001f199
mov rcx, r14
call fcn.14005cb40
mov rcx, r12
call fcn.1400679e0
mov rcx, rsi
call fcn.1400679e0
nop
lea rdx, [rbx - 0x18]
or rcx, 0xffffffffffffffff
mov eax, ecx
lock xadd dword [rdx + 0x10], eax
add eax, ecx
test eax, eax
jg 0x14001f1c9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x40]
call fcn.14005cb40
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14001f1e3
call fcn.14005cb40
mov rax, rdi
jmp 0x14001efbd
mov ecx, 0x80004005
call fcn.14000d0c0
int3