Function at 0x140033640
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
lea rbp, [rsp - 0x1f]
sub rsp, 0x88
mov r13, qword [rcx + 0x18]
mov rbx, rcx
mov r14, qword [rcx + 0x1b0]
mov r12d, r9d
mov dword [rbp - 0x21], 0
mov rcx, r13
movsxd r15, edx
mov rsi, qword [r13 + 0x7f8]
mov qword [rbp - 0x39], r14
lea rax, [r15*8 + 0x1e8]
add rax, r13
mov qword [rbp + 7], rax
mov rdi, qword [rax]
mov qword [rbp - 0x31], rdi
call fcn.140034240
test al, al
jne 0x140034105
mov byte [r13 + 0x3d0], al
nop dword [rax]
cmp dword [rsi + 0x288], 0
jne 0x1400338d9
mov r8, qword [rbp + 0x77]
lea rdx, str.Establish_HTTP_proxy_tunnel_to__s:_d
xor r15d, r15d
lea r14, [rsi + 0x250]
mov r9d, r12d
mov qword [rbp - 0x19], r15
mov rcx, rbx
mov qword [rbp - 0x29], r15
call fcn.140022ed0
mov rcx, qword [rbx + 0x198]
call qword [fcn.140093584]
mov edx, 0x100000
mov qword [rbx + 0x198], r15
mov rcx, r14
call fcn.140018e40
mov r8, qword [rbp + 0x77]
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov r9d, r12d
lea rax, [rbp - 0x19]
mov rdx, r13
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140034140
test eax, eax
jne 0x140034107
mov r15, qword [rbp - 0x19]
lea r8, str.CONNECT
mov byte [rsp + 0x28], 1
xor r9d, r9d
mov rdx, r13
mov qword [rsp + 0x20], r15
mov rcx, rbx
call fcn.14002e340
mov r12, qword [rbp - 0x29]
mov edi, eax
test eax, eax
jne 0x1400338a9
cmp dword [r13 + 0x13c], 1
lea rax, [0x1400c2b2c]
lea r9, [0x1400c2b28]
mov r8, r15
cmove r9, rax
lea rcx, [0x1400dc1d7]
mov rax, qword [rbx + 0x1260]
lea rdx, str.CONNECT__s_HTTP__s_r_n_s_s
test rax, rax
cmovne rcx, rax
test r12, r12
mov qword [rsp + 0x28], rcx
lea rax, [0x1400dc1d7]
cmovne rax, r12
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.140018dd0
mov edi, eax
test eax, eax
jne 0x14003389a
lea r9d, [rax + 0xa]
mov rdx, r13
lea r8, str.User_Agent
mov rcx, rbx
call fcn.14002c2d0
test rax, rax
jne 0x140033816
mov r8, qword [rbx + 0x8b0]
test r8, r8
je 0x140033816
lea rdx, str.User_Agent:__s_r_n
mov rcx, r14
call fcn.140018dd0
mov edi, eax
test eax, eax
jne 0x14003389a
mov r9d, 0x10
lea r8, str.Proxy_Connection
mov rdx, r13
mov rcx, rbx
call fcn.14002c2d0
test rax, rax
jne 0x14003384c
lea r8d, [rax + 0x1e]
mov rcx, r14
lea rdx, str.Proxy_Connection:_Keep_Alive_r_n
call fcn.140018e00
mov edi, eax
test eax, eax
jne 0x14003389a
mov r8, r14
mov dl, 1
mov rcx, rbx
call fcn.14002bb60
mov edi, eax
test eax, eax
jne 0x14003389a
lea r8d, [rax + 2]
mov rcx, r14
lea rdx, [0x1400c0ed0]
call fcn.140018e00
mov edi, eax
test eax, eax
jne 0x14003389a
mov eax, dword [rbp + 0x6f]
lea r8, [rbx + 0x1358]
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov rdx, rbx
mov rcx, r14
call fcn.14002c030
mov edi, eax
test eax, eax
je 0x1400338a9
lea rdx, str.Failed_sending_CONNECT_to_proxy
mov rcx, rbx
call fcn.140022df0
mov rcx, r12
call qword [fcn.140093584]
mov rcx, r15
call qword [fcn.140093584]
test edi, edi
jne 0x140033fc3
mov rdi, qword [rbp - 0x31]
mov r14, qword [rbp - 0x39]
mov r15d, dword [rbp + 0x6f]
mov dword [rsi + 0x288], 1
mov r8b, 1
xor edx, edx
mov rcx, rbx
call fcn.1400245c0
test rax, rax
jle 0x140034122
mov edx, r15d
mov rcx, r13
call fcn.1400238d0
test al, al
jne 0x14003390c
cmp dword [r14 + 0x200], 0
je 0x140034105
cmp dword [r14 + 0x200], 1
jne 0x14003396c
mov r9, qword [rsi + 0x270]
test r9, r9
jne 0x140033fca
mov rax, qword [rbx + 0xd28]
lea r8, [rbp - 1]
mov qword [rbx + 0x1a8], rax
mov rcx, rbx
mov edx, dword [rbx + 0x720]
call fcn.1400301f0
test eax, eax
jne 0x140034107
mov rax, qword [rbp - 1]
mov qword [rsi + 0x270], rax
mov r9, rax
test rax, rax
jne 0x140033fca
mov dword [r14 + 0x200], eax
xor r12d, r12d
cmp dword [rsi + 0x278], r12d
je 0x140033a10
nop dword [rax]
lea rax, [rbp - 0x11]
mov r9d, 1
lea r8, [rbp + 0x67]
mov qword [rsp + 0x20], rax
mov rdx, rdi
mov rcx, rbx
call fcn.140022f70
mov edi, eax
cmp eax, 0x51
je 0x140034105
mov rcx, rbx
call fcn.140032540
test eax, eax
jne 0x14003411b
test edi, edi
jne 0x140033a01
cmp qword [rbp - 0x11], r12
jle 0x140033f12
cmp dword [rsi + 0x278], 2
jne 0x140033b26
mov rax, qword [rsi + 0x280]
test rax, rax
je 0x140033ae0
dec rax
mov qword [rsi + 0x280], rax
test rax, rax
jg 0x140033efc
mov dword [rsi + 0x288], 2
mov dword [rsi + 0x278], r12d
mov r15d, dword [rbp + 0x6f]
mov r14, qword [rbp - 0x39]
mov rcx, rbx
call fcn.140032540
test eax, eax
jne 0x14003411b
test r12d, r12d
jne 0x140034039
mov eax, dword [rbx + 0x133c]
sub eax, 0xc8
cmp eax, 0x64
jb 0x140033a59
mov rcx, rbx
call fcn.14002c540
test eax, eax
jne 0x140034107
cmp byte [r13 + 0x3d2], al
je 0x140033a59
mov byte [rsi + 0x28d], 1
cmp byte [rsi + 0x28d], 0
je 0x140033f77
cmp qword [rbx + 0x198], 0
je 0x140033fa6
mov rdi, qword [rbp + 7]
mov rdx, r13
mov rcx, rbx
mov r8, qword [rdi]
call fcn.140023830
mov qword [rdi], 0xffffffffffffffff
mov eax, dword [rbx + 0x133c]
sub eax, 0xc8
cmp eax, 0x64
jb 0x1400340a9
cmp byte [rsi + 0x28d], 0
je 0x140034043
cmp qword [rbx + 0x198], 0
je 0x140034043
lea rdx, str.Connect_me_again_please
mov byte [r13 + 0x3d0], 1
mov rcx, rbx
call fcn.140022ed0
mov rcx, rbx
call fcn.140034260
jmp 0x140034068
xor edi, edi
lea rax, [rbp - 9]
lea r9, [rbp - 0x29]
mov qword [rbp - 0x29], rdi
lea rdx, [rbp + 0x67]
mov qword [rsp + 0x20], rax
mov rcx, rbx
lea r8d, [rdi + 1]
call fcn.140052ec0
cmp eax, 0xffffffff
jne 0x140033efc
lea rdx, str.chunk_reading_DONE
mov rcx, rbx
call fcn.140022ed0
mov dword [rsi + 0x278], edi
jmp 0x140033ef2
mov r8d, 1
lea rdx, [rbp + 0x67]
lea rcx, [rsi + 0x230]
call fcn.140018e00
test eax, eax
jne 0x14003402a
cmp byte [rbp + 0x67], 0xa
jne 0x140033efc
lea rcx, [rsi + 0x230]
call fcn.140018e70
lea rcx, [rsi + 0x230]
mov rdi, rax
call fcn.140018e60
mov r9, rax
mov r8, rdi
mov edx, 1
mov rcx, rbx
mov r14, rax
call fcn.140022d20
cmp byte [rbx + 0xb32], r12b
jne 0x140033bac
xor edx, edx
mov r9, r14
cmp byte [rbx + 0xb19], dl
mov r8, rdi
mov rcx, rbx
setne dl
add edx, 2
call fcn.140022d10
test eax, eax
jne 0x140034107
movsxd rax, r14d
add qword [rbx + 0x1350], rax
movzx eax, byte [rdi]
cmp al, 0xd
je 0x140033e2a
cmp al, 0xa
je 0x140033e2a
mov r8d, 0x11
lea rdx, str.WWW_Authenticate:
mov rcx, rdi
call fcn.140028d30
test eax, eax
je 0x140033bf2
mov r14d, dword [rbx + 0x158]
cmp r14d, 0x191
je 0x140033c1b
mov r8d, 0x13
lea rdx, str.Proxy_authenticate:
mov rcx, rdi
call fcn.140028d30
test eax, eax
je 0x140033c61
mov r14d, dword [rbx + 0x158]
cmp r14d, 0x197
jne 0x140033c61
mov rcx, rdi
call fcn.14002c430
mov rdi, rax
test rax, rax
je 0x140034020
cmp r14d, 0x197
mov r8, rax
mov rcx, rbx
sete dl
call fcn.14002dfa0
mov rcx, rdi
mov r14d, eax
call qword [fcn.140093584]
test r14d, r14d
je 0x140033e19
mov eax, r14d
jmp 0x140034107
mov r8d, 0xf
lea rdx, str.Content_Length:
mov rcx, rdi
call fcn.140028d30
test eax, eax
je 0x140033cd4
mov r8d, dword [rbx + 0x158]
lea eax, [r8 - 0xc8]
cmp eax, 0x64
jae 0x140033cad
lea rdx, str.Ignoring_Content_Length_in_CONNECT__03d_response
mov rcx, rbx
call fcn.140022ed0
lea rcx, [rsi + 0x230]
call fcn.140018e80
jmp 0x140033efc
xor edx, edx
lea r9, [rsi + 0x280]
lea rcx, [rdi + 0xf]
lea r8d, [rdx + 0xa]
call fcn.140035dd0
lea rcx, [rsi + 0x230]
call fcn.140018e80
jmp 0x140033efc
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0xb
lea rdx, str.Connection:
mov rcx, rdi
call fcn.14002c360
test al, al
jne 0x140033e12
mov r8d, 0x12
lea rdx, str.Transfer_Encoding:
mov rcx, rdi
call fcn.140028d30
test eax, eax
je 0x140033dad
mov r8d, dword [rbx + 0x158]
lea eax, [r8 - 0xc8]
cmp eax, 0x64
jae 0x140033d51
lea rdx, str.Ignoring_Transfer_Encoding_in_CONNECT__03d_response
mov rcx, rbx
call fcn.140022ed0
lea rcx, [rsi + 0x230]
call fcn.140018e80
jmp 0x140033efc
lea r9, str.chunked
mov qword [rsp + 0x20], 7
mov r8d, 0x12
lea rdx, str.Transfer_Encoding:
mov rcx, rdi
call fcn.14002c360
test al, al
je 0x140033e19
lea rdx, str.CONNECT_responded_chunked
mov rcx, rbx
call fcn.140022ed0
mov rcx, rbx
mov byte [rsi + 0x28c], 1
call fcn.140052ea0
lea rcx, [rsi + 0x230]
call fcn.140018e80
jmp 0x140033efc
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0x11
lea rdx, str.Proxy_Connection:
mov rcx, rdi
call fcn.14002c360
test al, al
jne 0x140033e12
lea r9, [rbx + 0x158]
mov rcx, rdi
lea r8, [rbp - 0x21]
lea rdx, str.HTTP_1._d__d
call fcn.1400183f0
cmp eax, 2
jne 0x140033e19
mov eax, dword [rbx + 0x158]
lea rcx, [rsi + 0x230]
mov dword [rbx + 0x133c], eax
call fcn.140018e80
jmp 0x140033efc
mov byte [rsi + 0x28d], 1
lea rcx, [rsi + 0x230]
call fcn.140018e80
jmp 0x140033efc
cmp dword [rbx + 0x158], 0x197
jne 0x140033ee2
cmp byte [rbx + 0x12d5], r12b
jne 0x140033ee2
mov r8, qword [rsi + 0x280]
mov dword [rsi + 0x278], 2
test r8, r8
je 0x140033e7b
lea rdx, str.Ignore__I64d_bytes_of_response_body
mov rcx, rbx
call fcn.140022ed0
cmp dword [rsi + 0x278], r12d
jne 0x140033f09
jmp 0x140033ee9
cmp byte [rsi + 0x28c], r12b
je 0x140033ee2
lea rdx, str.Ignore_chunked_response_body
mov rcx, rbx
call fcn.140022ed0
lea rax, [rdi + 1]
mov byte [rbx + 0x1c3], 1
cmp byte [rax], 0xa
lea r9, [rbp - 0x11]
mov r8d, 1
mov rcx, rbx
cmove rdi, rax
lea rax, [rbp - 5]
mov qword [rsp + 0x20], rax
lea rdx, [rdi + 1]
call fcn.140052ec0
cmp eax, 0xffffffff
jne 0x140033e6c
lea rdx, str.chunk_reading_DONE
mov rcx, rbx
call fcn.140022ed0
mov dword [rsi + 0x288], 2
mov dword [rsi + 0x278], r12d
cmp qword [rsi + 0x280], r12
jne 0x140033efc
mov dword [rsi + 0x288], 2
cmp dword [rsi + 0x278], r12d
je 0x140033a08
mov rdi, qword [rbp - 0x31]
jmp 0x140033980
cmp dword [rbx + 0x218], r12d
je 0x140033f53
cmp dword [rbx + 0xe50], r12d
je 0x140033f53
cmp qword [rbx + 0x1260], r12
je 0x140033f53
lea rdx, str.Proxy_CONNECT_connection_closed
mov byte [r13 + 0x3d0], 1
mov rcx, rbx
call fcn.140022ed0
mov dword [rsi + 0x278], 0
jmp 0x140033a08
lea rdx, str.Proxy_CONNECT_aborted
mov rcx, rbx
mov r12d, 1
call fcn.140022df0
mov dword [rsi + 0x278], 0
jmp 0x140033a08
mov rax, qword [rbx + 0x198]
test rax, rax
je 0x140033a8d
cmp dword [rsi + 0x288], 2
mov rdi, qword [rbp - 0x31]
mov r12d, dword [rbp + 0x7f]
jne 0x1400336c0
mov dl, 1
mov rcx, rbx
call fcn.1400344e0
mov rax, qword [rbx + 0x198]
test rax, rax
je 0x140033a8d
mov rdi, qword [rbp - 0x31]
mov r12d, dword [rbp + 0x7f]
jmp 0x1400336c0
mov eax, edi
jmp 0x140034107
mov r8, qword [rbx + 0x1a8]
lea rax, [rbp + 0x67]
mov rdx, qword [r13 + 0x440]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140023250
mov ecx, eax
test eax, eax
jne 0x140034007
mov r9, qword [rbp + 0x67]
lea edx, [rax + 2]
mov r8, qword [rbx + 0x1a8]
mov rcx, rbx
call fcn.140022d20
mov ecx, eax
mov rax, qword [rbp + 0x67]
sub qword [rsi + 0x270], rax
add qword [rbx + 0x1a8], rax
mov eax, ecx
jmp 0x140034107
mov eax, 0x1b
jmp 0x140034107
lea rdx, str.CONNECT_response_too_large_
mov rcx, rbx
call fcn.140022df0
mov eax, 0x38
jmp 0x140034107
mov rcx, qword [rbx + 0x198]
call qword [fcn.140093584]
mov edx, 2
mov qword [rbx + 0x198], 0
mov rcx, r13
call fcn.140023990
mov dword [rsi + 0x288], 0
cmp byte [r13 + 0x3d0], 0
jne 0x140034105
lea rcx, [rsi + 0x230]
call fcn.140018e10
mov r8d, dword [rbx + 0x158]
lea rdx, str.Received_HTTP_code__d_from_proxy_after_CONNECT
mov rcx, rbx
call fcn.140022df0
mov eax, 0x38
jmp 0x140034107
mov dword [rsi + 0x288], 2
mov rcx, qword [rbx + 0x1260]
call qword [fcn.140093584]
mov qword [rbx + 0x1260], 0
lea rdx, str.Proxy_replied__d_to_CONNECT_request
mov r8d, dword [rbx + 0x133c]
mov rcx, rbx
mov word [rbx + 0xe54], 1
call fcn.140022ed0
mov byte [rbx + 0x1c3], 0
lea rcx, [rsi + 0x230]
mov byte [r13 + 0x3dd], 0
call fcn.140018e10
xor eax, eax
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, 0x2a
jmp 0x140034107
lea rdx, str.Proxy_CONNECT_aborted_due_to_timeout
mov rcx, rbx
call fcn.140022df0
mov eax, 0x1c
jmp 0x140034107