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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x268
mov eax, dword [0x10140b8]
xor eax, dword [ebp + 4]
push ebx
push esi
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x14]
push edi
xor ebx, ebx
mov dword [eax], ebx
mov eax, dword [ebp + 0x10]
push 0xffffffffffffffff
push dword [ebp + 0xc]
lea ecx, [ebp - 0x158]
mov dword [ebp - 8], ebx
mov dword [eax], 9
call fcn.01003149
lea eax, [ebp - 0x258]
mov dword [ebp - 0x25c], eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 0xc]
mov dword [ebp - 0x268], ebx
push dword [ebp + 8]
mov dword [ebp - 0x260], 0x80
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], 0xa
mov dword [ebp - 0xc], ebx
call fcn.010031bf
mov esi, eax
cmp esi, ebx
jl 0x1004166
push ebx
push 0x4600300
push ebx
push ebx
push 0x100152c
push dword [ebp - 0xc]
push 0x10013f8
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
cmp eax, ebx
mov dword [ebp + 0xc], eax
je 0x1003fad
mov dword [ebp - 0x44], 0x28
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], 0x1001528
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
sub esp, 0x28
push 0xa
pop ecx
mov edi, esp
push dword [ebp + 0xc]
lea esi, [ebp - 0x44]
push dword [ebp - 8]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x158]
call fcn.0100302c
push eax
call fcn.01003c40
mov esi, eax
cmp esi, ebx
jge 0x1003fd7
cmp esi, 0xc00d1388
je 0x1003ee5
cmp esi, 0xc00d2ee1
jne 0x100413c
mov eax, dword [ebp - 0x10]
dec dword [ebp - 0x10]
test eax, eax
jbe 0x100413c
push dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x158]
push eax
xor eax, eax
cmp esi, 0xc00d2ee1
sete al
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.010038a1
mov esi, eax
cmp esi, ebx
jl 0x100413c
push dword [ebp + 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [ebp - 0x268], ebx
mov dword [ebp + 0xc], ebx
jl 0x1003f76
cmp dword [ebp - 0x264], ebx
je 0x1003f76
lea eax, [ebp - 0x268]
push eax
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x154], ebx
mov dword [ebp - 0x158], ebx
call fcn.0100319d
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x268], ebx
mov dword [ebp - 0x14], 1
mov esi, dword [ebp - 0x158]
cmp esi, ebx
jl 0x100413c
push ebx
push 0x4600300
push ebx
push ebx
push 0x100152c
push dword [ebp - 0xc]
push 0x10013f8
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
cmp eax, ebx
mov dword [ebp + 0xc], eax
jne 0x1003ea3
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jg 0x1003fc2
call esi
mov esi, eax
jmp 0x100413c
call esi
mov esi, eax
and esi, 0xffff
or esi, 0x80070000
jmp 0x100413c
push ebx
push ebx
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 0xc]
call dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
je 0x1003fad
mov eax, dword [ebp - 0x18]
inc eax
push eax
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
cmp edi, ebx
pop ecx
mov dword [ebp + 8], edi
jne 0x1004008
mov esi, 0x8007000e
jmp 0x100413c
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x18]
push edi
push dword [ebp + 0xc]
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x100404b
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jg 0x100402f
call esi
mov esi, eax
jmp 0x100403f
call esi
mov esi, eax
and esi, 0xffff
or esi, 0x80070000
push edi
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
pop ecx
jmp 0x100413c
mov eax, dword [ebp - 0x1c]
push 0x100151c
push edi
mov byte [eax + edi], bl
mov esi, 0x80004005
call fcn.01009a97
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x10040d5
add edi, 0xa
push 0x1001514
push edi
call fcn.01009a97
cmp eax, ebx
pop ecx
pop ecx
je 0x10040d5
push 0x10014fc
push edi
mov byte [eax], bl
call dword [sym.imp.msvcrt.dll__stricmp]
test eax, eax
pop ecx
pop ecx
jne 0x100409c
mov eax, dword [ebp + 0x10]
mov dword [eax], 4
jmp 0x10040d3
push 0x10014e8
push edi
call fcn.01009a97
cmp eax, ebx
pop ecx
pop ecx
je 0x10040d5
lea ecx, [ebp + 0x10]
push ecx
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x48]
push ecx
push dword [ebp + 0x10]
add eax, 0x12
push 0x10014dc
push eax
call dword [sym.imp.msvcrt.dll_sscanf]
add esp, 0x18
cmp eax, 4
jne 0x10040d5
xor esi, esi
push dword [ebp + 8]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
cmp dword [ebp - 0x14], ebx
pop ecx
je 0x100413c
cmp dword [ebp - 0x158], ebx
jge 0x10040ef
xor eax, eax
jmp 0x10040f5
mov eax, dword [ebp - 0x154]
lea eax, [eax + eax + 2]
push eax
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
cmp edi, ebx
mov eax, dword [ebp + 0x14]
pop ecx
mov dword [eax], edi
je 0x1003ffe
cmp dword [ebp - 0x158], ebx
jge 0x100411c
mov dword [ebp + 0x10], ebx
jmp 0x1004125
mov eax, dword [ebp - 0x154]
mov dword [ebp + 0x10], eax
lea ecx, [ebp - 0x158]
call fcn.0100302c
push eax
mov eax, dword [ebp + 0x10]
inc eax
push eax
push edi
call fcn.01002b52
cmp dword [ebp - 8], ebx
je 0x100414a
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [ebp + 0xc], ebx
je 0x1004158
push dword [ebp + 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [ebp - 0xc], ebx
je 0x1004166
push dword [ebp - 0xc]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
pop ecx
lea ecx, [ebp - 0x268]
call fcn.010028c1
lea ecx, [ebp - 0x158]
call fcn.010028c1
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 4]
mov eax, esi
call fcn.0100701d
pop edi
pop esi
pop ebx
leave
ret 0x10