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

Disassembly:
mov eax, 0x1060
call fcn.00512b50
push ebx
push ebp
push esi
mov esi, dword [esp + 0x1070]
xor ebx, ebx
push edi
cmp esi, ebx
mov ebp, ecx
je 0x485aaf
cmp dword [ebp + 0x58], ebx
je 0x485aaf
cmp word [esi], bx
je 0x485aaf
mov ax, word [0x560ec0]
mov ecx, 0x411
mov word [esp + 0x28], ax
xor eax, eax
lea edi, [esp + 0x2a]
push esi
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x48585c
push 0x530a20
push esi
call fcn.0043e030
add esp, 8
test eax, eax
je 0x485896
push esi
lea ecx, [esp + 0x2c]
push 0x823
push ecx
push 0x560ec0
push 0x555d28
push str.InternetShortcut
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x485896
push esi
call fcn.004d7c80
add esp, 4
test eax, eax
je 0x485896
mov edi, dword [0x5f57b0]
call fcn.004a1800
mov edx, dword [esp + 0x107c]
lea eax, [esp + 0x28]
push edx
push 1
push 0x823
push eax
push esi
push edi
call fcn.004a1800
mov ecx, eax
call fcn.004a1ce0
cmp word [esp + 0x28], bx
jne 0x4858b6
push esi
push 0x52e450
lea ecx, [esp + 0x30]
push 0x823
push ecx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
lea edx, [esp + 0x28]
push edx
call fcn.004b9010
lea eax, [esp + 0x2c]
push eax
call fcn.00476300
add esp, 8
test eax, eax
je 0x4858d8
mov dword [esp + 0x1084], ebx
cmp dword [esp + 0x1088], ebx
je 0x485919
lea ecx, [esp + 0x28]
push ebx
push ecx
mov ecx, ebp
call fcn.00488af0
cmp eax, ebx
je 0x485919
cmp dword [eax + 0x3148], ebx
jne 0x485919
mov esi, dword [eax + 0x560c]
mov ecx, dword [ebp + 0x58]
push ebx
push esi
call fcn.00506310
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1060
ret 0x20
mov ecx, dword [ebp + 0x58]
lea edx, [esp + 0x10]
lea eax, [esp + 0x14]
push edx
push eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
call fcn.00503160
mov ecx, dword [ebp + 0x58]
push eax
call fcn.00503260
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x1078]
xor edx, edx
cmp ecx, ebx
je 0x485a36
cmp dword [ecx + 0x30], ebx
je 0x48596b
mov eax, dword [esp + 0x107c]
test al, 0xb
jne 0x485966
test ah, 1
je 0x48596b
mov edx, 1
xor edi, edi
cmp esi, ebx
je 0x48599a
cmp word [esi + 0x3150], bx
lea edi, [esi + 0x3150]
jne 0x48599a
cmp word [esi + 0x70], bx
lea eax, [esi + 0x70]
jne 0x485998
cmp word [esi + 0x2100], bx
lea eax, [esi + 0x2100]
je 0x48599a
mov edi, eax
cmp dword [esp + 0x1084], ebx
je 0x4859b3
cmp dword [ecx + 0x5648], ebx
jne 0x4859b3
cmp edx, ebx
je 0x485a36
mov ecx, ebp
call fcn.0048bf00
mov ecx, dword [esp + 0x107c]
push ebx
push edi
push ebx
lea edx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x20]
push edx
call fcn.00415230
test eax, eax
je 0x485a2f
mov ecx, dword [ebp + 0x5c]
xor eax, eax
mov dword [esp + 0x1c], eax
cmp ecx, ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], eax
je 0x485a0d
lea edx, [esp + 0x18]
push edx
call fcn.004cabd0
test eax, eax
je 0x485a0d
mov ecx, dword [ebp + 0x64]
lea eax, [esp + 0x18]
push eax
push 1
call fcn.00415080
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 0x560c]
mov ecx, dword [ebp + 0x58]
push esi
call fcn.005063d0
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1060
ret 0x20
mov edi, 1
jmp 0x485a3d
mov edi, dword [esp + 0x1080]
cmp esi, ebx
je 0x485a7b
cmp word [esi + 0x3150], bx
lea ecx, [esi + 0x3150]
jne 0x485a68
cmp word [esi + 0x70], bx
lea eax, [esi + 0x70]
jne 0x485a6a
cmp word [esi + 0x2100], bx
lea eax, [esi + 0x2100]
jne 0x485a6a
mov eax, ecx
push eax
mov ecx, 0x5deca8
call fcn.004d1440
test eax, eax
je 0x485a7b
xor esi, esi
mov edx, dword [esp + 0x108c]
mov eax, dword [esp + 0x107c]
mov ecx, dword [esp + 0x1090]
push ebx
push edx
push esi
push eax
push ecx
lea edx, [esp + 0x3c]
push edi
push edx
mov ecx, ebp
call fcn.00482910
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1060
ret 0x20
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x1060
ret 0x20