Function at 0x4d4cce
Capabilities:
Check if file exists
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x58966d
mov eax, dword fs:[0]
push eax
mov eax, 0x103c
call fcn.004fc580
mov eax, dword [0x602c60]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 4], 2
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
push eax
call fcn.00431714
lea ebx, [eax + 0x10]
pop ecx
mov dword [ebp - 0x1018], ebx
mov byte [ebp - 4], 4
push 0
push 0x59b60c
lea ecx, [ebp - 0x1018]
call fcn.00432533
mov esi, eax
push esi
push 0x5a4660
lea ecx, [ebp - 0x1018]
call fcn.00432533
cmp eax, 0xffffffff
jne 0x4d4d51
mov eax, dword [ebx - 0xc]
dec eax
sub eax, esi
dec eax
push eax
inc esi
push esi
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x1018]
call fcn.00433228
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x1018]
call fcn.00433c20
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1014]
add ecx, 0xfffffff0
call fcn.004310e3
cmp byte [ebp + 0x14], 0
je 0x4d5136
lea ecx, [ebp - 0x1048]
call fcn.00432a3a
mov byte [ebp - 4], 8
lea eax, [ebp - 0x102c]
push eax
lea ecx, [ebp - 0x1048]
call fcn.004bafcc
mov byte [ebp - 4], 9
push ecx
lea eax, [ebp - 0x102c]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x101c]
push eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1048]
call fcn.004b1dd7
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x102c]
call fcn.00433c20
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x101c]
add ecx, 0xfffffff0
call fcn.004310e3
push ecx
lea eax, [ebp - 0x1018]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0xd
push ecx
lea eax, [ebp - 0x102c]
mov ecx, esp
mov dword [ebp - 0x101c], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x1024]
push eax
mov byte [ebp - 4], 9
mov ecx, edi
call fcn.004ca06b
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x1024]
mov eax, dword [eax - 0xc]
mov esi, 0x5aa3fc
test eax, eax
jne 0x4d4ed0
push ecx
mov eax, esp
mov dword [ebp - 0x1028], esp
push esi
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.0043a8de
mov byte [ebp - 4], 0x10
add esp, 8
lea eax, [ebp - 0x102c]
mov ecx, esp
mov dword [ebp - 0x1030], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x101c]
push eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1048]
call fcn.0049be74
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x1024]
call fcn.00433c20
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x101c]
add ecx, 0xfffffff0
call fcn.004310e3
call fcn.0049d8d4
cmp eax, 0xd
mov eax, str.links
jg 0x4d4ee4
mov eax, 0x5ac22c
push ecx
mov ecx, esp
mov dword [ebp - 0x1030], esp
push eax
call fcn.0043479c
mov byte [ebp - 4], 0x14
push ecx
lea eax, [ebp - 0x102c]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x1014]
push eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1048]
call fcn.0049be74
mov byte [ebp - 4], 0x16
push ecx
lea eax, [ebp - 0x1018]
mov ecx, esp
mov dword [ebp - 0x1030], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x17
push ecx
lea eax, [ebp - 0x1014]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x1020]
push eax
mov byte [ebp - 4], 0x16
mov ecx, edi
call fcn.004ca06b
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x1020]
cmp dword [eax - 0xc], 0
jne 0x4d4fe9
push ecx
mov eax, esp
mov dword [ebp - 0x1030], esp
push esi
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.0043a8de
mov byte [ebp - 4], 0x1a
add esp, 8
lea eax, [ebp - 0x1014]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x101c]
push eax
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x1048]
call fcn.0049be74
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x1020]
call fcn.00433c20
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x101c]
add ecx, 0xfffffff0
call fcn.004310e3
push dword [ebp - 0x1024]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x4d5057
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x1010], ax
lea eax, [ebp - 0x100e]
push eax
call fcn.004fc1f0
add esp, 0xc
push dword [ebp - 0x1024]
lea eax, [ebp - 0x1010]
push 0x800
push eax
push 0x59a2c0
mov edi, 0x59b0cc
push edi
mov esi, str.InternetShortcut
push esi
call ebx
lea eax, [ebp - 0x1010]
push eax
lea ecx, [ebp + 8]
call fcn.00431e0c
test eax, eax
je 0x4d5072
jmp 0x4d5061
mov edi, 0x59b0cc
mov esi, str.InternetShortcut
push dword [ebp - 0x1024]
push dword [ebp + 8]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push dword [ebp - 0x1020]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4d50ce
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x1010], ax
lea eax, [ebp - 0x100e]
push eax
call fcn.004fc1f0
add esp, 0xc
push dword [ebp - 0x1020]
lea eax, [ebp - 0x1010]
push 0x800
push eax
push 0x59a2c0
push edi
push esi
call ebx
lea eax, [ebp - 0x1010]
push eax
lea ecx, [ebp + 8]
call fcn.00431e0c
test eax, eax
je 0x4d50df
push dword [ebp - 0x1020]
push dword [ebp + 8]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x1020]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x1014]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1024]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x102c]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1048]
call fcn.00432a92
cmp byte [ebp + 0x18], 0
je 0x4d51b1
lea ecx, [ebp - 0x1014]
call fcn.004b7b53
mov byte [ebp - 4], 0x23
push ecx
lea eax, [ebp - 0x1018]
mov ecx, esp
mov dword [ebp - 0x1030], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x24
push ecx
lea eax, [ebp + 0xc]
mov ecx, esp
mov dword [ebp - 0x1028], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x25
push ecx
lea eax, [ebp + 0x10]
mov ecx, esp
mov dword [ebp - 0x101c], esp
push eax
call fcn.004324a9
mov byte [ebp - 4], 0x26
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x1014]
call fcn.004d461a
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1014]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1018]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 1
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.004310e3
mov byte [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.004310e3
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp + 0x10]
add ecx, 0xfffffff0
call fcn.004310e3
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004fb958
leave
ret 0x14