Function at 0x140033a20
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x14006f040]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rsi, qword [0x140078ea8]
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
xor r15d, r15d
mov qword [rsp + 0x48], r15
mov rcx, rsi
call fcn.140032d50
mov rcx, rsi
call fcn.140033610
mov rdi, qword [rsi + 0x88]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x140033b6e
lea rax, [rbp - 0x71]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x69]
mov qword [rsp + 0x30], rax
mov r14d, 0xff
nop word [rax + rax]
mov eax, dword [rbx + 0x10]
mov dword [rbp - 0x79], eax
mov rax, qword [rbx + 0x18]
mov qword [rbp - 0x71], rax
mov qword [rbp - 0x31], r15
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x140033ad8
mov rax, qword [rcx]
lea rdx, [rbp - 0x69]
call qword [rax]
mov qword [rbp - 0x31], rax
lea rdx, [rbx + 0x60]
lea rcx, [rbp - 0x29]
call fcn.14003b020
nop
lea rdx, [rbx + 0x80]
lea rcx, [rbp - 9]
call fcn.14003b020
movzx eax, byte [rbx + 0xa0]
mov byte [rbp + 0x17], al
movzx eax, byte [rbx + 0xa1]
mov byte [rbp + 0x18], al
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
cmp rax, qword [rbp - 0x71]
je 0x140033b23
mov edx, 1
cmovl edx, r14d
test dl, dl
js 0x140033b56
cmp byte [rbp + 0x17], 0
jne 0x140033b56
mov eax, dword [rbp - 0x79]
mov dword [rsp + 0x20], eax
mov rdx, qword [rsp + 0x40]
cmp rdx, qword [rsp + 0x48]
je 0x140033b46
mov dword [rdx], eax
add qword [rsp + 0x40], 4
jmp 0x140033b56
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x38]
call fcn.1400477b0
nop
lea rcx, [rbp - 0x71]
call fcn.140032ba0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rdi
jne 0x140033ab0
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
cmp rdi, r14
je 0x140033cae
movabs r13, 0xcbf29ce484222325
movabs r12, 0x100000001b3
nop word [rax + rax]
mov r8d, dword [rdi]
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
xor rax, r13
imul rax, r12
xor rdx, rax
imul rdx, r12
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r12
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r12
mov rcx, rdx
and rcx, qword [rsi + 0xb0]
add rcx, rcx
mov rax, qword [rsi + 0x98]
mov rbx, qword [rax + rcx*8 + 8]
cmp rbx, qword [rsi + 0x88]
je 0x140033c19
mov rax, qword [rax + rcx*8]
cmp r8d, dword [rbx + 0x10]
je 0x140033c1c
cmp rbx, rax
je 0x140033c19
mov rbx, qword [rbx + 8]
cmp r8d, dword [rbx + 0x10]
jne 0x140033c08
jmp 0x140033c1c
mov rbx, r15
test rbx, rbx
je 0x140033c9c
and rdx, qword [rsi + 0xb0]
add rdx, rdx
mov rax, qword [rsi + 0x98]
lea rcx, [rax + rdx*8]
lea r8, [rax + rdx*8]
mov rax, qword [rcx]
cmp qword [r8 + 8], rbx
jne 0x140033c62
cmp rax, rbx
jne 0x140033c58
mov rax, qword [rsi + 0x88]
mov qword [rcx], rax
mov qword [r8 + 8], rax
jmp 0x140033c6d
mov rax, qword [rbx + 8]
mov qword [r8 + 8], rax
jmp 0x140033c6d
cmp rax, rbx
jne 0x140033c6d
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
dec qword [rsi + 0x90]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
lea rcx, [rbx + 0x18]
call fcn.140032ba0
mov edx, 0xa8
mov rcx, rbx
call fcn.140052c54
add rdi, 4
cmp rdi, r14
jne 0x140033ba0
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x140033cef
mov rdx, qword [rsp + 0x48]
sub rdx, rdi
and rdx, 0xfffffffffffffffc
mov rax, rdi
cmp rdx, 0x1000
jb 0x140033ce7
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140033ce7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.140052c54
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1400527c0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret