Function at 0x41ee56
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x4306e8
call fcn.00425470
sub esp, 0x40
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov eax, dword [eax - 0xc]
push esi
push edi
xor edi, edi
cmp eax, edi
jle 0x41f089
mov esi, dword [ebp + 0xc]
mov eax, dword [esi]
cmp dword [eax - 0xc], edi
jle 0x41f089
push eax
call dword [0x444104]
test eax, eax
je 0x41f089
push ebx
lea ecx, [ebp - 0x4c]
call fcn.0041e5dd
push dword [esi]
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], edi
call fcn.0041ed44
test al, al
je 0x41f02e
lea ecx, [ebp - 0x4c]
call fcn.0041cc0b
mov esi, eax
cmp esi, edi
mov dword [ebp - 0x1c], esi
je 0x41f02e
lea ecx, [esi + 0x80]
call fcn.0041cbf2
cmp eax, edi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], edi
jbe 0x41f027
push dword [ebp - 0x10]
mov ecx, esi
call fcn.0041e021
mov edi, eax
test edi, edi
je 0x41f018
cmp dword [edi + 0x48], 8
jb 0x41eeff
mov eax, dword [edi + 0x34]
jmp 0x41ef02
lea eax, [edi + 0x34]
push eax
lea ecx, [ebp + 0xc]
call fcn.004014ce
push str.DownUrl
push dword [ebp + 0xc]
mov byte [ebp - 4], 1
call dword [0x443f18]
test eax, eax
pop ecx
pop ecx
jne 0x41f002
lea ecx, [edi + 0x80]
call fcn.0041cbf2
xor ebx, ebx
test eax, eax
mov dword [ebp - 0x20], eax
jbe 0x41f002
push ebx
mov ecx, edi
call fcn.0041e021
mov esi, eax
test esi, esi
je 0x41eff5
cmp dword [esi + 0x48], 8
jb 0x41ef5c
mov eax, dword [esi + 0x34]
jmp 0x41ef5f
lea eax, [esi + 0x34]
push eax
lea ecx, [ebp + 0xc]
call fcn.004019ce
mov ecx, dword [esi + 0x78]
test ecx, ecx
jne 0x41ef73
xor eax, eax
jmp 0x41ef7d
push str.name
call fcn.0041e069
push eax
lea ecx, [ebp - 0x18]
call fcn.004014ce
mov ecx, dword [esi + 0x78]
test ecx, ecx
mov byte [ebp - 4], 2
jne 0x41ef95
xor eax, eax
jmp 0x41ef9f
push str.value
call fcn.0041e069
push eax
lea ecx, [ebp - 0x14]
call fcn.004014ce
push 0x4387bc
push dword [ebp + 0xc]
mov byte [ebp - 4], 3
call dword [0x443f18]
test eax, eax
pop ecx
pop ecx
jne 0x41efd4
mov eax, dword [ebp + 8]
push dword [eax]
push dword [ebp - 0x18]
call dword [0x443f18]
test eax, eax
pop ecx
pop ecx
je 0x41f041
mov ecx, esi
call fcn.0041c2cb
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0040103c
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov byte [ebp - 4], 1
call fcn.0040103c
inc ebx
cmp ebx, dword [ebp - 0x20]
jb 0x41ef3f
mov esi, dword [ebp - 0x1c]
mov ecx, edi
call fcn.0041c2cb
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0
call fcn.0040103c
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x24]
jb 0x41eee0
mov ecx, esi
call fcn.0041c2cb
xor esi, esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.0041e3c5
mov eax, esi
pop ebx
jmp 0x41f08b
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x14]
push eax
call fcn.0041e75a
mov ecx, esi
call fcn.0041c2cb
mov ecx, edi
call fcn.0041c2cb
mov ecx, dword [ebp - 0x1c]
call fcn.0041c2cb
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0040103c
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040103c
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.0040103c
xor esi, esi
inc esi
jmp 0x41f030
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 0xc