Function at 0x1003cf00
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100500dd
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push esi
mov eax, dword [0x1006a89c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov esi, dword [ebp + 8]
cmovae ecx, esi
mov dword [ebp - 4], 0
setae dl
mov byte [ebp - 0xd], 0
mov byte [ebp - 0xe], dl
mov al, byte [ecx]
test al, al
je 0x1003cf6a
movsx eax, al
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
push eax
lea eax, [ecx + 1]
push eax
call fcn.10040eb0
mov dl, byte [ebp - 0xe]
add esp, 8
jmp 0x1003cf6f
mov eax, 0x811c9dc5
cmp dword [0x100a224c], eax
movss xmm2, dword [0x1006a4f0]
movss xmm4, dword [0x1006a500]
sete byte [ebp - 0xe]
movss xmm3, dword [0x1006a4f4]
cvttss2si eax, xmm2
cvttss2si ecx, xmm3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm4, xmm0
jbe 0x1003d04d
movss xmm1, dword [0x1006a504]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1003d04d
add eax, 0xfe
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm4
jbe 0x1003d04d
lea eax, [ecx + 0xf]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003d04d
cmp byte [0x100a1c5c], 0
jne 0x1003d04d
cmp byte [0x100a2021], 0
je 0x1003d04d
cmp byte [0x100a2121], 0
jne 0x1003d04d
cmp byte [ebp + 0x20], 0
movss dword [0x1006a51c], xmm2
movss dword [0x1006a520], xmm3
jne 0x1003d018
mov byte [ebp - 0xd], 1
jmp 0x1003d04d
test dl, dl
lea eax, [ebp + 8]
push 0x811c9dc5
cmovne eax, esi
push eax
call fcn.10040eb0
movss xmm2, dword [0x1006a4f0]
add esp, 8
movss xmm3, dword [0x1006a4f4]
mov dword [0x100a224c], eax
mov dword [0x100a1c60], 8
cvttss2si eax, dword [0x100a1c58]
mov ecx, dword [0x100a22d4]
sub esp, 0x10
mov dword [ebp - 0x28], 0x19
mov dword [ebp - 0x24], 0x19
mov dword [ebp - 0x20], 0x19
mov dword [ebp - 0x2c], eax
mov eax, esp
movups xmm0, xmmword [ebp - 0x2c]
sub esp, 0x10
movups xmmword [eax], xmm0
mov dword [esp + 0xc], 0x41700000
mov dword [esp + 8], 0x437e0000
movss dword [esp + 4], xmm3
movss dword [esp], xmm2
call fcn.10049790
cmp byte [ebp - 0xd], 0
jne 0x1003d0c5
cmp byte [ebp - 0xe], 0
jne 0x1003d0c5
mov dword [ebp - 0x28], 0x3c
mov dword [ebp - 0x24], 0x3c
mov dword [ebp - 0x20], 0x3c
jmp 0x1003d0da
mov dword [ebp - 0x28], 0x64
mov dword [ebp - 0x24], 0x64
mov dword [ebp - 0x20], 0x64
cvttss2si eax, dword [0x100a1c58]
sub esp, 0x10
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
mov eax, esp
movups xmm0, xmmword [ecx]
mov ecx, dword [0x100a22d4]
sub esp, 0x10
movups xmmword [eax], xmm0
movss xmm0, dword [0x1006a4f4]
mov dword [esp + 0xc], 0x41700000
mov dword [esp + 8], 0x437e0000
movss dword [esp + 4], xmm0
movss xmm0, dword [0x1006a4f0]
movss dword [esp], xmm0
call fcn.10049880
cmp byte [ebp - 0xd], 0
cvttss2si eax, dword [0x100a1c58]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x3c], eax
jne 0x1003d16f
cmp byte [ebp - 0xe], 0
jne 0x1003d16f
mov dword [ebp - 0x28], 0x64
mov dword [ebp - 0x24], 0x64
mov dword [ebp - 0x20], 0x64
jmp 0x1003d184
mov dword [ebp - 0x28], 0xc8
mov dword [ebp - 0x24], 0xc8
mov dword [ebp - 0x20], 0xc8
movss xmm0, dword [0x1006a4f4]
lea ecx, [ebp - 0x2c]
addss xmm0, dword [0x10055c40]
mov dword [ebp - 0x2c], eax
sub esp, 0x10
mov eax, dword [0x100a22d4]
movss dword [ebp - 0x14], xmm0
movss xmm0, dword [0x1006a4f0]
addss xmm0, dword [0x1005bf28]
mov esi, dword [eax + 0x20]
mov eax, esp
push 1
push 1
sub esp, 0x10
movss dword [ebp - 0x18], xmm0
movups xmm0, xmmword [ebp - 0x3c]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x18
movups xmm0, xmmword [ecx]
mov ecx, esp
movups xmmword [eax], xmm0
lea eax, [ebp + 8]
push eax
call fcn.10002c40
movss xmm0, dword [ebp - 0x14]
mov ecx, dword [0x100a22d4]
push esi
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x18]
movss dword [esp], xmm0
call fcn.10049ad0
cmp byte [ebp - 0xe], 0
je 0x1003d305
cvttss2si edx, dword [0x1006a51c]
mov byte [0x100a1c5c], 1
movss xmm0, dword [0x1006a520]
addss xmm0, dword [0x1005bf08]
movss xmm2, dword [0x1006a500]
movss xmm1, dword [0x1006a504]
movd xmm3, edx
cvtdq2ps xmm3, xmm3
cvttss2si ecx, xmm0
comiss xmm2, xmm3
jbe 0x1003d2df
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1003d2ad
lea eax, [edx + 0xfe]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x1003d2ad
lea eax, [ecx + 0xf]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003d2ad
cmp byte [0x100a2021], 0
je 0x1003d2ad
cmp byte [0x100a2121], 0
jne 0x1003d2ad
mov byte [ebp - 0xd], 1
mov dword [0x100a1c60], 0
mov dword [0x100a224c], 0
comiss xmm2, xmm3
jbe 0x1003d2df
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1003d2df
lea eax, [edx + 0xfe]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x1003d2df
lea eax, [ecx + 0xf]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
ja 0x1003d305
cmp byte [0x100a2021], 0
je 0x1003d305
cmp byte [0x100a2121], 0
jne 0x1003d305
mov dword [0x100a1c60], 0
mov dword [0x100a224c], 0
movss xmm0, dword [0x1006a4f4]
addss xmm0, dword [0x1005bf10]
mov edx, dword [ebp + 0x1c]
movss dword [0x1006a4f4], xmm0
cmp edx, 0x10
jb 0x1003d353
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003d349
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003d349
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1004b1e8
add esp, 8
mov al, byte [ebp - 0xd]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret