Function at 0x40738c
Capabilities:
Check for time delay via gettickcount
Get http content length
Query remote server for available data
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 2
add esp, 0xfffff004
push eax
dec eax
jne 0x407395
mov eax, dword [ebp - 4]
add esp, 0xfffff7cc
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 8]
push eax
lea edx, [ebx + 0x340]
push edx
call fcn.004096d0
add esp, 8
lea ecx, [ebx + 0x130]
push ecx
lea eax, [ebx + 0x29]
push eax
mov edx, dword [ebx + 8]
push edx
lea ecx, [ebx + 0x33c]
push ecx
call fcn.00408c54
add esp, 0x10
test esi, esi
je 0x4073ef
push esi
call fcn.00480314
pop ecx
jmp 0x4073f1
xor eax, eax
push eax
push esi
push 0xffffffffffffffff
push 0
mov edx, dword [ebx + 8]
push edx
call sub.WININET.DLL_HttpSendRequestA
test eax, eax
je 0x4075d4
push 0x16
mov ecx, dword [ebx + 8]
push ecx
push ebx
call fcn.004079ec
add esp, 0xc
mov esi, eax
test esi, esi
je 0x40742e
push esi
push ebx
call fcn.00407a48
add esp, 8
push esi
call fcn.0047e448
pop ecx
push ebx
call fcn.00407338
pop ecx
test al, al
je 0x407440
mov al, 1
jmp 0x4075d6
lea edi, [ebp - 0x2810]
mov esi, 0x4c8e90
mov ecx, 0xa00
lea eax, [ebp - 8]
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x2828]
mov ecx, 6
mov esi, 0x4cb690
lea edx, [ebp - 0x2824]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 8], 4
push 0
push eax
push edx
push 0x20000005
mov ecx, dword [ebx + 8]
push ecx
call sub.WININET.DLL_HttpQueryInfoA
call sub.KERNEL32.DLL_GetTickCount
mov esi, eax
xor edi, edi
xor eax, eax
lea edx, [ebp - 0xc]
mov dword [ebp - 0xc], eax
push 0
push 0
push edx
mov ecx, dword [ebx + 8]
push ecx
call sub.WININET.DLL_InternetQueryDataAvailable
test eax, eax
je 0x4075c1
cmp dword [ebp - 0xc], 0
je 0x4075c1
cmp dword [ebp - 0xc], 0x2800
jb 0x4074c7
mov dword [ebp - 0xc], 0x27ff
lea eax, [ebp - 4]
lea ecx, [ebp - 0x2810]
push eax
mov edx, dword [ebp - 0xc]
push edx
push ecx
mov eax, dword [ebx + 8]
push eax
call sub.WININET.DLL_InternetReadFile
test eax, eax
je 0x4075c1
cmp dword [ebp - 4], 0
je 0x4075c1
mov edx, dword [ebp - 4]
lea eax, [ebp - 0x2810]
push edx
mov ecx, dword [ebx + 0x24]
push ecx
push eax
mov edx, dword [ebx + 0x20]
push edx
call fcn.00402458
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ecx, dword [ebx + 0x20]
push ecx
call fcn.0047e448
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x20], eax
mov edx, dword [ebp - 4]
add dword [ebx + 0x24], edx
push 0x2800
push 0
lea ecx, [ebp - 0x2810]
push ecx
call fcn.00480234
add esp, 0xc
add edi, dword [ebp - 4]
call sub.KERNEL32.DLL_GetTickCount
mov edx, eax
sub edx, esi
cmp edx, 0x3e8
jb 0x40758b
mov dword [ebp - 0x2830], edi
xor ecx, ecx
mov dword [ebp - 0x282c], ecx
fild qword [ebp - 0x2830]
mov dword [ebp - 0x2838], edx
xor edx, edx
mov dword [ebp - 0x2834], edx
fild qword [ebp - 0x2838]
fld xword [0x4075e0]
fmulp st(1)
xor edi, edi
mov esi, eax
fdivp st(1)
fstp qword [ebp - 0x2820]
mov eax, dword [ebx + 0x24]
mov dword [ebp - 0x2828], eax
cmp dword [ebx + 0x360], 0
je 0x4075b7
lea edx, [ebp - 0x2828]
push edx
mov ecx, dword [ebx + 0x364]
push ecx
push ebx
push 1
call dword [ebx + 0x360]
add esp, 0x10
cmp dword [ebp - 4], 0
ja 0x40748f
cmp dword [ebx + 0x20], 0
je 0x4075d4
cmp dword [ebx + 0x24], 0
je 0x4075d4
push ebx
call fcn.00407980
pop ecx
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret