Function at 0x433980
Capabilities:
Get file size
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x814
mov eax, dword [0x52382c]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
push 0x200000
push 0
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
mov dword [ebp - 0x80c], edi
test edi, edi
jne 0x4339bc
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [0x526714]
shl eax, 7
push esi
add eax, 0x5257f0
push eax
lea ecx, [ebp - 0x804]
push str.Language_sItem.txt
push ecx
call fcn.004cce8a
lea edx, [ebp - 0x804]
push edx
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea eax, [ebp - 0x804]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x433a42
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ecx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_Item.txt
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x814]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov dword [ebp - 0x810], eax
test eax, eax
jne 0x433aab
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_CreateFileMapping_Item.txt
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x808]
push ebx
push ecx
push 0
push 0
push 4
mov edx, eax
push edx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
jne 0x433b0d
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [ebp - 0x810]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call edi
push esi
call edi
mov ecx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_MapViewOfFile_Item.txt
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
push 0x200000
push 0
push edi
call fcn.004cce10
mov edx, dword [ebp - 0x808]
push edx
push ebx
push edi
call fcn.004cd640
add esp, 0x18
push ebx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov eax, dword [ebp - 0x810]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call ebx
push esi
call ebx
push 0x4e59c4
push edi
mov dword [ebp - 0x808], edi
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x433cd6
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x433b65
mov edx, dword [ebp - 0x808]
sub ecx, esi
lea ecx, [edx + ecx + 1]
lea edx, [ebp - 0x804]
mov dword [ebp - 0x808], ecx
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x433b86
lea edx, [ebp - 0x804]
push 0x4e59c0
push edx
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x433cba
push eax
call fcn.004ce55a
push 0x4e59c0
push 0
mov ebx, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x433c3c
mov ecx, ebx
imul ecx, ecx, 0xd
lea esi, [ecx + 0x545de8]
xor ecx, ecx
mov dword [esi], ecx
mov dword [esi + 4], ecx
mov dword [esi + 8], ecx
mov ecx, eax
lea edx, [ecx + 1]
mov dword [ebp - 0x810], edx
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x433be7
sub ecx, dword [ebp - 0x810]
cmp ecx, 0xb
jbe 0x433c13
mov ecx, dword [eax]
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov cx, word [eax + 8]
mov word [esi + 8], cx
mov dl, byte [eax + 0xa]
mov byte [esi + 0xa], dl
jmp 0x433c1d
push eax
push esi
call fcn.004cce8a
add esp, 8
xor eax, eax
nop
mov cl, byte [esi + eax]
cmp cl, 0x20
je 0x433c32
cmp cl, 0xd
je 0x433c32
cmp cl, 0xa
jne 0x433c36
mov byte [esi + eax], 0
inc eax
cmp eax, 0xc
jl 0x433c20
push 0x4e59bd
push 0
call fcn.004cef6b
mov esi, eax
add esp, 8
test esi, esi
je 0x433cba
imul ebx, ebx, 0x19
xor ecx, ecx
lea ebx, [ebx + 0x5f4cb8]
mov dword [ebx], ecx
mov dword [ebx + 4], ecx
mov dword [ebx + 8], ecx
mov ecx, esi
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x433c70
sub ecx, edx
cmp ecx, 0x17
jbe 0x433c8c
mov ecx, 5
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x433c96
push esi
push ebx
call fcn.004cce8a
add esp, 8
xor eax, eax
mov cl, byte [ebx + eax]
cmp cl, 0x20
je 0x433caa
cmp cl, 0xd
je 0x433caa
cmp cl, 0xa
jne 0x433cae
mov byte [ebx + eax], 0
inc eax
cmp eax, 0x18
jl 0x433c98
mov edi, dword [ebp - 0x80c]
mov eax, dword [ebp - 0x808]
push 0x4e59c4
push eax
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x433b60
mov ecx, dword [0x526714]
shl ecx, 7
add ecx, 0x5257f0
push ecx
lea edx, [ebp - 0x804]
push str.Language_sItemDesc.txt
push edx
call fcn.004cce8a
lea eax, [ebp - 0x804]
push eax
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea ecx, [ebp - 0x804]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x433d5e
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov edx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_ItemDesc.txt__
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x814]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ebx, eax
test ebx, ebx
jne 0x433dc3
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_CreateFileMapping_ItemDesc.txt__
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x808]
push edx
push 0
push 0
push 4
push ebx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [ebp - 0x810], eax
test eax, eax
jne 0x433e21
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
call edi
push esi
call edi
mov eax, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_MapViewOfFile_ItemDesc.txt__
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
push 0x200000
push 0
push edi
call fcn.004cce10
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 0x810]
push ecx
push edx
push edi
call fcn.004cd640
mov eax, dword [ebp - 0x810]
add esp, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
call ebx
push esi
call ebx
push 0x4e5938
push edi
mov ebx, edi
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x433efb
mov ecx, eax
lea esi, [ecx + 1]
jmp 0x433e80
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x433e80
sub ecx, esi
lea edx, [ebp - 0x804]
lea ebx, [ebx + ecx + 3]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x433e95
lea ecx, [ebp - 0x804]
push 0x4e59c0
push ecx
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x433ee5
push eax
call fcn.004ce55a
push 0x4e59bd
push 0
mov esi, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x433ee5
shl esi, 0xb
push eax
add esi, 0x6a64c0
push esi
call fcn.004cce8a
add esp, 8
push 0x4e5938
push ebx
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x433e76
mov edx, dword [0x526714]
shl edx, 7
add edx, 0x5257f0
push edx
lea eax, [ebp - 0x804]
push str.Language_sSkill.txt
push eax
call fcn.004cce8a
lea ecx, [ebp - 0x804]
push ecx
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea edx, [ebp - 0x804]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x433f82
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_Skill.txt_
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x814]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ebx, eax
test ebx, ebx
jne 0x433fe7
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_CreateFileMapping_Skill.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x808]
push eax
push 0
push 0
push 4
push ebx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [ebp - 0x810], eax
test eax, eax
jne 0x434046
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
call edi
push esi
call edi
mov ecx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_MapViewOfFile_Skill.txt_
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
push 0x200000
push 0
push edi
call fcn.004cce10
mov edx, dword [ebp - 0x808]
mov eax, dword [ebp - 0x810]
push edx
push eax
push edi
call fcn.004cd640
mov ecx, dword [ebp - 0x810]
add esp, 0x18
push ecx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
call ebx
push esi
call ebx
push 0x4e59c4
push edi
mov esi, edi
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x43417d
jmp 0x4340a6
mov esi, dword [ebp - 0x808]
mov ecx, eax
lea edi, [ecx + 1]
jmp 0x4340b0
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4340b0
sub ecx, edi
lea edx, [esi + ecx + 1]
mov dword [ebp - 0x808], edx
lea edx, [ebp - 0x804]
sub edx, eax
jmp 0x4340d0
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4340d0
lea eax, [ebp - 0x804]
push 0x4e59c0
push eax
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x434161
push eax
call fcn.004ce55a
push 0x4e59bd
push 0
mov ebx, eax
call fcn.004cef6b
mov esi, eax
add esp, 0xc
test esi, esi
je 0x434161
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x434114
imul ebx, ebx, 0x19
sub ecx, edx
lea ebx, [ebx + 0x6424d8]
cmp ecx, 0x17
jbe 0x434139
mov ecx, 5
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x434143
push esi
push ebx
call fcn.004cce8a
add esp, 8
xor eax, eax
mov cl, byte [ebx + eax]
cmp cl, 0x20
je 0x434157
cmp cl, 0xd
je 0x434157
cmp cl, 0xa
jne 0x43415b
mov byte [ebx + eax], 0
inc eax
cmp eax, 0x18
jl 0x434145
mov ecx, dword [ebp - 0x808]
push 0x4e59c4
push ecx
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x4340a0
mov edx, dword [0x526714]
shl edx, 7
add edx, 0x5257f0
push edx
lea eax, [ebp - 0x804]
push str.Language_sSkillDesc.txt
push eax
call fcn.004cce8a
lea ecx, [ebp - 0x804]
push ecx
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea edx, [ebp - 0x804]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x43420b
mov eax, dword [ebp - 0x80c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ecx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_SkillDesc.txt_
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x814]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov edi, eax
test edi, edi
jne 0x434276
mov eax, dword [ebp - 0x80c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x5256ec]
push edi
push edi
push 0x526730
push str.Cannot_CreateFileMapping_SkillDesc.txt_
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x808]
push edx
push 0
push 0
push 4
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
jne 0x4342d5
mov eax, dword [ebp - 0x80c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov ecx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_MapViewOfFile_SkillDesc.txt_
push ecx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x80c]
push 0x200000
push 0
push edx
call fcn.004cce10
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 0x80c]
push eax
push ebx
push ecx
call fcn.004cd640
add esp, 0x18
push ebx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
call ebx
push esi
call ebx
mov edi, dword [ebp - 0x80c]
push 0x4e5938
push edi
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4343b6
mov edi, edi
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x434335
sub ecx, esi
lea edx, [ebp - 0x804]
lea edi, [edi + ecx + 3]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434350
lea edx, [ebp - 0x804]
push 0x4e59c0
push edx
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4343a0
push eax
call fcn.004ce55a
push 0x4e59bd
push 0
mov esi, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x4343a0
shl esi, 0xb
push eax
add esi, 0x568968
push esi
call fcn.004cce8a
add esp, 8
push 0x4e5938
push edi
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x434330
mov eax, dword [0x526714]
shl eax, 7
add eax, 0x5257f0
push eax
lea ecx, [ebp - 0x804]
push str.Language_sMonsterChat.txt
push ecx
call fcn.004cce8a
lea edx, [ebp - 0x804]
push edx
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea eax, [ebp - 0x804]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x434442
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov edx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_MonsterChat.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x814]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov edi, eax
test edi, edi
jne 0x4344a9
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call ebx
mov edx, dword [0x5256ec]
push edi
push edi
push 0x526730
push str.Cannot_CreateFileMapping_MonsterChat.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x808]
push eax
push 0
push 0
push 4
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
jne 0x434508
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov edx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_MapViewOfFile_MonsterChat.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80c]
push 0x200000
push 0
push eax
call fcn.004cce10
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 0x80c]
push ecx
push ebx
push edx
call fcn.004cd640
add esp, 0x18
push ebx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov edi, dword [ebp - 0x80c]
push 0x4e5938
push edi
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4345e6
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x434566
sub ecx, esi
lea edx, [ebp - 0x804]
lea edi, [edi + ecx + 3]
sub edx, eax
jmp 0x434580
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x434580
lea eax, [ebp - 0x804]
push 0x4e59c0
push eax
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4345d0
push eax
call fcn.004ce55a
push 0x4e59bd
push 0
mov esi, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x4345d0
shl esi, 8
push eax
add esi, 0x6444c8
push esi
call fcn.004cce8a
add esp, 8
push 0x4e5938
push edi
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x434561
mov ecx, dword [0x526714]
shl ecx, 7
add ecx, 0x5257f0
push ecx
lea edx, [ebp - 0x804]
push str.Language_sNPCServerData.txt
push edx
call fcn.004cce8a
lea eax, [ebp - 0x804]
push eax
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea ecx, [ebp - 0x804]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x434673
mov edx, dword [ebp - 0x80c]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_NPCServerData.txt_
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x814]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov edi, eax
test edi, edi
jne 0x4346dd
mov edx, dword [ebp - 0x80c]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x5256ec]
push edi
push edi
push 0x526730
push str.Cannot_CreateFileMapping_NPCServerData.txt_
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x808]
push ecx
push 0
push 0
push 4
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
jne 0x43473b
mov edx, dword [ebp - 0x80c]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov eax, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_MapViewOfFile_NPCServerData.txt_
push eax
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x80c]
push 0x200000
push 0
push ecx
call fcn.004cce10
mov edx, dword [ebp - 0x808]
mov eax, dword [ebp - 0x80c]
push edx
push ebx
push eax
call fcn.004cd640
add esp, 0x18
push ebx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov eax, dword [ebp - 0x80c]
push 0x4e59c4
push eax
mov dword [ebp - 0x808], eax
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x434908
mov ebx, dword [ebp - 0x808]
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4347a5
sub ecx, esi
lea ebx, [ebx + ecx + 1]
lea edx, [ebp - 0x804]
mov dword [ebp - 0x808], ebx
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x4347c0
lea ecx, [ebp - 0x804]
push 0x4e59c0
push ecx
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4348f2
push eax
call fcn.004ce55a
push 0x4e59c0
push 0
mov edi, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x434876
lea ecx, [edi + edi*2]
lea esi, [ecx*4 + 0x1a39c88]
xor ecx, ecx
mov dword [esi], ecx
mov dword [esi + 4], ecx
mov dword [esi + 8], ecx
mov ecx, eax
lea ebx, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x434820
sub ecx, ebx
cmp ecx, 0xb
jbe 0x434848
mov edx, dword [eax]
mov dword [esi], edx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov dx, word [eax + 8]
mov word [esi + 8], dx
mov al, byte [eax + 0xa]
mov byte [esi + 0xa], al
jmp 0x434852
push eax
push esi
call fcn.004cce8a
add esp, 8
xor eax, eax
mov cl, byte [esi + eax]
cmp cl, 0x20
je 0x434866
cmp cl, 0xd
je 0x434866
cmp cl, 0xa
jne 0x43486a
mov byte [esi + eax], 0
inc eax
cmp eax, 0xc
jl 0x434854
mov ebx, dword [ebp - 0x808]
push 0x4e59bd
push 0
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x4348f2
lea ecx, [edi + edi*2]
lea esi, [ecx*4 + 0x1a39c88]
xor ecx, ecx
mov dword [esi], ecx
mov dword [esi + 4], ecx
mov dword [esi + 8], ecx
mov ecx, eax
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4348a2
sub ecx, edi
cmp ecx, 0xb
jbe 0x4348ca
mov ecx, dword [eax]
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov cx, word [eax + 8]
mov word [esi + 8], cx
mov dl, byte [eax + 0xa]
mov byte [esi + 0xa], dl
jmp 0x4348d4
push eax
push esi
call fcn.004cce8a
add esp, 8
xor eax, eax
mov cl, byte [esi + eax]
cmp cl, 0x20
je 0x4348e8
cmp cl, 0xd
je 0x4348e8
cmp cl, 0xa
jne 0x4348ec
mov byte [esi + eax], 0
inc eax
cmp eax, 0xc
jl 0x4348d6
push 0x4e59c4
push ebx
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x4347a0
mov eax, dword [0x526714]
shl eax, 7
add eax, 0x5257f0
push eax
lea ecx, [ebp - 0x804]
push str.Language_sMonster.txt
push ecx
call fcn.004cce8a
lea edx, [ebp - 0x804]
push edx
call fcn.00431a60
add esp, 0x10
push 0
push 0
push 3
push 0
push 1
push connect
lea eax, [ebp - 0x804]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x434994
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov edx, dword [0x5256ec]
push 0
push 0
push 0x526730
push str.Cannot_Read_Monster.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x814]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push 0
push 0
push 0
push 2
push 0
push esi
mov dword [ebp - 0x808], eax
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov edi, eax
test edi, edi
jne 0x4349ff
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [0x5256ec]
push edi
push edi
push 0x526730
push str.Cannot_CreateFileMapping_Monster.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x808]
push eax
push 0
push 0
push 4
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
jne 0x434a5e
mov ecx, dword [ebp - 0x80c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov edx, dword [0x5256ec]
push ebx
push ebx
push 0x526730
push str.Cannot_MapViewOfFile_Monster.txt_
push edx
call dword [sym.imp.USER32.dll_MessageBoxExA]
pop ebx
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ccd49
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x80c]
push 0x200000
push 0
push eax
call fcn.004cce10
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 0x80c]
push ecx
push ebx
push edx
call fcn.004cd640
add esp, 0x18
push ebx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push esi
call edi
mov eax, dword [ebp - 0x80c]
push 0x4e59c4
push eax
mov ebx, eax
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x434b96
lea esp, [esp]
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x434ac5
sub ecx, esi
lea edx, [ebp - 0x804]
lea ebx, [ebx + ecx + 1]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x434ae0
lea eax, [ebp - 0x804]
push 0x4e59c0
push eax
call fcn.004cef6b
add esp, 8
test eax, eax
je 0x434b80
push eax
call fcn.004ce55a
push 0x4e59bd
push 0
mov esi, eax
call fcn.004cef6b
add esp, 0xc
test eax, eax
je 0x434b80
mov ecx, eax
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x434b26
sub ecx, edi
cmp ecx, 0xb
lea ecx, [esi + esi*2]
lea esi, [ecx*4 + 0x1a820f8]
jbe 0x434b58
mov ecx, dword [eax]
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov cx, word [eax + 8]
mov word [esi + 8], cx
mov dl, byte [eax + 0xa]
mov byte [esi + 0xa], dl
jmp 0x434b62
push eax
push esi
call fcn.004cce8a
add esp, 8
xor eax, eax
mov cl, byte [esi + eax]
cmp cl, 0x20
je 0x434b76
cmp cl, 0xd
je 0x434b76
cmp cl, 0xa
jne 0x434b7a
mov byte [esi + eax], 0
inc eax
cmp eax, 0xc
jl 0x434b64
push 0x4e59c4
push ebx
call fcn.004cef6b
add esp, 8
test eax, eax
jne 0x434ac0
mov eax, dword [ebp - 0x80c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ecx, dword [ebp - 4]
pop ebx
pop esi
xor ecx, ebp
mov eax, 1
pop edi
call fcn.004ccd49
mov esp, ebp
pop ebp
ret