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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x70], 0xfffffffffffffffe
mov r14, r8
mov r13, rdx
mov r15, rcx
mov rdi, qword [r9 + 8]
mov qword [rbp + 0x60], r9
mov r12, qword [r9 + 0x10]
test r12, r12
je 0x14005af66
lea r8, [r12*8]
movabs rax, 0xcbf29ce484222325
xor edx, edx
movabs rsi, 0x100000001b3
nop
movzx ebx, byte [rdi + rdx + 4]
xor rbx, rax
imul rbx, rsi
movzx ecx, byte [rdi + rdx + 5]
xor rcx, rbx
imul rcx, rsi
mov eax, dword [rdi + rdx]
xor rax, rcx
imul rax, rsi
add rdx, 8
cmp r8, rdx
jne 0x14005ae90
mov rcx, qword [r14 + 0x18]
test rcx, rcx
je 0x14005af7d
xor edx, edx
div rcx
mov rsi, rdx
mov byte [rbp + 0x6f], 1
mov rcx, r14
mov rdx, rdi
mov r8, r12
mov r9, rsi
call fcn.14002ae90
cmp eax, 1
jne 0x14005af0a
mov dword [r15 + 8], edx
mov qword [r15], 9
mov rax, qword [rbp + 0x60]
mov rdx, qword [rax]
test rdx, rdx
jne 0x14005b0bc
jmp 0x14005b0e2
test r12, r12
mov qword [rbp + 0x50], r13
je 0x14005af9e
mov qword [rbp + 0x58], r15
xor r15d, r15d
mov rax, r12
shr rax, 0x3c
sete al
jne 0x14005b125
mov rbx, r14
lea r13, [r12*8]
mov r15b, al
shl r15, 2
test r13, r13
je 0x14005b0f7
mov rcx, r13
mov rdx, r15
call fcn.140001f20
mov r14, rax
test r14, r14
je 0x14005b103
mov r15, qword [rbp + 0x58]
jmp 0x14005afaa
movabs rax, 0xcbf29ce484222325
mov rcx, qword [r14 + 0x18]
test rcx, rcx
jne 0x14005aec8
mov byte [rbp + 0x6f], 1
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroC:Users_test.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_regex_automata_0.3.8_src_nfa_thompsonmap.rs
lea r8, [0x140208130]
mov edx, 0x39
call fcn.14013bf50
jmp 0x14005b12e
mov rbx, r14
xor r13d, r13d
mov r14d, 4
mov rcx, r14
mov rdx, rdi
mov r8, r13
call fcn.1401230d0
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r12
mov word [rbp + 0x30], 2
mov byte [rbp + 0x6f], 1
lea rcx, [rbp - 0x60]
lea r8, [rbp + 0x30]
mov rdx, qword [rbp + 0x50]
call fcn.14001d530
mov rax, qword [rbp - 0x60]
cmp rax, 9
jne 0x14005b05e
mov edi, dword [rbp - 0x58]
movzx eax, word [rbx + 0x20]
mov word [rbp - 0x44], ax
mov rax, qword [rbp + 0x60]
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x60], xmm0
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], edi
mov rdx, qword [rbx + 0x18]
cmp rdx, rsi
jbe 0x14005b114
mov rax, qword [rbx + 0x10]
shl rsi, 5
lea rbx, [rax + rsi]
mov rdx, qword [rax + rsi]
test rdx, rdx
je 0x14005b03f
mov rcx, qword [rbx + 8]
shl rdx, 3
mov r8d, 4
call fcn.140001f30
movaps xmm0, xmmword [rbp - 0x60]
movaps xmm1, xmmword [rbp - 0x50]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
mov dword [r15 + 8], edi
mov qword [r15], 9
jmp 0x14005b0e2
mov ecx, dword [rbp - 0x58]
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [r15 + 0x78], xmm0
movups xmm0, xmmword [rbp + 0xc]
movups xmmword [r15 + 0x6c], xmm0
movups xmm0, xmmword [rbp - 4]
movups xmmword [r15 + 0x5c], xmm0
movups xmm0, xmmword [rbp - 0x14]
movups xmmword [r15 + 0x4c], xmm0
movups xmm0, xmmword [rbp - 0x24]
movups xmmword [r15 + 0x3c], xmm0
movups xmm0, xmmword [rbp - 0x34]
movups xmmword [r15 + 0x2c], xmm0
movups xmm0, xmmword [rbp - 0x44]
movups xmmword [r15 + 0x1c], xmm0
movups xmm0, xmmword [rbp - 0x54]
movups xmmword [r15 + 0xc], xmm0
mov qword [r15], rax
mov dword [r15 + 8], ecx
mov rax, qword [rbp + 0x60]
mov rdx, qword [rax]
test rdx, rdx
je 0x14005b0e2
mov rcx, qword [rax + 8]
shl rdx, 3
mov r8d, 4
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp fcn.140001f30
nop
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov r14, r15
test r14, r14
jne 0x14005af60
mov byte [rbp + 0x6f], 1
mov rcx, r13
mov rdx, r15
call fcn.14013bd90
jmp 0x14005b12e
lea r8, [0x140208160]
mov rcx, rsi
call fcn.14013c000
jmp 0x14005b12e
mov byte [rbp + 0x6f], 1
call fcn.140119360
ud2