Function at 0x1400a3870
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
push r12
sub rsp, 0x88
movaps xmmword [rsp + 0x70], xmm6
mov rax, qword [0x1401b9d88]
xor rax, rsp
mov qword [rsp + 0x60], rax
movss xmm0, dword [rcx + 0x18]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov rdi, rcx
jp 0x1400a3bf8
jne 0x1400a3bf8
movss xmm0, dword [rcx + 0x1c]
ucomiss xmm0, xmm1
jp 0x1400a3bf8
jne 0x1400a3bf8
mov r8, qword [0x1401c2430]
xor ebx, ebx
mov qword [r11 + 0x18], r13
movabs r12, 0x100000001b3
mov qword [r11 + 0x20], r14
mov eax, dword [r8 + 0x140]
cmp dword [rcx + 4], eax
jne 0x1400a3af9
mov r9d, dword [rcx + 0x14]
movabs rcx, 0xcbf29ce484222325
mov r10, qword [r8 + 0x228]
mov eax, r9d
shr eax, 8
movzx edx, al
movzx eax, r9b
xor rax, rcx
mov qword [r11 - 0x28], r15
imul rax, r12
xor rdx, rax
mov eax, r9d
imul rdx, r12
shr eax, 0x10
movzx ecx, al
mov eax, r9d
xor rdx, rcx
shr rax, 0x18
mov rcx, qword [r8 + 0x250]
imul rdx, r12
xor rdx, rax
imul rdx, r12
and rcx, rdx
mov rdx, qword [r8 + 0x238]
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, r10
je 0x1400a3977
mov rcx, qword [rdx + rcx*8]
cmp r9d, dword [rax + 0x10]
je 0x1400a397a
cmp rax, rcx
je 0x1400a3977
mov rax, qword [rax + 8]
cmp r9d, dword [rax + 0x10]
jne 0x1400a3966
jmp 0x1400a397a
mov rax, rbx
test rax, rax
cmove rax, r10
movzx r15d, word [rax + 0x14]
cmp r15d, 0x70
je 0x1400a3ac5
movups xmm6, xmmword [rax + 0x14]
mov qword [rsp + 0xb8], rbp
lea r13, [r8 + 0x268]
lea rbp, [r8 + 0x260]
movd eax, xmm6
mov rcx, rbp
movzx esi, ax
mov r14d, esi
mov edx, esi
shr r14d, 8
call fcn.140046fd0
test al, al
je 0x1400a3a55
mov rdx, qword [rbp + 0x20]
movabs rax, 0xcbf29ce484222325
mov r8, qword [rbp + 0x10]
movzx ecx, sil
xor rcx, rax
mov eax, r14d
imul rcx, r12
xor rcx, rax
movabs rax, 0x8a97b0004e7feab
imul rcx, rax
and rcx, qword [rbp + 0x38]
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, r8
je 0x1400a3a25
mov rdx, qword [rdx + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x1400a3a28
cmp rax, rdx
je 0x1400a3a25
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x1400a3a15
jmp 0x1400a3a28
mov rax, rbx
test rax, rax
cmove rax, r8
movzx ecx, byte [rax + 0x16]
test ecx, ecx
je 0x1400a3a55
mov esi, reloc.WLDAP32.dll_Ordinal_200
cmp ecx, esi
jae 0x1400a3a6c
sub esi, ecx
psrldq xmm6, 0xc
movd eax, xmm6
movzx ecx, al
cmp esi, ecx
cmovge esi, ecx
jmp 0x1400a3a6e
mov eax, dword [rbp]
cmp rax, qword [rbp + 0x18]
jbe 0x1400a3a6c
psrldq xmm6, 0xc
movd eax, xmm6
movzx esi, al
jmp 0x1400a3a6e
mov esi, ebx
mov edx, r15d
mov rcx, rbp
call fcn.140046fd0
mov rbp, qword [rsp + 0xb8]
lea r8, [rsp + 0x28]
mov dword [rsp + 0x28], r15d
lea rdx, [rsp + 0x30]
mov rcx, r13
test al, al
jne 0x1400a3ab7
mov word [rsp + 0x20], r15w
mov byte [rsp + 0x22], sil
mov byte [rsp + 0x23], bl
call fcn.140016690
mov rcx, qword [rax]
mov eax, dword [rsp + 0x20]
mov dword [rcx + 0x14], eax
jmp 0x1400a3aea
call fcn.140016690
mov rcx, qword [rax]
add byte [rcx + 0x16], sil
jmp 0x1400a3aea
movzx ecx, byte [rax + 0x20]
add dword [0x1401c23e0], ecx
lea rcx, [rsp + 0x28]
call fcn.1400a3390
mov rcx, qword [rax]
mov qword [0x1401c23e8], rcx
mov byte [0x1401c23d9], 1
mov r8, qword [0x1401c2430]
mov r15, qword [rsp + 0x80]
mov r9d, dword [rdi + 0x14]
movabs rax, 0xcbf29ce484222325
mov r11, qword [r8 + 0x228]
mov r14, qword [rsp + 0xc8]
mov r13, qword [rsp + 0xc0]
movzx edx, r9b
xor rdx, rax
mov eax, r9d
imul rdx, r12
shr eax, 8
movzx ecx, al
mov eax, r9d
xor rdx, rcx
shr eax, 0x10
imul rdx, r12
movzx ecx, al
mov eax, r9d
xor rdx, rcx
shr rax, 0x18
mov rcx, qword [r8 + 0x250]
imul rdx, r12
xor rdx, rax
imul rdx, r12
and rcx, rdx
mov rdx, qword [r8 + 0x238]
add rcx, rcx
mov rdi, qword [rdx + rcx*8 + 8]
mov rax, rdi
cmp rdi, r11
je 0x1400a3b94
mov r10, qword [rdx + rcx*8]
cmp r9d, dword [rdi + 0x10]
je 0x1400a3b91
cmp rax, r10
je 0x1400a3b94
mov rax, qword [rax + 8]
cmp r9d, dword [rax + 0x10]
jne 0x1400a3b82
mov rbx, rax
test rbx, rbx
je 0x1400a3d93
mov rax, qword [rdx + rcx*8]
cmp rdi, rbx
jne 0x1400a3bc1
cmp rax, rbx
jne 0x1400a3bb6
mov qword [rdx + rcx*8], r11
mov qword [rdx + rcx*8 + 8], r11
jmp 0x1400a3bcd
mov r11, qword [rbx + 8]
mov qword [rdx + rcx*8 + 8], r11
jmp 0x1400a3bcd
cmp rax, rbx
jne 0x1400a3bcd
mov rax, qword [rbx]
mov qword [rdx + rcx*8], rax
mov rcx, qword [rbx]
mov edx, Ordinal_41
dec qword [r8 + 0x230]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
mov rcx, rbx
call fcn.1401433c0
jmp 0x1400a3d93
mov eax, dword [rcx + 4]
cmp eax, 0xffffffff
jne 0x1400a3cbf
mov rax, qword [0x1401c2430]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
inc dword [rax + 0x190]
movzx eax, word [rcx + 0x14]
movss xmm0, dword [rcx + 0x18]
movss xmm1, dword [rcx + 0x1c]
mov word [rsp + 0x40], ax
cvttss2si eax, dword [rcx + 0x10]
movss dword [rsp + 0x44], xmm0
mov byte [rsp + 0x4c], al
movzx eax, byte [rcx + 0xc]
mov rcx, qword [0x1401c2430]
movss dword [rsp + 0x48], xmm1
mov byte [rsp + 0x4d], al
movups xmm6, xmmword [rsp + 0x40]
mov ebx, dword [rcx + 0x190]
add rcx, 0x220
mov dword [rsp + 0x50], ebx
call fcn.140016450
mov rcx, qword [rax]
movups xmmword [rcx + 0x14], xmm6
mov dword [rcx + 0x24], ebx
cmp dword [rdi + 0x14], 0x70
jne 0x1400a3d93
cmp byte [0x1401c23da], 0
je 0x1400a3d93
mov byte [0x1401c23db], 1
cvttss2si eax, dword [rdi + 0x10]
add dword [0x1401c23f0], eax
movss xmm0, dword [rdi + 0x18]
movss dword [0x1401c2790], xmm0
movss xmm1, dword [rdi + 0x1c]
movss dword [0x1401c2794], xmm1
jmp 0x1400a3d93
cmp eax, 0xfffffffd
jne 0x1400a3d93
mov r8d, dword [rcx + 8]
movabs r12, 0x100000001b3
mov r9, qword [0x1401c2430]
movabs rax, 0xcbf29ce484222325
movzx edx, r8b
xor rdx, rax
mov eax, r8d
shr eax, 8
movzx ecx, al
mov eax, r8d
imul rdx, r12
shr eax, 0x10
xor rdx, rcx
movzx ecx, al
imul rdx, r12
mov eax, r8d
xor rdx, rcx
shr rax, 0x18
mov rcx, qword [r9 + 0x238]
imul rdx, r12
xor rdx, rax
mov rax, qword [r9 + 0x250]
imul rdx, r12
and rax, rdx
mov rdx, qword [r9 + 0x228]
add rax, rax
mov rbx, qword [rcx + rax*8 + 8]
cmp rbx, rdx
je 0x1400a3d61
mov rax, qword [rcx + rax*8]
cmp r8d, dword [rbx + 0x10]
je 0x1400a3d63
nop
cmp rbx, rax
je 0x1400a3d61
mov rbx, qword [rbx + 8]
cmp r8d, dword [rbx + 0x10]
jne 0x1400a3d50
jmp 0x1400a3d63
xor ebx, ebx
test rbx, rbx
cmove rbx, rdx
cmp rbx, rdx
je 0x1400a3d93
movzx eax, word [rdi + 0x14]
mov word [rbx + 0x14], ax
movss xmm0, dword [rdi + 0x18]
movss xmm1, dword [rdi + 0x1c]
movss dword [rbx + 0x18], xmm0
movss dword [rbx + 0x1c], xmm1
cvttss2si eax, dword [rdi + 0x10]
mov byte [rbx + 0x20], al
xor al, al
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1401434e0
movaps xmm6, xmmword [rsp + 0x70]
add rsp, 0x88
pop r12
pop rdi
pop rsi
pop rbx
ret