Function at 0x14014a400
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 0x14014a4ca
je 0x14014a491
sub ecx, 0x12
je 0x14014a747
sub ecx, 1
je 0x14014a7be
cmp ecx, 1
jne 0x14014a7a2
test dword [rbx + 0x420], 0x400000
jne 0x14014a7a2
mov rcx, rbx
call fcn.14012eb00
test eax, eax
jne 0x14014a7a2
jmp 0x14014a893
mov rcx, rbx
call fcn.14012f4d0
mov r9, rax
lea r8, str.lws_http_client_socket_service
lea rdx, str._s:__s:_WAITING_DNS_n
mov ecx, 1
call fcn.1401319b0
mov rcx, rbx
call fcn.140134f30
test rax, rax
je 0x14014a80f
jmp 0x14014a7a2
sub ecx, 0x202
je 0x14014a944
sub ecx, 1
je 0x14014a664
cmp ecx, 8
jne 0x14014a7a2
movzx eax, word [rdx + 0xa]
mov ecx, 0x302
and ax, cx
cmp ax, 2
jne 0x14014a520
lea rcx, [rbx + 0x3e8]
call fcn.140137e60
test rax, rax
je 0x14014a622
mov edx, 6
mov rcx, rbx
lea r8d, [rdx - 3]
call fcn.140136b60
test byte [rbp + 0xa], 0x10
je 0x14014a53d
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x10]
call fcn.140138040
test eax, eax
jne 0x14014a80f
mov eax, 0x300
test word [rbp + 0xa], ax
je 0x14014a7a2
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
je 0x14014a646
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.14012f6e0
mov ecx, dword [rsp + 0x38]
mov edi, eax
cmp ecx, 0xfffffffc
je 0x14014a7a2
test eax, eax
js 0x14014a63a
test ecx, ecx
js 0x14014a63a
je 0x14014a7a2
mov rdx, qword [rsp + 0x30]
lea r8, [rsp + 0x70]
mov dword [rsp + 0x70], ecx
mov rcx, rbx
call fcn.140134270
test eax, eax
jne 0x14014a62e
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.14012f5f0
test eax, eax
jne 0x14014a80f
cmp dword [rsp + 0x70], esi
jne 0x14014a646
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
jne 0x14014a570
mov rcx, rbx
call fcn.140149690
jmp 0x14014a7a4
lea rdi, str.Peer_hung_up
jmp 0x14014a90d
lea rdi, str.problems_parsing_header
jmp 0x14014a90d
lea rdi, str.read_failed
jmp 0x14014a90d
mov rax, qword [rbx + 0x40]
cmp byte [rax + 0x3d0], 0x65
jne 0x14014a7a2
mov rcx, rbx
call fcn.140149690
jmp 0x14014a7a4
test byte [rdx + 0xa], 2
je 0x14014a676
lea rdi, str.proxy_conn_dead
jmp 0x14014a90d
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 0x14014a6c4
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x14014a7a2
lea rdx, str.ERROR_reading_from_proxy_socket_n
mov ecx, 1
call fcn.1401319b0
lea rdi, str.proxy_read_err
jmp 0x14014a90d
mov rax, qword [r14 + r15 + 0x2c0]
mov byte [rax + 0xd], sil
cmp ecx, 0xd
jl 0x14014a906
mov r8d, 7
lea rdx, str.HTTP_1.
mov rcx, rdi
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x14014a906
movzx eax, byte [rdi + 7]
sub al, 0x30
cmp al, 1
ja 0x14014a906
cmp byte [rdi + 8], 0x20
jne 0x14014a906
lea rcx, [rdi + 9]
call sub.msvcrt.dll_atoi
cmp eax, 0xc8
je 0x14014a73a
mov r9d, eax
lea r8, str.http_proxy_____u
mov edx, reloc.WS2_32.dll_sendto
mov rcx, rdi
call fcn.140135810
jmp 0x14014a90d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140136b60
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x10]
call fcn.140138040
test eax, eax
jne 0x14014a80f
test dword [rbx + 0x410], 0x40000
je 0x14014a7be
test dword [rbx + 0x420], 0x10000000
je 0x14014a7be
mov rcx, rbx
call fcn.140139530
test eax, eax
je 0x14014a78e
lea rdi, str.error_sending_h2_preface
jmp 0x14014a90d
mov r8d, dword [r15 + 0x7e8]
mov edx, reloc.WS2_32.dll_inet_addr
mov rcx, rbx
call fcn.140136b60
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.140149f50
test rax, rax
jne 0x14014a816
mov rax, qword [rbx + 0x360]
lea rcx, str.raw_skt
cmp rax, rcx
je 0x14014a7a2
lea rcx, str.raw_file
cmp rax, rcx
je 0x14014a7a2
lea rdx, str.Failed_to_generate_handshake_for_client_n
mov ecx, 1
call fcn.1401319b0
lea r8, [0x1402f3294]
xor edx, edx
mov rcx, rbx
call fcn.14013c650
mov eax, 0xffffffff
jmp 0x14014a7a4
sub rax, rdi
mov rdx, rdi
mov r8, rax
mov rcx, rbx
call fcn.1401303c0
cmp eax, 0xfffffffc
je 0x14014a847
cmp eax, 0xffffffff
jne 0x14014a84f
lea r8, [0x1402f3298]
xor edx, edx
mov rcx, rbx
call fcn.14013c650
jmp 0x14014a7a2
mov rcx, rbx
call fcn.140138790
test dword [rbx + 0x420], 0x400000
jne 0x14014a8cc
mov rcx, rbx
call fcn.14012eb00
test eax, eax
jne 0x14014a8cc
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.140136b60
mov rcx, rbx
call fcn.140138790
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 0x14014a79a
mov word [rbx + 0x400], 0x14
mov edx, reloc.WS2_32.dll_select
mov r8d, dword [r15 + 0x7e8]
mov rcx, rbx
call fcn.140136b60
test dword [rbx + 0x410], 0x800
je 0x14014a7a2
mov rcx, rbx
call fcn.140138790
jmp 0x14014a7a2
lea rdi, str.http_proxy_fail
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x14014a914
mov rdx, rdi
mov rcx, rbx
call fcn.14013c690
lea r8, str.cbail3
xor edx, edx
mov rcx, rbx
call fcn.14013c650
mov eax, 0xffffffff
jmp 0x14014a7a4
test byte [rdx + 0xa], 0x10
je 0x14014a7a2
xor r9d, r9d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140146b60
neg rax
sbb eax, eax
neg eax
dec eax
jmp 0x14014a7a4