Function at 0x44aa9c
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x5ed6e0
call fcn.0059d590
sub esp, 0x334
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0x14]
and byte [esi + 0x134], 0
and byte [esi + 0x368], 0
and byte [esi + 0x369], 0
call sub.MFC42.DLL_CString::CString
push dword [esi + 0x110]
and dword [ebp - 4], 0
lea edi, [esi + 0x110]
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::operator_1
push str.file:____
push 0x679dd8
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::Replace
push 0x679dd4
push 0x679dd0
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::Replace
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::LockBuffer
mov ebx, eax
push ebx
call sub.MSVCRT.dll_strlen
pop ecx
add eax, ebx
push eax
push ebx
mov ecx, edi
call fcn.004029af
push 0x104
lea eax, [ebp - 0x340]
push 0
push eax
call sub.MSVCRT.dll_memset
mov ebx, dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0xc
push dword [edi]
lea eax, [ebp - 0x340]
push str._s_data_main_start.dat
push 0x103
push eax
call ebx
add esp, 0x10
mov ecx, esi
push 0
push 0x50000000
push 0
call sub.MFC42.DLL_CWnd::ModifyStyle
lea eax, [ebp - 0x340]
lea ecx, [esi + 0x60]
push eax
call fcn.004e4d66
push dword [edi]
mov ecx, esi
push str.PATH
call fcn.0044b3be
cmp byte [esi + 0x369], 0
jne 0x44aba3
xor edi, edi
push edi
push edi
push edi
push edi
push esi
push 0x44df61
call sub.MFC42.DLL_AfxBeginThread
jmp 0x44aba5
xor edi, edi
push 0x10
lea eax, [ebp - 0x28]
push edi
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
mov edi, 0x676adc
push dword [esi + 0xfc]
lea eax, [ebp - 0x28]
push edi
push 0xf
push eax
call ebx
add esp, 0x10
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
push str.CURWORLD
call fcn.0044b3be
push 0x10
lea eax, [ebp - 0x28]
push 0
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
lea eax, [ebp - 0x28]
push dword [esi + 0x100]
push edi
push 0xf
push eax
call ebx
add esp, 0x10
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
push str.CURSERVER
call fcn.0044b3be
and byte [ebp - 0xbc], 0
push 0x20
pop ecx
xor eax, eax
and byte [ebp - 0x13c], al
lea edi, [ebp - 0xbb]
rep stosd dword es:[edi], eax
push 0xf
lea edi, [ebp - 0x13b]
pop ecx
and byte [ebp - 0xfc], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0xf
xor eax, eax
pop ecx
lea edi, [ebp - 0xfb]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [esi + 0x108]
lea edi, [esi + 0x104]
sub eax, dword [edi]
jne 0x44aca9
push 0x616cf8
lea eax, [ebp - 0xbc]
push 0x81
push eax
push 0x68f370
push str.AccountRecord
push str.Account
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x44aca9
lea eax, [ebp - 0xbc]
push eax
call sub.MSVCRT.dll_strlen
pop ecx
lea eax, [ebp + eax - 0xbc]
push eax
lea eax, [ebp - 0xbc]
push eax
mov ecx, edi
call fcn.004029af
push dword [edi]
mov ecx, esi
push str.LOGINUSER
call fcn.0044b3be
push 0x616cf8
lea eax, [ebp - 0x28]
push 0xf
push eax
push 0x676ad8
push str.AccountNum
push str.AccountList
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
mov edx, dword [esi + 0xd8]
pop ecx
lea ecx, [esi + 0xd8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx + 4]
push eax
push edx
call fcn.0040603f
and dword [ebp - 0x10], 0
mov edi, dword [ebp - 0x2c]
push dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jge 0x44ae83
push str.Account_d
lea eax, [ebp - 0x13c]
push 0x3f
push eax
call ebx
add esp, 0x10
lea eax, [ebp - 0xbc]
push 0x616cf8
push 0x81
push eax
lea eax, [ebp - 0x13c]
push 0x68f370
push eax
push str.AccountList
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push dword [ebp - 0x10]
lea eax, [ebp - 0xfc]
push str.ACCOUNT_d
push 0x3f
push eax
call ebx
add esp, 0x10
lea eax, [ebp - 0xbc]
mov ecx, esi
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0044b3be
lea eax, [ebp - 0x15]
lea ecx, [ebp - 0x38]
push eax
lea eax, [ebp - 0xbc]
push eax
mov byte [ebp - 4], 1
call fcn.00402bfa
lea eax, [ebp - 0x38]
lea ecx, [esi + 0xd8]
push eax
mov byte [ebp - 4], 2
call fcn.0040deae
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 3
call fcn.00402b84
and byte [ebp - 4], 0
dec edi
cmp dword [ebp - 0x10], edi
jne 0x44aea9
mov ecx, dword [esi + 0x108]
lea eax, [esi + 0x104]
sub ecx, dword [eax]
je 0x44adcf
push dword [eax]
jmp 0x44ae7c
and byte [ebp - 0x23c], 0
push 0x3f
pop ecx
xor eax, eax
lea edi, [ebp - 0x23b]
push 0x616cf8
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x23c]
push 0xff
push eax
push 0x68f370
push str.AccountRecord
push str.Account
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x23c]
push eax
call sub.MSVCRT.dll_strlen
pop ecx
lea eax, [ebp + eax - 0x23c]
push eax
lea eax, [ebp - 0x23c]
lea edi, [esi + 0x104]
push eax
mov ecx, edi
call fcn.004029af
cmp dword [esi + 0xfc], 0xffffffff
je 0x44ae52
cmp dword [esi + 0x100], 0xffffffff
je 0x44ae52
mov eax, dword [edi + 4]
sub eax, dword [edi]
je 0x44ae52
push dword [edi]
jmp 0x44ae7c
lea eax, [ebp - 0xbc]
push eax
call sub.MSVCRT.dll_strlen
pop ecx
lea eax, [ebp + eax - 0xbc]
push eax
lea eax, [ebp - 0xbc]
push eax
mov ecx, edi
call fcn.004029af
lea eax, [ebp - 0xbc]
push eax
push str.LOGINUSER
jmp 0x44aea2
push str.ACCOUNT_d
lea eax, [ebp - 0xfc]
push 0x3f
push eax
call ebx
add esp, 0x10
lea eax, [ebp - 0xfc]
push 0x68f370
push eax
mov ecx, esi
call fcn.0044b3be
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xa
jl 0x44acff
cmp byte [esi + 0xc4], 0
lea edi, [esi + 0xc4]
je 0x44aed9
push 0x676dfc
push str.RETURNLOGIN
mov ecx, esi
call fcn.0044b3be
and byte [edi], 0
push 0
mov ecx, esi
call fcn.0044b7a3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0059d29c
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret