Function at 0x428e80
Capabilities:
Check if file exists
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 0x48], 0
je 0x428e9c
mov eax, 1
jmp 0x429118
cmp dword [ebp + 8], 0
jne 0x428ea9
xor eax, eax
jmp 0x429118
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x428ebe
xor eax, eax
jmp 0x429118
mov edx, dword [ebp + 8]
push edx
call fcn.0041a490
add esp, 4
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x48], eax
mov edx, dword [ebp - 4]
cmp dword [edx + 0x48], 0
jne 0x428ee0
xor eax, eax
jmp 0x429118
push str.HttpCreateDownloadObj
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 8], eax
push str.HttpDeleteDownloadObj
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0xc], eax
push str.HttpInitDownPara
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x10], eax
push str.HttpDownload
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x14], eax
push str.HttpCancel
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x18], eax
push str.HttpWait
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x1c], eax
push str.HttpResetAll
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x20], eax
push str.HttpGetState
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x24], eax
push str.HttpGetConnectState
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x28], eax
push str.HttpGetContentLength
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x2c], eax
push str.HttpGetReceivedLength
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x30], eax
push str.HttpGetLastError
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x34], eax
push str.HttpDownloadExW
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
push str.HttpGetResumedLength
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x40], eax
push str.HttpGetCurrentSpeed
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x3c], eax
push str.HttpGetLastErrorW
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [ebp - 4]
mov dword [edx + 0x44], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 8], 0
je 0x42910e
mov edx, dword [ebp - 4]
cmp dword [edx + 0xc], 0
je 0x42910e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x10], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x14], 0
je 0x42910e
mov edx, dword [ebp - 4]
cmp dword [edx + 0x18], 0
je 0x42910e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1c], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x20], 0
je 0x42910e
mov edx, dword [ebp - 4]
cmp dword [edx + 0x24], 0
je 0x42910e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x28], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x2c], 0
je 0x42910e
mov edx, dword [ebp - 4]
cmp dword [edx + 0x30], 0
je 0x42910e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x34], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x38], 0
je 0x42910e
mov edx, dword [ebp - 4]
cmp dword [edx + 0x3c], 0
je 0x42910e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x40], 0
je 0x42910e
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x44], 0
je 0x42910e
mov dword [ebp - 8], 1
jmp 0x429115
mov dword [ebp - 8], 0
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret 4