Function at 0x1031891
Capabilities:
Query remote server for available data
Read data from internet
Receive data

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x1020
call fcn.01077fa0
mov eax, dword [0x10d0620]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
xor ebx, ebx
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x101c], eax
mov eax, dword [0x10d220c]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x1020], esi
mov dword [ebp - 0x1010], ebx
mov dword [ebp - 0x1018], ebx
mov dword [ebp - 0x100c], ebx
cmp eax, ebx
je 0x1031b06
push ebx
push ebx
cmp edi, ebx
jne 0x103195e
push ebx
push ebx
lea ecx, [ebp - 0x1010]
push ecx
xor ecx, ecx
cmp dword [0x10d2280], ebx
push ebx
setne cl
lea ecx, [ecx + ecx + 2]
or ecx, 1
push ecx
push 5
push esi
call eax
test eax, eax
jne 0x103192d
call fcn.01091f43
mov esi, eax
push esi
push esi
push 0x15f0140
push dword [ebp - 0x1020]
call fcn.0108c4ae
jmp 0x1031b08
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push ebx
push ebx
push dword [ebp - 0x1010]
call fcn.01062b4b
mov esi, eax
cmp esi, ebx
je 0x1031b06
push esi
push 0x16c0140
call fcn.0108c55a
jmp 0x1031b08
lea eax, [ebp - 0x1008]
push eax
push edi
mov dword [ebp - 0x1008], ebx
call dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
jne 0x1031986
call fcn.01091f43
push eax
push 0x1780140
call fcn.0108c55a
mov dword [ebp - 0x1008], ebx
mov ebx, dword [sym.imp.WININET.dll_InternetReadFile]
jmp 0x10319cc
cmp dword [ebp - 0x1014], 0
je 0x10319f5
lea eax, [ebp - 0x100c]
push eax
push dword [ebp - 0x1014]
lea eax, [ebp - 0x1004]
push eax
call fcn.01031814
mov esi, eax
test esi, esi
jne 0x1031af9
mov eax, dword [ebp - 0x1014]
add dword [ebp - 0x1008], eax
lea eax, [ebp - 0x1014]
push eax
push 0x1000
lea eax, [ebp - 0x1004]
push eax
push edi
call ebx
test eax, eax
jne 0x1031994
call fcn.01091f43
mov esi, eax
push esi
push 0x1830140
jmp 0x1031a1a
push dword [ebp - 0x1008]
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov ebx, eax
mov dword [ebp - 0x1018], ebx
test ebx, ebx
jne 0x1031a24
mov esi, 0x8007000e
push esi
push 0x1930140
call fcn.0108c55a
jmp 0x1031af5
mov eax, dword [ebp - 0x1008]
mov esi, dword [ebp - 0x100c]
lea edi, [eax + ebx]
jmp 0x1031a4a
mov eax, dword [esi + 4]
push eax
sub edi, eax
lea eax, [esi + 8]
push eax
push edi
call sub.msvcrt.dll_memcpy
mov esi, dword [esi]
add esp, 0xc
test esi, esi
jne 0x1031a35
mov edi, dword [ebp - 0x101c]
mov eax, dword [0x10d22a0]
test edi, edi
je 0x1031a69
cmp dword [0x10d2284], esi
jne 0x1031a69
test eax, eax
je 0x1031a95
push 0
push eax
push dword [ebp - 0x1008]
push ebx
call fcn.01045be5
test eax, eax
je 0x1031a95
push eax
push 0x1a40140
call fcn.0108c55a
push dword [ebp - 0x1008]
push ebx
push 0
call fcn.0108fdf5
test edi, edi
jne 0x1031ac1
cmp dword [0x10d22a0], edi
je 0x1031b04
push 0x2f
push dword [ebp - 0x1020]
call dword [sym.imp.msvcrt.dll_wcsrchr]
pop ecx
pop ecx
test eax, eax
je 0x1031b04
inc eax
inc eax
mov dword [ebp - 0x101c], eax
je 0x1031b04
mov edi, eax
xor eax, eax
cmp ax, word [edi]
je 0x1031b04
mov eax, dword [0x10d2244]
or eax, 2
push eax
push dword [ebp - 0x1008]
push dword [ebp - 0x1018]
push edi
call sub.certcli.dll_Ordinal_225
mov esi, eax
test esi, esi
je 0x1031b04
push esi
push 0x1ba0140
push edi
call fcn.0108c595
xor ebx, ebx
jmp 0x1031b08
push esi
push 0x18a0140
jmp 0x1031a1a
xor ebx, ebx
xor esi, esi
cmp dword [ebp - 0x1010], ebx
je 0x1031b1e
push 2
push dword [ebp - 0x1010]
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
mov edi, dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x1031b37
mov eax, dword [ebp - 0x100c]
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x100c], ecx
call edi
cmp dword [ebp - 0x100c], ebx
jne 0x1031b26
cmp dword [ebp - 0x1018], ebx
je 0x1031b4f
push dword [ebp - 0x1018]
call edi
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.01077dc7
leave
ret 0xc