Function at 0x14000ff60
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r12
push r13
sub rsp, 0x38
mov qword [rsp + 0x50], rbx
mov r8b, 1
mov qword [rsp + 0x60], rsi
movzx edx, r8b
mov qword [rsp + 0x30], rdi
mov r13, rcx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
call fcn.14003cf00
mov rdx, qword [r13 + 0xd8]
xor r14d, r14d
mov rsi, rax
movzx r12d, r14w
mov r8, qword [rdx + 0x10]
mov r15, qword [r8]
test r15, r15
je 0x1400101c6
mov qword [rsp + 0x58], rbp
mov ebx, 0x811c9dc5
nop dword [rax + rax]
mov rbp, qword [r15 + 8]
mov edx, 0x98
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov rdi, rax
test rax, rax
jne 0x140010008
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9d, 0xae
lea r8, str.D:ProgrammierenVisual_StudioBibliotekenlibxlsxwriter_src_format.c
mov rcx, rax
lea rdx, str._ERROR___s:_d_:_Memory_allocation_failed._n
call fcn.14000efc0
jmp 0x1400101b4
lea rdx, [rbp + 0xb4]
mov r8d, 0x7f
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rdi + 0x7f], r14b
lea r8, [rdi + 2]
mov rax, qword [rbp + 0x1c0]
mov r9d, 0x26
mov qword [rdi + 0x80], rax
movzx eax, byte [rbp + 0x1c8]
mov byte [rdi + 0x88], al
movzx eax, byte [rbp + 0x1c9]
mov byte [rdi + 0x89], al
movzx eax, byte [rbp + 0x1d0]
mov byte [rdi + 0x8a], al
movzx eax, byte [rbp + 0x1d9]
mov byte [rdi + 0x8b], al
mov eax, dword [rbp + 0x1cc]
mov dword [rdi + 0x94], eax
movzx eax, byte [rbp + 0x1d1]
mov byte [rdi + 0x8c], al
movzx eax, byte [rbp + 0x1d2]
mov byte [rdi + 0x8d], al
movzx eax, byte [rbp + 0x1d3]
mov byte [rdi + 0x8e], al
movzx eax, byte [rbp + 0x1d4]
mov byte [rdi + 0x8f], al
movzx eax, byte [rbp + 0x1d5]
mov byte [rdi + 0x90], al
movzx eax, byte [rbp + 0x1d6]
mov byte [rdi + 0x91], al
movzx eax, byte [rbp + 0x1d7]
mov byte [rdi + 0x92], al
movzx eax, byte [rbp + 0x1d8]
mov byte [rdi + 0x93], al
mov rax, rbx
nop word [rax + rax]
movzx ecx, byte [r8 - 2]
lea r8, [r8 + 4]
imul rax, rax, 0x1000193
xor rcx, rax
movzx eax, byte [r8 - 5]
imul rdx, rcx, 0x1000193
xor rdx, rax
movzx eax, byte [r8 - 4]
imul rcx, rdx, 0x1000193
xor rcx, rax
imul rax, rcx, 0x1000193
movzx ecx, byte [r8 - 3]
xor rax, rcx
sub r9, 1
jne 0x1400100f0
mov ecx, dword [rsi]
xor edx, edx
div rcx
mov rax, qword [rsi + 0x18]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140010174
mov rbx, qword [rbx]
test rbx, rbx
je 0x140010174
mov rcx, qword [rbx]
mov r8d, 0x98
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400102d2
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x140010152
mov edx, 2
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r9d, 0x98
mov rdx, rdi
mov r8, rax
mov rcx, rsi
mov word [rax], r12w
mov word [rbp + 0x1b6], r12w
mov byte [rbp + 0x1b8], 1
call fcn.14003ccf0
inc r12w
mov ebx, 0x811c9dc5
mov r15, qword [r15 + 0x10]
test r15, r15
jne 0x14000ffc0
mov rbp, qword [rsp + 0x58]
mov r15, qword [rsp + 0x20]
test rsi, rsi
je 0x140010255
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x140010219
mov rbx, qword [rbx]
test rbx, rbx
je 0x140010219
mov rdi, qword [rbx + 0x10]
cmp byte [rsi + 0xc], r14b
je 0x1400101f8
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp byte [rsi + 0xd], r14b
je 0x140010208
mov rcx, qword [rbx + 8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, rdi
test rdi, rdi
jne 0x1400101e5
cmp dword [rsi], r14d
jbe 0x140010238
nop
mov rcx, qword [rsi + 0x18]
mov rcx, qword [rcx + r14*8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [rsi]
inc r14
cmp r14, rax
jb 0x140010220
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [r13 + 0xe0]
mov r14, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rax + 0x10]
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rcx]
test rdx, rdx
je 0x1400102c1
nop dword [rax]
mov rax, qword [rdx + 8]
cmp dword [rax + 0x1cc], 0
jne 0x1400102b1
cmp byte [rax + 0x1c8], 0
jne 0x1400102b1
cmp byte [rax + 0x1c9], 0
jne 0x1400102b1
cmp byte [rax + 0x1d0], 0
jne 0x1400102b1
cmp byte [rax + 0x1d1], 0
je 0x1400102b8
mov byte [rax + 0x1b9], 1
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x140010280
mov word [r13 + 0xc4], r12w
add rsp, 0x38
pop r13
pop r12
ret
test rbx, rbx
je 0x140010174
mov rax, qword [rbx + 8]
mov rcx, rdi
movzx edx, word [rax]
mov word [rbp + 0x1b6], dx
mov byte [rbp + 0x1b8], r14b
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1400101af