Function at 0x10001530
Capabilities:
Check http status code
Create http request
Get http content length
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
push cx
push eax
and ch, dl
test dl, cl
test eax, 0x5d9b
add cl, ah
dec al
test cx, 0x16a6
test ebx, eax
pop eax
pop cx
push edx
push ax
push bx
xor dh, 0x61
and dl, cl
inc edx
test cl, dh
test al, 0x79
xor al, bl
cmp dh, 0x50
or bx, ax
pop bx
pop ax
pop edx
mov eax, 4
xor esi, esi
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x18]
xor edi, edi
mov dword [ebp - 8], esi
mov dword [ebp - 4], esi
mov dword [eax], esi
mov eax, dword [ebp + 0x1c]
cmp eax, esi
mov dword [ebp - 0x18], esi
je 0x10001595
mov dword [eax], esi
jl 0x100015b5
push di
pop di
jge 0x100015b5
mov dword [0xcf269eb8], eax
inc ebx
or eax, 0xac9075ef
mov esi, 0xd394884b
push esi
push esi
push esi
push esi
push 0x100093d0
call dword [sym.imp.WININET.dll_InternetOpenA]
mov edx, eax
cmp edx, esi
mov dword [ebp - 0x14], edx
je 0x10001728
push eax
push ebx
push ecx
xor cx, si
cmp eax, edx
pop ecx
pop ebx
pop eax
lea ecx, [ebp + 0xc]
push 4
push ecx
push 2
push edx
call dword [sym.imp.WININET.dll_InternetSetOptionA]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x14]
push 0
push 0x84000000
push 0
push 0
push edx
push eax
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
mov edi, eax
test edi, edi
je 0x10001725
push ecx
inc ch
and cl, cl
xor ecx, 0x7aee
or cl, 0x60
and ch, 0x3a
or ch, ch
mov cx, 0x2c60
test ebx, ecx
pop ecx
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x10001635
mov dword [eax], 1
push edx
dec dh
pop edx
mov ebx, dword [sym.imp.WININET.dll_HttpQueryInfoA]
lea ecx, [ebp - 0xc]
push 0
lea edx, [ebp - 8]
push ecx
push edx
push 0x20000013
push edi
call ebx
test eax, eax
je 0x10001725
cmp dword [ebp - 8], 0xc8
jne 0x10001725
je 0x10001679
push edi
mov di, 0x7d9e
pop edi
jne 0x10001679
sbb dword [edi], ebx
outsb dx, byte [esi]
xchg ecx, eax
loope 0x100016f1
mov al, 0x7b
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x100016a2
lea eax, [ebp - 0x10]
push 0
lea ecx, [ebp - 4]
push eax
push ecx
push 0x20000005
push edi
call ebx
test eax, eax
je 0x10001725
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 4]
mov dword [eax], edx
push eax
push ebx
push ecx
xor cx, si
cmp eax, edx
pop ecx
pop ebx
pop eax
mov ebx, dword [ebp + 0x14]
test ebx, ebx
jbe 0x100016e5
mov eax, dword [ebp + 0x10]
lea ecx, [ebp + 0x18]
mov edx, ebx
push ecx
sub edx, esi
lea ecx, [esi + eax]
push edx
push ecx
push edi
mov dword [ebp + 0x18], 0
call dword [sym.imp.WININET.dll_InternetReadFile]
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jbe 0x100016e8
test eax, eax
je 0x100016e8
add esi, ecx
cmp esi, ebx
jb 0x100016b4
jmp 0x100016e8
mov eax, dword [ebp - 0x18]
jo 0x10001704
mov bh, bh
mov bx, bx
jno 0x10001704
adc ebx, dword [eax]
add ebp, ecx
xchg dl, dh
sbb cl, bl
stosb byte es:[edi], al
jmp 0x1000173b
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
je 0x1000170d
mov dword [ecx], eax
push eax
push ebx
dec eax
or ah, 0x7e
xor ah, al
xor eax, ecx
or bh, 0x7e
mov bx, 0x2751
or al, dh
cmp bx, ax
pop ebx
pop eax
mov edx, dword [ebp - 0x14]
jbe 0x10001743
push si
mov si, 0xe23f
pop si
ja 0x10001743
add ah, ch
in al, dx
pop esp
push ecx
fdivr dword [edi - 0x78]
arpl word [ebx + 0x70f01d], cx
adc byte [ebp + 0x570674ff], al
mov ebx, dword [sym.imp.WININET.dll_InternetCloseHandle]
test edi, edi
je 0x10001753
push edi
call ebx
mov edx, dword [ebp - 0x14]
je 0x10001760
xchg edx, edx
xchg si, si
jne 0x10001760
cmp esp, esi
add eax, 0x74d2857b
add edx, dword [edx - 1]
sal dword [eax + 0xd], cl
test edx, edx
je 0x10001767
push edx
call ebx
jo 0x10001776
push esi
pop esi
jno 0x10001776
jno 0x10001770
inc ecx
in al, 0x48
call 0x9b373a09
invalid
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret