Function at 0x408ee0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4edee0
mov eax, dword fs:[0]
push eax
sub esp, 0x4c8
mov eax, dword [0x53e060]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x4b0], edi
push 0x502c00
xor esi, esi
push edi
mov dword [ebp - 0x4c4], esi
call fcn.004ca5ae
add esp, 8
mov dword [ebp - 0x4cc], eax
test eax, eax
jne 0x408f4a
push edi
push str.itemdb_readdb:_File_not_found___s___skipping._n
call fcn.0049e750
add esp, 8
xor al, al
jmp 0x4093fe
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.004d20e6
add esp, 0xc
test eax, eax
je 0x4093dd
nop word [eax + eax]
inc esi
cmp byte [ebp - 0x410], 0x2f
mov dword [ebp - 0x4ac], esi
jne 0x408f8d
cmp byte [ebp - 0x40f], 0x2f
je 0x4093bb
push 0x80
lea eax, [ebp - 0x490]
push 0
push eax
call fcn.004c08f0
lea eax, [ebp - 0x410]
push 0x510d70
push eax
call fcn.004bfcf0
add esp, 0x14
test eax, eax
je 0x408fbb
mov byte [eax], 0
movzx eax, byte [ebp - 0x410]
lea esi, [ebp - 0x410]
push eax
call fcn.004d2ce0
add esp, 4
test eax, eax
je 0x408fe7
movzx eax, byte [esi + 1]
inc esi
push eax
call fcn.004d2ce0
add esp, 4
test eax, eax
jne 0x408fd5
cmp byte [esi], 0
je 0x4093b5
xor edi, edi
push 0x2c
push esi
mov dword [ebp + edi*4 - 0x490], esi
call fcn.004bff60
mov esi, eax
add esp, 8
test esi, esi
je 0x409014
mov byte [esi], 0
inc edi
inc esi
cmp edi, 0x13
jl 0x408ff2
push 0xa
push 0
push dword [ebp - 0x490]
call fcn.004cf2ed
add esp, 0xc
mov dword [ebp - 0x4b4], eax
test esi, esi
jne 0x409051
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push eax
push edi
push esi
push str.itemdb_readdb:_Insufficient_columns_in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
cmp byte [esi], 0x7b
je 0x409077
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push eax
push edi
push esi
push str.itemdb_readdb:_Invalid_format__Script_column__in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
lea eax, [esi + 1]
push 0x510e64
push eax
call fcn.004bfcf0
add esp, 8
test eax, eax
jne 0x4090b2
push dword [ebp - 0x4b4]
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push edi
push esi
push str.itemdb_readdb:_Invalid_format__Script_column__in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
mov byte [eax], 0
cmp byte [eax + 2], 0x7b
jne 0x4090d2
add eax, 3
push 0x510e64
push eax
call fcn.004bfcf0
mov edx, eax
add esp, 8
test edx, edx
jne 0x4090f8
push dword [ebp - 0x4b4]
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push edi
push esi
push str.itemdb_readdb:_Invalid_format__OnEquip_Script_column__in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
mov byte [edx], 0
add edx, 2
cmp byte [edx], 0x7b
je 0x409129
push dword [ebp - 0x4b4]
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push edi
push esi
push str.itemdb_readdb:_Invalid_format__OnUnequip_Script_column__in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409130
sub ecx, esi
lea eax, [edx - 2]
add eax, ecx
mov dword [ebp - 0x4c0], eax
cmp byte [eax], 0x7d
je 0x4091e5
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x4bc], eax
xor edi, edi
xor esi, esi
lea eax, [ecx + 1]
mov dword [ebp - 0x4b8], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409164
sub ecx, dword [ebp - 0x4b8]
je 0x4091df
mov al, byte [edx + esi]
lea ecx, [edx + esi]
cmp al, 0x7b
jne 0x409180
inc edi
jmp 0x409190
cmp al, 0x7d
jne 0x409190
inc dword [ebp - 0x4bc]
mov dword [ebp - 0x4c0], ecx
mov eax, edx
inc esi
lea ecx, [eax + 1]
mov dword [ebp - 0x4b8], ecx
nop dword [eax]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4091a0
sub eax, dword [ebp - 0x4b8]
cmp esi, eax
jb 0x409173
cmp edi, dword [ebp - 0x4bc]
je 0x4091df
push dword [ebp - 0x4b4]
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push edi
push esi
push str.itemdb_readdb:_Mismatching_curly_braces_in_line__d_of___s___item_with_id__u___skipping._n
call fcn.0049e790
add esp, 0x10
jmp 0x4093bb
mov eax, dword [ebp - 0x4c0]
push 0xa
push 0
push dword [ebp - 0x448]
mov byte [eax], 0
call fcn.004cf2ed
mov ecx, dword [ebp - 0x48c]
add esp, 0xc
mov dword [ebp - 0x4c8], eax
call fcn.0049f3b0
mov edx, eax
mov dword [ebp - 0x498], 0
mov ecx, edx
mov dword [ebp - 0x494], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x4a8], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409230
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x4a8]
call fcn.00405ef0
lea eax, [ebp - 0x4b4]
mov dword [ebp - 4], 0
push eax
call fcn.00475a20
mov esi, eax
lea eax, [ebp - 0x4a8]
cmp esi, eax
je 0x4092bd
mov edx, dword [esi + 0x14]
cmp edx, 0x10
jb 0x409298
mov ecx, dword [esi]
inc edx
cmp edx, 0x1000
jb 0x40928e
mov edi, dword [ecx - 4]
add edx, 0x23
sub ecx, edi
lea eax, [ecx - 4]
cmp eax, 0x1f
ja 0x409419
mov ecx, edi
push edx
push ecx
call fcn.004be4f6
add esp, 8
movups xmm0, xmmword [ebp - 0x4a8]
mov ecx, 0xf
mov byte [ebp - 0x4a8], 0
movups xmmword [esi], xmm0
movq xmm0, qword [ebp - 0x498]
movq qword [esi + 0x10], xmm0
jmp 0x4092c3
mov ecx, dword [ebp - 0x494]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0x10
jb 0x4092fe
mov edx, dword [ebp - 0x4a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4092f4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x409419
push ecx
push edx
call fcn.004be4f6
add esp, 8
push dword [ebp - 0x458]
call fcn.004d2910
add esp, 4
test eax, 0x1f01
je 0x4093a9
mov edx, dword [ebp - 0x4c8]
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x4b8], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
shr eax, 0x10
imul ecx, ecx, 0x1000193
movzx eax, al
shr edx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x561684
xor eax, edx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 0x4b8]
push eax
lea eax, [ebp - 0x4d4]
push eax
call fcn.00499430
mov ecx, dword [0x561688]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
xor esi, esi
cmp ecx, dword [0x561688]
lea eax, [ecx + 0xc]
cmove eax, esi
test eax, eax
jne 0x4093a9
lea eax, [ebp - 0x4c8]
push eax
call fcn.00475a00
mov ecx, dword [ebp - 0x4b4]
mov dword [eax], ecx
inc dword [ebp - 0x4c4]
mov edi, dword [ebp - 0x4b0]
mov esi, dword [ebp - 0x4ac]
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.004d20e6
add esp, 0xc
test eax, eax
jne 0x408f70
push dword [ebp - 0x4cc]
call fcn.004ca6ea
push edi
push dword [ebp - 0x4c4]
push str.Done_reading_e_1_37m_ue_0m_entries_in_e_1_37m_se_0m._n
call fcn.0049e6f0
add esp, 0x10
mov al, 1
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.004be4ac
mov esp, ebp
pop ebp
ret
call fcn.004cb42e
int3