Function at 0x429d0e
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x4cf62c
call fcn.0046fad0
sub esp, 0x164
push esi
lea eax, [ebp - 0x14]
push edi
push eax
call dword [sym.imp.BasicCtrlDll.dll_class_CString___cdecl_GetExeFolder_void_]
and dword [ebp - 4], 0
mov dword [esp], str.loginsl.dat
push eax
lea eax, [ebp - 0x20]
push eax
call sub.MFC42.DLL_operator_3
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
push dword [ebp - 0x20]
push 0
push str.ServerCount
push dword [ebp + 0x10]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov esi, 0x529e50
lea edi, [ebp - 0x70]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
push 6
mov dword [ebp - 0x14], eax
pop ecx
xor eax, eax
lea edi, [ebp - 0x69]
push 1
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
pop eax
cmp dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], eax
jl 0x429f1d
mov esi, dword [ebp + 8]
push ebx
lea eax, [ebp - 0x6a]
push 0xa
push eax
push dword [ebp - 0x1c]
call dword [sym.imp.MSVCRT.dll__itoa]
add esp, 0xc
lea eax, [ebp - 0x170]
mov edi, 0x4e51ec
push dword [ebp - 0x20]
push 0x100
push eax
lea eax, [ebp - 0x70]
push edi
push eax
push dword [ebp + 0x10]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
and byte [ebp - 0x71], 0
cmp byte [ebp - 0x170], 0
je 0x429f0d
lea eax, [ebp - 0x170]
lea ecx, [ebp - 0x10]
push eax
call sub.MFC42.DLL_CString::CString_1
push edi
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString_1
push 0x3a
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::Find_1
mov edi, eax
cmp edi, 0xffffffff
jne 0x429e16
lea eax, [ebp - 0x10]
lea ecx, [ebp + 8]
push eax
call fcn.0046f498
mov dword [ebp - 0x18], 0x1f40
jmp 0x429e67
lea eax, [ebp - 0x28]
push edi
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 5
call fcn.0046f498
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
inc edi
lea eax, [ebp - 0x24]
push edi
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::Mid_1
push dword [ebp - 0x24]
mov byte [ebp - 4], 6
call dword [sym.imp.MSVCRT.dll_atoi]
pop ecx
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
xor ebx, ebx
xor edi, edi
cmp dword [esi + 8], ebx
jle 0x429ea0
mov eax, dword [esi + 4]
push dword [ebx + eax + 0xc]
push dword [ebp + 8]
call dword [sym.imp.MSVCRT.dll__mbscmp]
pop ecx
test eax, eax
pop ecx
jne 0x429e97
movzx ecx, word [ebp - 0x18]
mov eax, dword [esi + 4]
cmp ecx, dword [ebx + eax + 0x10]
je 0x429f39
inc edi
add ebx, 0x14
cmp edi, dword [esi + 8]
jl 0x429e70
lea ecx, [ebp - 0x3c]
call fcn.00429f86
mov eax, dword [ebp + 0xc]
mov byte [ebp - 4], 9
mov dword [ebp - 0x34], eax
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x38], 1
call fcn.0046f498
movzx edi, word [ebp - 0x18]
lea eax, [ebp - 0x3c]
mov ecx, esi
push eax
mov dword [ebp - 0x2c], edi
call fcn.0042b6a2
push edi
push dword [ebp + 8]
push eax
push 0x529eb4
call fcn.0041205e
add esp, 0x10
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x30]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
inc dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x14]
jle 0x429d8b
pop ebx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 0xc
movzx eax, word [ebp - 0x18]
push eax
push dword [ebp + 8]
push edi
push 0x529e70
call fcn.0041205e
mov ecx, dword [esi + 4]
lea eax, [edi + edi*4]
add esp, 0x10
lea eax, [ecx + eax*4]
lea ecx, [ebp - 0x50]
push eax
call fcn.00429fd5
push 1
push edi
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.0042b77a
lea eax, [ebp - 0x50]
mov ecx, esi
push eax
call fcn.0042b6a2
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x44]
jmp 0x429ef0