Function at 0x46f080
Capabilities:
Read .ini file

Disassembly:
push 0x430
mov eax, 0x52748e
call fcn.004fc737
mov eax, dword [ebp + 8]
mov dword [ebp - 0x434], eax
mov eax, dword [0x590e04]
mov ebx, 0x590e04
mov ecx, ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x42c], eax
xor esi, esi
mov eax, 0x5945b8
lea edi, [ebp - 0x42c]
mov dword [ebp - 4], esi
call fcn.00404477
mov eax, dword [ebp - 0x42c]
cmp dword [eax - 0xc], esi
je 0x46f366
lea eax, [ebp - 0x424]
push str.safemonwd.ini
push eax
call fcn.00405a46
pop ecx
pop ecx
mov byte [ebp - 4], 1
call fcn.00404477
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x424]
add eax, 0xfffffff0
call fcn.00405521
push dword [ebp - 0x42c]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push str.itemcount
push str.general
call esi
mov dword [ebp - 0x438], eax
mov eax, dword [0x590e04]
mov ecx, ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x430], eax
xor eax, eax
mov edi, 0x206
mov byte [ebp - 4], 2
push edi
mov word [ebp - 0x218], ax
xor ebx, ebx
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.004f18b0
add esp, 0xc
xor eax, eax
push edi
mov word [ebp - 0x420], ax
lea eax, [ebp - 0x41e]
push ebx
push eax
call fcn.004f18b0
add esp, 0xc
cmp dword [ebp - 0x438], 0
mov dword [ebp - 0x428], ebx
mov ebx, str.id_d
jbe 0x46f2d3
mov edi, str.items
push dword [ebp - 0x428]
lea eax, [ebp - 0x430]
push ebx
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
push 0
push dword [ebp - 0x430]
push edi
call esi
push dword [ebp - 0x428]
mov dword [ebp - 0x43c], eax
lea eax, [ebp - 0x430]
push str.logname_d
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0x53a3d8
push dword [ebp - 0x430]
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x46f248
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x424]
push eax
call fcn.004056ee
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0xa8
push eax
mov byte [ebp - 4], 3
call fcn.00472f0a
mov ecx, dword [ebp - 0x43c]
mov dword [eax], ecx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x424]
add eax, 0xfffffff0
call fcn.00405521
push dword [ebp - 0x428]
lea eax, [ebp - 0x430]
push str.displayname_d
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
lea eax, [ebp - 0x420]
push 0x104
push eax
push 0x53a3d8
push dword [ebp - 0x430]
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x46f2bb
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x43c], eax
lea eax, [ebp - 0x420]
push eax
push ecx
lea eax, [ebp - 0x43c]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x28
push eax
call fcn.00472d61
pop ecx
push eax
call fcn.004056c8
inc dword [ebp - 0x428]
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x438]
jb 0x46f190
push dword [ebp - 0x42c]
mov edi, str.general
push 0
push str.downcount
push edi
call esi
and dword [ebp - 0x428], 0
mov dword [ebp - 0x438], eax
test eax, eax
jbe 0x46f3ef
push dword [ebp - 0x428]
lea eax, [ebp - 0x430]
push ebx
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
push 0
push dword [ebp - 0x430]
push str.downids
call esi
mov edi, eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x90
mov dword [ebp - 0x424], edi
call fcn.00472e73
cmp edi, 0x1d
je 0x46f37e
cmp edi, 0x1e
je 0x46f37e
cmp edi, 0x1f
je 0x46f37e
cmp edi, 2
je 0x46f362
xor eax, eax
inc eax
cmp edi, eax
jne 0x46f381
push 3
jmp 0x46f380
mov eax, dword [ebp - 0x42c]
add eax, 0xfffffff0
call fcn.00405521
mov eax, esi
call fcn.004fc7ba
ret 4
push 2
pop eax
dec eax
dec eax
mov dword [ebp - 0x424], edi
je 0x46f3bd
dec eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
je 0x46f3a0
add eax, 0x48
jmp 0x46f3cd
add eax, 0x78
call fcn.00472e73
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x424], edi
jmp 0x46f39b
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x78
call fcn.00472e73
inc dword [ebp - 0x428]
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x438]
jb 0x46f2fd
mov edi, str.general
push dword [ebp - 0x42c]
push 0
push str.imcount
push edi
call esi
and dword [ebp - 0x428], 0
mov dword [ebp - 0x438], eax
test eax, eax
jbe 0x46f49f
push dword [ebp - 0x428]
lea eax, [ebp - 0x430]
push ebx
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
push 0
push dword [ebp - 0x430]
push str.imids
call esi
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x424], eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x90
call fcn.00472e73
mov eax, dword [ebp - 0x43c]
test eax, eax
je 0x46f487
mov dword [ebp - 0x424], eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x60
call fcn.00472e73
inc dword [ebp - 0x428]
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x438]
jb 0x46f414
push dword [ebp - 0x42c]
push 0
push str.emailcount
push edi
call esi
and dword [ebp - 0x428], 0
mov dword [ebp - 0x438], eax
test eax, eax
jbe 0x46f53d
push dword [ebp - 0x428]
lea eax, [ebp - 0x430]
push ebx
push eax
call fcn.0040450f
add esp, 0xc
push dword [ebp - 0x42c]
push 0
push dword [ebp - 0x430]
push str.emailids
call esi
mov edi, eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x90
mov dword [ebp - 0x424], edi
call fcn.00472e73
test edi, edi
je 0x46f529
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0x434]
add eax, 0x78
mov dword [ebp - 0x424], edi
call fcn.00472e73
inc dword [ebp - 0x428]
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x438]
jb 0x46f4c0
mov eax, dword [ebp - 0x430]
add eax, 0xfffffff0
call fcn.00405521
xor esi, esi
inc esi
jmp 0x46f366