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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008680c
mov eax, dword fs:[0]
push eax
sub esp, 0x2d8
mov eax, dword [0x100b618c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.1001d210
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.1005f8e0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov esi, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x218]
push eax
call esi
lea eax, [ebp - 0x218]
push eax
call esi
push 0x1008fd08
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x21c]
call fcn.10010c90
mov dword [ebp - 4], 0
call fcn.10015900
push dword [ebp - 0x21c]
mov edi, eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1001d0ce
push dword [ebp - 0x21c]
call fcn.1002e760
add esp, 4
test eax, eax
je 0x1001d0ce
cmp dword [edi + 0x1c], 0
jne 0x1001d051
push 4
call fcn.10047712
add esp, 4
test eax, eax
je 0x1001d04c
mov dword [eax], vtable.HttpTaskFactoryEx::HttpCallback.0
jmp 0x1001d04e
xor eax, eax
mov dword [edi + 0x1c], eax
cmp dword [edi], 0
jne 0x1001d0b5
push dword [ebp - 0x21c]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [edi], eax
test eax, eax
je 0x1001d0ce
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.HttpInit
push eax
call esi
push str.HttpUninit
push dword [edi]
mov dword [edi + 4], eax
call esi
push str.zlib_uncompress
push dword [edi]
mov dword [edi + 8], eax
call esi
push str.zlib_compress
push dword [edi]
mov dword [edi + 0x10], eax
call esi
push str.zlib_compressBound
push dword [edi]
mov dword [edi + 0x14], eax
call esi
mov dword [edi + 0x18], eax
mov eax, dword [edi + 4]
test eax, eax
je 0x1001d0b5
call eax
mov dword [edi + 0xc], eax
cmp dword [edi + 8], 0
je 0x1001d0ce
cmp dword [edi + 4], 0
je 0x1001d0ce
cmp dword [edi + 0xc], 0
je 0x1001d0ce
mov esi, 1
jmp 0x1001d0d0
xor esi, esi
mov edx, dword [ebp - 0x21c]
or eax, 0xffffffff
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1001d0f5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test esi, esi
jne 0x1001d1de
call fcn.10044730
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1001d1de
push 0x5c
push 0x1008fd28
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], 0xf
mov byte [ebp - 0x24c], al
call fcn.100093b0
push 3
push 0x1008fd24
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], 1
mov dword [ebp - 0x224], esi
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
call fcn.100093b0
mov byte [ebp - 4], 2
call fcn.10044730
mov edi, eax
lea ecx, [ebp - 0x2e4]
push 0x96
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x234]
push eax
call fcn.10007480
mov esi, eax
push str.init_net_failed
push esi
mov byte [ebp - 4], 3
call fcn.10008300
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x2e4]
call fcn.10008420
lea ecx, [ebp - 0x234]
call fcn.10007e20
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 0xffffffff
call fcn.10007e20
call fcn.10015a10
mov ecx, eax
call fcn.10022b70
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10047a96
mov esp, ebp
pop ebp
ret