Function at 0x401b60
Capabilities:
Read .ini file

Disassembly:
push esi
push edi
push str...data_
mov ecx, 0x459a20
call fcn.00401490
push str.commonserver.cfg
mov ecx, 0x459a20
call fcn.004014c0
push eax
push 0
push str.Language
push str.GameServerInfo
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str.langkoritem_kor_.txt
mov ecx, 0x459a20
mov dword [0x45b6c8], eax
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.langkorSkill_kor_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453dbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453cbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x44e2ec
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453af0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [0x45b6c8]
and ecx, 3
cmp eax, 5
rep movsb byte es:[edi], byte [esi]
ja case.default.0x401c2b
jmp dword [eax*4 + 0x401f98]
push str.langkoritem_kor_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.langkorSkill_kor_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._KOR_
jmp 0x401eb2
push str.langengitem_eng_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.langengSkill_eng_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._ENG_
jmp 0x401eb2
push str.langjpnitem_jpn_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.langjpnSkill_jpn_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._JPN_
jmp 0x401eb2
push str.langchsitem_chs_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.langchsSkill_chs_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._CHA_
jmp 0x401eb2
push str.lang_taiitem_tai_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.lang_taiSkill_tai_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._THI_
jmp 0x401eb2
push str.lang_thaitem_Tha_.txt
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push str.lang_thaSkill_Tha_.txt
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x453fbc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x459a20
call fcn.004014c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x453ebc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str._THA_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x453af0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x45b6c8]
mov esi, dword [sym.imp.LogProc.dll_void___cdecl_MsgBox_char__]
test eax, eax
jne 0x401efe
push 0x453fbc
mov ecx, 0x4540f8
call fcn.00403ab0
test eax, eax
jne 0x401f1b
jmp 0x401f11
push 0x453dbc
mov ecx, 0x4540f8
call fcn.00403f70
test eax, eax
jne 0x401f1b
push str.Item_File_Not_Found.
call esi
add esp, 4
push str...dataMonster.txt
mov ecx, 0x4540f8
call fcn.00404010
test eax, eax
jne 0x401f38
push str.Monster_File_Not_Found.
call esi
add esp, 4
mov eax, dword [0x45b6c8]
test eax, eax
jne 0x401f56
push 0x453cbc
mov ecx, 0x4540f8
call fcn.00404110
test eax, eax
jne 0x401f73
jmp 0x401f69
push 0x453ebc
mov ecx, 0x4540f8
call fcn.004041b0
test eax, eax
jne 0x401f73
push str.Skill_File_Not_Found.
call esi
add esp, 4
push str...data_badsyntax.txt
mov ecx, 0x4530b0
call fcn.00401090
test eax, eax
jne 0x401f90
push str.badstring_load_error
call esi
add esp, 4
pop edi
mov eax, 1
pop esi
ret