Function at 0x1401906f0
Capabilities:
Check http status code

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
and dword [rbp - 0x44], 0
mov rdi, rcx
mov r15, qword [rcx + 0x18]
mov r14, qword [rcx + 0x1b0]
movsxd r12, edx
mov qword [rbp - 0x30], r14
mov rsi, qword [r15 + 0x710]
mov rax, qword [r15 + r12*8 + 0x1f0]
mov qword [rbp - 0x18], rax
test rsi, rsi
je 0x1401911ce
lea r13, [rsi + 0x350]
cmp dword [r13], 2
mov qword [rbp - 0x40], r13
jge 0x1401911ce
mov byte [r15 + 0x3e8], 0
lea rbx, [rcx + 0x198]
cmp dword [r13], 0
jne 0x1401909eb
mov r14, qword [rbp + 0x58]
lea rdx, str.Establish_HTTP_proxy_tunnel_to__s:_d
mov r8, r14
lea r12, [rsi + 0x310]
mov rcx, rdi
call fcn.1401a2328
mov rcx, qword [rbx]
call qword [0x1404255c0]
and qword [rbx], 0
mov edx, 0x100000
mov rcx, r12
call fcn.1401959b0
mov al, byte [r15 + 0x3ef]
xor r13d, r13d
cmp r14, qword [r15 + 0xa0]
je 0x1401907d2
lea edx, [r13 + 0x3a]
mov rcx, r14
call sub.VCRUNTIME140.dll_strchr
test rax, rax
setne al
test al, al
lea rcx, [0x1403eaaa8]
mov eax, dword [rbp + 0x60]
lea r9, [0x1403ea051]
cmovne r9, rcx
mov dword [rsp + 0x20], eax
lea rcx, [0x1403eaaac]
mov r8, r14
lea rdx, [0x1403ea051]
cmovne rdx, rcx
lea rcx, str._s_s_s:_d
call fcn.14018b448
mov r14, rax
test rax, rax
je 0x140191041
mov r9d, 4
lea r8, str.Host
mov rdx, r15
mov rcx, rdi
call fcn.140196c04
test rax, rax
jne 0x140190852
mov rdx, r14
lea rcx, str.Host:__s_r_n
call fcn.14018b448
mov r13, rax
test rax, rax
je 0x140191038
mov byte [rsp + 0x28], 1
lea r8, str.CONNECT
xor r9d, r9d
mov qword [rsp + 0x20], r14
mov rdx, r15
mov rcx, rdi
call fcn.140198ad0
mov ebx, eax
test eax, eax
jne 0x1401909b9
cmp dword [r15 + 0x13c], 1
lea rax, [0x1403eab08]
lea r9, [0x1403eab0c]
mov r8, r14
cmove r9, rax
lea rcx, [0x1403ea051]
mov rax, qword [rdi + 0x12b0]
lea rdx, str.CONNECT__s_HTTP__s_r_n_s_s
test rax, rax
cmovne rcx, rax
test r13, r13
mov qword [rsp + 0x28], rcx
lea rax, [0x1403ea051]
cmovne rax, r13
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.140195958
mov ebx, eax
test eax, eax
jne 0x1401909aa
lea r9d, [rax + 0xa]
mov rdx, r15
lea r8, str.User_Agent
mov rcx, rdi
call fcn.140196c04
test rax, rax
jne 0x14019091e
mov r8, qword [rdi + 0x8a8]
test r8, r8
je 0x14019091e
lea rdx, str.User_Agent:__s_r_n
mov rcx, r12
call fcn.140195958
mov ebx, eax
test eax, eax
jne 0x1401909aa
mov r9d, 0x10
lea r8, str.Proxy_Connection
mov rdx, r15
mov rcx, rdi
call fcn.140196c04
test rax, rax
jne 0x140190954
lea r8d, [rax + 0x1e]
mov rcx, r12
lea rdx, str.Proxy_Connection:_Keep_Alive_r_n
call fcn.140195980
mov ebx, eax
test eax, eax
jne 0x1401909aa
mov r8, r12
mov dl, 1
mov rcx, rdi
call fcn.140196464
mov ebx, eax
test eax, eax
jne 0x1401909aa
lea r8d, [rax + 2]
mov rcx, r12
lea rdx, [0x1403ea58c]
call fcn.140195980
mov ebx, eax
test eax, eax
jne 0x1401909aa
mov eax, dword [rbp + 0x50]
lea r8, [rdi + 0x1358]
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov rdx, rdi
mov rcx, r12
call fcn.140196968
and qword [rsi + 0x338], 0
mov ebx, eax
test eax, eax
je 0x1401909b9
lea rdx, str.Failed_sending_CONNECT_to_proxy
mov rcx, rdi
call fcn.1401a225c
mov rcx, r13
call qword [0x1404255c0]
mov rcx, r14
call qword [0x1404255c0]
test ebx, ebx
jne 0x140190d34
mov r13, qword [rbp - 0x40]
mov r12d, dword [rbp + 0x50]
mov r14, qword [rbp - 0x30]
mov qword [rbp - 0x40], r13
mov dword [r13], 1
mov r8b, 1
xor edx, edx
mov rcx, rdi
call fcn.1401a0608
test rax, rax
jle 0x1401911e8
mov edx, r12d
mov rcx, r15
call fcn.14019f944
test al, al
jne 0x140190a1e
cmp dword [r14 + 0x200], 0
je 0x1401911ce
cmp dword [r14 + 0x200], 1
jne 0x140190a7b
mov r9, qword [rsi + 0x330]
test r9, r9
jne 0x14019104b
mov rax, qword [rdi + 0xd20]
lea r8, [rbp - 0x20]
mov qword [rdi + 0x1a8], rax
mov rcx, rdi
mov edx, dword [rdi + 0x720]
call fcn.140191690
test eax, eax
jne 0x1401911d0
mov r9, qword [rbp - 0x20]
mov qword [rsi + 0x330], r9
test r9, r9
jne 0x14019104b
and dword [r14 + 0x200], r9d
xor ebx, ebx
mov dword [rbp - 0x48], ebx
cmp dword [rsi + 0x340], ebx
je 0x140190b1d
xor r12d, r12d
mov rdx, qword [rbp - 0x18]
lea rax, [rbp - 0x38]
mov r9d, 1
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x48]
mov rcx, rdi
call fcn.1401a23c8
mov ebx, eax
cmp eax, 0x51
je 0x1401911ce
mov rcx, rdi
call fcn.1401a174c
test eax, eax
jne 0x1401911e1
test ebx, ebx
jne 0x140190b0f
cmp qword [rbp - 0x38], r12
jle 0x140190f95
cmp dword [rsi + 0x340], 2
jne 0x140190be7
mov rax, qword [rsi + 0x348]
test rax, rax
je 0x140190ba0
dec rax
mov qword [rsi + 0x348], rax
test rax, rax
jg 0x140190f83
mov dword [r13], 2
mov dword [rsi + 0x340], r12d
mov ebx, dword [rbp - 0x48]
mov r12d, dword [rbp + 0x50]
mov rcx, rdi
call fcn.1401a174c
test eax, eax
jne 0x1401911e1
test ebx, ebx
jne 0x1401910b3
lea r14, [rdi + 0x133c]
mov eax, dword [r14]
sub eax, 0xc8
cmp eax, 0x64
jb 0x140190b70
mov rcx, rdi
call fcn.140196df8
test eax, eax
jne 0x1401911d0
cmp byte [r15 + 0x3ea], al
je 0x140190b70
mov byte [rsi + 0x355], 1
lea r14, [rdi + 0x133c]
cmp byte [rsi + 0x355], 0
je 0x140190fec
lea rbx, [rdi + 0x198]
cmp qword [rbx], 0
jne 0x1401910bd
lea r14, [rdi + 0x133c]
mov r12, rbx
mov rax, rbx
jmp 0x14019101c
lea rax, [rbp - 0x28]
mov qword [rbp - 0x10], r12
lea r9, [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov r8d, 1
lea rdx, [rbp + 0x48]
mov rcx, rdi
call fcn.1401b1680
cmp eax, 0xffffffff
jne 0x140190f83
lea rdx, str.chunk_reading_DONE
mov rcx, rdi
call fcn.1401a2328
mov dword [rsi + 0x340], r12d
jmp 0x140190f7b
lea rbx, [rsi + 0x2f0]
mov r8d, 1
mov rcx, rbx
lea rdx, [rbp + 0x48]
call fcn.140195980
test eax, eax
jne 0x1401910a4
cmp byte [rbp + 0x48], 0xa
jne 0x140190f83
inc qword [rsi + 0x338]
mov rcx, rbx
call fcn.14008bb30
mov rcx, rbx
mov r14, rax
call fcn.1401959c4
mov r9, rax
mov r8, r14
mov edx, 1
mov rcx, rdi
mov rbx, rax
call fcn.1401a2184
cmp byte [rdi + 0xb25], r12b
jne 0x140190c83
cmp byte [rdi + 0xb0c], r12b
mov ecx, 0xa
mov edx, r12d
mov r9, rbx
setne dl
mov r8, r14
cmp qword [rsi + 0x338], 1
lea eax, [rcx + 4]
cmove ecx, eax
or edx, ecx
mov rcx, rdi
call fcn.1401a2174
test eax, eax
jne 0x1401911d0
movsxd rax, ebx
add qword [rdi + 0x1350], rax
cmp byte [r14], 0xd
je 0x140190eb5
cmp byte [r14], 0xa
je 0x140190eb5
mov r8d, 0x11
lea rdx, str.WWW_Authenticate:
mov rcx, r14
call fcn.1401aaa6c
lea rbx, [rdi + 0x158]
test eax, eax
je 0x140190cd0
mov r12d, dword [rbx]
cmp r12d, 0x191
je 0x140190cf5
xor r12d, r12d
mov r8d, 0x13
lea rdx, str.Proxy_authenticate:
mov rcx, r14
call fcn.1401aaa6c
test eax, eax
je 0x140190d3e
mov r12d, dword [rbx]
cmp r12d, 0x197
jne 0x140190d3b
mov rcx, r14
call fcn.140196d28
mov r14, rax
test rax, rax
je 0x140191041
cmp r12d, 0x197
mov r8, rax
mov rcx, rdi
sete dl
call fcn.1401987bc
mov rcx, r14
mov ebx, eax
call qword [0x1404255c0]
xor r12d, r12d
test ebx, ebx
je 0x140190ea4
mov eax, ebx
jmp 0x1401911d0
xor r12d, r12d
mov r8d, 0xf
lea rdx, str.Content_Length:
mov rcx, r14
call fcn.1401aaa6c
test eax, eax
je 0x140190da1
mov r8d, dword [rbx]
lea eax, [r8 - 0xc8]
cmp eax, 0x64
jae 0x140190d7a
lea rdx, str.Ignoring_Content_Length_in_CONNECT__03d_response
mov rcx, rdi
call fcn.1401a2328
jmp 0x140190ea4
lea rcx, str.Content_Length:
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
xor edx, edx
lea r9, [rsi + 0x348]
lea rcx, [r14 + rax]
lea r8d, [rdx + 0xa]
call fcn.1401b19c4
jmp 0x140190ea4
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0xb
lea rdx, str.Connection:
mov rcx, r14
call fcn.140196c7c
test al, al
jne 0x140190e9d
mov r8d, 0x12
lea rdx, str.Transfer_Encoding:
mov rcx, r14
call fcn.1401aaa6c
test eax, eax
je 0x140190e4b
mov r8d, dword [rbx]
lea eax, [r8 - 0xc8]
cmp eax, 0x64
jae 0x140190e02
lea rdx, str.Ignoring_Transfer_Encoding_in_CONNECT__03d_response
jmp 0x140190d6d
lea r9, str.chunked
mov qword [rsp + 0x20], 7
mov r8d, 0x12
lea rdx, str.Transfer_Encoding:
mov rcx, r14
call fcn.140196c7c
test al, al
je 0x140190ea4
lea rdx, str.CONNECT_responded_chunked
mov rcx, rdi
call fcn.1401a2328
mov rcx, rdi
mov byte [rsi + 0x354], 1
call fcn.1401b1660
jmp 0x140190ea4
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0x11
lea rdx, str.Proxy_Connection:
mov rcx, r14
call fcn.140196c7c
test al, al
jne 0x140190e9d
mov r9, rbx
lea r8, [rbp - 0x44]
lea rdx, str.HTTP_1._d__d
mov rcx, r14
call fcn.1401915a8
cmp eax, 2
jne 0x140190ea4
mov eax, dword [rdi + 0x158]
mov dword [rdi + 0x133c], eax
jmp 0x140190ea4
mov byte [rsi + 0x355], 1
lea rcx, [rsi + 0x2f0]
call fcn.1401959cc
jmp 0x140190f83
cmp dword [rdi + 0x158], 0x197
jne 0x140190f5e
cmp byte [rdi + 0x1325], r12b
jne 0x140190f5e
mov r8, qword [rsi + 0x348]
mov dword [rsi + 0x340], 2
test r8, r8
je 0x140190ef9
lea rdx, str.Ignore__I64d_bytes_of_response_body
mov rcx, rdi
call fcn.1401a2328
jmp 0x140190f65
cmp byte [rsi + 0x354], r12b
je 0x140190f5e
lea rdx, str.Ignore_chunked_response_body
mov rcx, rdi
call fcn.1401a2328
lea rax, [r14 + 1]
mov byte [rdi + 0x1c3], 1
cmp byte [rax], 0xa
lea r9, [rbp - 0x38]
mov r8d, 1
mov rcx, rdi
cmove r14, rax
lea rax, [rbp - 0x24]
mov qword [rsp + 0x20], rax
lea rdx, [r14 + 1]
call fcn.1401b1680
cmp eax, 0xffffffff
jne 0x140190f65
lea rdx, str.chunk_reading_DONE
mov rcx, rdi
call fcn.1401a2328
mov dword [r13], 2
mov dword [rsi + 0x340], r12d
cmp dword [rsi + 0x340], r12d
jne 0x140190a8f
cmp qword [rsi + 0x348], r12
jne 0x140190f83
mov dword [r13], 2
cmp dword [rsi + 0x340], r12d
jne 0x140190a8f
jmp 0x140190b16
cmp dword [rdi + 0x218], r12d
je 0x140190fcc
cmp dword [rdi + 0xe50], r12d
je 0x140190fcc
cmp qword [rdi + 0x12b0], r12
je 0x140190fcc
lea rdx, str.Proxy_CONNECT_connection_closed
mov byte [r15 + 0x3e8], 1
mov rcx, rdi
call fcn.1401a2328
mov ebx, dword [rbp - 0x48]
jmp 0x140190fe0
lea rdx, str.Proxy_CONNECT_aborted
mov rcx, rdi
mov ebx, 1
call fcn.1401a225c
mov dword [rsi + 0x340], r12d
jmp 0x140190b19
lea r12, [rdi + 0x198]
cmp qword [r12], 0
mov rbx, r12
mov rax, r12
je 0x1401910e1
cmp dword [r13], 2
jne 0x14019101c
mov dl, 1
mov rcx, rdi
call fcn.1401914ac
lea rax, [rdi + 0x198]
cmp qword [r12], 0
je 0x1401910e1
mov r12d, dword [rbp + 0x50]
mov r14, qword [rbp - 0x30]
mov r9d, dword [rbp + 0x60]
jmp 0x14019076b
mov rcx, r14
call qword [0x1404255c0]
mov eax, 0x1b
jmp 0x1401911d0
mov r8, qword [rdi + 0x1a8]
lea rax, [rbp + 0x48]
mov rdx, qword [r15 + 0x450]
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.1401a27f4
mov r8d, eax
test eax, eax
jne 0x14019108a
mov r9, qword [rbp + 0x48]
lea edx, [rax + 2]
mov r8, qword [rdi + 0x1a8]
mov rcx, rdi
call fcn.1401a2184
mov r8d, eax
mov rcx, qword [rbp + 0x48]
mov eax, r8d
sub qword [rsi + 0x330], rcx
add qword [rdi + 0x1a8], rcx
jmp 0x1401911d0
lea rdx, str.CONNECT_response_too_large
mov rcx, rdi
call fcn.1401a225c
mov eax, 0x38
jmp 0x1401911d0
movsxd r8, r12d
mov rdx, r15
mov rcx, rdi
mov r8, qword [r15 + r8*8 + 0x1f0]
call fcn.14019f8b8
movsxd rax, r12d
or qword [r15 + rax*8 + 0x1f0], 0xffffffffffffffff
jmp 0x1401910e4
mov rbx, rax
mov eax, dword [rdi + 0x133c]
sub eax, 0xc8
cmp eax, 0x64
jb 0x14019117a
cmp byte [rsi + 0x355], 0
je 0x140191128
cmp qword [rbx], 0
je 0x140191128
lea rdx, str.Connect_me_again_please
mov byte [r15 + 0x3e8], 1
mov rcx, rdi
call fcn.1401a2328
mov rcx, rdi
call fcn.14019121c
jmp 0x140191142
mov rcx, qword [rbx]
call qword [0x1404255c0]
and qword [rbx], 0
mov edx, 2
mov rcx, r15
call fcn.14019f9f0
and dword [rsi + 0x350], 0
cmp byte [r15 + 0x3e8], 0
jne 0x1401911ce
lea rcx, [rsi + 0x2f0]
call fcn.140195988
mov r8d, dword [rdi + 0x158]
lea rdx, str.Received_HTTP_code__d_from_proxy_after_CONNECT
mov rcx, rdi
call fcn.1401a225c
jmp 0x1401910b3
mov dword [rsi + 0x350], 2
mov rcx, qword [rdi + 0x12b0]
call qword [0x1404255c0]
xor ebx, ebx
lea rdx, str.Proxy_replied__d_to_CONNECT_request
mov qword [rdi + 0x12b0], rbx
mov rcx, rdi
mov r8d, dword [r14]
mov word [rdi + 0xe54], 1
call fcn.1401a2328
mov byte [rdi + 0x1c3], bl
lea rcx, [rsi + 0x2f0]
mov byte [r15 + 0x3f5], bl
call fcn.140195988
xor eax, eax
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, 0x2a
jmp 0x1401911d0
lea rdx, str.Proxy_CONNECT_aborted_due_to_timeout
mov rcx, rdi
call fcn.1401a225c
mov eax, 0x1c
jmp 0x1401911d0