Function at 0x4f63e0
Capabilities:
Read .ini file

Disassembly:
sub esp, 0x63c
mov eax, dword [0x6aae14]
xor eax, esp
mov dword [esp + 0x638], eax
mov eax, dword [esp + 0x648]
mov ecx, dword [esp + 0x64c]
mov edx, dword [esp + 0x654]
push ebp
mov ebp, dword [esp + 0x644]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x65c]
push 0x207
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x664]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x668]
lea eax, [esp + 0x439]
push 0
push eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x24], edx
mov byte [esp + 0x440], 0
call fcn.005dfd60
push 0x103
lea ecx, [esp + 0x341]
push 0
push ecx
mov byte [esp + 0x348], 0
call fcn.005dfd60
push 0x103
lea edx, [esp + 0x41]
push 0
push edx
mov byte [esp + 0x48], 0
call fcn.005dfd60
push 0x103
lea eax, [esp + 0x151]
push 0
push eax
mov byte [esp + 0x158], 0
call fcn.005dfd60
add esp, 0x30
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [esp + 0x654], 0
mov dword [esp + 0x1c], eax
je 0x4f6951
push ebx
push esi
push edi
push 0x8000
call fcn.005e20e4
push 0x8000
mov ebx, eax
call fcn.005e20e4
push 0x8000
mov esi, eax
call fcn.005e20e4
push 0x8000
mov edi, eax
call fcn.005e20e4
add esp, 0x10
mov dword [esp + 0x10], eax
test ebx, ebx
je 0x4f691f
test esi, esi
je 0x4f6912
test edi, edi
je 0x4f6912
test eax, eax
je 0x4f6912
mov byte [eax], 0
mov byte [edi], 0
mov byte [esi], 0
mov byte [ebx], 0
test ebp, ebp
je 0x4f6542
cmp byte [ebp], 0
je 0x4f6542
push ebp
lea ecx, [esp + 0x444]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x4f6571
lea edx, [esp + 0x134]
push 0x104
push edx
call fcn.004ebf90
lea eax, [esp + 0x13c]
push eax
lea ecx, [esp + 0x44c]
push str._sMWTEMP.LOG
push ecx
call fcn.005dfb23
add esp, 0x14
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x660]
mov edx, ebp
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4f6580
cmp byte [ebp], cl
mov ebp, dword [esp + 0x1c]
jne 0x4f65cd
test ebp, ebp
je 0x4f65cd
cmp dword [esp + 0x14], 0
je 0x4f65bd
cmp dword [esp + 0x18], 0
je 0x4f65b1
mov edx, dword [esp + 0x10]
push str._s__s__s
push edx
jmp 0x4f65c7
mov eax, dword [esp + 0x10]
push 0x61cdf0
push eax
jmp 0x4f65c7
mov ecx, dword [esp + 0x10]
push 0x60c800
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x4f65ec
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 0xa
jne 0x4f65ec
mov byte [eax + ecx - 1], 0
push 0
lea eax, [esp + 0x340]
push 1
push eax
call fcn.004eff90
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
je 0x4f6695
cmp byte [eax], 0
je 0x4f6695
mov ebp, dword [esp + 0x2c]
test ebp, ebp
je 0x4f6691
cmp byte [ebp], 0
je 0x4f6691
lea ecx, [esp + 0x30]
push 0x103
push ecx
call fcn.004f6260
lea edx, [esp + 0x38]
push edx
call fcn.004e24e0
lea eax, [esp + 0x3c]
add esp, 0xc
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4f6644
mov ecx, dword [str.Mailscan.lan]
mov edx, dword [0x649a38]
mov dword [eax], ecx
mov ecx, dword [0x649a3c]
mov dword [eax + 4], edx
mov dl, byte [0x649a40]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x10]
mov byte [eax + 0xc], dl
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x30]
push eax
push 0x8000
push edi
push ecx
push edx
push ebp
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ebp, dword [esp + 0x1c]
jmp 0x4f66aa
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
mov edx, edi
sub edx, eax
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4f66a0
push edi
call fcn.004d9060
mov eax, dword [esp + 0x28]
add esp, 4
mov byte [esi], 0
test eax, eax
je 0x4f66e2
cmp byte [eax], 0
je 0x4f66e2
push 0x8000
push eax
push esi
call fcn.004d9130
push 0x8000
push 0x60ef34
push esi
call fcn.004d9130
add esp, 0x18
cmp dword [esp + 0x654], 0
je 0x4f6749
push 0x103
lea eax, [esp + 0x23d]
push 0
push eax
mov byte [esp + 0x244], 0
call fcn.005dfd60
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea ecx, [esp + 0x344]
push ecx
lea edx, [esp + 0x244]
push str._s__04x__04x
push edx
call fcn.005dfb23
push 0x8000
lea eax, [esp + 0x250]
push eax
push esi
call fcn.004d9130
add esp, 0x20
xor eax, eax
test ebp, ebp
jne 0x4f675d
cmp dword [esp + 0x14], ebp
jne 0x4f6786
cmp dword [esp + 0x18], ebp
jne 0x4f6786
jmp 0x4f6786
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test edx, edx
jne 0x4f6774
test ecx, ecx
jne 0x4f6770
lea eax, [edx + 1]
test edx, edx
je 0x4f677d
test ecx, ecx
jne 0x4f678d
mov eax, 2
cmp eax, 3
ja 0x4f68c9
jmp dword [eax*4 + 0x4f6968]
mov eax, 3
jmp 0x4f6786
cmp byte [esp + 0x440], 0
je 0x4f68e6
push 1
lea ecx, [esp + 0x444]
push esi
push ecx
call fcn.004e1620
add esp, 0xc
push ebx
call fcn.005e0865
push esi
call fcn.005e0865
push edi
call fcn.005e0865
mov edx, dword [esp + 0x1c]
push edx
call fcn.005e0865
mov eax, dword [esp + 0x38]
add esp, 0x10
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x4f694e
push ebx
call fcn.005e0865
mov eax, dword [esp + 0x14]
add esp, 4
test esi, esi
je 0x4f6930
push esi
call fcn.005e0865
mov eax, dword [esp + 0x14]
add esp, 4
test edi, edi
je 0x4f6941
push edi
call fcn.005e0865
mov eax, dword [esp + 0x14]
add esp, 4
test eax, eax
je 0x4f694e
push eax
call fcn.005e0865
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x63c]
pop ebp
xor ecx, esp
call fcn.005dfbbe
add esp, 0x63c
ret