Function at 0x446010
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x48cff8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [esi + 0x32c4]
lea ecx, [esp + 0x1c]
push eax
push str.Map_05d.smm
push ecx
mov dword [esp + 0x34], 0
call sub.MFC42.DLL_CString::Format
mov ebp, dword [sym.imp.Staff2.dll_class_CString___cdecl_STAFFGetInstancePathAndFilename_struct_HINSTANCE_____char_const__]
push str.DataMap_
lea edx, [esp + 0x24]
push 0
push edx
call ebp
add esp, 0x18
mov eax, dword [eax]
lea edi, [esi + 0x323c]
push eax
mov ecx, edi
mov byte [esp + 0x2c], 1
call fcn.00486000
lea ecx, [esp + 0x14]
mov byte [esp + 0x28], 0
call fcn.00489b20
mov eax, dword [esp + 0x1c]
mov ecx, edi
push eax
call fcn.00486110
mov eax, dword [esi + 0x3244]
mov ecx, dword [esi + 0x3248]
mov dword [esi + 0x32f8], eax
mov eax, dword [esi + 0x3248]
mov edx, dword [esi + 0x3244]
mov dword [esi + 0x32fc], eax
mov eax, dword [esi + 0x32c4]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
lea ecx, [eax - 1]
cmp ecx, 0x25
ja case.0x4460e0.7
xor edx, edx
mov dl, byte [ecx + 0x4462fc]
jmp dword [edx*4 + 0x4462e0]
mov word [esi + 0x3300], 0x48
mov word [esi + 0x3302], 0x63
mov byte [esi + 0x3304], 0
jmp 0x4461bc
mov word [esi + 0x3300], 0x71
mov word [esi + 0x3302], 0x74
mov byte [esi + 0x3304], 0
jmp 0x4461bc
mov word [esi + 0x3300], 0x9f
mov word [esi + 0x3302], 0x3e
mov byte [esi + 0x3304], 0
jmp 0x4461bc
mov word [esi + 0x3300], 0x33
mov word [esi + 0x3302], 0x46
mov byte [esi + 0x3304], 0
jmp 0x4461bc
mov word [esi + 0x3300], 0x96
mov word [esi + 0x3302], 0x93
mov byte [esi + 0x3304], 0
jmp 0x4461bc
mov word [esi + 0x3300], 0x46
mov word [esi + 0x3302], 0x41
mov byte [esi + 0x3304], 0
jmp 0x4461bc
cmp eax, 0x2f
jl 0x446199
cmp eax, 0x43
jle 0x4461ac
cmp eax, 0x6d
jl 0x4461a5
cmp eax, 0x81
jle 0x4461ac
cmp eax, 0x83
jne 0x4461bc
lea eax, [esi + 0x3300]
mov ecx, edi
push eax
push 4
call fcn.00486710
push str.Config_rmServer.ini
lea ecx, [esp + 0x14]
push 0
push ecx
call ebp
add esp, 0xc
lea ecx, [esp + 0xc]
mov byte [esp + 0x28], 2
call sub.MFC42.DLL_CString::CString
mov edx, dword [esi + 0x32c4]
lea eax, [esp + 0xc]
push edx
push 0x49b020
push eax
mov byte [esp + 0x34], 3
call sub.MFC42.DLL_CString::Format
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
add esp, 0xc
push ecx
push 0
push edx
push str.MapMulti
call ebp
mov edx, dword [esp + 0x10]
xor ecx, ecx
test eax, eax
mov eax, dword [esp + 0xc]
push edx
push 1
push eax
setne cl
push str.DBConnection
mov dword [esi + 0x3658], ecx
call ebp
test eax, eax
mov dword [esi + 0x3668], eax
je 0x446241
cmp eax, 0x14
jbe 0x44624b
mov dword [esi + 0x3668], 1
xor edi, edi
add esi, 0x3170
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString
inc edi
lea ecx, [esp + 0x14]
push edi
push str.GroupExperience_d
push ecx
mov byte [esp + 0x34], 4
call sub.MFC42.DLL_CString::Format
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
add esp, 0xc
push edx
push 0x64
push eax
push str.GameSetting
call ebp
lea ecx, [esp + 0x14]
mov dword [esi], eax
mov byte [esp + 0x28], 3
call fcn.00489b20
add esi, 4
cmp edi, 5
jl 0x446253
lea ecx, [esp + 0xc]
mov byte [esp + 0x28], 2
call fcn.00489b20
lea ecx, [esp + 0x10]
mov byte [esp + 0x28], 0
call fcn.00489b20
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0xffffffff
call fcn.00489b20
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x20
ret