Function at 0x140008614
Capabilities:
Connect to http server
Create http request
Get http content length
Read data from internet
Receive data
Reference http user-agent string
Send data
Send http request

Disassembly:
mov r11, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x270
mov qword [r11 - 0x1f0], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov rax, qword [0x140085930]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov r15, rdx
mov r13, rcx
mov qword [rsp + 0xa0], rcx
mov edi, select
mov qword [r11 - 0xb0], rdi
xor ebx, ebx
mov qword [r11 - 0xb8], rbx
mov byte [rsp + 0x1d0], bl
mov qword [r11 - 0x90], rdi
mov qword [r11 - 0x98], rbx
mov byte [rsp + 0x1f0], bl
mov qword [r11 - 0x70], rdi
mov qword [r11 - 0x78], rbx
mov byte [rsp + 0x210], bl
mov qword [r11 - 0x48], rbx
mov qword [r11 - 0x40], rbx
call fcn.140023b84
mov qword [rsp + 0x250], rax
or r14, 0xffffffffffffffff
mov dword [rsp + 0x230], r14d
mov qword [rsp + 0x234], rbx
mov byte [rsp + 0x248], bl
mov qword [rsp + 0x240], rbx
mov byte [rsp + 0x40], 0x63
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
cmp qword [rax + 0x18], 0x10
jb 0x1400086ea
mov rax, qword [rax]
cmp byte [rax], 0x70
sete r12b
mov byte [rsp + 0x41], r12b
mov byte [rsp + 0x40], 0x75
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
mov qword [rsp + 0x108], rdi
mov qword [rsp + 0x100], rbx
mov byte [rsp + 0xf0], bl
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14001e320
nop
mov byte [rsp + 0x40], 0x68
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
mov qword [rsp + 0x1c8], rdi
mov qword [rsp + 0x1c0], rbx
mov byte [rsp + 0x1b0], bl
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001e320
nop
mov byte [rsp + 0x40], WSAStartup
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
mov qword [rsp + 0x168], rdi
mov qword [rsp + 0x160], rbx
mov byte [rsp + 0x150], bl
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x150]
call fcn.14001e320
nop
mov byte [rsp + 0x40], 0x61
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
mov qword [rsp + 0x1a8], rdi
mov qword [rsp + 0x1a0], rbx
mov byte [rsp + 0x190], bl
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x190]
call fcn.14001e320
nop
mov dword [rsp + 0x80], r14d
xor r8d, r8d
lea rdx, [0x140072d02]
mov rcx, r13
call fcn.14001e444
test r12b, r12b
jne 0x1400088ac
lea rdx, [0x140072dec]
lea rcx, [rsp + 0x150]
call fcn.140023d6c
test al, al
jne 0x1400088ac
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x150]
call fcn.140023d6c
test al, al
jne 0x1400088ac
lea r8, [rsp + 0x150]
lea rdx, [0x140072edc]
lea rcx, [rsp + 0x110]
call fcn.140023df0
nop
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.140020dcc
nop
cmp qword [rsp + 0x128], 0x10
jb 0x140008895
mov rcx, qword [rsp + 0x110]
call fcn.14002df20
xor r8d, r8d
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x150]
call fcn.14001e444
mov byte [rsp + 0x40], reloc.WS2_32.dll_WSACleanup
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.14001dbac
cmp qword [rax + 0x18], 0x10
jb 0x1400088c8
mov rax, qword [rax]
mov rcx, rax
call fcn.14002d1d4
mov dword [rsp + 0x44], eax
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rbx
mov r15d, 8
mov r9d, r15d
xor r8d, r8d
lea rdx, str.https:__
lea rcx, [rsp + 0xf0]
call fcn.14001eb5c
test rax, rax
sete byte [rsp + 0x40]
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov byte [rsp + 0xb0], bl
xor r8d, r8d
lea rdx, [0x140072d02]
lea rcx, [rsp + 0xb0]
call fcn.14001e444
nop
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x60], bl
mov r8d, r15d
lea rdx, str.https:__
lea rcx, [rsp + 0x60]
call fcn.14001e444
nop
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x120], rbx
mov byte [rsp + 0x110], bl
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x110]
call fcn.14001e320
nop
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0xd0]
call fcn.140001b88
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x1400089fa
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x60], bl
xor r8d, r8d
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x60]
call fcn.14001e444
nop
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov byte [rsp + 0xb0], bl
mov r8d, 7
lea rdx, str.http:__
lea rcx, [rsp + 0xb0]
call fcn.14001e444
nop
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x120], rbx
mov byte [rsp + 0x110], bl
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x110]
call fcn.14001e320
nop
lea r9, [rsp + 0x60]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0xd0]
call fcn.140001b88
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x140008ae3
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x180], rbx
mov byte [rsp + 0x170], bl
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x170]
call fcn.14001e320
nop
mov r12d, 1
mov r9d, r12d
xor r8d, r8d
lea rdx, [0x140072dbc]
lea rcx, [rsp + 0xf0]
call fcn.14001eb5c
lea rcx, [rsp + 0xf0]
test eax, eax
jle 0x140008bc9
movsxd r15, eax
mov r9, r15
xor r8d, r8d
lea rdx, [rsp + 0xd0]
call fcn.14001b2c8
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x140008b84
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
mov r9, r14
mov r8, r15
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0xf0]
call fcn.14001b2c8
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x140008bd8
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
jmp 0x140008bd8
mov r8, r12
lea rdx, [0x140072dbc]
call fcn.14001e444
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x190]
call fcn.140023d6c
test al, al
je 0x140008c0a
mov r8d, 0x18
lea rdx, str.Mozilla_5.0__Compatible_
lea rcx, [rsp + 0x190]
call fcn.14001e444
lea rcx, [rsp + 0x190]
cmp qword [rsp + 0x1a8], 0x10
cmovae rcx, qword [rsp + 0x190]
mov dword [rsp + 0x20], 0x4000000
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.WININET.dll_InternetOpenA]
mov r13, rax
mov qword [rsp + 0x88], rax
cmp dword [rsp + 0x44], ebx
jbe 0x140008c90
mov r15d, 4
mov r9d, r15d
lea r8, [rsp + 0x44]
lea edx, [r15 + 1]
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetSetOptionA]
mov r9d, r15d
lea r8, [rsp + 0x44]
lea edx, [r15 + 2]
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetSetOptionA]
mov r9d, r15d
lea r8, [rsp + 0x44]
lea edx, [r15 - 2]
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetSetOptionA]
mov r9, r12
xor r8d, r8d
lea rdx, [0x140072f14]
lea rcx, [rsp + 0x170]
call fcn.14001eb5c
mov r12, rax
test eax, eax
jle 0x140008d44
inc eax
movsxd r8, eax
mov r9, r14
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x170]
call fcn.14001b2c8
cmp qword [rax + 0x18], 0x10
jb 0x140008cdc
mov rax, qword [rax]
mov rcx, rax
call fcn.14002d1d4
mov r15d, eax
cmp qword [rsp + 0xe8], 0x10
jb 0x140008cff
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
movsxd r9, r12d
xor r8d, r8d
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x170]
call fcn.14001b2c8
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x140008d58
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
jmp 0x140008d58
mov al, byte [rsp + 0x40]
neg al
sbb r15d, r15d
and r15d, 0x16b
add r15d, 0x50
lea rdx, [rsp + 0x170]
cmp qword [rsp + 0x188], 0x10
cmovae rdx, qword [rsp + 0x170]
mov qword [rsp + 0x38], rbx
mov r12d, 0x4000000
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
xor r9d, r9d
movzx r8d, r15w
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetConnectA]
mov rcx, rax
mov qword [rsp + 0x90], rax
lea r8, [rsp + 0xf0]
cmp qword [rsp + 0x108], 0x10
cmovae r8, qword [rsp + 0xf0]
neg byte [rsp + 0x40]
sbb eax, eax
and eax, 0x800000
or eax, r12d
lea r9, str.POST
lea rdx, [0x140072f20]
cmp byte [rsp + 0x41], bl
cmovne rdx, r9
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
mov r15, rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x148], rdi
mov qword [rsp + 0x140], rbx
mov byte [rsp + 0x130], bl
mov r8d, 0x31
lea rdx, str.Content_Type:_application_x_www_form_urlencoded_r_n
lea rcx, [rsp + 0x130]
call fcn.14001e444
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x1b0]
call fcn.140023d6c
test al, al
jne 0x1400090b7
mov r9d, recv
xor r8d, r8d
lea rdx, str.Content_Type
lea rcx, [rsp + 0x1b0]
call fcn.14001eb5c
test eax, eax
js 0x140008e94
xor r8d, r8d
lea rdx, [0x140072d02]
lea rcx, [rsp + 0x130]
call fcn.14001e444
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x60], bl
mov r12d, 1
mov r8d, r12d
lea rdx, str._rH_0
lea rcx, [rsp + 0x60]
call fcn.14001e444
nop
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov byte [rsp + 0xb0], bl
lea r8d, [r12 + 1]
lea rdx, [0x140072f70]
lea rcx, [rsp + 0xb0]
call fcn.14001e444
nop
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x120], rbx
mov byte [rsp + 0x110], bl
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x110]
call fcn.14001e320
nop
lea r9, [rsp + 0x60]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0xd0]
call fcn.140001b88
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x140008f82
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x70], rbx
mov byte [rsp + 0x60], bl
mov r8, r12
lea rdx, [0x140072dd4]
lea rcx, [rsp + 0x60]
call fcn.14001e444
nop
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov byte [rsp + 0xb0], bl
mov r8d, 2
lea rdx, [0x140072f74]
lea rcx, [rsp + 0xb0]
call fcn.14001e444
nop
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x120], rbx
mov byte [rsp + 0x110], bl
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x110]
call fcn.14001e320
nop
lea r9, [rsp + 0x60]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0xd0]
call fcn.140001b88
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.14001af54
cmp qword [rsp + 0xe8], 0x10
jb 0x14000906b
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
lea r8, [0x140072dd8]
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0xd0]
call fcn.1400242e8
nop
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x130]
call fcn.140020dcc
nop
cmp qword [rsp + 0xe8], 0x10
jb 0x1400090b7
mov rcx, qword [rsp + 0xd0]
call fcn.14002df20
mov dword [rsp + 0x54], 4
lea r9, [rsp + 0x150]
cmp qword [rsp + 0x168], 0x10
cmovae r9, qword [rsp + 0x150]
lea rdx, [rsp + 0x130]
cmp qword [rsp + 0x148], 0x10
cmovae rdx, qword [rsp + 0x130]
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x140]
mov rcx, r15
call qword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
je 0x1400091de
mov dword [rsp + 0x58], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x54]
lea r8, [rsp + 0x58]
mov edx, 0x20000005
mov rcx, r15
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
mov ecx, 0x2001
call fcn.140027654
mov r12, rax
lea r9, [rsp + 0x48]
mov r8d, 0x2000
mov rdx, r12
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetReadFile]
cmp dword [rsp + 0x48], ebx
jne 0x14000916c
mov rcx, r12
call fcn.14002dea0
jmp 0x1400091e7
mov eax, dword [rsp + 0x48]
mov byte [rax + r12], bl
mov r8d, dword [rsp + 0x48]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov byte [rsp + 0xb0], bl
mov rdx, r12
lea rcx, [rsp + 0xb0]
call fcn.14001e444
nop
mov r9, r14
xor r8d, r8d
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
call fcn.140020dcc
nop
cmp qword [rsp + 0xc8], 0x10
jb 0x140009145
mov rcx, qword [rsp + 0xb0]
call fcn.14002df20
jmp 0x140009145
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x54]
lea r8, [rsp + 0x50]
mov edx, 0x20000013
mov rcx, r15
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
cmp dword [rsp + 0x50], ebx
cmova r14d, dword [rsp + 0x50]
mov dword [rsp + 0x80], r14d
cmp qword [rsp + 0x148], 0x10
jb 0x140009232
mov rcx, qword [rsp + 0x130]
call fcn.14002df20
mov qword [rsp + 0x148], rdi
mov qword [rsp + 0x140], rbx
mov byte [rsp + 0x130], bl
cmp qword [rsp + 0x188], 0x10
jb 0x140009261
mov rcx, qword [rsp + 0x170]
call fcn.14002df20
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x180], rbx
mov byte [rsp + 0x170], bl
jmp 0x140009299
test r15, r15
je 0x1400092a7
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x1400092ba
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test r13, r13
je 0x1400092c9
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetCloseHandle]
nop
cmp qword [rsp + 0x1a8], 0x10
jb 0x1400092e1
mov rcx, qword [rsp + 0x190]
call fcn.14002df20
mov qword [rsp + 0x1a8], rdi
mov qword [rsp + 0x1a0], rbx
mov byte [rsp + 0x190], bl
cmp qword [rsp + 0x168], 0x10
jb 0x140009310
mov rcx, qword [rsp + 0x150]
call fcn.14002df20
mov qword [rsp + 0x168], rdi
mov qword [rsp + 0x160], rbx
mov byte [rsp + 0x150], bl
cmp qword [rsp + 0x1c8], 0x10
jb 0x14000933f
mov rcx, qword [rsp + 0x1b0]
call fcn.14002df20
mov qword [rsp + 0x1c8], rdi
mov qword [rsp + 0x1c0], rbx
mov byte [rsp + 0x1b0], bl
cmp qword [rsp + 0x108], 0x10
jb 0x14000936e
mov rcx, qword [rsp + 0xf0]
call fcn.14002df20
mov qword [rsp + 0x108], rdi
mov qword [rsp + 0x100], rbx
mov byte [rsp + 0xf0], bl
lea rcx, [rsp + 0x250]
call fcn.14001dcb8
cmp qword [rsp + 0x228], 0x10
jb 0x1400093aa
mov rcx, qword [rsp + 0x210]
call fcn.14002df20
mov qword [rsp + 0x228], rdi
mov qword [rsp + 0x220], rbx
mov byte [rsp + 0x210], bl
cmp qword [rsp + 0x208], 0x10
jb 0x1400093d9
mov rcx, qword [rsp + 0x1f0]
call fcn.14002df20
mov qword [rsp + 0x208], rdi
mov qword [rsp + 0x200], rbx
mov byte [rsp + 0x1f0], bl
cmp qword [rsp + 0x1e8], 0x10
jb 0x140009408
mov rcx, qword [rsp + 0x1d0]
call fcn.14002df20
mov qword [rsp + 0x1e8], rdi
mov qword [rsp + 0x1e0], rbx
mov byte [rsp + 0x1d0], bl
mov eax, r14d
jmp 0x1400094b5
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.14002b700
mov rbx, qword [rsp + 0x2b0]
add rsp, 0x270
pop r15
pop r14
pop r13
pop r12
pop rdi
ret