Function at 0x100429c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1005038d
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x1006a89c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x2c], eax
movss xmm2, dword [0x1006a4f0]
addss xmm2, dword [0x100574f4]
movss xmm0, dword [0x1006a4f4]
addss xmm0, dword [0x1005befc]
movss xmm1, dword [0x1006a500]
mov edi, dword [ebp + 0x20]
movss xmm3, dword [0x10055b24]
mov esi, dword [0x100a1c54]
mov cl, byte [0x100a2021]
cvttss2si eax, xmm2
mov dword [ebp - 4], 0
movss dword [0x1006a4f4], xmm0
addss xmm0, dword [0x10055c48]
movss dword [0x1006a4f0], xmm2
cvttss2si edx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x10042ad7
movss xmm4, dword [0x1006a504]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
comiss xmm4, xmm0
jbe 0x10042ad7
add eax, 0xb4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x10042ad7
lea eax, [edx + 9]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm4
jbe 0x10042ad7
test cl, cl
je 0x10042b8c
cmp byte [0x100a2121], 0
jne 0x10042ad7
cmp byte [0x100a1c5c], 0
jne 0x10042ad7
test esi, esi
jne 0x10042ad7
cmp dword [ebp + 0x1c], 0x10
lea eax, [ebp + 8]
push 0x811c9dc5
cmovae eax, dword [ebp + 8]
push eax
call fcn.10040eb0
add esp, 8
mov dword [0x100a1c54], eax
jmp 0x10042bcc
test cl, cl
je 0x10042b8c
cmp byte [0x100a1b88], 0
je 0x10042bcc
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
cmovae ecx, dword [ebp + 8]
mov al, byte [ecx]
test al, al
je 0x10042b32
movsx eax, al
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
push eax
lea eax, [ecx + 1]
push eax
call fcn.10040eb0
movss xmm1, dword [0x1006a500]
add esp, 8
movss xmm2, dword [0x1006a4f0]
movss xmm3, dword [0x10055b24]
jmp 0x10042b37
mov eax, 0x811c9dc5
cmp esi, eax
jne 0x10042bcc
subss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x10042b52
movaps xmm0, xmm3
jmp 0x10042b62
xorps xmm0, xmm0
comiss xmm0, xmm1
seta al
test al, al
jne 0x10042b62
movaps xmm0, xmm1
mov eax, dword [ebp + 0x24]
divss xmm0, xmm3
sub eax, edi
mov esi, dword [ebp - 0x2c]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [esi], eax
jmp 0x10042bcf
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
cmovae ecx, dword [ebp + 8]
mov al, byte [ecx]
test al, al
je 0x10042bba
movsx eax, al
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
push eax
lea eax, [ecx + 1]
push eax
call fcn.10040eb0
add esp, 8
jmp 0x10042bbf
mov eax, 0x811c9dc5
xor ecx, ecx
cmp esi, eax
cmove esi, ecx
mov dword [0x100a1c54], esi
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi]
mov ecx, dword [ebp + 0x24]
movd xmm0, edi
sub ecx, edi
cvtdq2ps xmm0, xmm0
push eax
movd xmm1, eax
lea eax, [ebp - 0x28]
cvtdq2ps xmm1, xmm1
push eax
subss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
mulss xmm1, dword [0x10055b24]
cvttss2si ecx, xmm1
mov dword [ebp - 0x2c], ecx
call fcn.1001d9f0
add esp, 8
mov ecx, dword [0x100a22d4]
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 1
cmovae eax, dword [ebp - 0x28]
push dword [ecx + 0x20]
push eax
call fcn.10049080
mov ecx, dword [0x100a22d4]
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
cmovae eax, dword [ebp - 0x28]
push dword [ecx + 0x20]
push eax
call fcn.10048e90
cvttss2si eax, dword [0x100a1c58]
sub esp, 0x10
mov ecx, dword [0x100a22d4]
mov dword [ebp - 0x3c], 0x19
mov dword [ebp - 0x38], 0x19
mov dword [ebp - 0x34], 0x19
movss xmm2, dword [0x1006a4f4]
addss xmm2, dword [0x10055c40]
movss xmm1, dword [0x1006a4f0]
addss xmm1, dword [0x10055c40]
mov dword [ebp - 0x40], eax
mov eax, esp
movups xmm0, xmmword [ebp - 0x40]
sub esp, 0x10
addss xmm2, dword [0x10055c48]
movups xmmword [eax], xmm0
mov dword [esp + 0xc], 0x40e00000
mov dword [esp + 8], 0x43320000
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
call fcn.10049790
cvttss2si eax, dword [0x100a1c58]
sub esp, 0x10
mov ecx, dword [0x100a22d4]
mov dword [ebp - 0x3c], 0x3c
mov dword [ebp - 0x38], 0x3c
mov dword [ebp - 0x34], 0x3c
movss xmm1, dword [0x1006a4f4]
addss xmm1, dword [0x10055c48]
mov dword [ebp - 0x40], eax
mov eax, esp
movups xmm0, xmmword [ebp - 0x40]
sub esp, 0x10
movups xmmword [eax], xmm0
movss xmm0, dword [0x1006a4f0]
mov dword [esp + 0xc], 0x41100000
mov dword [esp + 8], 0x43340000
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
call fcn.10049880
cmp dword [esi], edi
jle 0x10042dbc
cvttss2si eax, dword [0x100a1c58]
sub esp, 0x10
mov ecx, dword [0x100a22d4]
mov dword [ebp - 0x3c], 0xc8
mov dword [ebp - 0x38], 0xc8
mov dword [ebp - 0x34], 0xc8
movss xmm2, dword [0x1006a4f4]
addss xmm2, dword [0x10055c40]
movss xmm1, dword [0x1006a4f0]
addss xmm1, dword [0x10055c40]
mov dword [ebp - 0x40], eax
mov eax, esp
movups xmm0, xmmword [ebp - 0x40]
sub esp, 0x10
addss xmm2, dword [0x10055c48]
movups xmmword [eax], xmm0
movd xmm0, dword [ebp - 0x2c]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0xc], 0x40e00000
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
call fcn.10049790
cvttss2si esi, dword [0x100a1c58]
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp + 8]
mov edi, dword [ebp + 8]
cmovae ecx, edi
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
setae dl
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x2d], dl
mov dword [ebp - 0x5c], esi
mov al, byte [ecx]
test al, al
je 0x10042e15
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 - 0x2d]
add esp, 8
jmp 0x10042e1a
mov eax, 0x811c9dc5
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], esi
cmp dword [0x100a1c54], eax
jne 0x10042e3f
mov dword [ebp - 0x3c], 0xc8
mov dword [ebp - 0x38], 0xc8
mov dword [ebp - 0x34], 0xc8
jmp 0x10042e54
mov dword [ebp - 0x3c], 0x64
mov dword [ebp - 0x38], 0x64
mov dword [ebp - 0x34], 0x64
movss xmm0, dword [0x1006a4f4]
sub esp, 0x10
subss xmm0, dword [0x1005bf00]
mov eax, dword [0x100a22d4]
mov eax, dword [eax + 0x20]
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [0x1006a4f0]
addss xmm0, dword [0x10055c48]
mov dword [ebp - 0x2c], eax
mov eax, esp
push 1
push 0
sub esp, 0x10
movss dword [ebp - 0x44], xmm0
movups xmm0, xmmword [ebp - 0x5c]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ecx]
mov ecx, dword [ebp + 0x18]
movups xmmword [eax], xmm0
mov eax, 0x7fffffff
sub eax, ecx
cmp eax, 2
jb 0x10043052
push 2
push 0x10057d7c
test dl, dl
lea eax, [ebp + 8]
push ecx
cmovne eax, edi
lea ecx, [ebp - 0x64]
push eax
lea eax, [ebp + 8]
push eax
push dword [ebp - 0x44]
call fcn.10015c50
sub esp, 0x18
mov byte [ebp - 4], 2
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov esi, esp
lea ecx, [ebp - 0x64]
cmovae eax, dword [ebp - 0x28]
push dword [ebp - 0x18]
mov dword [ebp - 0x4c], esi
push eax
call fcn.10017700
mov dword [esi], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
push dword [ebp - 0x2c]
movss xmm0, dword [ebp - 0x48]
sub esp, 8
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [0x100a22d4]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x44]
mov byte [ebp - 4], 2
movss dword [esp], xmm0
call fcn.10049ad0
mov edx, dword [ebp - 0x50]
cmp edx, 0x10
jb 0x10042f8f
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10042f85
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10042f85
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
movss xmm0, dword [0x1006a4f0]
subss xmm0, dword [0x100574f4]
mov edx, dword [ebp - 0x14]
movss dword [0x1006a4f0], xmm0
movss xmm0, dword [0x1006a4f4]
addss xmm0, dword [0x1005bf08]
movss dword [0x1006a4f4], xmm0
cmp edx, 0x10
jb 0x10042fef
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10042fe5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10043027
push edx
push ecx
call fcn.1004b1e8
add esp, 8
mov edx, dword [ebp + 0x1c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x10043037
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004302d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1004302d
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 ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1004b719
mov esp, ebp
pop ebp
ret
call fcn.10003090
int3