Function at 0x40eb01
Capabilities:
Download url
Receive data

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x12a4
call fcn.00411150
mov eax, dword [0x413140]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor esi, esi
lea eax, [ebp - 0x126c]
push esi
push eax
push 0x824
mov ebx, ecx
mov dword [ebp - 0x1264], esi
lea eax, [ebp - 0x1260]
mov dword [ebp - 0x126c], esi
push eax
push esi
push dword [ebx + 0x18]
push dword [ebx + 0xc]
call dword [sym.imp.urlmon.dll_CoInternetCombineUrl]
mov edi, eax
test edi, edi
jns 0x40eb5e
call fcn.0040d0d5
jmp 0x40ecfc
lea ecx, [ebp - 0x1260]
push ecx
lea ecx, [ebx + 0x24]
call fcn.0040c510
mov edi, eax
test edi, edi
js 0x40eb54
mov cl, 4
call fcn.0040552d
test eax, eax
je 0x40eb8d
lea eax, [ebp - 0x1260]
push eax
push 0x2a
pop edx
call fcn.0040cdbb
lea esi, [ebx + 0x4c]
push esi
push 0x402724
push 1
push 0
push 0x4027e4
call dword [sym.imp.OLE32.dll_CoCreateInstance]
mov edi, eax
test edi, edi
js 0x40eb54
mov ecx, dword [esi]
lea edx, [ebx + 0x48]
and dword [edx], 0
push 0
push edx
mov eax, dword [ecx]
push dword [ebx + 0xc]
push ecx
mov esi, dword [eax + 0x14]
mov ecx, esi
call dword [0x414398]
call esi
mov edi, eax
test edi, edi
js 0x40eb54
mov ecx, dword [ebx + 0x4c]
and dword [ebp - 0x1268], 0
push 0
mov eax, dword [ecx]
mov esi, dword [eax + 0x14]
lea eax, [ebp - 0x1268]
push eax
push dword [ebx + 0x24]
push ecx
mov ecx, esi
call dword [0x414398]
call esi
mov edi, eax
test edi, edi
js 0x40eb54
mov eax, dword [ebx + 0x48]
mov edi, eax
sub edi, dword [ebp - 0x1268]
neg edi
sbb edi, edi
and edi, 0x80004005
cmp eax, dword [ebp - 0x1268]
jne 0x40eb54
mov ecx, ebx
lea eax, [ebx + 4]
neg ecx
sbb ecx, ecx
xor esi, esi
and ecx, eax
lea eax, [ebp - 0x210]
push ecx
push esi
push 0x104
push eax
push dword [ebx + 0x24]
push esi
call dword [sym.imp.urlmon.dll_URLDownloadToCacheFileW]
mov edi, eax
test edi, edi
js 0x40eb54
lea eax, [ebp - 0x1264]
push eax
push 0x403ca0
push 1
push esi
push 0x403c90
call dword [sym.imp.OLE32.dll_CoCreateInstance]
mov edi, eax
test edi, edi
js 0x40eb54
mov ecx, dword [ebp - 0x1264]
push ebx
push ecx
mov eax, dword [ecx]
mov esi, dword [eax + 0x28]
mov ecx, esi
call dword [0x414398]
call esi
mov edi, eax
test edi, edi
js 0x40eb54
mov ecx, dword [ebp - 0x1264]
mov eax, dword [ecx]
mov esi, dword [eax + 0x50]
lea eax, [ebp - 0x210]
push eax
push ecx
mov ecx, esi
call dword [0x414398]
call esi
mov edi, eax
cmp edi, 0x80004005
jne 0x40ecc6
mov eax, dword [ebx + 0x30]
neg eax
sbb eax, eax
not eax
and edi, eax
mov cl, 4
call fcn.0040552d
test eax, eax
je 0x40ecfc
push 0x30
pop esi
push esi
lea eax, [ebp - 0x12a0]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov word [ebp - 0x12a0], si
mov dl, 4
lea ecx, [ebp - 0x12a0]
push 0x2b
call fcn.0040cd66
mov ecx, dword [ebp - 0x1264]
test ecx, ecx
je 0x40ed1d
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x414398]
call esi
and dword [ebp - 0x1264], 0
mov ecx, dword [ebx + 0x4c]
test ecx, ecx
je 0x40ed38
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x414398]
call esi
and dword [ebx + 0x4c], 0
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004106d0
leave
ret