Function at 0x1800042f0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x9c0]
sub rsp, 0xac0
mov rax, qword [0x180110c00]
xor rax, rsp
mov qword [rbp + 0x9b0], rax
mov r14, rdx
mov rdi, rcx
cmp qword [rcx], 0
jne 0x180004753
mov eax, dword [rcx + 0x604]
test eax, eax
je 0x180004753
cmp eax, 5
jne 0x1800045f9
xorps xmm0, xmm0
movups xmmword [rbp + 0x990], xmm0
movdqa xmm1, xmmword [0x1800e9be0]
movdqu xmmword [rbp + 0x9a0], xmm1
mov word [rbp + 0x990], 0x3a
lea rdx, [rcx + 0x608]
movups xmmword [rbp + 0x970], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x980], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180004386
lea rcx, [rbp + 0x970]
call fcn.180002d40
nop
lea r8, [rbp + 0x990]
lea rdx, [rbp + 0x970]
lea rcx, [rsp + 0x30]
call fcn.180090330
nop
mov rdx, qword [rbp + 0x988]
cmp rdx, 0xf
jbe 0x1800043f7
inc rdx
mov rcx, qword [rbp + 0x970]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800043f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004784
call fcn.1800b78c8
movdqa xmm0, xmmword [0x1800e9bd0]
movdqu xmmword [rbp + 0x980], xmm0
mov byte [rbp + 0x970], 0
mov rdx, qword [rbp + 0x9a8]
cmp rdx, 0xf
jbe 0x180004457
inc rdx
mov rcx, qword [rbp + 0x990]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000444a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000478a
call fcn.1800b78c8
movdqa xmm0, xmmword [0x1800e9bd0]
movdqu xmmword [rbp + 0x9a0], xmm0
mov byte [rbp + 0x990], 0
mov rax, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
sub rax, rbx
and rax, 0xffffffffffffffe0
xor esi, esi
cmp rax, 0xa0
je 0x180004495
lea rcx, str.invalid
call fcn.180003ff0
xor r14b, r14b
jmp 0x180004544
sub rbx, 0xffffffffffffff80
call fcn.1800c6284
mov r15, rax
cmp qword [rbx + 0x18], 0xf
jbe 0x1800044ab
mov rbx, qword [rbx]
mov dword [rax], esi
mov r8d, 0xa
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.1800c7690
cmp rbx, qword [rsp + 0x48]
je 0x180004790
cmp dword [r15], 0x22
je 0x18000479d
mov rcx, qword [rsp + 0x30]
lea r9, [rcx + 0x60]
cmp qword [r9 + 0x18], 0xf
jbe 0x1800044e8
mov r9, qword [r9]
lea r8, [rcx + 0x40]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800044f6
mov r8, qword [r8]
lea rdx, [rcx + 0x20]
cmp qword [rdx + 0x18], 0xf
jbe 0x180004504
mov rdx, qword [rdx]
cmp qword [rcx + 0x18], 0xf
jbe 0x18000450e
mov rcx, qword [rcx]
mov byte [rsp + 0x28], sil
mov dword [rsp + 0x20], eax
call fcn.1800967c0
mov qword [rdi], rax
test rax, rax
jne 0x180004535
lea rcx, str.not_find
call fcn.180003ff0
xor r14b, r14b
jmp 0x180004544
mov rdx, r14
mov rcx, rdi
call fcn.1800047b0
movzx r14d, al
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x1800045f0
mov rdi, qword [rsp + 0x38]
cmp rbx, rdi
je 0x1800045b7
nop dword [rax]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x18000459a
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x180004595
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18000477e
mov rcx, r8
call fcn.1800b78c8
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
add rbx, 0x20
cmp rbx, rdi
jne 0x180004560
mov rbx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800045e8
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000477e
mov rcx, rbx
call fcn.1800b78c8
movzx eax, r14b
jmp 0x180004758
lea rbx, [rcx + 0x5f8]
movzx ecx, byte [rbx]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rbx + 1]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 2]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 3]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 4]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 5]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 6]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rbx + 7]
xor rcx, rax
imul rdx, rcx
and rdx, qword [0x180112f40]
add rdx, rdx
mov rax, qword [0x180112f28]
mov rcx, qword [rax + rdx*8 + 8]
mov r8, qword [0x180112f18]
xor esi, esi
cmp rcx, r8
je 0x1800046b1
mov rdx, qword [rax + rdx*8]
mov rax, qword [rbx]
cmp rax, qword [rcx + 0x10]
je 0x1800046b4
nop dword [rax]
cmp rcx, rdx
je 0x1800046b1
mov rcx, qword [rcx + 8]
cmp rax, qword [rcx + 0x10]
jne 0x1800046a0
jmp 0x1800046b4
mov rcx, rsi
mov rax, r8
test rcx, rcx
cmovne rax, rcx
cmp rax, r8
jne 0x1800046f9
mov rdx, r14
lea rcx, [rbp + 0x970]
call fcn.180003880
mov rbx, rax
lea rcx, [rsp + 0x60]
mov rdx, rdi
mov r8d, 0xa08
call fcn.1800dfbf0
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.180006a30
mov al, 1
jmp 0x180004758
mov byte [rdi + 0x108], sil
mov word [rdi + 0x18], si
and qword [rdi + 0x180], 0xffffffffffffdfff
mov r8, rbx
lea rdx, [rsp + 0x48]
lea rcx, [0x180112f10]
call fcn.1800033d0
mov rdx, qword [rax]
mov rax, qword [rdx + 0x20]
mov qword [rdi], rax
mov r8, rbx
lea rdx, [rsp + 0x48]
lea rcx, [0x180112f10]
call fcn.1800033d0
mov rax, qword [rax]
mov eax, dword [rax + 0x18]
mov dword [rdi + 0x604], eax
mov rdx, r14
mov rcx, rdi
call fcn.1800047b0
mov rcx, qword [rbp + 0x9b0]
xor rcx, rsp
call fcn.1800b7dc0
mov rbx, qword [rsp + 0xb00]
add rsp, 0xac0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.1800c6138
nop
call fcn.1800c6138
nop
call fcn.1800c6138
int3
lea rcx, str.invalid_stoi_argument
call fcn.1800b4f84
int3
lea rcx, str.stoi_argument_out_of_range
call fcn.1800b4fcc
int3