Function at 0x14003efc0
Capabilities:
Check http status code

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa8
mov rdi, qword [rcx + 0xbb8]
mov rbp, qword [rcx]
movsxd r12, edx
mov rbx, qword [rcx + r12*8 + 0x4c0]
xor r14d, r14d
mov r13d, r9d
mov rsi, r8
mov r15, rcx
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x48], r14d
test rdi, rdi
je 0x14003fa27
cmp dword [rdi + 0x30], 2
je 0x14003fa27
mov dword [rcx + 0x6a0], r14d
nop dword [rax + rax]
cmp dword [rdi + 0x30], 0
jne 0x14003f2cd
lea rdx, str.Establish_HTTP_proxy_tunnel_to__s:_d_n
mov r9d, r13d
mov r8, rsi
mov rcx, rbp
call fcn.14000fe70
mov rcx, qword [rbp + 0x198]
call qword [fcn.14017eed8]
lea rcx, str._s:_d
mov r8d, r13d
mov rdx, rsi
mov qword [rbp + 0x198], r14
call fcn.14001ba40
mov rsi, rax
test rax, rax
je 0x14003f89d
lea rcx, [rsp + 0x78]
mov edx, 0x20000
call fcn.140014ad0
lea rdx, [0x1401b7b00]
mov r9d, 1
mov r8, rsi
mov rcx, r15
call fcn.140034750
mov rcx, rsi
mov ebx, eax
call qword [fcn.14017eed8]
test ebx, ebx
jne 0x14003f2af
cmp dword [r15 + 0x3dc], 1
mov rbx, qword [rsp + 0x100]
mov ecx, dword [r15 + 0x6c0]
mov r12, r14
lea rax, [0x1401b6388]
lea r14, [0x1401b638c]
lea rsi, [0x1401adb39]
cmove r14, rax
mov r13, rsi
cmp rbx, qword [r15 + 0x340]
je 0x14003f10f
mov edx, Ordinal_60
mov rcx, rbx
call fcn.1401755f0
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
lea rax, [0x1401afe88]
mov r9, rsi
cmovne r9, rax
lea rax, [0x1401afe84]
mov rdx, rsi
cmovne rdx, rax
mov eax, dword [rsp + 0x108]
lea rcx, str._s_s_s:_d
mov r8, rbx
mov dword [rsp + 0x20], eax
call fcn.14001ba40
mov rsi, rax
test rax, rax
je 0x14003f893
lea rdx, str.Host
mov rcx, r15
call fcn.140034000
test rax, rax
jne 0x14003f182
lea rcx, str.Host:__s_r_n
mov rdx, rsi
call fcn.14001ba40
mov r12, rax
test rax, rax
je 0x14003f88a
lea rdx, str.Proxy_Connection
mov rcx, r15
call fcn.140034000
lea rbx, str.Proxy_Connection:_Keep_Alive_r_n
lea rdx, str.User_Agent
test rax, rax
lea rax, [0x1401adb39]
mov rcx, r15
cmovne rbx, rax
call fcn.140034000
test rax, rax
jne 0x14003f1ca
cmp qword [rbp + 0xd80], rax
je 0x14003f1ca
mov r13, qword [rbp + 0x17c8]
mov rax, qword [rbp + 0x17c0]
lea rdx, [0x1401adb39]
mov qword [rsp + 0x38], rbx
test rax, rax
mov rcx, rdx
mov qword [rsp + 0x30], r13
cmovne rcx, rax
mov rax, rdx
test r12, r12
mov qword [rsp + 0x28], rcx
cmovne rax, r12
lea rcx, [rsp + 0x78]
lea rdx, str.CONNECT__s_HTTP__s_r_n_s_s_s_s
mov r9, r14
mov r8, rsi
mov qword [rsp + 0x20], rax
call fcn.140014c80
mov ebx, eax
test r12, r12
je 0x14003f227
mov rcx, r12
call qword [fcn.14017eed8]
mov rcx, rsi
call qword [fcn.14017eed8]
test ebx, ebx
jne 0x14003f28d
lea r8, [rsp + 0x78]
lea edx, [rbx + 1]
mov rcx, r15
call fcn.1400353f0
mov ebx, eax
test eax, eax
jne 0x14003f28d
lea rdx, [0x1401b0970]
lea rcx, [rsp + 0x78]
call fcn.140014c30
mov r12d, dword [rsp + 0xf8]
mov ebx, eax
test eax, eax
jne 0x14003f295
lea r8, [rbp + 0x18c0]
lea rcx, [rsp + 0x78]
xor r9d, r9d
mov rdx, r15
mov dword [rsp + 0x20], r12d
call fcn.140034ca0
mov ebx, eax
test eax, eax
je 0x14003f2a4
jmp 0x14003f295
mov r12d, dword [rsp + 0xf8]
lea rdx, str.Failed_sending_CONNECT_to_proxy
mov rcx, rbp
call fcn.14000ffd0
mov r13d, dword [rsp + 0x108]
xor r14d, r14d
lea rcx, [rsp + 0x78]
call fcn.140014af0
test ebx, ebx
jne 0x14003f8a7
mov rbx, qword [rsp + 0x40]
mov dword [rdi + 0x30], 1
xor edx, edx
mov rcx, rbp
lea r8d, [rdx + 1]
call fcn.140017530
test rax, rax
jle 0x14003fa3d
mov edx, r12d
mov rcx, r15
call fcn.140018650
test eax, eax
je 0x14003fa27
cmp dword [rdi + 0x20], 0
mov r12d, r14d
je 0x14003f7c5
nop word [rax + rax]
lea rax, [rsp + 0x50]
lea r8, [rsp + 0xf0]
mov r9d, 1
mov rdx, rbx
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.14000fd10
mov ebx, eax
cmp eax, 0x51
je 0x14003fa27
mov rcx, r15
call fcn.1400209b0
test eax, eax
jne 0x14003f8c7
test ebx, ebx
jne 0x14003f7c1
cmp qword [rsp + 0x50], 0
jle 0x14003f77e
cmp dword [rdi + 0x20], 2
jne 0x14003f3d8
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x14003f38d
dec rax
mov qword [rdi + 0x28], rax
test rax, rax
jg 0x14003f76e
mov dword [rdi + 0x30], 2
jmp 0x14003f7c1
lea rax, [rsp + 0x70]
lea r9, [rsp + 0x68]
lea rdx, [rsp + 0xf0]
mov r8d, 1
mov rcx, r15
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x20], rax
call fcn.140043c30
cmp eax, 0xffffffff
jne 0x14003f76e
lea rdx, str.chunk_reading_DONE_n
mov rcx, rbp
call fcn.14000fe70
mov dword [rdi + 0x20], r14d
jmp 0x14003f767
lea rdx, [rsp + 0xf0]
mov r8d, 1
mov rcx, rdi
call fcn.140014c20
test eax, eax
jne 0x14003f8ae
cmp byte [rsp + 0xf0], 0xa
jne 0x14003f76e
mov rcx, rdi
call fcn.140014cb0
mov rcx, rdi
mov rbx, rax
call fcn.140014cc0
mov r8, rbx
mov edx, 1
mov rcx, rbp
mov r9, rax
mov rsi, rax
call fcn.14000fda0
cmp dword [rbp + 0x1080], 0
jne 0x14003f460
cmp dword [rbp + 0x101c], 0
mov edx, 2
mov eax, 3
mov r9, rsi
mov r8, rbx
mov rcx, r15
cmovne edx, eax
call fcn.1400103e0
test eax, eax
jne 0x14003fa29
movsxd rax, esi
add qword [rbp + 0x18b8], rax
movzx eax, byte [rbx]
cmp al, 0xd
je 0x14003f6b8
cmp al, 0xa
je 0x14003f6b8
lea rcx, str.WWW_Authenticate:
mov r8d, reloc.WSOCK32.dll_recvfrom
mov rdx, rbx
call fcn.140019fe0
test eax, eax
je 0x14003f4a3
mov eax, dword [rbp + 0x158]
cmp eax, 0x191
je 0x14003f4c9
lea rcx, str.Proxy_authenticate:
mov r8d, reloc.WSOCK32.dll_send
mov rdx, rbx
call fcn.140019fe0
test eax, eax
je 0x14003f510
mov eax, dword [rbp + 0x158]
cmp eax, 0x197
jne 0x14003f510
cmp eax, 0x197
mov rcx, rbx
mov esi, r14d
sete sil
call fcn.140034090
mov rbx, rax
test rax, rax
je 0x14003f89d
mov r8, rax
mov edx, esi
mov rcx, r15
call fcn.1400348a0
mov rcx, rbx
mov esi, eax
call qword [fcn.14017eed8]
test esi, esi
je 0x14003f6ab
mov eax, esi
jmp 0x14003fa29
lea rcx, [0x1401b6438]
mov r8d, reloc.WSOCK32.dll_ntohs
mov rdx, rbx
call fcn.140019fe0
test eax, eax
je 0x14003f583
mov r8d, dword [rbp + 0x158]
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edx, 2
jne 0x14003f563
lea rdx, str.Ignoring_Content_Length_in_CONNECT__03d_response_n
mov rcx, rbp
call fcn.14000fe70
mov rcx, rdi
call fcn.140014c00
jmp 0x14003f76e
xor edx, edx
lea r9, [rdi + 0x28]
lea rcx, [rbx + 0xf]
lea r8d, [rdx + 0xa]
call fcn.1400429a0
mov rcx, rdi
call fcn.140014c00
jmp 0x14003f76e
lea r8, [0x1401b6a88]
lea rdx, str.Connection:
mov rcx, rbx
call fcn.140034f20
test eax, eax
je 0x14003f5b1
mov rcx, rdi
mov dword [rdi + 0x38], 1
call fcn.140014c00
jmp 0x14003f76e
lea rcx, str.Transfer_Encoding:
mov r8d, reloc.WSOCK32.dll_select
mov rdx, rbx
call fcn.140019fe0
test eax, eax
je 0x14003f651
mov r8d, dword [rbp + 0x158]
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edx, 2
jne 0x14003f608
lea rdx, str.Ignoring_Transfer_Encoding_in_CONNECT__03d_response_n
mov rcx, rbp
call fcn.14000fe70
mov rcx, rdi
call fcn.140014c00
jmp 0x14003f76e
lea r8, str.chunked
lea rdx, str.Transfer_Encoding:
mov rcx, rbx
call fcn.140034f20
test eax, eax
je 0x14003f6ab
lea rdx, str.CONNECT_responded_chunked_n
mov rcx, rbp
call fcn.14000fe70
mov rcx, r15
mov dword [rdi + 0x34], 1
call fcn.140043c00
mov rcx, rdi
call fcn.140014c00
jmp 0x14003f76e
lea r8, [0x1401b6a88]
lea rdx, str.Proxy_Connection:
mov rcx, rbx
call fcn.140034f20
test eax, eax
je 0x14003f67f
mov rcx, rdi
mov dword [rdi + 0x38], 1
call fcn.140014c00
jmp 0x14003f76e
lea r9, [rbp + 0x158]
lea r8, [rsp + 0x48]
lea rdx, str.HTTP_1._d__d
mov rcx, rbx
call fcn.140089870
cmp eax, 2
jne 0x14003f6ab
mov eax, dword [rbp + 0x158]
mov dword [rbp + 0x18a4], eax
mov rcx, rdi
call fcn.140014c00
jmp 0x14003f76e
cmp dword [rbp + 0x158], 0x197
jne 0x14003f75c
cmp dword [rbp + 0x1824], 0
jne 0x14003f75c
mov r8, qword [rdi + 0x28]
mov dword [rdi + 0x20], 2
test r8, r8
je 0x14003f6f6
lea rdx, str.Ignore__I64d_bytes_of_response_body_n
mov rcx, rbp
call fcn.14000fe70
jmp 0x14003f760
cmp dword [rdi + 0x34], 0
je 0x14003f75c
lea rdx, str.Ignore_chunked_response_body_n
mov rcx, rbp
call fcn.14000fe70
lea rax, [rbx + 1]
mov dword [rbp + 0x654], 1
cmp byte [rax], 0xa
lea r9, [rsp + 0x50]
mov r8d, 1
cmove rbx, rax
lea rax, [rsp + 0x60]
mov rcx, r15
lea rdx, [rbx + 1]
mov qword [rsp + 0x20], rax
call fcn.140043c30
cmp eax, 0xffffffff
jne 0x14003f760
lea rdx, str.chunk_reading_DONE_n
mov rcx, rbp
call fcn.14000fe70
mov dword [rdi + 0x30], 2
mov dword [rdi + 0x20], r14d
cmp qword [rdi + 0x28], 0
jne 0x14003f76e
mov dword [rdi + 0x30], 2
cmp dword [rdi + 0x20], 0
je 0x14003f7c5
mov rbx, qword [rsp + 0x40]
jmp 0x14003f310
cmp dword [rbp + 0x6b8], 0
je 0x14003f7ac
cmp dword [rbp + 0x13f0], 0
je 0x14003f7ac
lea rdx, str.Proxy_CONNECT_connection_closed_n
mov rcx, rbp
mov dword [r15 + 0x6a0], 1
call fcn.14000fe70
jmp 0x14003f7c1
lea rdx, str.Proxy_CONNECT_aborted
mov rcx, rbp
mov r12d, 1
call fcn.14000ffd0
mov dword [rdi + 0x20], r14d
mov rcx, r15
call fcn.1400209b0
test eax, eax
jne 0x14003f8c7
test r12d, r12d
jne 0x14003f8bd
mov eax, 0x51eb851f
imul dword [rbp + 0x18a4]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edx, 2
je 0x14003f818
mov rcx, r15
call fcn.140037d50
test eax, eax
jne 0x14003fa29
cmp dword [r15 + 0x6a4], eax
je 0x14003f818
mov dword [rdi + 0x38], 1
cmp dword [rdi + 0x38], 0
je 0x14003f82c
cmp qword [rbp + 0x198], 0
jne 0x14003f8d1
cmp qword [rbp + 0x198], 0
je 0x14003f8f4
cmp dword [rdi + 0x30], 2
jne 0x14003f862
mov rbx, qword [r15 + 0xbb8]
mov rcx, rbx
call fcn.140014c00
mov dword [rbx + 0x30], r14d
mov dword [rbx + 0x20], 1
mov qword [rbx + 0x28], r14
mov dword [rbx + 0x38], r14d
cmp qword [rbp + 0x198], 0
je 0x14003f8f4
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x100]
mov r12d, dword [rsp + 0xf8]
jmp 0x14003f030
mov rcx, rsi
call qword [fcn.14017eed8]
lea rcx, [rsp + 0x78]
call fcn.140014af0
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x14003fa29
mov eax, ebx
jmp 0x14003fa29
lea rdx, str.CONNECT_response_too_large_
mov rcx, rbp
call fcn.14000ffd0
mov eax, Ordinal_60
jmp 0x14003fa29
mov eax, Ordinal_46
jmp 0x14003fa29
mov rbx, qword [rsp + 0x58]
mov rcx, r15
mov rdx, qword [r15 + rbx*8 + 0x4c0]
call fcn.140018440
mov qword [r15 + rbx*8 + 0x4c0], 0xffffffffffffffff
jmp 0x14003f8f9
mov rbx, qword [rsp + 0x58]
mov eax, 0x51eb851f
imul dword [rbp + 0x18a4]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edx, 2
je 0x14003f9d5
cmp dword [rdi + 0x38], 0
je 0x14003f965
cmp qword [rbp + 0x198], 0
je 0x14003f965
lea rdx, str.Connect_me_again_please_n
mov rcx, rbp
mov dword [r15 + 0x6a0], 1
call fcn.14000fe70
mov rcx, qword [r15 + 0xbb8]
mov dword [rcx + 0x30], 2
call fcn.140014af0
mov rcx, qword [r15]
lea rdx, str.CONNECT_phase_completed__n
call fcn.14000fe70
jmp 0x14003f9a2
mov rcx, qword [rbp + 0x198]
call qword [fcn.14017eed8]
mov edx, 2
mov rcx, r15
mov qword [rbp + 0x198], r14
call fcn.1400185f0
mov rdx, qword [r15 + rbx*8 + 0x4c0]
mov rcx, r15
call fcn.140018440
mov qword [r15 + rbx*8 + 0x4c0], 0xffffffffffffffff
mov dword [rdi + 0x30], r14d
cmp dword [r15 + 0x6a0], 0
jne 0x14003fa27
mov rcx, rdi
call fcn.140014af0
mov r8d, dword [rbp + 0x158]
lea rdx, str.Received_HTTP_code__d_from_proxy_after_CONNECT
mov rcx, rbp
call fcn.14000ffd0
mov eax, Ordinal_60
jmp 0x14003fa29
mov dword [rdi + 0x30], 2
mov rcx, qword [rbp + 0x17c0]
call qword [fcn.14017eed8]
mov r8d, dword [rbp + 0x18a4]
lea rdx, str.Proxy_replied__d_to_CONNECT_request_n
mov rcx, rbp
mov qword [rbp + 0x17c0], r14
mov qword [rbp + 0x13f4], 1
call fcn.14000fe70
mov dword [rbp + 0x654], r14d
mov rcx, rdi
mov dword [r15 + 0x6d8], r14d
call fcn.140014af0
xor eax, eax
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.Proxy_CONNECT_aborted_due_to_timeout
mov rcx, rbp
call fcn.14000ffd0
mov eax, Ordinal_30
jmp 0x14003fa29