Function at 0x406520
Capabilities:
Check if file exists

Disassembly:
sub esp, 0x118
mov eax, dword [0x422380]
xor eax, esp
mov dword [esp + 0x114], eax
mov eax, dword [0x424478]
push ebx
push ebp
push edi
xor edi, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0xc], edi
cmp eax, edi
jne 0x406576
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x424478], eax
cmp eax, edi
jne 0x406576
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x424478], eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.FindFirstUrlCacheEntryA
push eax
call ebx
lea ecx, [esp + 0xc]
push ecx
push edi
push edi
call eax
mov ebp, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebp
cmp eax, 0x7a
jne 0x40675c
mov ecx, dword [esp + 0xc]
cmp ecx, edi
je 0x406763
add ecx, 4
push esi
push ecx
call fcn.00406dad
mov edx, dword [esp + 0x14]
push edx
mov esi, eax
push edi
push esi
call fcn.0040dc10
mov eax, dword [esp + 0x20]
add esp, 0x10
lea ecx, [esp + 0x10]
push ecx
push esi
mov dword [esi], eax
call fcn.004064d0
mov dword [esp + 0x20], eax
lea ebx, [ebx]
test dword [esi + 0xc], 0x100000
je 0x406655
mov eax, dword [0x424478]
mov edi, dword [esi + 4]
test eax, eax
jne 0x406619
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x424478], eax
test eax, eax
jne 0x406619
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x424478], eax
push str.DeleteUrlCacheEntryA
push eax
call ebx
push edi
call eax
test eax, eax
je 0x40662e
inc dword [esp + 0x14]
jmp 0x406655
call ebp
cmp eax, 2
je 0x406655
mov edx, dword [esi + 0xc]
push eax
push edx
push str._d_
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040c064
add esp, 0x14
inc dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
push ecx
push 0
push esi
call fcn.0040dc10
mov eax, dword [0x424478]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov dword [esi], edx
test eax, eax
jne 0x406698
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x424478], eax
test eax, eax
jne 0x406698
push str.wininet.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x424478], eax
push str.FindNextUrlCacheEntryA
push eax
call ebx
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x10]
push ecx
push esi
push edx
call eax
test eax, eax
jne 0x4065e0
call ebp
cmp eax, 0x103
je 0x4066f3
cmp eax, 0x7a
jne 0x406742
push esi
call fcn.0040c082
mov eax, dword [esp + 0x14]
add eax, 4
push eax
call fcn.00406dad
mov ecx, dword [esp + 0x18]
push ecx
mov esi, eax
push 0
push esi
call fcn.0040dc10
mov edx, dword [esp + 0x24]
add esp, 0x14
mov dword [esi], edx
jmp 0x4065e0
mov dword [esp + 0x1c], 1
push esi
call fcn.0040c082
add esp, 4
pop esi
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push 0x41f810
lea ecx, [esp + 0x2c]
push 0xff
push ecx
call fcn.0040c064
mov ecx, dword [esp + 0x134]
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.0040bd00
add esp, 0x118
ret
push eax
push 0x41f7f8
lea eax, [esp + 0x2c]
push 0xff
push eax
call fcn.0040c064
add esp, 0x10
jmp 0x4066fb
cmp eax, 0x103
je 0x406705
push eax
push 0x41f7cc
lea ecx, [esp + 0x28]
push 0xff
push ecx
call fcn.0040c064
add esp, 0x10
jmp 0x406705