Function at 0x10041ee20
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x548
mov rax, qword [rcx + 0x340]
mov r9, qword [rcx + 0x360]
mov r12, rcx
mov ebx, edx
lea rbp, [rsp + 0x140]
test r8b, r8b
je 0x10041f0d0
mov qword [rsp + 0x20], rax
lea r8, str.CONNECT__s:_s_HTTP_1.0_r_n_r_n
mov edx, 0x400
mov rcx, rbp
call sub.cygwin1.dll_snprintf
mov r14, qword [0x10044cf20]
cmp byte [r14], 0
je 0x10041eedc
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041ee99
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
je 0x10041f25a
mov qword [rsp + 0x28], rbp
mov rax, qword [r12 + 0x370]
lea r15, [rsp + 0x40]
lea r8, str.Sending_proxy__s:_s____s
mov r9, qword [r12 + 0x368]
mov edx, 0x100
mov rcx, r15
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
xor r8d, r8d
mov rdx, r15
mov ecx, 7
call fcn.100433050
mov rcx, rbp
call sub.cygwin1.dll_strlen
xor r9d, r9d
mov rdx, rbp
mov ecx, ebx
mov r8, rax
call sub.cygwin1.dll_send
xor r9d, r9d
mov r8d, 0xc
mov ecx, ebx
mov rdx, rbp
call sub.cygwin1.dll_recv
test eax, eax
jle 0x10041f1f0
cdqe
cmp byte [r14], 0
mov byte [rsp + rax + 0x140], 0
je 0x10041ef7e
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041ef3b
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
je 0x10041f27a
mov qword [rsp + 0x28], rbp
mov rax, qword [r12 + 0x370]
lea r15, [rsp + 0x40]
lea r8, str.Received_from_proxy__s:_s____s
mov r9, qword [r12 + 0x368]
mov edx, 0x100
mov rcx, r15
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
xor r8d, r8d
mov rdx, r15
mov ecx, 7
call fcn.100433050
mov ecx, 0xd
lea rdi, str.HTTP_1.1_200
mov rsi, rbp
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x10041f100
xor r13d, r13d
lea r15, [rsp + 0x40]
xor r9d, r9d
mov r8d, 1
mov rdx, r15
mov ecx, ebx
movsxd rsi, r13d
call sub.cygwin1.dll_recv
cmp rax, 0xffffffffffffffff
je 0x10041f2ce
movzx eax, byte [rsp + 0x40]
mov byte [rbp + r13], al
cmp al, 0xff
je 0x10041f17d
add r13, 1
cmp r13, 4
jne 0x10041efa4
lea r13, str._r_n_r_n
jmp 0x10041f04e
movzx eax, byte [rsp + 0x141]
xor r9d, r9d
mov rdx, r15
mov ecx, ebx
mov r8d, 1
mov byte [rsp + 0x140], al
movzx eax, byte [rsp + 0x142]
mov byte [rsp + 0x141], al
movzx eax, byte [rsp + 0x143]
mov byte [rsp + 0x142], al
call sub.cygwin1.dll_recv
cmp rax, 0xffffffffffffffff
je 0x10041f175
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x143], al
cmp al, 0xff
je 0x10041f17d
mov ecx, 4
mov rsi, rbp
mov rdi, r13
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x10041eff0
movzx r13d, byte [r14]
test r13b, r13b
je 0x10041f26f
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041f08d
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
je 0x10041f2b9
mov rax, qword [r12 + 0x370]
mov rcx, r15
mov r9, qword [r12 + 0x368]
lea r8, str.Success_negotiating_with__s:_s_HTTP_proxy
mov edx, 0x100
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
xor r8d, r8d
mov rdx, r15
mov ecx, 7
call fcn.100433050
jmp 0x10041f1d5
mov qword [rsp + 0x30], rax
mov edx, 0x400
mov rcx, rbp
lea r8, str.CONNECT__s:_s_HTTP_1.1_r_nHost:__s:_s_r_n_r_n
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
jmp 0x10041ee70
mov ecx, 0xd
lea rdi, str.HTTP_1.0_200
mov rsi, rbp
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
xor r13d, r13d
test al, al
je 0x10041ef9f
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041f13d
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
je 0x10041f2a4
mov qword [rsp + 0x28], rbp
mov rax, qword [r12 + 0x370]
lea r13, [rsp + 0x40]
lea r8, str.HTTP_Error_from_proxy__s:_s____s
mov r9, qword [r12 + 0x368]
mov edx, 0x100
mov rcx, r13
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
jmp 0x10041f242
mov byte [rsp + 0x143], 0xff
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041f199
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
je 0x10041f28f
mov rax, qword [r12 + 0x370]
mov r9, qword [r12 + 0x368]
mov edx, 0x100
mov rcx, r15
lea r8, str.Couldnt_read_HTTP_byte_from_proxy__s:_s
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
xor r8d, r8d
mov rdx, r15
mov ecx, 4
call fcn.100433050
xor r13d, r13d
mov eax, r13d
add rsp, 0x548
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [0x10044d200]
cmp byte [rax], 0
jne 0x10041f214
mov rax, qword [0x10044cf80]
cmp byte [rax], 0
jne 0x10041f214
mov rax, qword [0x10044cf70]
cmp dword [rax], 3
jle 0x10041f1d2
mov rax, qword [r12 + 0x370]
lea r13, [rsp + 0x40]
mov r9, qword [r12 + 0x368]
lea r8, str.Couldnt_read_from_proxy__s:_s_after_sending_CONNECT
mov edx, 0x100
mov rcx, r13
mov qword [rsp + 0x20], rax
call sub.cygwin1.dll_snprintf
mov rdx, r13
xor r8d, r8d
mov ecx, 4
xor r13d, r13d
call fcn.100433050
jmp 0x10041f1d5
mov rax, qword [0x10044cf70]
cmp dword [rax], 6
jle 0x10041eedc
jmp 0x10041ee99
mov r13d, 1
jmp 0x10041f1d5
mov rax, qword [0x10044cf70]
cmp dword [rax], 6
jle 0x10041ef7e
jmp 0x10041ef3b
mov rax, qword [0x10044cf70]
cmp dword [rax], 3
jle 0x10041f1d2
jmp 0x10041f199
mov rax, qword [0x10044cf70]
cmp dword [rax], 3
jle 0x10041f1d2
jmp 0x10041f13d
mov rax, qword [0x10044cf70]
cmp dword [rax], 6
jle 0x10041f1d5
jmp 0x10041f08d
mov byte [rsp + rsi + 0x140], 0xff
jmp 0x10041f17d