Function at 0x450b7b
Capabilities:
Read .ini file

Disassembly:
push ebp
lea ebp, [esp - 0x103c]
mov eax, 0x103c
call fcn.004f6500
push 0xffffffffffffffff
push 0x533663
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x590cec]
xor eax, ebp
mov dword [ebp + 0x1038], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, dword [ebp + 0x1044]
xor eax, eax
mov ebx, ecx
mov edi, 0x3ff
push edi
push eax
mov dword [ebx + 0x18], eax
mov dword [ebp - 4], eax
mov byte [ebp + 0x438], al
lea eax, [ebp + 0x439]
push eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], esi
call fcn.004f42d0
push edi
lea eax, [ebp + 0xc39]
push 0
push eax
mov byte [ebp + 0xc38], 0
call fcn.004f42d0
push edi
lea eax, [ebp + 0x839]
push 0
push eax
mov byte [ebp + 0x838], 0
call fcn.004f42d0
add esp, 0x24
lea ecx, [ebp]
call fcn.004063ed
mov byte [ebp - 4], 1
test esi, esi
jne 0x450c63
mov dword [ebx + 0x18], 5
lea ecx, [ebp]
mov byte [ebp - 4], 0
call fcn.004064c1
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x1038]
xor ecx, ebp
call fcn.004f41b5
add ebp, 0x103c
leave
ret 4
and dword [esi], 0
mov eax, dword [ebx + 0x40]
mov ecx, dword [ebx + 0x34]
lea edx, [eax + 2]
cmp edx, ecx
jle 0x450c7c
mov dword [ebx + 0x18], 7
jmp 0x450c30
lea ecx, [ebx + 0x2c]
push eax
call fcn.0040639c
push dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x400
lea eax, [ebp + 0x438]
push eax
push 0x5441cc
push 0x5508c8
mov esi, str.InternetShortcut
push esi
call edi
push dword [ebx + 0x40]
lea ecx, [ebx + 0x2c]
call fcn.0040639c
push dword [eax]
lea eax, [ebp + 0x838]
push 0x400
push eax
push 0x5441cc
push str.IconFile
push esi
call edi
push dword [ebx + 0x40]
lea edi, [ebx + 0x2c]
mov ecx, edi
call fcn.0040639c
push dword [eax]
push 0
push str.IconIndex
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x450cf8
inc dword [ebp - 0x18]
push dword [ebx + 0x40]
mov ecx, edi
call fcn.0040639c
push dword [eax]
lea ecx, [ebp]
call fcn.00489793
lea eax, [ebp + 0xc38]
push eax
push 0
lea ecx, [ebp]
call fcn.004898dc
lea eax, [ebp + 0xc38]
push 0x2e
push eax
call fcn.004f48d0
pop ecx
pop ecx
test eax, eax
je 0x450d34
mov byte [eax], 0
push dword [ebx + 0x40]
mov ecx, edi
call fcn.0040639c
mov esi, dword [eax]
mov eax, dword [ebx + 0x40]
inc eax
push eax
mov ecx, edi
call fcn.0040639c
push dword [eax]
call fcn.004f3730
push esi
mov edi, eax
call fcn.004f3730
lea esi, [edi + eax]
lea eax, [ebp + 0x838]
push eax
call fcn.004f3730
add esi, eax
lea eax, [ebp + 0xc38]
push eax
call fcn.004f3730
add esi, eax
lea eax, [ebp + 0x438]
push eax
call fcn.004f3730
lea edi, [eax + esi + 0x5a]
push edi
call fcn.004b6e34
mov esi, eax
mov eax, dword [ebp - 0x14]
add esp, 0x18
mov dword [eax], esi
test esi, esi
jne 0x450daa
mov dword [ebx + 0x18], 0x8007000e
jmp 0x450c30
push edi
push 0
push esi
call fcn.004f42d0
add esp, 0xc
push dword [ebx + 0x40]
lea ecx, [ebx + 0x2c]
lea edi, [esi + 0x4c]
call fcn.0040639c
push dword [eax]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
call edi
lea eax, [esi + 0x4c]
push eax
mov dword [esi], eax
call fcn.004f3730
pop ecx
lea ecx, [ebp + 0xc38]
lea eax, [esi + eax + 0x4d]
push ecx
push eax
mov dword [ebp - 0x14], eax
call edi
mov eax, dword [ebp - 0x14]
push eax
mov dword [esi + 4], eax
call fcn.004f3730
pop ecx
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax + 1]
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x40]
inc eax
push eax
lea ecx, [ebx + 0x2c]
call fcn.0040639c
push dword [eax]
push dword [ebp - 0x14]
call edi
mov eax, dword [ebp - 0x14]
push eax
mov dword [esi + 8], eax
call fcn.004f3730
pop ecx
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax + 1]
lea ecx, [ebp + 0x438]
push ecx
push eax
mov dword [ebp - 0x14], eax
call edi
mov eax, dword [ebp - 0x14]
push eax
mov dword [esi + 0xc], eax
call fcn.004f3730
pop ecx
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax + 1]
lea ecx, [ebp + 0x838]
push ecx
push eax
mov dword [ebp - 0x14], eax
call edi
mov eax, dword [ebp - 0x14]
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x14], eax
push dword [ebx + 0x40]
lea ecx, [ebx + 0x2c]
mov byte [ebp + 0xc38], 0
call fcn.0040639c
push dword [eax]
lea eax, [ebp + 0xc38]
push 0x400
push eax
push 0x5441cc
push str.Modified
push str.InternetShortcut
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [ebp + 0xc38], 0
je 0x450f06
push 8
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp + 0xc38]
push eax
mov byte [ebp + 0xc58], 0
call fcn.004057f1
add esp, 0xc
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
movzx eax, word [ebp - 0x22]
push eax
movzx eax, word [ebp - 0x24]
push eax
movzx eax, word [ebp - 0x2c]
push eax
movzx eax, word [ebp - 0x26]
push eax
movzx eax, word [ebp - 0x2a]
push eax
push str._02u__02u__04u___02u:_02u
add esi, 0x18
push esi
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x1c
add dword [ebx + 0x40], 2
lea ecx, [ebp]
mov byte [ebp - 4], 0
call fcn.004064c1
xor eax, eax
inc eax
jmp 0x450c3e