Function at 0x422690
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x394
mov eax, dword [0x4ce724]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0x38c], 0
xor eax, eax
mov word [ebp - 0x308], ax
push 0xfe
push 0
lea ecx, [ebp - 0x306]
push ecx
call fcn.00467d60
add esp, 0xc
xor edx, edx
mov word [ebp - 0x388], dx
push 0x3e
push 0
lea eax, [ebp - 0x386]
push eax
call fcn.00467d60
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x348], cx
push 0x3e
push 0
lea edx, [ebp - 0x346]
push edx
call fcn.00467d60
add esp, 0xc
xor eax, eax
mov word [ebp - 0x208], ax
push 0x1fe
push 0
lea ecx, [ebp - 0x206]
push ecx
call fcn.00467d60
add esp, 0xc
mov dword [ebp - 4], 0
mov dword [ebp - 0x390], 0
lea edx, [ebp - 0x390]
push edx
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x348]
push ecx
lea edx, [ebp - 0x388]
push edx
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0x308]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00420c10
add esp, 0x1c
cmp dword [ebp + 0xc], 0
je 0x42278c
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax]
test ecx, ecx
je 0x42278c
mov edx, dword [ebp + 0xc]
push edx
push 0x20
lea eax, [ebp - 0x388]
push eax
call fcn.0046a6ad
add esp, 0xc
cmp dword [ebp + 0x10], 0
je 0x4227b1
mov ecx, dword [ebp + 0x10]
movzx edx, word [ecx]
test edx, edx
je 0x4227b1
mov eax, dword [ebp + 0x10]
push eax
push 0x20
lea ecx, [ebp - 0x348]
push ecx
call fcn.0046a6ad
add esp, 0xc
mov edx, dword [ebp + 0x18]
push edx
mov eax, dword [ebp - 4]
push eax
lea ecx, [ebp - 0x348]
push ecx
lea edx, [ebp - 0x388]
push edx
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0x308]
push ecx
mov edx, dword [ebp + 8]
push edx
push str.DownloadFile____Url_s__HostName_s__UrlPath_s__Login_s__Password_s__Scheme_d__Resume_d
call fcn.00456fc0
add esp, 0x20
cmp dword [ebp - 4], 5
je 0x42282d
push 0
lea eax, [ebp - 0x308]
push eax
call fcn.00420160
add esp, 8
mov dword [ebp - 0x394], eax
mov ecx, dword [ebp - 0x394]
and ecx, 2
je 0x422817
cmp dword [0x4e8c34], 0
je 0x42282d
mov edx, dword [ebp - 0x394]
mov dword [ebp - 0x38c], edx
mov eax, 0x4ce
jmp 0x422991
cmp dword [ebp - 4], 1
jne 0x422872
push 0x8000000
mov eax, dword [ebp + 0x14]
push eax
lea ecx, [ebp - 0x208]
push ecx
mov edx, dword [ebp - 0x390]
push edx
lea eax, [ebp - 0x348]
push eax
lea ecx, [ebp - 0x388]
push ecx
lea edx, [ebp - 0x308]
push edx
call fcn.004211b0
add esp, 0x1c
mov dword [ebp - 0x38c], eax
jmp 0x422977
cmp dword [ebp - 4], 3
jne 0x4228bd
mov eax, dword [ebp + 0x18]
push eax
push 0
push 0x8000000
mov ecx, dword [ebp + 0x14]
push ecx
lea edx, [ebp - 0x208]
push edx
mov eax, dword [ebp - 0x390]
push eax
lea ecx, [ebp - 0x348]
push ecx
lea edx, [ebp - 0x388]
push edx
lea eax, [ebp - 0x308]
push eax
call fcn.00421aa0
add esp, 0x24
mov dword [ebp - 0x38c], eax
jmp 0x422977
cmp dword [ebp - 4], 4
jne 0x422905
mov ecx, dword [ebp + 0x18]
push ecx
push 1
push 0x8000000
mov edx, dword [ebp + 0x14]
push edx
lea eax, [ebp - 0x208]
push eax
mov ecx, dword [ebp - 0x390]
push ecx
lea edx, [ebp - 0x348]
push edx
lea eax, [ebp - 0x388]
push eax
lea ecx, [ebp - 0x308]
push ecx
call fcn.00421aa0
add esp, 0x24
mov dword [ebp - 0x38c], eax
jmp 0x422977
cmp dword [ebp - 4], 5
jne 0x42296d
lea edx, [ebp - 0x208]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
sbb eax, eax
and eax, 0xffffff92
add eax, 0x6e
mov dword [ebp - 0x38c], eax
jne 0x422957
mov eax, dword [ebp + 0x18]
neg eax
sbb eax, eax
and eax, 0x200000
or eax, 0x400000
push eax
mov ecx, dword [ebp + 0x14]
push ecx
lea edx, [ebp - 0x208]
push edx
call fcn.004557e0
add esp, 0xc
mov dword [ebp - 0x38c], eax
jmp 0x42296b
lea eax, [ebp - 0x208]
push eax
push str.DownloadFile_____s_doesnt_exist_
call fcn.00456fc0
add esp, 8
jmp 0x422977
mov dword [ebp - 0x38c], 0x57
mov ecx, dword [ebp - 0x38c]
push ecx
push str.DownloadFile____End__d_
call fcn.00456fc0
add esp, 8
mov eax, dword [ebp - 0x38c]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00467d4f
mov esp, ebp
pop ebp
ret