Function at 0x1001f8a6
Capabilities:
Check http status code
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
sub esp, 0xc8
lea ebp, [esp - 4]
mov eax, dword [0x10081730]
xor eax, ebp
mov dword [ebp + 0xc8], eax
push 0x50
mov eax, 0x1005c39e
call fcn.10031c17
mov esi, ecx
lea eax, [esi + 0x88]
push eax
lea edi, [esi + 0x48]
push edi
lea ecx, [esi + 0x68]
push ecx
lea edx, [esi + 0x4c]
push edx
lea eax, [esi + 0x8c]
push eax
call fcn.1001f760
add esp, 0x14
test eax, eax
jne 0x1001f925
push dword [esi + 0xc8]
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xc8]
xor ecx, ebp
call fcn.10031c08
add ebp, 0xcc
leave
ret 4
xor ebx, ebx
push ebx
push ebx
push ebx
push dword [ebp + 0xd4]
mov dword [edi], 3
push 0x10072000
call dword [sym.imp.WININET.dll_InternetOpenW]
cmp eax, ebx
mov dword [ebp - 0x18], eax
mov dword [esi + 0x3c], eax
je 0x1001f8f2
cmp dword [esi + 0x34], ebx
je 0x1001f98e
cmp dword [esi + 0x1c], 8
jb 0x1001f95b
mov eax, dword [esi + 8]
jmp 0x1001f95e
lea eax, [esi + 8]
cmp dword [esi + 0x38], 8
jb 0x1001f969
mov edx, dword [esi + 0x24]
jmp 0x1001f96c
lea edx, [esi + 0x24]
cmp dword [esi + 0x64], 8
jb 0x1001f977
mov ecx, dword [esi + 0x50]
jmp 0x1001f97a
lea ecx, [esi + 0x50]
push ebx
push ebx
push dword [edi]
push eax
movzx eax, word [esi + 0x88]
push edx
push eax
push ecx
push dword [ebp - 0x18]
jmp 0x1001f9ac
cmp dword [esi + 0x64], 8
jb 0x1001f999
mov ecx, dword [esi + 0x50]
jmp 0x1001f99c
lea ecx, [esi + 0x50]
movzx edx, word [esi + 0x88]
push ebx
push ebx
push dword [edi]
push ebx
push ebx
push edx
push ecx
push eax
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ecx, eax
cmp ecx, ebx
mov dword [esi + 0x40], eax
je 0x1001f8f2
cmp word [esi + 0x88], 0x1bb
mov dword [ebp - 0x24], 0x10071ff8
mov dword [ebp - 0x20], ebx
jne 0x1001f9ed
cmp dword [esi + 0x80], 8
jb 0x1001f9e2
mov eax, dword [esi + 0x6c]
jmp 0x1001f9e5
lea eax, [esi + 0x6c]
push esi
push 0x84c03000
jmp 0x1001fa09
cmp dword [edi], 3
jne 0x1001fa1b
cmp dword [esi + 0x80], 8
jb 0x1001fa00
mov eax, dword [esi + 0x6c]
jmp 0x1001fa03
lea eax, [esi + 0x6c]
push esi
push 0x84400000
lea edx, [ebp - 0x24]
push edx
push ebx
push ebx
push eax
push ebx
push ecx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x44]
cmp eax, ebx
je 0x1001f8f2
mov ecx, dword [esi + 0xf4]
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionW]
sub ecx, 0xc8
push 4
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x10]
push ecx
push 2
push eax
call edi
push 4
lea eax, [ebp - 0x10]
push eax
push 5
push dword [esi + 0x44]
call edi
push 4
lea eax, [ebp - 0x10]
push eax
push 6
push dword [esi + 0x44]
call edi
push ebx
push ebx
push ebx
push ebx
push dword [esi + 0x44]
call dword [sym.imp.WININET.dll_HttpSendRequestW]
cmp eax, ebx
je 0x1001f8f2
push 0x3e
lea eax, [ebp + 2]
push ebx
push eax
mov word [ebp], bx
call fcn.10031d30
mov edi, dword [sym.imp.WININET.dll_HttpQueryInfoW]
add esp, 0xc
push ebx
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp]
push eax
push 0x13
push dword [esi + 0x44]
mov dword [ebp - 0x14], 0x20
call edi
test eax, eax
je 0x1001f8f2
lea eax, [ebp]
push eax
call fcn.10033a8f
cmp eax, 0x197
pop ecx
je 0x1001fad1
cmp eax, 0x191
je 0x1001fad1
cmp eax, 0xc8
je 0x1001fb04
jmp 0x1001f8f2
push 0x32
lea eax, [ebp + 0x81]
push ebx
push eax
mov byte [ebp + 0x80], bl
call fcn.10031d30
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
push 0x32
lea eax, [ebp + 0x80]
push eax
push dword [esi + 0x44]
call dword [sym.imp.WININET.dll_InternetReadFile]
cmp dword [ebp - 0x18], ebx
jne 0x1001fae9
push 0x3e
lea eax, [ebp + 0x42]
push ebx
push eax
mov word [ebp + 0x40], bx
call fcn.10031d30
add esp, 0xc
push ebx
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp + 0x40]
push eax
push 5
push dword [esi + 0x44]
mov dword [ebp - 0x14], 0x20
call edi
test eax, eax
je 0x1001fb3c
lea eax, [ebp + 0x40]
push eax
call fcn.10033a8f
pop ecx
xor eax, eax
mov byte [ebp + 0xb4], bl
lea edi, [ebp + 0xb5]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
lea eax, [ebp - 0x1c]
push eax
push 0x12
lea eax, [ebp + 0xb4]
push eax
push dword [esi + 0x44]
mov dword [ebp - 0x1c], ebx
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x1001fb7f
push dword [esi + 0xc8]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, ebx
jmp 0x1001f900
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x1001fc1c
cmp dword [esi + 0x84], ebx
jne 0x1001fc1c
mov byte [ebp + eax + 0xb4], bl
lea eax, [ebp + 0xb4]
push eax
lea ecx, [ebp - 0x40]
call fcn.1000220b
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x5c]
push eax
mov dword [ebp - 4], ebx
call fcn.100076d4
pop ecx
pop ecx
push 0xffffffffffffffff
push ebx
lea edi, [esi + 0xcc]
push eax
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.10001537
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.1000131a
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.10001c21
lea eax, [ebp + 0x94]
push edi
push eax
call fcn.10007674
pop ecx
pop ecx
push 0xffffffffffffffff
push ebx
push eax
mov ecx, edi
mov dword [ebp - 4], 2
call fcn.10001537
push ebx
push 1
lea ecx, [ebp + 0x94]
call fcn.1000131a
mov eax, dword [esi + 0x44]
cmp eax, ebx
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [esi + 0x84], 1
je 0x1001fc39
push eax
call edi
mov dword [esi + 0x44], ebx
mov eax, dword [esi + 0x40]
cmp eax, ebx
je 0x1001fc46
push eax
call edi
mov dword [esi + 0x40], ebx
mov eax, dword [esi + 0x3c]
cmp eax, ebx
je 0x1001fc53
push eax
call edi
mov dword [esi + 0x3c], ebx
xor ebx, ebx
inc ebx
jmp 0x1001fb6c