Function at 0x1800400a0
Capabilities:
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x40
movsx rax, byte [rcx + 0x435]
mov rbx, rcx
mov r15, qword [rcx]
xor esi, esi
mov ecx, dword [rcx + 0x400]
mov rbp, rdx
imul r14, rax, 0x138
movzx ecx, cx
mov r12d, 0x20b
mov rdi, qword [r14 + r15 + 0x2c0]
cmp ecx, 0x201
ja 0x18004016a
je 0x180040131
sub ecx, 0x12
je 0x1800403e7
sub ecx, 1
je 0x18004045e
cmp ecx, 1
jne 0x180040442
test dword [rbx + 0x420], 0x400000
jne 0x180040442
mov rcx, rbx
call fcn.180023fc0
test eax, eax
jne 0x180040442
jmp 0x180040533
mov rcx, rbx
call fcn.1800249b0
mov r9, rax
lea r8, str.lws_http_client_socket_service
lea rdx, str._s:__s:_WAITING_DNS_n
mov ecx, 1
call fcn.180026520
mov rcx, rbx
call fcn.180031310
test rax, rax
je 0x1800404af
jmp 0x180040442
sub ecx, 0x202
je 0x1800405e4
sub ecx, 1
je 0x180040304
cmp ecx, 8
jne 0x180040442
movzx eax, word [rdx + 0xa]
mov ecx, 0x302
and ax, cx
cmp ax, 2
jne 0x1800401c0
lea rcx, [rbx + 0x3e8]
call fcn.180033500
test rax, rax
je 0x1800402c2
mov edx, 6
mov rcx, rbx
lea r8d, [rdx - 3]
call fcn.180032200
test byte [rbp + 0xa], 0x10
je 0x1800401dd
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x10]
call fcn.1800336e0
test eax, eax
jne 0x1800404af
mov eax, 0x300
test word [rbp + 0xa], ax
je 0x180040442
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
je 0x1800402e6
lea rbp, str.lws_http_client_socket_service
nop dword [rax]
nop dword [rax + rax]
lea rcx, [r15 + 0x1f8]
mov qword [rsp + 0x30], rsi
add rcx, r14
mov dword [rsp + 0x38], esi
xor r9d, r9d
mov qword [rsp + 0x20], rbp
lea r8, [rsp + 0x30]
mov rdx, rbx
call fcn.180024bc0
mov ecx, dword [rsp + 0x38]
mov edi, eax
cmp ecx, 0xfffffffc
je 0x180040442
test eax, eax
js 0x1800402da
test ecx, ecx
js 0x1800402da
je 0x180040442
mov rdx, qword [rsp + 0x30]
lea r8, [rsp + 0x70]
mov dword [rsp + 0x70], ecx
mov rcx, rbx
call fcn.18002b5a0
test eax, eax
jne 0x1800402ce
mov r8d, dword [rsp + 0x38]
lea rdx, [rsp + 0x30]
sub r8d, dword [rsp + 0x70]
mov r9d, edi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call fcn.180024ad0
test eax, eax
jne 0x1800404af
cmp dword [rsp + 0x70], esi
jne 0x1800402e6
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
jne 0x180040210
mov rcx, rbx
call fcn.18003f330
jmp 0x180040444
lea rdi, str.Peer_hung_up
jmp 0x1800405ad
lea rdi, str.problems_parsing_header
jmp 0x1800405ad
lea rdi, str.read_failed
jmp 0x1800405ad
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
jne 0x180040442
mov rcx, rbx
call fcn.18003f330
jmp 0x180040444
test byte [rdx + 0xa], 2
je 0x180040316
lea rdi, str.proxy_conn_dead
jmp 0x1800405ad
mov r8d, dword [r15 + 0x7ec]
xor r9d, r9d
mov rcx, qword [rbx + 0x3f8]
mov rdx, rdi
call qword [sym.imp.WS2_32.dll_recv]
mov ecx, eax
test eax, eax
jns 0x180040364
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x180040442
lea rdx, str.ERROR_reading_from_proxy_socket_n
mov ecx, 1
call fcn.180026520
lea rdi, str.proxy_read_err
jmp 0x1800405ad
mov rax, qword [r14 + r15 + 0x2c0]
mov byte [rax + 0xd], sil
cmp ecx, 0xd
jl 0x1800405a6
mov r8d, 7
lea rdx, str.HTTP_1.
mov rcx, rdi
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x1800405a6
movzx eax, byte [rdi + 7]
sub al, 0x30
cmp al, 1
ja 0x1800405a6
cmp byte [rdi + 8], 0x20
jne 0x1800405a6
lea rcx, [rdi + 9]
call sub.msvcrt.dll_atoi
cmp eax, 0xc8
je 0x1800403da
mov r9d, eax
lea r8, str.http_proxy_____u
mov edx, reloc.WS2_32.dll_sendto
mov rcx, rdi
call fcn.1800291a0
jmp 0x1800405ad
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.180032200
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x10]
call fcn.1800336e0
test eax, eax
jne 0x1800404af
test dword [rbx + 0x410], 0x40000
je 0x18004045e
test dword [rbx + 0x420], 0x10000000
je 0x18004045e
mov rcx, rbx
call fcn.180034bd0
test eax, eax
je 0x18004042e
lea rdi, str.error_sending_h2_preface
jmp 0x1800405ad
mov r8d, dword [r15 + 0x7e8]
mov edx, reloc.WS2_32.dll_inet_addr
mov rcx, rbx
call fcn.180032200
xor eax, eax
mov rbx, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov rdx, rdi
mov rcx, rbx
call fcn.18003fbf0
test rax, rax
jne 0x1800404b6
mov rax, qword [rbx + 0x360]
lea rcx, str.raw_skt
cmp rax, rcx
je 0x180040442
lea rcx, str.raw_file
cmp rax, rcx
je 0x180040442
lea rdx, str.Failed_to_generate_handshake_for_client_n
mov ecx, 1
call fcn.180026520
lea r8, [0x180056274]
xor edx, edx
mov rcx, rbx
call fcn.18002a9c0
mov eax, 0xffffffff
jmp 0x180040444
sub rax, rdi
mov rdx, rdi
mov r8, rax
mov rcx, rbx
call fcn.180025cd0
cmp eax, 0xfffffffc
je 0x1800404e7
cmp eax, 0xffffffff
jne 0x1800404ef
lea r8, [0x180056278]
xor edx, edx
mov rcx, rbx
call fcn.18002a9c0
jmp 0x180040442
mov rcx, rbx
call fcn.180033e30
test dword [rbx + 0x420], 0x400000
jne 0x18004056c
mov rcx, rbx
call fcn.180023fc0
test eax, eax
jne 0x18004056c
mov r8, qword [rbx]
lea edx, [rax + 4]
and dword [rbx + 0x41c], 0xfffffffe
mov rcx, rbx
mov word [rbx + 0x400], r12w
mov r8d, dword [r8 + 0x7e8]
call fcn.180032200
mov rcx, rbx
call fcn.180033e30
mov rax, qword [rbx + 0x40]
mov edx, 4
mov byte [rax + 0x3d0], 0x61
mov rax, qword [rbx + 0x40]
mov word [rax + 0x3c8], si
mov rax, qword [rbx + 0x40]
mov dword [rax + 0x3b8], esi
mov word [rbx + 0x400], r12w
mov r8d, dword [r15 + 0x7e8]
jmp 0x18004043a
mov word [rbx + 0x400], 0x14
mov edx, reloc.WS2_32.dll_select
mov r8d, dword [r15 + 0x7e8]
mov rcx, rbx
call fcn.180032200
test dword [rbx + 0x410], 0x800
je 0x180040442
mov rcx, rbx
call fcn.180033e30
jmp 0x180040442
lea rdi, str.http_proxy_fail
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x1800405b4
mov rdx, rdi
mov rcx, rbx
call fcn.18002aa00
lea r8, str.cbail3
xor edx, edx
mov rcx, rbx
call fcn.18002a9c0
mov eax, 0xffffffff
jmp 0x180040444
test byte [rdx + 0xa], 0x10
je 0x180040442
xor r9d, r9d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.18003ebb0
neg rax
sbb eax, eax
neg eax
dec eax
jmp 0x180040444