Function at 0x404c90
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d86f0
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x66f33c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor ecx, ecx
mov dword [ebp - 4], 2
push 0xffffffffffffffff
push ecx
lea eax, [esi + 4]
mov word [ebp - 0x28], cx
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x18], 0
call fcn.00402ee0
cmp dword [ebp + 8], 0
mov byte [ebp - 4], 3
je 0x404d05
lea eax, [esi + 0x1c]
lea ecx, [ebp - 0x28]
cmp ecx, eax
je 0x404d05
push 0xffffffffffffffff
push 0
push eax
call fcn.00402ee0
call fcn.004544b9
test al, al
je 0x404d1f
push eax
push edx
pop ecx
pop esp
pop ecx
pop ebx
push ecx
push esi
push edi
push edi
pop esi
pop ebx
pop ebx
pop edi
pop ebp
push ecx
pop esp
cmp dword [ebp + 0x50], 8
lea eax, [ebp + 0x3c]
cmovae eax, dword [ebp + 0x3c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x404eca
lea eax, [ebp + 0xc]
push eax
call fcn.0045abba
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00459a0c
add esp, 0xc
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea ecx, [ebp + 0x24]
cmovae edx, dword [ebp - 0x28]
lea eax, [ebp - 0x40]
cmp dword [ebp + 0x38], 8
push edx
cmovae ecx, dword [ebp + 0x24]
cmp dword [ebp - 0x2c], 8
push ecx
cmovae eax, dword [ebp - 0x40]
push str.LastUpdTimeStamp
push eax
mov byte [ebp - 4], 4
call ebx
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
lea ecx, [ebp + 0x3c]
cmovae edx, dword [ebp - 0x28]
lea eax, [ebp - 0x40]
cmp dword [ebp + 0x50], 8
push edx
cmovae ecx, dword [ebp + 0x3c]
cmp dword [ebp - 0x2c], 8
push ecx
cmovae eax, dword [ebp - 0x40]
push str.File
push eax
call ebx
call fcn.00454543
test al, al
je 0x404dd4
pop ebx
pop eax
pop edi
push esi
push esp
pop ecx
pop ecx
pop edi
pop ebp
pop esi
pop eax
pop edi
push edx
push esp
pop esi
pop ebx
pop eax
push esi
push esp
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp dword [ebp + 0x50], 8
lea eax, [ebp + 0x3c]
cmovae eax, dword [ebp + 0x3c]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00403740
lea eax, [ebp - 0x58]
push eax
call fcn.00457520
add esp, 0x1c
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 5
cmovae edx, dword [ebp - 0x28]
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x44], 8
push edx
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x2c], 8
push ecx
cmovae eax, dword [ebp - 0x40]
push str.LastMD5
push eax
call ebx
push 0
call fcn.0047f82c
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00405500
add esp, 0xc
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 8
mov ecx, eax
cmovae edx, dword [ebp - 0x28]
cmp dword [ecx + 0x14], 8
jb 0x404e4e
mov ecx, dword [ecx]
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
push edx
cmovae eax, dword [ebp - 0x40]
push ecx
push str.CacheTime
push eax
call ebx
mov eax, dword [ebp - 0x5c]
cmp eax, 8
jb 0x404e78
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.00403100
mov eax, dword [ebp - 0x44]
cmp eax, 8
jb 0x404e8d
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.00403100
xor eax, eax
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x48], 0
cmp eax, 8
jb 0x404eb6
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.00403100
xor eax, eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x404edf
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00403100
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x20]
cmp eax, 8
jb 0x404f04
inc eax
lea ecx, [ebp + 0xc]
push eax
push dword [ebp + 0xc]
call fcn.00403100
xor eax, eax
mov dword [ebp + 0x20], 7
mov word [ebp + 0xc], ax
mov eax, dword [ebp + 0x38]
mov dword [ebp + 0x1c], 0
cmp eax, 8
jb 0x404f2d
inc eax
lea ecx, [ebp + 0x24]
push eax
push dword [ebp + 0x24]
call fcn.00403100
xor eax, eax
mov dword [ebp + 0x38], 7
mov word [ebp + 0x24], ax
mov eax, dword [ebp + 0x50]
mov dword [ebp + 0x34], 0
cmp eax, 8
jb 0x404f56
inc eax
lea ecx, [ebp + 0x3c]
push eax
push dword [ebp + 0x3c]
call fcn.00403100
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045132d
mov esp, ebp
pop ebp
ret 0x4c