Function at 0x10025a90
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x210
mov eax, dword [0x10149040]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xd4], ecx
mov eax, dword [0x101c3a04]
and eax, 1
jne 0x10025c4b
mov ecx, dword [0x101c3a04]
or ecx, 1
mov dword [0x101c3a04], 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 [0x101b2b70]
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 0x10025b21
mov dword [ebp - 0xc0], 0
jmp 0x10025c40
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0xa4], ecx
jmp 0x10025b3e
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 4]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
je 0x10025c36
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 0x10025b92
jmp 0x10025b6e
xor eax, eax
je 0x10025ba5
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 0x10025bd8
mov ecx, dword [ebp - 0xb0]
add ecx, 1
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xb0]
cmp edx, dword [ebp - 0x1e8]
jae 0x10025c09
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 0x10025bc9
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x1ec], eax
mov ecx, dword [ebp - 0x1ec]
cmp ecx, dword [ebp - 0x1f0]
jne 0x10025c31
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0xc0], edx
jmp 0x10025c40
jmp 0x10025b2f
mov dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xc0]
mov dword [0x101c3980], eax
mov ecx, dword [0x101c3a04]
and ecx, 2
jne 0x10025def
mov edx, dword [0x101c3a04]
or edx, 2
mov dword [0x101c3a04], 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 [0x101b2b70]
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 0x10025cc4
mov dword [ebp - 0xc8], 0
jmp 0x10025de3
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xa8], edx
jmp 0x10025ce1
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 4]
mov dword [ebp - 0xa8], ecx
cmp dword [ebp - 0xa8], 0
je 0x10025dd9
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 0x10025d35
jmp 0x10025d11
xor ecx, ecx
je 0x10025d48
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 0x10025d7b
mov edx, dword [ebp - 0xb4]
add edx, 1
mov dword [ebp - 0xb4], edx
mov eax, dword [ebp - 0xb4]
cmp eax, dword [ebp - 0x108]
jae 0x10025dac
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 0x10025d6c
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x10c]
cmp edx, dword [ebp - 0x110]
jne 0x10025dd4
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xc8], eax
jmp 0x10025de3
jmp 0x10025cd2
mov dword [ebp - 0xc8], 0
mov ecx, dword [ebp - 0xc8]
mov dword [0x101c3984], ecx
cmp dword [ebp + 8], 0
je 0x10025eb3
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 0x10025ebb
or eax, 0xffffffff
jmp 0x100263b4
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 [0x101b2bac]
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 0x10026035
or eax, 0xffffffff
jmp 0x100263b4
mov eax, dword [0x101bd7e0]
sub eax, 0x3d
xor eax, 0x1e77455
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 0x100260af
or eax, 0xffffffff
jmp 0x100263b4
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 0x100260f0
or eax, 0xffffffff
jmp 0x100263b4
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.10022f80
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.100e7520
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.100e7520
add esp, 0xc
mov edx, dword [0x101bd7d4]
sub edx, 0x3a
xor edx, 0x1e77452
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 [0x1013df68]
movss dword [ebp - 0x1bc], xmm0
lea ecx, [ebp - 0x1b8]
push ecx
lea edx, [ebp - 0x1bc]
push edx
push 0x101ab190
call fcn.1002a490
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.100e70b0
add esp, 0x10
mov ecx, dword [0x101ad7f8]
mov dword [ebp - 0x1f4], ecx
mov edx, dword [0x101bd8cc]
sub edx, 0x78
xor edx, 0x1e77490
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1cc], eax
mov ecx, dword [0x101ad7f4]
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 [0x101b3d80]
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0xf8], edx
cmp dword [ebp - 0xf8], 4
ja case.default.0x10026343
mov eax, dword [ebp - 0xf8]
jmp dword [eax*4 + 0x100263c4]
movss xmm0, dword [0x1013e054]
movss dword [ebp - 0xa0], xmm0
jmp 0x100263b4
movss xmm0, dword [0x1013e098]
movss dword [ebp - 0xa0], xmm0
jmp 0x100263b4
movss xmm0, dword [0x1013e0c8]
movss dword [ebp - 0xa0], xmm0
jmp 0x100263b4
movss xmm0, dword [0x1013e0ec]
movss dword [ebp - 0xa0], xmm0
jmp 0x100263b4
movss xmm0, dword [0x1013e0fc]
movss dword [ebp - 0xa0], xmm0
jmp 0x100263b4
movss xmm0, dword [0x1013e054]
movss dword [ebp - 0xa0], xmm0
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10129ea9
mov esp, ebp
pop ebp
ret 8