Function at 0x1004c3e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
cmp dword [ebp + 0xc], 0xcd7dfc
push ebx
push esi
push edi
jne 0x1004c634
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x1004c634
movsx edi, word [esi + 0x84]
lea eax, [ebp + 0xc]
push eax
mov ecx, 0x100fe5c0
mov dword [ebp + 0xc], edi
call fcn.1000e4f0
test eax, eax
jne 0x1004c461
movzx esi, word [esi + 0x78]
lea eax, [ebp + 0xc]
push eax
mov ecx, 0x100fe5c0
mov dword [ebp + 0xc], esi
call fcn.1000e4f0
test eax, eax
jne 0x1004c461
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], edi
push eax
mov ecx, 0x100fe2e0
call fcn.1000e4f0
test eax, eax
jne 0x1004c461
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], esi
push eax
mov ecx, 0x100fe2e0
call fcn.1000e4f0
test eax, eax
je 0x1004c634
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x18]
mov dword [ebp + 0xc], eax
movzx eax, word [eax + 0x80]
movzx esi, ax
mov ecx, esi
mov dword [ebp + 0x10], eax
and ecx, 0x7ff
mov edx, ecx
and edx, 0x7f
mov eax, edx
and eax, 0x1c
cmp al, 0xc
jne 0x1004c634
and edx, 0xffffffe0
cmp edx, 0x20
jne 0x1004c634
and ecx, 0xffffff80
cmp ecx, 0x700
jne 0x1004c4ba
and esi, 0xf800
cmp esi, 0x800
je 0x1004c634
mov ebx, dword [ebp + 0x14]
movzx eax, bl
xor eax, 0x811c9dc5
mov edx, dword [0x100fe28c]
imul ecx, eax, 0x1000193
mov eax, ebx
sar eax, 8
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
sar eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
sar eax, 0x18
movzx eax, al
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [0x100fe298]
mov eax, dword [edx + ecx*8]
add ecx, ecx
mov esi, dword [edx + ecx*4]
lea edi, [edx + ecx*4]
mov edx, dword [0x100fe284]
cmp esi, edx
jne 0x1004c520
mov ecx, edx
jmp 0x1004c525
mov ecx, dword [edi + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c547
cmp dword [eax + 8], ebx
je 0x1004c532
mov eax, dword [eax]
jmp 0x1004c518
cmp eax, edx
je 0x1004c547
mov eax, dword [eax + 0xc]
pop edi
pop esi
mov dword [0x100fe0ac], eax
mov al, 1
pop ebx
pop ebp
ret 0x10
mov eax, dword [ebp + 0xc]
mov edx, dword [0x100fe54c]
movzx esi, byte [eax + 0x19c]
mov eax, esi
xor eax, 0x811c9dc5
imul eax, eax, 0x502c3f11
and eax, dword [0x100fe558]
mov ecx, dword [edx + eax*8]
add eax, eax
mov edi, dword [edx + eax*4]
lea ebx, [edx + eax*4]
mov edx, dword [0x100fe544]
nop dword [eax + eax]
cmp edi, edx
jne 0x1004c588
mov eax, edx
jmp 0x1004c58d
mov eax, dword [ebx + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x1004c634
cmp dword [ecx + 8], esi
je 0x1004c59e
mov ecx, dword [ecx]
jmp 0x1004c580
cmp ecx, edx
je 0x1004c634
mov eax, dword [ebp + 0x10]
movzx ebx, ax
test bl, 1
je 0x1004c5b2
dec ebx
movzx eax, bl
xor eax, 0x811c9dc5
mov esi, dword [ecx + 0x18]
imul edx, eax, 0x1000193
mov eax, ebx
sar eax, 8
movzx eax, al
xor edx, eax
mov eax, ebx
imul edx, edx, 0x1000193
sar eax, 0x10
movzx eax, al
xor edx, eax
mov eax, ebx
imul edx, edx, 0x1000193
sar eax, 0x18
movzx eax, al
xor edx, eax
imul eax, edx, 0x1000193
mov edx, dword [ecx + 0x24]
and edx, eax
mov eax, dword [esi + edx*8]
add edx, edx
mov edi, dword [esi + edx*4]
lea esi, [esi + edx*4]
mov dword [ebp + 0xc], edi
mov edi, dword [ecx + 0x10]
mov edx, dword [ebp + 0xc]
nop dword [eax]
cmp edx, edi
jne 0x1004c618
mov ecx, edi
jmp 0x1004c61d
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c62a
cmp dword [eax + 8], ebx
je 0x1004c62c
mov eax, dword [eax]
jmp 0x1004c610
mov eax, edi
cmp eax, edi
jne 0x1004c536
pop edi
pop esi
xor al, al
pop ebx
pop ebp
ret 0x10