Function at 0x18009d0a0
Capabilities:
Check for time delay via gettickcount
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], dl
push rbp
push rsi
push rdi
sub rsp, 0x30
movzx edx, byte [rcx + 8]
mov rbx, rcx
mov r8, qword [0x1805dd188]
movabs rcx, 0x100000001b3
mov r9, qword [0x1805dd178]
movabs rax, 0xcbf29ce484222325
xor rdx, rax
xor ebp, ebp
movzx eax, byte [rbx + 9]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rbx + 0xa]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rbx + 0xb]
imul rdx, rcx
xor rdx, rax
imul rdx, rcx
and rdx, qword [0x1805dd1a0]
add rdx, rdx
mov rcx, qword [r8 + rdx*8 + 8]
cmp rcx, r9
je 0x18009d133
mov eax, dword [rbx + 8]
mov r8, qword [r8 + rdx*8]
cmp eax, dword [rcx + 0x10]
je 0x18009d136
cmp rcx, r8
je 0x18009d133
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x18009d123
jmp 0x18009d136
mov rcx, rbp
test rcx, rcx
mov rax, r9
cmovne rax, rcx
cmp rax, r9
jne 0x18009d153
lea r8, [rbx + 8]
lea rdx, [rsp + 0x20]
call fcn.18009db90
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea edi, [rax + 0x320]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, edi
jae 0x18009d19f
nop dword [rax]
mov rcx, rbx
call fcn.180197230
test al, al
jne 0x18009d19f
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, edi
jb 0x18009d170
mov eax, dword [rbx + 8]
movabs rcx, 0xab54a438726d25d5
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x58], 0x7f800000
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], rcx
mov dword [0x1805870e8], 2
call fcn.1801e4620
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
add eax, 0x64
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
mov eax, dword [rbx + 8]
movabs rsi, 0xb59e4bd37ae292db
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x58], 0x7f800000
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov eax, dword [rbx + 8]
movabs rdi, 0x93a3996368c94158
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x58], 0x7f800000
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], rdi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov eax, dword [rbx + 8]
movabs rcx, 0xc5f68be9613e2d18
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], 1
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov eax, ebp
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587130], rax
mov eax, ebp
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x58], ebp
mov dword [rsp + 0x58], ebp
mov qword [0x180587138], rax
mov dword [rsp + 0x58], 0xff800000
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], rcx
mov rax, qword [rsp + 0x60]
mov qword [0x180587140], rax
mov eax, ebp
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587148], rax
mov eax, ebp
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587150], rax
mov eax, ebp
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587158], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], 1
mov rax, qword [rsp + 0x60]
mov qword [0x180587168], rax
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], 1
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rbp
mov qword [0x180587170], rax
mov dword [rsp + 0x60], 1
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rbp
mov qword [0x180587178], rax
mov dword [rsp + 0x60], 1
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x58], ebp
mov dword [rsp + 0x58], ebp
mov qword [0x180587188], rax
mov dword [rsp + 0x58], ebp
mov qword [0x180587160], rbp
mov qword [0x180587180], rbp
mov dword [0x1805870e8], 0xe
call fcn.1801e4620
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
add eax, 0x64
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
mov rcx, qword [0x1805d7050]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], bpl
jne 0x18009d497
mov edx, dword [rbx + 8]
nop dword [rax]
cmp dword [rax + 0x1c], edx
jge 0x18009d48b
mov rax, qword [rax + 0x10]
jmp 0x18009d491
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], bpl
je 0x18009d480
cmp byte [rcx + 0x19], bpl
jne 0x18009d4c1
mov eax, dword [rcx + 0x1c]
cmp dword [rbx + 8], eax
jl 0x18009d4c1
lea rdx, [rbx + 8]
lea rcx, [0x1805d7050]
call fcn.18009da30
movss xmm0, dword [rax]
movss dword [rsp + 0x58], xmm0
jmp 0x18009d4c9
mov dword [rsp + 0x58], 0x3f800000
mov eax, dword [rbx + 8]
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov dword [0x1805870e8], 2
mov qword [0x1805dd278], rdi
mov dword [0x1805870f8], ebp
call fcn.1801e4620
mov rcx, qword [0x1805d7060]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], bpl
jne 0x18009d547
mov edx, dword [rbx + 8]
nop word [rax + rax]
cmp dword [rax + 0x1c], edx
jge 0x18009d53b
mov rax, qword [rax + 0x10]
jmp 0x18009d541
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], bpl
je 0x18009d530
cmp byte [rcx + 0x19], bpl
jne 0x18009d571
mov eax, dword [rcx + 0x1c]
cmp dword [rbx + 8], eax
jl 0x18009d571
lea rdx, [rbx + 8]
lea rcx, [0x1805d7060]
call fcn.18009da30
movss xmm0, dword [rax]
movss dword [rsp + 0x58], xmm0
jmp 0x18009d579
mov dword [rsp + 0x58], 0x3f800000
mov eax, dword [rbx + 8]
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587120], rax
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x60]
mov qword [0x180587128], rax
mov dword [0x1805870e8], 2
mov qword [0x1805dd278], rsi
mov dword [0x1805870f8], ebp
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
pop rsi
pop rbp
jmp fcn.1801e4620