Function at 0x10025c80
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x210
mov eax, dword [0x1014c040]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xd4], ecx
mov eax, dword [0x101c6a5c]
and eax, 1
jne 0x10025e3b
mov ecx, dword [0x101c6a5c]
or ecx, 1
mov dword [0x101c6a5c], ecx
xor edx, edx
mov byte [ebp - 0xb5], dl
mov dword [ebp - 0x1fc], 0x8cd79213
mov dword [ebp - 0x1b0], 0x8cd79213
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1f0], eax
mov ecx, dword [0x101b5b70]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1e0], edx
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0
jne 0x10025d11
mov dword [ebp - 0xc0], 0
jmp 0x10025e30
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0xa4], ecx
jmp 0x10025d2e
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 4]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
je 0x10025e26
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0xbc], 0x811c9dc5
mov dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x98]
add eax, 1
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0xdc]
add ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
test edx, edx
je 0x10025d82
jmp 0x10025d5e
xor eax, eax
je 0x10025d95
mov ecx, dword [ebp - 0x98]
add ecx, 1
mov dword [ebp - 0x98], ecx
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0xb0], 0
jmp 0x10025dc8
mov ecx, dword [ebp - 0xb0]
add ecx, 1
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xb0]
cmp edx, dword [ebp - 0x1e8]
jae 0x10025df9
mov eax, dword [ebp - 0xdc]
add eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
xor ecx, dword [ebp - 0xbc]
imul edx, ecx, 0x1000193
mov dword [ebp - 0xbc], edx
jmp 0x10025db9
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x1ec], eax
mov ecx, dword [ebp - 0x1ec]
cmp ecx, dword [ebp - 0x1f0]
jne 0x10025e21
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0xc0], edx
jmp 0x10025e30
jmp 0x10025d1f
mov dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xc0]
mov dword [0x101c69d8], eax
mov ecx, dword [0x101c6a5c]
and ecx, 2
jne 0x10025fdf
mov edx, dword [0x101c6a5c]
or edx, 2
mov dword [0x101c6a5c], edx
xor eax, eax
mov byte [ebp - 0xb6], al
mov dword [ebp - 0x210], 0x93050cfd
mov dword [ebp - 0xfc], 0x93050cfd
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x110], ecx
mov edx, dword [0x101b5b70]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0xe0], ecx
cmp dword [ebp - 0xe0], 0
jne 0x10025eb4
mov dword [ebp - 0xc8], 0
jmp 0x10025fd3
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xa8], edx
jmp 0x10025ed1
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 4]
mov dword [ebp - 0xa8], ecx
cmp dword [ebp - 0xa8], 0
je 0x10025fc9
mov edx, dword [ebp - 0xa8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xc4], 0x811c9dc5
mov dword [ebp - 0x9c], 0
mov ecx, dword [ebp - 0x9c]
add ecx, 1
mov dword [ebp - 0x9c], ecx
mov edx, dword [ebp - 0xe4]
add edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
test eax, eax
je 0x10025f25
jmp 0x10025f01
xor ecx, ecx
je 0x10025f38
mov edx, dword [ebp - 0x9c]
add edx, 1
mov dword [ebp - 0x9c], edx
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0xb4], 0
jmp 0x10025f6b
mov edx, dword [ebp - 0xb4]
add edx, 1
mov dword [ebp - 0xb4], edx
mov eax, dword [ebp - 0xb4]
cmp eax, dword [ebp - 0x108]
jae 0x10025f9c
mov ecx, dword [ebp - 0xe4]
add ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
xor edx, dword [ebp - 0xc4]
imul eax, edx, 0x1000193
mov dword [ebp - 0xc4], eax
jmp 0x10025f5c
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x10c]
cmp edx, dword [ebp - 0x110]
jne 0x10025fc4
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xc8], eax
jmp 0x10025fd3
jmp 0x10025ec2
mov dword [ebp - 0xc8], 0
mov ecx, dword [ebp - 0xc8]
mov dword [0x101c69dc], ecx
cmp dword [ebp + 8], 0
je 0x100260a3
mov edx, dword [ebp + 8]
add edx, 4
mov dword [ebp - 0x114], edx
lea eax, [ebp - 0x11c]
mov dword [ebp - 0xe8], eax
mov ecx, dword [ebp - 0x114]
mov edx, dword [ebp - 0xe8]
mov dword [edx], ecx
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x200], ecx
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx]
mov dword [ebp - 0x120], eax
mov ecx, 8
shl ecx, 2
mov edx, dword [ebp - 0x120]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x124], eax
mov ecx, dword [ebp - 0x124]
mov dword [ebp - 0x128], ecx
mov edx, dword [ebp - 0x128]
mov dword [ebp - 0x12c], edx
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp + 8]
add ecx, 4
mov dword [ebp - 0x130], ecx
mov edx, dword [ebp - 0x130]
mov dword [ebp - 0x134], edx
mov ecx, dword [ebp - 0x134]
call dword [ebp - 0x138]
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 0
jne 0x100260ab
or eax, 0xffffffff
jmp 0x100265a4
mov eax, dword [ebp + 8]
add eax, 4
mov dword [ebp - 0x140], eax
lea ecx, [ebp - 0x148]
mov dword [ebp - 0xec], ecx
mov edx, dword [ebp - 0x140]
mov eax, dword [ebp - 0xec]
mov dword [eax], edx
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x144]
mov dword [ebp - 0x204], edx
mov eax, dword [ebp - 0x148]
mov ecx, dword [eax]
mov dword [ebp - 0x14c], ecx
mov edx, 8
shl edx, 2
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x150], ecx
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x154], edx
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp + 8]
add edx, 4
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x160]
call dword [ebp - 0x164]
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x168]
mov dword [ebp - 0x184], ecx
mov edx, dword [0x101b5bac]
mov dword [ebp - 0xf4], edx
lea eax, [ebp - 0x170]
mov dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf4]
mov dword [ecx], edx
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x208], ecx
mov edx, dword [ebp - 0x170]
mov eax, dword [edx]
mov dword [ebp - 0x174], eax
mov ecx, 0x1e
shl ecx, 2
mov edx, dword [ebp - 0x174]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x17c]
mov dword [ebp - 0x180], edx
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x184]
push ecx
mov ecx, dword [ebp - 0xf4]
call dword [ebp - 0x188]
mov dword [ebp - 0x18c], eax
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0xcc], edx
cmp dword [ebp - 0xcc], 0
jne 0x10026225
or eax, 0xffffffff
jmp 0x100265a4
mov eax, dword [0x101c07e0]
sub eax, 0x3d
xor eax, 0x48f47f6e
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0x190]
mov dword [ebp - 0x194], ecx
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0x194]
mov dword [ebp - 0x198], edx
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xcc]
add edx, dword [ecx + 0xb0]
mov eax, dword [ebp - 0x19c]
imul ecx, dword [eax], 0xc
add edx, ecx
mov dword [ebp - 0x1a0], edx
mov edx, dword [ebp - 0x1a0]
mov dword [ebp - 0xd0], edx
cmp dword [ebp - 0xd0], 0
jne 0x1002629f
or eax, 0xffffffff
jmp 0x100265a4
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xd0]
add ecx, dword [eax + 8]
mov edx, dword [ebp - 0xd4]
imul eax, dword [edx + 0x611dc], 0x44
add ecx, eax
mov dword [ebp - 0x1a4], ecx
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0xac], ecx
cmp dword [ebp - 0xac], 0
jne 0x100262e0
or eax, 0xffffffff
jmp 0x100265a4
xorps xmm0, xmm0
movss dword [ebp - 0x10], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0xc], xmm0
xorps xmm0, xmm0
movss dword [ebp - 8], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x18], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x14], xmm0
push 0x54
push 0
lea edx, [ebp - 0x94]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x94]
call fcn.10023170
nop
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x611d4]
mov eax, dword [ebp - 0xac]
imul ecx, dword [eax], 0x30
lea edx, [edx + ecx + 0x3fc]
push edx
mov eax, dword [ebp - 0xac]
add eax, 8
push eax
call fcn.100e8e80
add esp, 0xc
lea ecx, [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x611d4]
mov ecx, dword [ebp - 0xac]
imul edx, dword [ecx], 0x30
lea eax, [eax + edx + 0x3fc]
push eax
mov ecx, dword [ebp - 0xac]
add ecx, 0x14
push ecx
call fcn.100e8e80
add esp, 0xc
mov edx, dword [0x101c07d4]
sub edx, 0x3a
xor edx, 0x48f47f6b
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1ac], eax
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1dc], ecx
mov edx, dword [ebp - 0x1dc]
mov dword [ebp - 0x1b4], edx
mov eax, dword [ebp - 0x1b4]
cvtsi2ss xmm0, dword [eax]
movss dword [ebp - 0x1b8], xmm0
movss xmm0, dword [0x10141038]
movss dword [ebp - 0x1bc], xmm0
lea ecx, [ebp - 0x1b8]
push ecx
lea edx, [ebp - 0x1bc]
push edx
push 0x101ae190
call fcn.1002a680
add esp, 0xc
movss xmm0, dword [eax]
movss dword [ebp - 0x1c0], xmm0
fld dword [ebp - 0x1c0]
sub esp, 8
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
add esp, 8
fstp dword [ebp - 0x1c4]
movss xmm0, dword [ebp - 0x1c4]
movss dword [ebp - 0x20c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x40], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x3c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x38], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x34], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x30], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x28], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x24], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x34]
push ecx
lea edx, [ebp - 0x40]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.100e8a10
add esp, 0x10
mov ecx, dword [0x101b07f8]
mov dword [ebp - 0x1f4], ecx
mov edx, dword [0x101c08cc]
sub edx, 0x78
xor edx, 0x48f47fa9
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1cc], eax
mov ecx, dword [0x101b07f4]
add ecx, dword [ebp - 0x1cc]
mov dword [ebp - 0x1d0], ecx
mov edx, dword [ebp - 0x1d0]
mov dword [ebp - 0x1d4], edx
mov eax, dword [ebp - 0x1d4]
movss xmm0, dword [eax]
movss dword [ebp - 0x1f8], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0xa0], xmm0
mov ecx, dword [0x101b6d80]
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0xf8], edx
cmp dword [ebp - 0xf8], 4
ja case.default.0x10026533
mov eax, dword [ebp - 0xf8]
jmp dword [eax*4 + 0x100265b4]
movss xmm0, dword [0x10141124]
movss dword [ebp - 0xa0], xmm0
jmp 0x100265a4
movss xmm0, dword [0x10141168]
movss dword [ebp - 0xa0], xmm0
jmp 0x100265a4
movss xmm0, dword [0x10141198]
movss dword [ebp - 0xa0], xmm0
jmp 0x100265a4
movss xmm0, dword [0x101411bc]
movss dword [ebp - 0xa0], xmm0
jmp 0x100265a4
movss xmm0, dword [0x101411cc]
movss dword [ebp - 0xa0], xmm0
jmp 0x100265a4
movss xmm0, dword [0x10141124]
movss dword [ebp - 0xa0], xmm0
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1012d179
mov esp, ebp
pop ebp
ret 8