Function at 0x4045c0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xdc
mov eax, dword [0x458330]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xdc], ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00436510
add esp, 4
cmp eax, 0x14
jbe 0x404607
push 0x14
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0xdc]
add edx, 0x10fa4
push edx
call fcn.00437290
add esp, 0xc
jmp 0x404620
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0xdc]
add ecx, 0x10fa4
push ecx
call fcn.00435fa0
add esp, 8
mov byte [ebp - 0xd0], 0
push 0xc7
push 0
lea edx, [ebp - 0xcf]
push edx
call fcn.00435470
add esp, 0xc
push str.._Config.ini
lea eax, [ebp - 0xd0]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 8
lea ecx, [ebp - 0xd0]
push ecx
push 0xda62
push str.Port
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xdc]
mov dword [ecx + 0xf004], eax
mov edx, dword [ebp - 0xdc]
cmp dword [edx + 0xf004], 0xffffffff
je 0x404880
lea eax, [ebp - 0xd0]
push eax
push 0xa
push str.MaxConnections
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0xd4], eax
lea edx, [ebp - 0xd0]
push edx
push 0x1e
mov eax, dword [ebp - 0xdc]
add eax, 0xf044
push eax
push str.MuOnline
push str.ServerODBC
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0xd0]
push edx
push 0x14
mov eax, dword [ebp - 0xdc]
add eax, 0xf030
push eax
push str.MuOnline
push str.Name
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0xd0]
push edx
push 0x14
mov eax, dword [ebp - 0xdc]
add eax, 0xf008
push eax
push 0x4487a0
push str.Login
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0xd0]
push edx
push 0x14
mov eax, dword [ebp - 0xdc]
add eax, 0xf01c
push eax
push str.654321
push str.Password
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.Initializing_database_connection
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xdc]
push ecx
mov edx, dword [eax]
call edx
add esp, 8
mov ecx, dword [ebp - 0xdc]
call fcn.00404af0
mov eax, dword [ebp - 0xdc]
add eax, 0xf044
push eax
mov ecx, dword [ebp - 0xdc]
add ecx, 0xf030
push ecx
push str.Connected_to__s__s_database
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xdc]
push ecx
mov edx, dword [eax]
call edx
add esp, 0x10
push str.Initialized_database_connection
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xdc]
push edx
mov eax, dword [ecx]
call eax
add esp, 8
push str.Initializing_IOCP_system_connection
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xdc]
push eax
mov ecx, dword [edx]
call ecx
add esp, 8
mov edx, dword [ebp - 0xd4]
push edx
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax + 0xf004]
push ecx
mov ecx, dword [ebp - 0xdc]
call fcn.00405730
push str.Initialized_IOCP_system_connection
mov edx, dword [ebp - 0xdc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xdc]
push ecx
mov edx, dword [eax]
call edx
add esp, 8
mov dword [ebp - 0xd8], 0
jmp 0x404833
mov eax, dword [ebp - 0xd8]
add eax, 1
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0xd8]
cmp ecx, dword [ebp - 0xd4]
jge 0x404871
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xdc]
mov dword [eax + edx*8 + 0xf064], 0
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ebp - 0xdc]
mov dword [edx + ecx*8 + 0xf068], 0xffffffff
jmp 0x404824
mov eax, dword [ebp - 0xdc]
push eax
call fcn.00411d70
add esp, 4
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00435f91
mov esp, ebp
pop ebp
ret 4