Function at 0x42fae0
Capabilities:
Link many functions at runtime

Disassembly:
push ecx
push ebx
mov ebx, dword [esp + 0xc]
push ebp
push esi
lea eax, [ebx + 0x215c]
push edi
push eax
mov dword [esp + 0x14], 0
call fcn.0042edc0
add esp, 4
test eax, eax
je 0x42fd69
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.0042ddf0
test eax, eax
jne 0x42fd69
mov ebp, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.Shlwapi.dll
call ebp
mov edi, eax
test edi, edi
jne 0x42fb39
push str.Shlwapi.dll
call fcn.004097c0
mov edi, eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x4a7d94
push edi
call esi
push str.StrCpyNW
push edi
mov dword [ebx + 0x2130], eax
call esi
push 0x4a7dac
push edi
mov dword [ebx + 0x2134], eax
call esi
push str.PathIsURLW
push edi
mov dword [ebx + 0x2138], eax
call esi
push str.wnsprintfW
push edi
mov dword [ebx + 0x213c], eax
call esi
push 0x4a7dd0
push edi
mov dword [ebx + 0x2148], eax
call esi
push 0x4a7de0
push edi
mov dword [ebx + 0x2140], eax
call esi
push str.Kernel32.dll
mov dword [ebx + 0x2144], eax
call ebp
mov edi, eax
test edi, edi
jne 0x42fbba
push str.Kernel32.dll
call fcn.004097c0
mov edi, eax
push 0x4a7df0
push edi
call esi
push 0x4a7e04
push edi
mov dword [ebx + 0x2158], eax
call esi
push str.LocalAlloc
push edi
mov dword [ebx + 0x2154], eax
call esi
push str.shell32.dll
mov dword [ebx + 0x2150], eax
call ebp
test eax, eax
jne 0x42fbf9
push str.shell32.dll
call fcn.004097c0
push 0x4a7e1c
push eax
call esi
cmp dword [ebx + 0x2130], 0
mov dword [ebx + 0x214c], eax
je 0x42fd69
cmp dword [ebx + 0x2134], 0
je 0x42fd69
cmp dword [ebx + 0x2138], 0
je 0x42fd69
cmp dword [ebx + 0x213c], 0
je 0x42fd69
cmp dword [ebx + 0x2148], 0
je 0x42fd69
cmp dword [ebx + 0x2140], 0
je 0x42fd69
cmp dword [ebx + 0x2144], 0
je 0x42fd69
cmp dword [ebx + 0x2154], 0
je 0x42fd69
cmp dword [ebx + 0x2150], 0
je 0x42fd69
test eax, eax
je 0x42fd69
lea eax, [ebx + 0x2034]
xor edx, edx
lea esp, [esp]
cmp dword [edx + 0x4ebe44], 0
je 0x42fd03
cmp dword [edx + 0x4ebe48], 0
je 0x42fd03
cmp dword [edx + 0x4ebe4c], 0
je 0x42fd03
mov ecx, dword [edx + 0x4ebe40]
mov dword [eax - 4], ecx
mov ecx, dword [edx + 0x4ebe44]
mov dword [eax], ecx
mov ecx, dword [edx + 0x4ebe48]
mov dword [eax + 4], ecx
mov ecx, dword [edx + 0x4ebe4c]
mov dword [eax + 0x18], ecx
mov ecx, 0x90909090
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ecx
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], ecx
mov dword [eax + 0x38], ecx
mov dword [eax + 0x3c], ecx
mov dword [eax + 0x40], ecx
mov dword [eax + 0x44], ecx
mov dword [eax + 0x48], ecx
mov dword [eax + 0x4c], ecx
mov dword [eax + 0x50], ecx
mov dword [eax + 0x54], ecx
mov dword [eax + 0x58], ecx
add edx, 0x10
sub eax, 0xffffff80
cmp edx, 0x30
jb 0x42fc90
mov esi, dword [esp + 0x1c]
push esi
call fcn.00428f40
add esp, 4
test eax, eax
je 0x42fd5d
mov dword [ebx + 4], esi
push eax
lea edi, [esp + 0x1c]
lea esi, [esp + 0x20]
mov dword [ebx], eax
mov dword [esp + 0x1c], 0x3000
mov dword [esp + 0x20], 0
call fcn.00429100
add esp, 4
test eax, eax
jne 0x42fd5d
mov edx, dword [esp + 0x1c]
mov eax, 1
mov dword [ebx + 8], edx
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret 8
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret 8