Function at 0x4227f0
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x4409d0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x140
push esi
push edi
mov esi, ecx
mov dword [esp + 0x3c], 0
lea ecx, [esp + 8]
mov dword [esp + 0x150], 2
call sub.MFC42.DLL_CString::CString_4
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x45]
mov byte [esp + 0x44], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
add esi, 0x2084
push 0x104
push esi
mov byte [esp + 0x158], 3
stosb byte es:[edi], al
call dword [sym.imp.MSVCRT.dll__getcwd]
add esp, 8
lea eax, [esp + 8]
push esi
push str._sini_
push eax
call sub.MFC42.DLL_CString::Format
mov eax, dword [esp + 0x168]
add esp, 0xc
cmp eax, 0xb
ja case.default.0x422880
jmp dword [eax*4 + 0x422c58]
lea ecx, [esp + 8]
push str.Korea.ini
lea edx, [esp + 0x2c]
push ecx
push edx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x164]
mov edx, dword [esp + 0x160]
push eax
lea eax, [esp + 0x48]
push 0x104
push eax
push ecx
push edx
push str.Korea
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x28]
jmp 0x422bbb
lea eax, [esp + 8]
push str.English.ini
lea ecx, [esp + 0x1c]
push eax
push ecx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x160]
push eax
mov eax, dword [esp + 0x168]
lea edx, [esp + 0x48]
push 0x104
push edx
push eax
push ecx
push 0x455450
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x18]
jmp 0x422bbb
lea edx, [esp + 8]
push str.China.ini
lea eax, [esp + 0x34]
push edx
push eax
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov edx, dword [esp + 0x164]
push eax
mov eax, dword [esp + 0x164]
lea ecx, [esp + 0x48]
push 0x104
push ecx
push edx
push eax
push 0x45543c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x30]
jmp 0x422bbb
lea ecx, [esp + 8]
push str.Malaysia.ini
lea edx, [esp + 0x24]
push ecx
push edx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x164]
mov edx, dword [esp + 0x160]
push eax
lea eax, [esp + 0x48]
push 0x104
push eax
push ecx
push edx
push 0x455420
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x20]
jmp 0x422bbb
lea eax, [esp + 8]
push str.Thailand.ini
lea ecx, [esp + 0x44]
push eax
push ecx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x160]
push eax
mov eax, dword [esp + 0x168]
lea edx, [esp + 0x48]
push 0x104
push edx
push eax
push ecx
push 0x455404
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x40]
jmp 0x422bbb
lea edx, [esp + 8]
push str.Indonesia.ini
lea eax, [esp + 0x14]
push edx
push eax
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov edx, dword [esp + 0x164]
push eax
mov eax, dword [esp + 0x164]
lea ecx, [esp + 0x48]
push 0x104
push ecx
push edx
push eax
push 0x4553e8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x10]
jmp 0x422bbb
lea ecx, [esp + 8]
push str.Vietnam.ini
lea edx, [esp + 0x3c]
push ecx
push edx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x164]
mov edx, dword [esp + 0x160]
push eax
lea eax, [esp + 0x48]
push 0x104
push eax
push ecx
push edx
push 0x4553d4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x38]
jmp 0x422bbb
lea eax, [esp + 8]
push str.India.ini
lea ecx, [esp + 0x18]
push eax
push ecx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x160]
push eax
mov eax, dword [esp + 0x168]
lea edx, [esp + 0x48]
push 0x104
push edx
push eax
push ecx
push 0x4553c0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x14]
jmp 0x422bbb
lea edx, [esp + 8]
push str.Slovakia.ini
lea eax, [esp + 0x20]
push edx
push eax
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov edx, dword [esp + 0x164]
push eax
mov eax, dword [esp + 0x164]
lea ecx, [esp + 0x48]
push 0x104
push ecx
push edx
push eax
push 0x4553a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x1c]
jmp 0x422bbb
lea ecx, [esp + 8]
push str.Hungary.ini
lea edx, [esp + 0x28]
push ecx
push edx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x164]
mov edx, dword [esp + 0x160]
push eax
lea eax, [esp + 0x48]
push 0x104
push eax
push ecx
push edx
push 0x455390
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x24]
jmp 0x422bbb
lea eax, [esp + 8]
push str.Brazil.ini
lea ecx, [esp + 0x30]
push eax
push ecx
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov ecx, dword [esp + 0x160]
push eax
mov eax, dword [esp + 0x168]
lea edx, [esp + 0x48]
push 0x104
push edx
push eax
push ecx
push 0x45537c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x2c]
jmp 0x422bbb
lea edx, [esp + 8]
push str.Mexico.ini
lea eax, [esp + 0x38]
push edx
push eax
call sub.MFC42.DLL_operator_3
mov eax, dword [eax]
mov edx, dword [esp + 0x164]
push eax
mov eax, dword [esp + 0x164]
lea ecx, [esp + 0x48]
push 0x104
push ecx
push edx
push eax
push 0x455368
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString_2
mov esi, dword [esp + 0x158]
lea edx, [esp + 0xc]
push edx
mov ecx, esi
mov byte [esp + 0x154], 4
call sub.MFC42.DLL_CString::CString_1
mov dword [esp + 0x3c], 1
lea ecx, [esp + 0xc]
mov byte [esp + 0x150], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 8]
mov byte [esp + 0x150], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x160]
mov byte [esp + 0x150], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x164]
mov byte [esp + 0x150], 0
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x148]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x14c
ret 0x10