Function at 0x18002db10
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1060]
mov eax, 0x1160
call fcn.1800ae7e0
sub rsp, rax
movaps xmmword [rsp + 0x1150], xmm6
movaps xmmword [rsp + 0x1140], xmm7
movaps xmmword [rsp + 0x1130], xmm8
movaps xmmword [rsp + 0x1120], xmm9
movaps xmmword [rsp + 0x1110], xmm10
movaps xmmword [rsp + 0x1100], xmm11
mov rax, qword [0x1800e4040]
xor rax, rsp
mov qword [rbp + 0xff8], rax
mov r15, rcx
mov qword [rsp + 0x50], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xfb0], xmm0
mov qword [rbp + 0xfc0], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xfb0], xmm1
xor r13d, r13d
mov qword [rbp + 0xfc0], r13
movups xmmword [rbp + 0xfc8], xmm0
mov qword [rbp + 0xfd8], rax
movdqu xmmword [rbp + 0xfc8], xmm1
mov qword [rbp + 0xfd8], r13
movups xmmword [rbp + 0xfe0], xmm0
mov qword [rbp + 0xff0], rax
movdqu xmmword [rbp + 0xfe0], xmm1
mov qword [rbp + 0xff0], r13
mov eax, dword [0x1800e6530]
test al, 1
jne 0x18002dca9
or eax, 1
mov dword [0x1800e6530], eax
movups xmmword [0x1800e64f0], xmm0
movups xmmword [0x1800e6500], xmm0
movups xmmword [0x1800e6510], xmm0
movups xmmword [0x1800e6520], xmm0
mov dword [rsp + 0x38], r13d
mov eax, r13d
mov dword [0x1800e64f0], eax
mov qword [0x1800e64f8], r13
mov qword [0x1800e6500], r13
lea ecx, [r13 + 0x18]
call fcn.1800ad6dc
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1800e64f8], rax
mov qword [0x1800e6508], r13
xorps xmm0, xmm0
movdqa xmmword [0x1800e6510], xmm0
mov qword [0x1800e6520], 7
mov qword [0x1800e6528], 8
mov dword [0x1800e64f0], 0x3f800000
mov r8, qword [0x1800e64f8]
lea edx, [r13 + 0x10]
lea rcx, [0x1800e6508]
call fcn.18002c270
nop
lea rcx, [0x1800b84e0]
call fcn.1800ada70
nop
mov rax, qword [0x1800e65b0]
test rax, rax
jne 0x18002dd61
lea rcx, [r15 + 0x30]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x18002e443
cmp dword [r15 + 0x7c], 0x7fffffff
je 0x18002e45d
lea rcx, [0x1800e64f0]
call fcn.18002c680
mov rax, qword [r15]
cmp rax, qword [r15 + 8]
je 0x18002dcf2
mov qword [r15 + 8], rax
mov rax, qword [r15 + 0x18]
cmp rax, qword [r15 + 0x20]
je 0x18002dd00
mov qword [r15 + 0x20], rax
lea rcx, [r15 + 0x30]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
mov rcx, qword [rbp + 0xfe0]
test rcx, rcx
je 0x18002e488
mov rax, qword [rbp + 0xff0]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002e471
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002e471
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rbx, qword [rax]
test rbx, rbx
jne 0x18002dd6e
mov rbx, r13
jmp 0x18002dd88
mov rbx, qword [rbx + 0x120]
mov edx, 0x270
mov rcx, rbx
call fcn.1800a7a10
test al, al
cmove rbx, r13
mov edx, 0x6a0
mov rcx, rbx
call fcn.1800a7a10
test al, al
je 0x18002e435
cmp byte [rbx + 0x538], 0
jne 0x18002e435
mov rax, qword [0x1800e69a8]
mov rcx, qword [0x1800e69b0]
cmp rax, rcx
je 0x18002dcb9
mov edx, dword [rbx + 0x270]
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rsp + 0x78], xmm1
cmp edx, dword [rsp + 0x78]
je 0x18002ddf7
add rax, 0x18
cmp rax, rcx
jne 0x18002ddd0
jmp 0x18002dcb9
mov rax, qword [rsp + 0x78]
shr rax, 0x20
cmp eax, 0x18d
jne 0x18002dcb9
call fcn.18002c190
mov rbx, rax
mov edx, 0x570
mov rcx, rax
call fcn.1800a7a10
test al, al
je 0x18002e418
mov rbx, qword [rbx + 0x2a0]
mov edx, 0x280
mov rcx, rbx
call fcn.1800a7a10
test al, al
je 0x18002e418
test rbx, rbx
je 0x18002e418
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.1800a8de0
mov r12d, r13d
mov rcx, qword [0x1800e65b0]
mov rax, qword [rcx]
mov rdi, qword [rbp + 0xfb8]
cmp dword [rax + 0x140], r13d
jle 0x18002df5a
nop dword [rax + rax]
mov rax, qword [rax + 0x138]
mov r14, qword [rax + r13]
test r14, r14
je 0x18002df40
cmp qword [r14 + 0x98], 0
je 0x18002df40
mov eax, dword [r14 + 0xa0]
test eax, eax
je 0x18002df40
xor ebx, ebx
test eax, eax
jle 0x18002df40
xor esi, esi
nop dword [rax]
mov rax, qword [r14 + 0x98]
mov rcx, qword [rsi + rax]
mov qword [rsp + 0x38], rcx
test rcx, rcx
je 0x18002df2a
mov rax, qword [rbp + 0xfb0]
cmp rax, rdi
je 0x18002deef
cmp qword [rax], rcx
je 0x18002df2a
add rax, 8
cmp rax, rdi
jne 0x18002dee1
cmp rdi, qword [rbp + 0xfc0]
je 0x18002df0f
mov qword [rdi], rcx
mov rdi, qword [rbp + 0xfb8]
add rdi, 8
mov qword [rbp + 0xfb8], rdi
jmp 0x18002df2a
lea r8, [rsp + 0x38]
mov rdx, rdi
lea rcx, [rbp + 0xfb0]
call fcn.180024bf0
mov rdi, qword [rbp + 0xfb8]
inc ebx
add rsi, 8
cmp ebx, dword [r14 + 0xa0]
jl 0x18002dec0
mov rcx, qword [0x1800e65b0]
inc r12d
add r13, 8
mov rax, qword [rcx]
cmp r12d, dword [rax + 0x140]
jl 0x18002de80
xor r13d, r13d
mov r12, qword [rbp + 0xfb0]
cmp r12, rdi
je 0x18002e232
movss xmm9, dword [rsp + 0x60]
movss xmm10, dword [rsp + 0x5c]
movss xmm11, dword [rsp + 0x58]
movss xmm8, dword [0x1800cf3d0]
movss xmm7, dword [0x1800cf4b0]
movabs r15, 0xcbf29ce484222325
nop word [rax + rax]
mov r14, qword [r12]
mov edx, 0x220
mov rcx, r14
call fcn.1800a7a10
test al, al
je 0x18002e220
mov esi, dword [r14 + 0x18]
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x48], r13d
lea rdx, [rsp + 0x58]
mov rcx, r14
call fcn.1800a8de0
mov rbx, rax
movss xmm0, dword [rax + 4]
subss xmm0, xmm10
movaps xmm1, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movss xmm0, dword [rbx]
subss xmm0, xmm11
movaps xmm1, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movss xmm0, dword [rbx + 8]
subss xmm0, xmm9
movaps xmm1, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x18002e02c
sqrtss xmm6, xmm6
jmp 0x18002e037
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
movss dword [rsp + 0x4c], xmm6
mov eax, esi
shr eax, 8
movzx edx, al
movzx eax, sil
xor rax, r15
movabs rbx, 0x100000001b3
imul rax, rbx
xor rdx, rax
imul rdx, rbx
mov eax, esi
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, rbx
mov rax, rsi
shr rax, 0x18
xor rdx, rax
imul rdx, rbx
and rdx, qword [0x1800e6520]
add rdx, rdx
mov rcx, qword [0x1800e6508]
mov rax, qword [rcx + rdx*8 + 8]
mov r8, qword [0x1800e64f8]
cmp rax, r8
je 0x18002e0c0
mov rcx, qword [rcx + rdx*8]
cmp esi, dword [rax + 0x10]
je 0x18002e0c3
nop dword [rax]
cmp rax, rcx
je 0x18002e0c0
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x18002e0b0
jmp 0x18002e0c3
mov rax, r13
mov rcx, r8
test rax, rax
cmovne rcx, rax
cmp rcx, r8
je 0x18002e0de
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x48], eax
jmp 0x18002e180
mov rbx, qword [r14 + 0x10]
mov edx, 0xa0
mov rcx, rbx
call fcn.1800a7a10
test al, al
je 0x18002e15f
nop dword [rax]
nop word [rax + rax]
mov rax, qword [0x1800e69a8]
mov rcx, qword [0x1800e69b0]
cmp rax, rcx
je 0x18002e14a
mov edx, dword [rbx + 0x18]
nop word [rax + rax]
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x70], xmm1
cmp edx, dword [rbp - 0x70]
je 0x18002e13a
add rax, 0x18
cmp rax, rcx
jne 0x18002e120
jmp 0x18002e14a
mov rax, qword [rbp - 0x70]
shr rax, 0x20
mov dword [rsp + 0x48], eax
test eax, eax
jne 0x18002e15f
mov rbx, qword [rbx + 0x40]
mov edx, 0xa0
mov rcx, rbx
call fcn.1800a7a10
test al, al
jne 0x18002e100
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x68]
call fcn.18002c920
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp + 0xfe0]
mov rcx, qword [rbp + 0xfe8]
cmp rax, rcx
je 0x18002e1a7
movss xmm0, dword [rax]
ucomiss xmm0, xmm6
jp 0x18002e19e
je 0x18002e1c9
add rax, 4
cmp rax, rcx
jne 0x18002e193
mov rdx, qword [rbp + 0xfd0]
cmp rdx, qword [rbp + 0xfd8]
je 0x18002e1e0
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rdx], xmm0
add qword [rbp + 0xfd0], 0x10
jmp 0x18002e1f1
movaps xmm1, xmm7
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_nextafterf]
movaps xmm6, xmm0
movss dword [rsp + 0x4c], xmm0
jmp 0x18002e180
lea r8, [rsp + 0x40]
lea rcx, [rbp + 0xfc8]
call fcn.18002d950
mov rdx, qword [rbp + 0xfe8]
cmp rdx, qword [rbp + 0xff0]
je 0x18002e20f
movss dword [rdx], xmm6
add qword [rbp + 0xfe8], 4
jmp 0x18002e220
lea r8, [rsp + 0x4c]
lea rcx, [rbp + 0xfe0]
call fcn.18002cbf0
add r12, 8
cmp r12, rdi
jne 0x18002dfa0
mov r15, qword [rsp + 0x50]
mov rsi, qword [rbp + 0xfc8]
mov r14, qword [rbp + 0xfd0]
mov rdi, r14
sub rdi, rsi
sar rdi, 4
cmp rdi, 0x20
jg 0x18002e260
mov rdx, r14
mov rcx, rsi
call fcn.18002cdd0
jmp 0x18002e324
mov rax, rdi
cqo
sub rax, rdx
sar rax, 1
mov rcx, rdi
sub rcx, rax
movabs rbx, 0x7fffffffffffffff
cmp rcx, rbx
cmovl rbx, rcx
cmp rcx, 0x100
ja 0x18002e291
mov qword [rbp - 0x58], rcx
jmp 0x18002e2e4
movabs rax, 0xfffffffffffffff
cmp rbx, rax
ja 0x18002e2d1
test rbx, rbx
jle 0x18002e2d1
nop word [rax + rax]
mov rcx, rbx
shl rcx, 4
lea rdx, [0x1800b9b0c]
call fcn.1800ada88
test rax, rax
jne 0x18002e38c
shr rbx, 1
jne 0x18002e2b0
mov rax, r13
mov rcx, rax
call fcn.1800ad6d4
mov qword [rbp - 0x58], 0x100
lea rax, [rbp - 0x50]
mov qword [rbp - 0x60], rax
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x28], al
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x60]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.18002d850
nop
cmp qword [rbp - 0x58], 0x100
jbe 0x18002e324
mov rcx, qword [rbp - 0x60]
call fcn.1800ad6d4
lea rcx, [r15 + 0x30]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x18002e443
cmp dword [r15 + 0x7c], 0x7fffffff
je 0x18002e45d
mov rax, qword [r15]
cmp rax, qword [r15 + 8]
je 0x18002e351
mov qword [r15 + 8], rax
mov rdi, qword [rbp + 0xfb8]
mov rbx, qword [rbp + 0xfb0]
cmp rbx, rdi
je 0x18002e3b8
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbx]
mov qword [rsp + 0x50], rax
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x18002e3a2
mov qword [rdx], rax
add qword [r15 + 8], 8
jmp 0x18002e3af
cmp rbx, 0x100
jbe 0x18002e2d4
mov qword [rbp - 0x58], rbx
jmp 0x18002e2e8
lea r8, [rsp + 0x50]
mov rcx, r15
call fcn.180024bf0
add rbx, 8
cmp rbx, rdi
jne 0x18002e370
mov rax, qword [r15 + 0x18]
cmp rax, qword [r15 + 0x20]
je 0x18002e3c6
mov qword [r15 + 0x20], rax
mov rsi, qword [rbp + 0xfd0]
mov rdi, qword [rbp + 0xfc8]
cmp rdi, rsi
je 0x18002dd00
nop dword [rax]
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x40], xmm0
mov rdx, qword [r15 + 0x20]
cmp rdx, qword [r15 + 0x28]
je 0x18002e3fc
movups xmmword [rdx], xmm0
add qword [r15 + 0x20], 0x10
jmp 0x18002e40a
lea r8, [rsp + 0x40]
lea rcx, [r15 + 0x18]
call fcn.18002d950
add rdi, 0x10
cmp rdi, rsi
jne 0x18002e3e0
jmp 0x18002dd00
lea rcx, [r15 + 0x30]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x18002e443
cmp dword [r15 + 0x7c], 0x7fffffff
je 0x18002e45d
jmp 0x18002dce5
lea rcx, [r15 + 0x30]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18002e44f
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
cmp dword [r15 + 0x7c], 0x7fffffff
jne 0x18002dcd9
mov dword [r15 + 0x7c], 0x7ffffffe
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
call fcn.1800ad6cc
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xfe0], xmm0
mov qword [rbp + 0xff0], r13
mov rcx, qword [rbp + 0xfc8]
test rcx, rcx
je 0x18002e4e1
mov rdx, qword [rbp + 0xfd8]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002e4ca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002e4ca
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800ad6cc
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xfc8], xmm0
mov qword [rbp + 0xfd8], r13
mov rcx, qword [rbp + 0xfb0]
test rcx, rcx
je 0x18002e53a
mov rdx, qword [rbp + 0xfc0]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002e523
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002e523
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800ad6cc
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xfb0], xmm0
mov qword [rbp + 0xfc0], r13
mov rcx, qword [rbp + 0xff8]
xor rcx, rsp
call fcn.1800ad680
lea r11, [rsp + 0x1160]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret