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

Disassembly:
mov r9, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x10]
jmp 0x14001cfe0
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
mov rax, qword [0x1400feb08]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rdi, r9
mov rsi, r8
mov r14, rdx
mov qword [rsp + 0x38], rcx
mov ebx, 0xffffffff
lea rcx, [rsp + 0x40]
call fcn.14001f730
nop
lea r13, [rsp + 0x40]
test rdi, rdi
cmovne r13, rdi
mov r15, 0xffffffffffffffff
xor r12d, r12d
mov ebp, r12d
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0xa8]
cmp rsi, r15
jne 0x14001d05c
cmp rcx, r14
jle 0x14001d05c
mov rsi, rcx
sub rsi, r14
lea rax, [r14 + rsi]
cmp rax, rcx
jle 0x14001d070
cmp r14, rcx
jge 0x14001d070
mov rsi, rcx
sub rsi, r14
test rsi, rsi
jle 0x14001d091
test r14, r14
js 0x14001d091
cmp r14, rcx
jge 0x14001d091
lea rax, [r14 - 1]
add rax, rsi
cmp rax, rcx
jge 0x14001d091
mov r15, r14
mov rbp, rsi
mov edi, 0xffffffff
mov dword [rsp + 0x30], edi
mov edx, r12d
mov rcx, r12
lea rax, [r13 + 0x18]
cmp byte [rax], r12b
je 0x14001d0ba
inc edx
inc rcx
add rax, 0x20
cmp rcx, 5
jl 0x14001d0a4
jmp 0x14001d0c0
mov edi, edx
mov dword [rsp + 0x30], edx
cmp r15, 0xffffffffffffffff
je 0x14001d1eb
cmp byte [r13 + 0xa0], r12b
jne 0x14001d1eb
movsxd rsi, edi
cmp edi, 4
ja 0x14001d109
mov rax, rsi
shl rax, 5
mov byte [rax + r13 + 0x18], 1
mov qword [rax + r13], r12
mov qword [rax + r13 + 8], rbp
lea rcx, [r13 + 0x10]
add rcx, rax
lea rdx, [0x14008a968]
call qword [sym.imp.Qt5Core.dll_public:_class_QString____ptr64___cdecl_QString::operator_char_const____ptr64____ptr64]
mov ecx, 0x1000
call fcn.14007f9d4
mov r14, rax
test rbp, rbp
jle 0x14001d1e3
nop
mov rdi, rbp
mov eax, 0x1000
cmp rbp, rax
cmovg rdi, rax
mov qword [rsp + 0x20], rdi
mov r9, r14
mov r8, r15
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x10]
mov rcx, rax
call fcn.14002a7e0
cmp rax, rdi
jne 0x14001d19b
mov edx, edi
mov r8, r14
test edi, edi
jle 0x14001d17d
lea r12, [0x14008b5d0]
movzx eax, bl
xor al, byte [r8]
movzx ecx, al
shr ebx, 8
xor ebx, dword [r12 + rcx*4]
dec edx
lea r8, [r8 + 1]
test edx, edx
jg 0x14001d160
xor r12d, r12d
sub rbp, rdi
add r15, rdi
cmp rsi, 4
ja 0x14001d194
mov rax, rsi
shl rax, 5
mov qword [rax + r13], r15
test rbp, rbp
jg 0x14001d120
jmp 0x14001d1df
mov dword [rsp + 0x20], 0xffffffff
xor r9d, r9d
lea r8, str.Read_error
lea rdx, [rsp + 0x38]
lea rcx, [0x1400fd610]
call qword [sym.imp.Qt5Core.dll_public:_class_QString___cdecl_QMetaObject::tr_char_const____ptr64__char_const____ptr64__int____ptr64]
lea rcx, [r13 + 0xb0]
lea rdx, [rsp + 0x38]
call qword [sym.imp.Qt5Core.dll_public:_class_QString____ptr64___cdecl_QString::operator_class_QString____ptr64____ptr64]
lea rcx, [rsp + 0x38]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
mov ebx, r12d
mov edi, dword [rsp + 0x30]
mov rcx, r14
call fcn.14007f65c
not ebx
cmp edi, 4
ja 0x14001d21c
movsxd rax, edi
shl rax, 5
mov byte [rax + r13 + 0x18], 0
mov qword [rax + r13], r12
mov qword [rax + r13 + 8], r12
lea rcx, [r13 + 0x10]
add rcx, rax
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::clear_void____ptr64]
inc qword [r13 + 0xa8]
cmp byte [r13 + 0xa0], 0
cmove r12d, ebx
lea rcx, [rsp + 0xf0]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
lea r9, [fcn.140007570]
mov edx, 0x20
lea r8d, [rdx - 0x1b]
lea rcx, [rsp + 0x40]
call fcn.14007f7c0
nop
mov eax, r12d
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.14007f7a0
mov rbx, qword [rsp + 0x160]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret