Function at 0x1004b4c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 8]
sub esp, 0x2c
push ebx
push esi
push edi
test eax, eax
je 0x1004ba67
cmp dword [0x100e8568], 0
mov eax, dword [eax + 0x34]
mov edi, dword [ebp + 0xc]
mov ebx, dword [eax + 0x28]
mov dword [esp + 0xc], ebx
je 0x1004b59c
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x11c]
call eax
mov edx, ebx
mov ecx, ebx
mov esi, ebx
shr ecx, 0x10
shr edx, 8
shr esi, 0x18
mov dword [esp + 0x10], ecx
cmp al, 1
je 0x1004b520
cmp al, 2
je 0x1004b520
cmp al, 3
jne 0x1004b59c
movzx eax, bl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, dl
mov edx, dword [0x100e856c]
xor ecx, eax
mov eax, dword [esp + 0x10]
imul ecx, ecx, 0x1000193
movzx eax, al
xor ecx, eax
imul eax, ecx, 0x1000193
xor eax, esi
imul ecx, eax, 0x1000193
and ecx, dword [0x100e8578]
mov eax, dword [edx + ecx*8]
add ecx, ecx
mov esi, dword [edx + ecx*4]
lea edi, [edx + ecx*4]
mov edx, dword [0x100e8564]
nop dword [eax]
cmp esi, edx
jne 0x1004b578
mov ecx, edx
jmp 0x1004b57d
mov ecx, dword [edi + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004b599
cmp dword [eax + 8], ebx
je 0x1004b58a
mov eax, dword [eax]
jmp 0x1004b570
cmp eax, edx
je 0x1004b599
mov al, 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov edi, dword [ebp + 0xc]
cmp dword [0x100e8748], 0
je 0x1004b7c8
movsx edx, word [edi + 0x84]
mov eax, edx
mov dword [esp + 0x10], edx
shr eax, 8
movzx ecx, al
movzx eax, dl
xor eax, 0x811c9dc5
mov esi, dword [esp + 0x10]
imul eax, eax, 0x1000193
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
mov edx, dword [0x100e874c]
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [0x100e8758]
mov eax, dword [edx + ecx*8]
add ecx, ecx
mov edi, dword [edx + ecx*4]
add edx, 4
lea ecx, [edx + ecx*4]
mov edx, dword [0x100e8744]
mov dword [esp + 0x14], ecx
cmp edi, edx
jne 0x1004b61f
mov ecx, edx
jmp 0x1004b623
mov ecx, dword [ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004b6c4
cmp dword [eax + 8], esi
je 0x1004b638
mov eax, dword [eax]
mov ecx, dword [esp + 0x14]
jmp 0x1004b617
cmp eax, edx
je 0x1004b6c4
add eax, 0xc
lea ecx, [esp + 0x18]
push eax
call fcn.100106c0
movzx eax, bl
xor eax, 0x811c9dc5
mov edi, dword [esp + 0x1c]
imul ecx, eax, 0x1000193
movzx eax, bh
xor ecx, eax
movzx eax, byte [esp + 0xe]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esp + 0xf]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [esp + 0x24]
and eax, dword [esp + 0x30]
mov esi, dword [ecx + eax*8]
add eax, eax
mov edx, dword [ecx + eax*4]
lea ecx, [ecx + eax*4]
cmp edx, edi
jne 0x1004b69f
mov eax, edi
jmp 0x1004b6a4
mov eax, dword [ecx + 4]
mov eax, dword [eax]
cmp esi, eax
je 0x1004b6b1
cmp dword [esi + 8], ebx
je 0x1004b6b3
mov esi, dword [esi]
jmp 0x1004b697
mov esi, edi
lea ecx, [esp + 0x18]
call fcn.10009c10
cmp esi, edi
jne 0x1004b7bd
mov edx, dword [ebp + 0xc]
mov edi, dword [0x100e874c]
movzx eax, word [edx + 0x78]
movzx esi, word [edx + 0x78]
mov edx, dword [0x100e874c]
movzx eax, al
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, esi
shr eax, 8
xor ecx, eax
imul ecx, ecx, 0x3ee6b34b
and ecx, dword [0x100e8758]
mov eax, dword [edi + ecx*8]
add ecx, ecx
add edx, 4
mov edi, dword [edi + ecx*4]
lea ecx, [edx + ecx*4]
mov edx, dword [0x100e8744]
mov dword [esp + 0x14], ecx
cmp edi, edx
jne 0x1004b71c
mov ecx, edx
jmp 0x1004b720
mov ecx, dword [ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004b7c8
cmp dword [eax + 8], esi
je 0x1004b735
mov eax, dword [eax]
mov ecx, dword [esp + 0x14]
jmp 0x1004b714
cmp eax, edx
je 0x1004b7c8
add eax, 0xc
lea ecx, [esp + 0x18]
push eax
call fcn.100106c0
movzx eax, bl
xor eax, 0x811c9dc5
mov edi, dword [esp + 0x1c]
imul ecx, eax, 0x1000193
movzx eax, bh
xor ecx, eax
movzx eax, byte [esp + 0xe]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esp + 0xf]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [esp + 0x24]
and eax, dword [esp + 0x30]
mov esi, dword [ecx + eax*8]
add eax, eax
mov edx, dword [ecx + eax*4]
lea ecx, [ecx + eax*4]
cmp edx, edi
jne 0x1004b79c
mov eax, edi
jmp 0x1004b7a1
mov eax, dword [ecx + 4]
mov eax, dword [eax]
cmp esi, eax
je 0x1004b7ae
cmp dword [esi + 8], ebx
je 0x1004b7b0
mov esi, dword [esi]
jmp 0x1004b794
mov esi, edi
lea ecx, [esp + 0x18]
call fcn.10009c10
cmp esi, edi
je 0x1004b7c8
mov al, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x100e8728], 0
je 0x1004b912
mov edx, dword [0x100e872c]
movzx eax, bl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, bh
xor ecx, eax
movzx eax, byte [esp + 0xe]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esp + 0xf]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [0x100e8738]
mov eax, dword [edx + ecx*8]
add ecx, ecx
mov esi, dword [edx + ecx*4]
lea edi, [edx + ecx*4]
mov edx, dword [0x100e8724]
cmp esi, edx
jne 0x1004b82d
mov ecx, edx
jmp 0x1004b832
mov ecx, dword [edi + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004b912
cmp dword [eax + 8], ebx
je 0x1004b843
mov eax, dword [eax]
jmp 0x1004b825
cmp eax, edx
je 0x1004b912
mov ecx, dword [ebp + 0xc]
add eax, 0xc
push eax
movsx ebx, word [ecx + 0x84]
movzx ecx, word [ecx + 0x78]
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x1c]
call fcn.100106c0
movzx eax, bl
xor eax, 0x811c9dc5
mov edx, dword [esp + 0x24]
imul ecx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
mov esi, dword [esp + 0x1c]
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [esp + 0x30]
mov eax, dword [edx + ecx*8]
add ecx, ecx
mov edi, dword [edx + ecx*4]
lea edx, [edx + ecx*4]
nop dword [eax]
cmp edi, esi
jne 0x1004b8c8
mov ecx, esi
jmp 0x1004b8cd
mov ecx, dword [edx + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004b8de
cmp dword [eax + 8], ebx
je 0x1004b8da
mov eax, dword [eax]
jmp 0x1004b8c0
cmp eax, esi
jne 0x1004b909
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x20]
call fcn.10007440
cmp dword [eax], esi
jne 0x1004b909
lea ecx, [esp + 0x18]
call fcn.10009c10
mov al, 5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
lea ecx, [esp + 0x18]
call fcn.10009c10
cmp dword [0x100e86e8], 0
mov ebx, dword [ebp + 0xc]
je 0x1004b9ea
movsx eax, word [ebx + 0x84]
mov ecx, 0x100e86e0
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.10007440
mov eax, dword [esp + 0x10]
mov esi, dword [0x100e86e4]
cmp eax, esi
je 0x1004b988
add eax, 0xc
lea ecx, [esp + 0x18]
push eax
call fcn.100106c0
mov esi, dword [esp + 0x1c]
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
call fcn.10007440
lea ecx, [esp + 0x18]
mov edi, dword [eax]
call fcn.10009c10
cmp edi, esi
je 0x1004b9df
mov esi, dword [0x100e86e4]
movzx eax, word [ebx + 0x78]
mov ecx, 0x100e86e0
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.10007440
mov eax, dword [esp + 0x10]
cmp eax, esi
je 0x1004b9ea
add eax, 0xc
lea ecx, [esp + 0x18]
push eax
call fcn.100106c0
mov esi, dword [esp + 0x1c]
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
call fcn.10007440
lea ecx, [esp + 0x18]
mov edi, dword [eax]
call fcn.10009c10
cmp edi, esi
jne 0x1004b9ea
mov al, 7
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x100e8708], 0
je 0x1004ba2d
lea eax, [esp + 0xc]
mov ecx, 0x100e8700
push eax
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov eax, dword [esp + 0x14]
cmp eax, dword [0x100e8704]
je 0x1004ba2d
mov eax, dword [ebx + 0x128]
mov eax, dword [eax + 0x10]
cmp byte [eax + 2], 0
je 0x1004ba2d
mov al, 6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x100e86c8], 0
je 0x1004ba67
lea eax, [esp + 0xc]
mov ecx, 0x100e86c0
push eax
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov eax, dword [esp + 0x14]
cmp eax, dword [0x100e86c4]
je 0x1004ba67
mov eax, dword [ebx + 0x128]
mov eax, dword [eax + 0x10]
cmp byte [eax + 2], 0
mov al, 8
je 0x1004ba69
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8