Function at 0x1400ecf50
Capabilities:
Check http status code

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
mov r14d, r9d
mov r13, r8
mov r15d, edx
mov rsi, rcx
mov rax, qword [0x1402b4040]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov rbx, qword [rcx + 0xb08]
movsxd r12, edx
test rbx, rbx
je 0x1400ed025
mov dword [rsp + 0xbc], 0
lea rax, [rsi + r12*8]
add rax, 0x4c0
cmp dword [rbx + 0x4020], 2
jne 0x1400ed16b
mov rax, qword [rsi + 0xb08]
xor r12d, r12d
test rax, rax
je 0x1400ecfce
cmp dword [rax + 0x4020], 2
jne 0x1400ecfee
mov rax, qword [rsi + 0xb08]
mov dword [rax + 0x4020], 2
mov rcx, qword [rsi]
lea rdx, str.CONNECT_phase_completed__n
call fcn.1400b11f0
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.140192360
mov eax, r12d
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r12d, Ordinal_46
jmp 0x1400ecfce
mov r12d, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1400ecfee
mov rax, qword [fcn.14018e1d0]
mov ecx, 1
mov edx, 0x4028
call qword [0x1402a4f40]
test rax, rax
je 0x1400ed01d
mov rdi, rax
mov rcx, qword [rsi]
lea rdx, str.allocate_connect_buffer__n
call fcn.1400b11f0
mov qword [rsi + 0xb08], rdi
xor eax, eax
mov dword [rdi + 0x4020], eax
mov dword [rdi + 0x4004], 1
mov qword [rdi + 0x4008], rdi
mov qword [rdi + 0x4010], rdi
mov qword [rdi + 0x4018], 0
mov byte [rdi + 0x4025], 0
mov rbx, qword [rsi + 0xb08]
mov dword [rsp + 0xbc], eax
test rbx, rbx
jne 0x1400ecf9f
jmp 0x1400ecfb6
lea rdx, str.CONNECT_response_too_large_
mov rcx, rdi
call fcn.1400b14f0
mov r12d, 0x38
jmp 0x1400ecfce
mov r12d, eax
jmp 0x1400ecfce
mov r12d, eax
jmp 0x1400ed0de
mov r12d, eax
mov qword [rsp + 0xb0], 0
lea rdx, str.Failed_sending_CONNECT_to_proxy
mov rcx, rdi
call fcn.1400b14f0
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
je 0x1400ecfce
mov rax, qword [fcn.14018e130]
mov rcx, qword [rdi]
call qword [0x1402a4f40]
mov rax, qword [fcn.14018e130]
mov rcx, rdi
call qword [0x1402a4f40]
jmp 0x1400ecfce
mov r12d, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1400ecfce
mov r12d, ebp
jmp 0x1400ed0ed
lea rcx, str.Host:__s_r_n
mov rdx, r13
call fcn.1400bc7d0
mov r14, rax
test rax, rax
jne 0x1400ed34e
mov rax, qword [fcn.14018e130]
mov rcx, r13
call qword [0x1402a4f40]
jmp 0x1400ed0ed
mov al, byte [rsi + 0x65e]
jmp 0x1400ed2ee
mov rdi, qword [rsi]
mov qword [rsp + 0x78], rax
mov rax, qword [rax]
mov qword [rsp + 0x80], rax
movabs rbp, 0xaaaaaaaaaaaaaaaa
mov byte [rsi + 0x66b], 0
lea rax, [rdi + 0x1618]
mov qword [rsp + 0x90], rax
lea rax, [rbx + 0x4000]
mov qword [rsp + 0x88], rax
lea rax, [rdi + 0x178]
mov qword [rsp + 0x50], rax
lea rax, [rbx + 0x4018]
mov qword [rsp + 0x70], rax
mov rax, r12
shl rax, 5
add rax, rsi
add rax, 0x508
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x60], r12
cmp dword [rbx + 0x4020], 0
jne 0x1400ed4aa
mov qword [rsp + 0xb0], rbp
mov rcx, rdi
lea rdx, str.Establish_HTTP_proxy_tunnel_to__s:_d_n
mov r8, r13
mov r9d, r14d
call fcn.1400b11f0
mov rax, qword [fcn.14018e130]
mov rcx, qword [rdi + 0x1c8]
call qword [0x1402a4f40]
mov qword [rdi + 0x1c8], 0
mov rax, qword [fcn.14018e1d0]
mov ecx, 1
mov edx, Ordinal_26
call qword [0x1402a4f40]
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x1400ed123
mov dword [rsp + 0x5c], r15d
lea rcx, str._s:_d
mov rdx, r13
mov dword [rsp + 0x4c], r14d
mov r8d, r14d
call fcn.1400bc7d0
mov r12d, reloc.WLDAP32.dll_Ordinal_27
test rax, rax
je 0x1400ed0ed
mov r14, rax
mov rcx, rsi
lea rdx, str.CONNECT
mov r8, rax
mov r9b, 1
call fcn.1400d3550
mov ebp, eax
mov rax, qword [fcn.14018e130]
mov rcx, r14
call qword [0x1402a4f40]
test ebp, ebp
jne 0x1400ed12e
cmp dword [rsi + 0x3dc], 1
lea rbp, [0x1402967c4]
lea rax, [0x140286f30]
cmove rbp, rax
cmp qword [rsi + 0x340], r13
je 0x1400ed160
mov rcx, r13
mov edx, 0x3a
call fcn.140190b2c
test rax, rax
setne al
mov ecx, dword [rsp + 0x4c]
lea rdx, [0x14027579b]
test al, al
mov r9, rdx
lea rax, [0x1402759d4]
cmovne r9, rax
lea rax, [0x1402772df]
cmovne rdx, rax
mov dword [rsp + 0x20], ecx
lea rcx, str._s_s_s:_d
mov r8, r13
call fcn.1400bc7d0
test rax, rax
je 0x1400ed0ed
mov r13, rax
mov rcx, rsi
lea rdx, str.Host
call fcn.1400d2e40
test rax, rax
je 0x1400ed133
xor r14d, r14d
mov rcx, rsi
lea rdx, str.Proxy_Connection
call fcn.1400d2e40
test rax, rax
lea r15, [0x14027579b]
mov r12, r15
lea rax, str.Proxy_Connection:_Keep_Alive_r_n
cmove r12, rax
mov rcx, rsi
lea rdx, str.User_Agent
call fcn.1400d2e40
mov rcx, r15
test rax, rax
jne 0x1400ed3a0
cmp qword [rdi + 0xd08], 0
mov rcx, r15
je 0x1400ed3a0
mov rcx, qword [rsi + 0x6e0]
mov rax, qword [rsi + 0x6d8]
test rax, rax
cmove rax, r15
test r14, r14
mov rdx, r14
cmove rdx, r15
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r15, [rsp + 0xb0]
mov rcx, r15
lea rdx, str.CONNECT__s_HTTP__s_r_n_s_s_s_s
mov r8, r13
mov r9, rbp
call fcn.1400d42e0
mov r12d, eax
test r14, r14
je 0x1400ed401
mov rax, qword [fcn.14018e130]
mov rcx, r14
call qword [0x1402a4f40]
mov rax, qword [fcn.14018e130]
mov rcx, r13
call qword [0x1402a4f40]
test r12d, r12d
movabs rbp, 0xaaaaaaaaaaaaaaaa
jne 0x1400ed0d2
mov r8, qword [rsp + 0xb0]
mov rcx, rsi
mov dl, 1
call fcn.1400d45d0
test eax, eax
jne 0x1400ed0cf
mov rcx, r15
lea rdx, [0x140275784]
call fcn.1400d42e0
test eax, eax
jne 0x1400ed0cf
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x20], eax
mov rcx, r15
mov rdx, rsi
mov r8, qword [rsp + 0x90]
xor r9d, r9d
call fcn.1400d3ec0
mov qword [rsp + 0xb0], 0
test eax, eax
jne 0x1400ed0ca
mov dword [rbx + 0x4020], 1
mov dword [rbx + 0x4000], 0
mov r14d, dword [rsp + 0x4c]
mov r15d, dword [rsp + 0x5c]
mov r12, qword [rsp + 0x60]
mov rcx, rdi
xor edx, edx
mov r8b, 1
call fcn.1400b6410
test rax, rax
jle 0x1400edc5d
mov rax, qword [str.x___]
mov rax, qword [rax + 0x48]
mov rcx, rsi
mov edx, r15d
call qword [0x1402a4f40]
test al, al
jne 0x1400ed530
mov rax, qword [rsp + 0x68]
cmp qword [rax], 0
je 0x1400ed501
mov rax, qword [rsp + 0x68]
cmp qword [rax + 8], 0
je 0x1400ed501
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 0x10]
cmp rax, qword [rcx + 0x18]
ja 0x1400ed530
mov rcx, qword [rsi + r12*8 + 0x4c0]
mov rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r9d, r9d
call fcn.1400cf1c0
test eax, eax
jle 0x1400ecfb6
and eax, 1
je 0x1400ecfb6
cmp dword [rbx + 0x4004], 0
mov r13, qword [rsp + 0x80]
jne 0x1400ed783
xor r13d, r13d
mov rcx, rsi
call fcn.1400ba260
test eax, eax
jne 0x1400ed015
test r13d, r13d
jne 0x1400ed0b7
mov eax, dword [rdi + 0x15fc]
mov ecx, 0xffffff38
add eax, ecx
cmp eax, 0x64
mov r13, qword [rsp + 0x98]
jb 0x1400ed5a0
mov rcx, rsi
call fcn.1400d2fc0
test eax, eax
jne 0x1400ed0c2
cmp byte [rsi + 0x654], 1
mov r12, qword [rsp + 0x60]
jne 0x1400ed5a0
mov byte [rbx + 0x4025], 1
mov rax, qword [rdi + 0x1c8]
cmp byte [rbx + 0x4025], 1
je 0x1400edc77
test rax, rax
je 0x1400ed60d
cmp dword [rbx + 0x4020], 2
jne 0x1400ed604
mov rax, qword [rsi + 0xb08]
mov dword [rax + 0x4020], 0
mov dword [rax + 0x4004], 1
mov qword [rax + 0x4008], rax
mov qword [rax + 0x4010], rax
mov qword [rax + 0x4018], 0
mov byte [rax + 0x4025], 0
mov rax, qword [rdi + 0x1c8]
test rax, rax
jne 0x1400ed1e7
mov eax, 0xffffff38
add eax, dword [rdi + 0x15fc]
cmp eax, 0x64
jae 0x1400edc9c
mov dword [rbx + 0x4020], 2
mov rax, qword [fcn.14018e130]
mov rcx, qword [rsi + 0x6d8]
call qword [0x1402a4f40]
mov qword [rsi + 0x6d8], 0
mov word [rdi + 0x1224], 1
mov r8d, dword [rdi + 0x15fc]
lea rdx, str.Proxy_replied__d_to_CONNECT_request_n
mov rcx, rdi
call fcn.1400b11f0
xor eax, eax
mov byte [rdi + 0x65b], al
mov byte [rsi + 0x665], al
jmp 0x1400ecfb6
cmp dword [rdi + 0x6b0], 0
je 0x1400ed6a9
cmp dword [rdi + 0x1220], 0
je 0x1400ed6a9
mov byte [rsi + 0x66b], 1
mov rcx, rdi
lea rdx, str.Proxy_CONNECT_connection_closed_n
call fcn.1400b11f0
xor r13d, r13d
jmp 0x1400ed6be
mov rcx, rdi
lea rdx, str.Proxy_CONNECT_aborted
call fcn.1400b14f0
mov r13d, 1
mov dword [rbx + 0x4004], 0
jmp 0x1400ed548
mov dword [rbx + 0x4004], 0
mov dword [rbx + 0x4020], 2
jmp 0x1400ed545
mov dword [rsp + 0xac], 0xaaaaaaaa
mov qword [rsp + 0xa0], 0
lea rax, [rsp + 0xac]
mov qword [rsp + 0x20], rax
mov r8d, 1
mov rcx, rsi
mov rdx, rbx
lea r9, [rsp + 0xa0]
call fcn.1400c5720
cmp eax, 0xffffffff
jne 0x1400ed776
mov rcx, rdi
lea rdx, str.chunk_reading_DONE_n
call fcn.1400b11f0
mov dword [rbx + 0x4004], 0
mov dword [rbx + 0x4020], 2
jmp 0x1400ed776
mov qword [rbx + 0x4010], rbx
mov rax, qword [rbx + 0x4018]
test rax, rax
je 0x1400ed6e6
lea rcx, [rax - 1]
mov rdx, qword [rsp + 0x70]
mov qword [rdx], rcx
cmp rax, 1
jle 0x1400ed6cd
cmp dword [rbx + 0x4004], 0
je 0x1400ed545
mov qword [rsp + 0xb0], rbp
mov r8, qword [rbx + 0x4010]
cmp r8, qword [rsp + 0x88]
jae 0x1400ed0a8
mov dword [rsp + 0xa0], 0x38
xor edx, edx
cmp qword [rsi + 0x4c8], r13
mov rax, qword [rsi]
sete dl
mov qword [rsp + 0xb0], 0
xor r9d, r9d
cmp dword [rax + 0xb70], 0
setne r9b
mov rax, qword [rsi + rdx*8 + 0x4e8]
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call qword [0x1402a4f40]
test rax, rax
js 0x1400ed857
add qword [rsp + 0xb0], rax
mov rcx, rsi
call fcn.1400ba260
test eax, eax
jne 0x1400ed015
cmp qword [rsp + 0xb0], 0
jle 0x1400ed67c
cmp dword [rbx + 0x4004], 2
jge 0x1400ed74d
movsxd r9, dword [rbx + 0x4000]
inc r9
mov dword [rbx + 0x4000], r9d
mov rax, qword [rbx + 0x4010]
cmp byte [rax], 0xa
je 0x1400ed894
inc rax
mov qword [rbx + 0x4010], rax
jmp 0x1400ed776
mov ebp, dword [rsp + 0xa0]
cmp ebp, 0x51
je 0x1400ecfb6
mov rcx, rsi
call fcn.1400ba260
test eax, eax
jne 0x1400ed015
test ebp, ebp
movabs rbp, 0xaaaaaaaaaaaaaaaa
je 0x1400ed80f
mov dword [rbx + 0x4004], 0
jmp 0x1400ed545
cmp byte [rdi + 0xf1e], 1
jne 0x1400ed8b8
mov r8, qword [rbx + 0x4008]
mov rcx, rdi
mov edx, 1
call fcn.1400b13f0
mov r9d, dword [rbx + 0x4000]
cmp byte [rdi + 0xf32], 0
jne 0x1400ed8f5
movzx edx, byte [rdi + 0xf19]
or edx, 2
movsxd r9, r9d
mov r8, qword [rbx + 0x4008]
mov rcx, rsi
call fcn.1400b1c40
test eax, eax
jne 0x1400ed0c2
mov rax, qword [rsp + 0x88]
mov r9d, dword [rax]
mov r12, qword [rsp + 0x60]
movsxd rax, r9d
add qword [rdi + 0x1610], rax
movsxd rax, dword [rbx + 0x4000]
add qword [rdi + 0x108], rax
mov rax, qword [rbx + 0x4008]
movzx ecx, byte [rax]
cmp ecx, 0xd
je 0x1400ed921
cmp ecx, 0xa
jne 0x1400ed987
mov qword [rbx + 0x4010], rbx
mov rax, qword [rsp + 0x50]
cmp dword [rax], 0x197
jne 0x1400ed93e
cmp byte [rdi + 0x1599], 0
je 0x1400ed95c
mov dword [rbx + 0x4004], 0
mov rax, qword [rsp + 0x70]
cmp qword [rax], 0
jne 0x1400ed776
jmp 0x1400ed741
mov dword [rbx + 0x4004], 2
mov r8, qword [rbx + 0x4018]
test r8, r8
je 0x1400edb21
mov rcx, rdi
lea rdx, str.Ignore__I64d_bytes_of_response_body_n
call fcn.1400b11f0
jmp 0x1400ed948
movsxd rcx, dword [rbx + 0x4000]
mov byte [rax + rcx], 0
mov rdx, qword [rbx + 0x4008]
mov r8d, 0x11
lea rcx, str.WWW_Authenticate:
call fcn.1400a9e50
test eax, eax
je 0x1400eda47
mov rax, qword [rsp + 0x50]
cmp dword [rax], 0x191
jne 0x1400eda47
xor ebp, ebp
mov r13d, r15d
mov r15d, r14d
mov rcx, qword [rbx + 0x4008]
call fcn.1400d2ec0
test rax, rax
je 0x1400ed123
mov r14, rax
mov rcx, rsi
mov edx, ebp
mov r8, rax
call fcn.1400d3a90
mov r12d, eax
mov rax, qword [fcn.14018e130]
mov rcx, r14
call qword [0x1402a4f40]
test r12d, r12d
mov r14d, r15d
mov r15d, r13d
mov r13, qword [rsp + 0x80]
movabs rbp, 0xaaaaaaaaaaaaaaaa
jne 0x1400ecfce
mov dword [rbx + 0x4000], 0
mov qword [rbx + 0x4010], rbx
mov qword [rbx + 0x4008], rbx
mov r12, qword [rsp + 0x60]
jmp 0x1400ed776
mov rdx, qword [rbx + 0x4008]
mov r8d, 0x13
lea rcx, str.Proxy_authenticate:
call fcn.1400a9e50
test eax, eax
je 0x1400eda78
mov bpl, 1
mov rax, qword [rsp + 0x50]
cmp dword [rax], 0x197
je 0x1400ed9c6
mov rdx, qword [rbx + 0x4008]
mov r8d, 0xf
lea rcx, str.Content_Length:
call fcn.1400a9e50
test eax, eax
je 0x1400edae9
mov rax, qword [rsp + 0x50]
mov r8d, dword [rax]
lea eax, [r8 - 0xc8]
cmp eax, 0x63
movabs rbp, 0xaaaaaaaaaaaaaaaa
ja 0x1400edac7
mov rcx, rdi
lea rdx, str.Ignoring_Content_Length_in_CONNECT__03d_response_n
call fcn.1400b11f0
jmp 0x1400eda25
mov rcx, qword [rbx + 0x4008]
add rcx, 0xf
xor edx, edx
mov r8d, 0xa
mov r9, qword [rsp + 0x70]
call fcn.1400c5dd0
jmp 0x1400eda25
mov rcx, qword [rbx + 0x4008]
lea rdx, str.Connection:
lea r8, str.close
call fcn.1400d44e0
test al, al
movabs rbp, 0xaaaaaaaaaaaaaaaa
je 0x1400edbbd
mov byte [rbx + 0x4025], 1
jmp 0x1400eda25
cmp byte [rbx + 0x4024], 1
jne 0x1400ed93e
mov dword [rsp + 0xa0], 0xaaaaaaaa
mov rcx, rdi
lea rdx, str.Ignore_chunked_response_body_n
call fcn.1400b11f0
mov byte [rdi + 0x65b], 1
mov rdx, qword [rbx + 0x4008]
cmp byte [rdx + 1], 0xa
jne 0x1400edb66
inc rdx
mov qword [rbx + 0x4008], rdx
inc rdx
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
mov r8d, 1
mov rcx, rsi
lea r9, [rsp + 0xb0]
call fcn.1400c5720
cmp eax, 0xffffffff
jne 0x1400ed948
mov rcx, rdi
lea rdx, str.chunk_reading_DONE_n
call fcn.1400b11f0
mov dword [rbx + 0x4004], 0
mov dword [rbx + 0x4020], 2
jmp 0x1400ed948
mov rdx, qword [rbx + 0x4008]
mov r8d, 0x12
lea rcx, str.Transfer_Encoding:
call fcn.1400a9e50
test eax, eax
je 0x1400edc01
mov rax, qword [rsp + 0x50]
mov r8d, dword [rax]
lea eax, [r8 - 0xc8]
cmp eax, 0x63
ja 0x1400edd6c
mov rcx, rdi
lea rdx, str.Ignoring_Transfer_Encoding_in_CONNECT__03d_response_n
jmp 0x1400edabd
mov rcx, qword [rbx + 0x4008]
lea rdx, str.Proxy_Connection:
lea r8, str.close
call fcn.1400d44e0
test al, al
jne 0x1400edb15
mov rcx, qword [rbx + 0x4008]
lea rdx, str.HTTP_1._d__d
lea r8, [rsp + 0xbc]
mov r9, qword [rsp + 0x50]
call fcn.140031720
cmp eax, 2
jne 0x1400eda25
mov eax, dword [rdi + 0x178]
mov dword [rdi + 0x15fc], eax
jmp 0x1400eda25
lea rdx, str.Proxy_CONNECT_aborted_due_to_timeout
mov rcx, rdi
call fcn.1400b14f0
mov r12d, 0x1c
jmp 0x1400ecfce
test rax, rax
je 0x1400ed60d
mov r14, qword [rsp + 0x78]
mov rdx, qword [r14]
mov rcx, rsi
call fcn.1400b7490
mov qword [r14], 0xffffffffffffffff
jmp 0x1400ed60d
mov rcx, qword [rdi + 0x1c8]
test rcx, rcx
setne al
and al, byte [rbx + 0x4025]
cmp al, 1
je 0x1400edd04
mov rax, qword [fcn.14018e130]
call qword [0x1402a4f40]
mov qword [rdi + 0x1c8], 0
mov rax, qword [rsi + 0x698]
test byte [rax + 0x81], 2
jne 0x1400edceb
cmp byte [rsi + 0x654], 0
jne 0x1400edceb
mov byte [rsi + 0x654], 1
mov r14, qword [rsp + 0x78]
mov rdx, qword [r14]
mov rcx, rsi
call fcn.1400b7490
mov qword [r14], 0xffffffffffffffff
jmp 0x1400edd3a
mov byte [rsi + 0x66b], 1
lea rdx, str.Connect_me_again_please_n
mov rcx, rdi
call fcn.1400b11f0
mov rax, qword [rsi + 0xb08]
mov dword [rax + 0x4020], 2
mov rcx, qword [rsi]
lea rdx, str.CONNECT_phase_completed__n
call fcn.1400b11f0
mov dword [rbx + 0x4020], 0
cmp byte [rsi + 0x66b], 0
jne 0x1400ecfb6
mov r8d, dword [rdi + 0x178]
lea rdx, str.Received_HTTP_code__d_from_proxy_after_CONNECT
mov rcx, rdi
call fcn.1400b14f0
jmp 0x1400ed0b7
mov rcx, qword [rbx + 0x4008]
lea rdx, str.Transfer_Encoding:
lea r8, str.chunked
call fcn.1400d44e0
test al, al
je 0x1400eda25
mov rcx, rdi
lea rdx, str.CONNECT_responded_chunked_n
call fcn.1400b11f0
mov byte [rbx + 0x4024], 1
xor eax, eax
mov qword [rsi + 0x2a4], rax
mov qword [rsi + 0x2b8], rax
jmp 0x1400eda25