Function at 0x18009e3c0
Capabilities:
Check http status code

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
cmp byte [rcx + 0x1c4], 0
mov rsi, r8
mov r14, rdx
mov rbx, rcx
jne 0x18009e4a8
cmp byte [rcx + 0xb2f], 0
jne 0x18009e4a8
mov r8d, reloc.WS2_32.dll_ntohs
lea rcx, str.Content_Length:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009e4a8
xor edx, edx
lea rcx, [rsi + 0xf]
lea r9, [rsp + 0x60]
lea r8d, [rdx + 0xa]
call fcn.18009b150
test eax, eax
jne 0x18009e444
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0xe8], rax
mov qword [rbx + 0xf0], rax
xor eax, eax
jmp 0x18009ee63
cmp eax, 1
jne 0x18009e48f
cmp qword [rbx + 0x758], 0
je 0x18009e46c
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rbx
call fcn.18008ebf0
mov eax, 0x3f
jmp 0x18009ee63
mov edx, 2
mov rcx, r14
call fcn.18008f790
lea rdx, str.Overflow_Content_Length:_value_
mov rcx, rbx
call fcn.18008ed60
xor eax, eax
jmp 0x18009ee63
lea rdx, str.Invalid_Content_Length:_value
mov rcx, rbx
call fcn.18008ebf0
mov eax, 8
jmp 0x18009ee63
mov r8d, reloc.WS2_32.dll_listen
lea rcx, str.Content_Type:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009e4f9
mov rcx, rsi
call fcn.18009d170
mov rdi, rax
test rax, rax
je 0x18009ed65
cmp byte [rax], 0
je 0x18009ecbb
mov rcx, qword [rbx + 0x1330]
call qword [fcn.18018f81c]
xor eax, eax
mov qword [rbx + 0x1330], rdi
jmp 0x18009ee63
cmp byte [r14 + 0x1b0], 0xa
jne 0x18009e5c9
cmp byte [r14 + 0x3cc], 0
je 0x18009e5c9
mov r8d, select
lea rdx, str.Proxy_Connection:
mov rcx, rsi
call fcn.18007e630
test eax, eax
je 0x18009e5c9
movzx eax, byte [rsi + 0x11]
lea rdi, [rsi + 0x11]
test al, al
je 0x18009e557
nop
movzx ecx, al
call fcn.1800920a0
test eax, eax
je 0x18009e557
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18009e540
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e58c
lea edx, [rax + 0xa]
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e58c
xor edx, edx
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
sub rbp, rdi
cmp rbp, 0xa
jb 0x18009e5c9
nop word [rax + rax]
mov r8d, 0xa
lea rdx, str.keep_alive
mov rcx, rdi
call fcn.18007e630
test eax, eax
jne 0x18009e872
dec rbp
inc rdi
cmp rbp, 0xa
jae 0x18009e5a0
cmp byte [r14 + 0x1b0], 0xb
jne 0x18009e699
cmp byte [r14 + 0x3cc], 0
je 0x18009e699
mov r8d, select
lea rdx, str.Proxy_Connection:
mov rcx, rsi
call fcn.18007e630
test eax, eax
je 0x18009e699
movzx eax, byte [rsi + 0x11]
lea rdi, [rsi + 0x11]
test al, al
je 0x18009e627
nop
movzx ecx, al
call fcn.1800920a0
test eax, eax
je 0x18009e627
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18009e610
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e65c
lea edx, [rax + 0xa]
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e65c
xor edx, edx
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
sub rbp, rdi
cmp rbp, 5
jb 0x18009e699
nop word [rax + rax]
mov r8d, 5
lea rdx, str.close
mov rcx, rdi
call fcn.18007e630
test eax, eax
jne 0x18009e892
dec rbp
inc rdi
cmp rbp, 5
jae 0x18009e670
cmp byte [r14 + 0x1b0], 0xa
jne 0x18009e759
mov r8d, listen
lea rdx, str.Connection:
mov rcx, rsi
call fcn.18007e630
test eax, eax
je 0x18009e759
movzx eax, byte [rsi + 0xb]
lea rdi, [rsi + 0xb]
test al, al
je 0x18009e6e7
movzx ecx, al
call fcn.1800920a0
test eax, eax
je 0x18009e6e7
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18009e6d0
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e71c
lea edx, [rax + 0xa]
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e71c
xor edx, edx
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
sub rbp, rdi
cmp rbp, 0xa
jb 0x18009e759
nop word [rax + rax]
mov r8d, 0xa
lea rdx, str.keep_alive
mov rcx, rdi
call fcn.18007e630
test eax, eax
jne 0x18009e8b5
dec rbp
inc rdi
cmp rbp, 0xa
jae 0x18009e730
mov r8d, listen
lea rdx, str.Connection:
mov rcx, rsi
call fcn.18007e630
test eax, eax
je 0x18009e809
movzx eax, byte [rsi + 0xb]
lea rdi, [rsi + 0xb]
test al, al
je 0x18009e799
movzx ecx, al
call fcn.1800920a0
test eax, eax
je 0x18009e799
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18009e782
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e7ce
lea edx, [rax + 0xa]
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
test rax, rax
jne 0x18009e7ce
xor edx, edx
mov rcx, rdi
call fcn.1801549b8
mov rbp, rax
sub rbp, rdi
cmp rbp, 5
jb 0x18009e809
nop word [rax + rax]
mov r8d, 5
lea rdx, str.close
mov rcx, rdi
call fcn.18007e630
test eax, eax
jne 0x18009e8d5
dec rbp
inc rdi
cmp rbp, 5
jae 0x18009e7e0
cmp byte [rbx + 0x1c4], 0
jne 0x18009e931
mov r8d, reloc.WS2_32.dll_select
lea rcx, str.Transfer_Encoding:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009e8e9
lea rdx, [rsi + 0x12]
mov r8d, 1
mov rcx, rbx
call fcn.180086370
test eax, eax
jne 0x18009ee63
cmp byte [rbx + 0x1c5], al
jne 0x18009ee4e
lea edx, [rax + 1]
mov rcx, r14
call fcn.18008f790
xor eax, eax
mov byte [rbx + 0x1c6], 1
jmp 0x18009ee63
xor edx, edx
mov rcx, r14
call fcn.18008f790
lea rdx, str.HTTP_1.0_proxy_connection_set_to_keep_alive_
mov rcx, rbx
call fcn.18008ed60
xor eax, eax
jmp 0x18009ee63
mov edx, 1
mov rcx, r14
call fcn.18008f790
lea rdx, str.HTTP_1.1_proxy_connection_set_close_
mov rcx, rbx
call fcn.18008ed60
xor eax, eax
jmp 0x18009ee63
xor edx, edx
mov rcx, r14
call fcn.18008f790
lea rdx, str.HTTP_1.0_connection_set_to_keep_alive_
mov rcx, rbx
call fcn.18008ed60
xor eax, eax
jmp 0x18009ee63
mov edx, 2
mov rcx, r14
call fcn.18008f790
xor eax, eax
jmp 0x18009ee63
cmp byte [rbx + 0x1c4], 0
jne 0x18009e931
mov r8d, select
lea rcx, str.Content_Encoding:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009e931
cmp qword [rbx + 0x7d8], 0
je 0x18009e931
lea rdx, [rsi + 0x11]
xor r8d, r8d
mov rcx, rbx
call fcn.180086370
test eax, eax
je 0x18009ee4e
jmp 0x18009ee63
mov r8d, listen
lea rcx, str.Retry_After:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009e9a2
xor ecx, ecx
mov qword [rsp + 0x60], rcx
lea rcx, [rsi + 0xc]
call fcn.18009b2b0
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x18009e98a
lea r9, [rsp + 0x60]
xor edx, edx
lea r8d, [rax + 0xb]
lea rcx, [rsi + 0xc]
call fcn.18009b150
mov rdi, qword [rsp + 0x60]
xor eax, eax
mov qword [rbx + 0x1340], rdi
jmp 0x18009ee63
xor ecx, ecx
call fcn.180193c04
sub rdi, rax
mov qword [rbx + 0x1340], rdi
xor eax, eax
jmp 0x18009ee63
cmp byte [rbx + 0x1c4], 0
jne 0x18009ea4f
mov r8d, select
lea rcx, str.Content_Range:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ea4f
movzx eax, byte [rsi + 0xe]
lea rdi, [rsi + 0xe]
test al, al
je 0x18009e9f4
movzx ecx, al
call fcn.180092020
test eax, eax
jne 0x18009e9f4
cmp byte [rdi], 0x2a
je 0x18009e9f4
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18009e9d8
movzx ecx, byte [rdi]
call fcn.180092020
test eax, eax
je 0x18009ea3f
xor edx, edx
lea r9, [rbx + 0x150]
mov rcx, rdi
lea r8d, [rdx + 0xa]
call fcn.18009b150
test eax, eax
jne 0x18009ee4e
mov rax, qword [rbx + 0x150]
cmp qword [rbx + 0x1188], rax
jne 0x18009ee4e
mov byte [rbx + 0x1c1], 1
xor eax, eax
jmp 0x18009ee63
xor ecx, ecx
mov qword [rbx + 0x1188], rcx
xor eax, eax
jmp 0x18009ee63
cmp qword [rbx + 0xb50], 0
je 0x18009eb53
cmp byte [rbx + 0x12ef], 0
je 0x18009eb53
mov r8d, listen
lea rcx, str.Set_Cookie:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009eb53
mov rdi, qword [rbx + 0x12a8]
test rdi, rdi
jne 0x18009ea9a
mov rdi, qword [r14 + 0xa0]
mov rax, qword [r14 + 0x410]
test byte [rax + 0x84], 2
jne 0x18009eaf3
mov rdx, rdi
lea rcx, str.localhost
call fcn.18007e5a0
test eax, eax
jne 0x18009eaf3
lea rdx, str.127.0.0.1
mov rcx, rdi
call fcn.1801a2bd0
test eax, eax
je 0x18009eaf3
xor ecx, ecx
lea rdx, str._::1_
nop dword [rax]
movzx eax, byte [rdi + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x18009eb4e
cmp rcx, 6
jne 0x18009eae0
mov bpl, 1
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.1800865c0
mov rax, qword [rbx + 0x1208]
lea rcx, [rsi + 0xb]
mov rdx, qword [rbx + 0xb50]
xor r9d, r9d
mov byte [rsp + 0x38], bpl
mov r8b, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.18007e7f0
mov edx, 2
mov rcx, rbx
call fcn.180086600
xor eax, eax
jmp 0x18009ee63
xor bpl, bpl
jmp 0x18009eaf6
cmp byte [rbx + 0x1c4], 0
jne 0x18009ebb2
mov r8d, select
lea rcx, str.Last_Modified:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ebb2
cmp dword [rbx + 0x580], 0
jne 0x18009eb87
cmp byte [rbx + 0xb19], 0
je 0x18009ebb2
lea rcx, [rsi + 0xe]
call fcn.18009b2b0
mov qword [rbx + 0x180], rax
cmp byte [rbx + 0xb19], 0
je 0x18009ee4e
mov qword [rbx + 0x1308], rax
xor eax, eax
jmp 0x18009ee63
mov r8d, select
lea rcx, str.WWW_Authenticate:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ebd9
mov edi, dword [rbx + 0x158]
cmp edi, 0x191
je 0x18009ec00
mov r8d, reloc.WS2_32.dll_send
lea rcx, str.Proxy_authenticate:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ec42
mov edi, dword [rbx + 0x158]
cmp edi, 0x197
jne 0x18009ec42
mov rcx, rsi
call fcn.18009d170
mov rsi, rax
test rax, rax
je 0x18009ed65
cmp edi, 0x197
mov r8, rax
mov rcx, rbx
sete dl
call fcn.18009f0f0
mov rcx, rsi
mov ebx, eax
call qword [fcn.18018f81c]
test ebx, ebx
je 0x18009ee4e
mov eax, ebx
jmp 0x18009ee63
mov ebp, reloc.WS2_32.dll_recv
lea rcx, str.Persistent_Auth:
mov r8d, ebp
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009eccb
cmp dword [rbx + 0xe4c], 4
jne 0x18009ee4e
mov rcx, rsi
call fcn.18009d170
mov rdi, rax
test rax, rax
je 0x18009ed65
lea r8d, [rbp - 0xb]
mov rdx, rax
lea rcx, str.false
call fcn.18007e750
test eax, eax
mov byte [r14 + 0x651], 1
mov r9, rdi
lea rdx, str.Negotiate:_noauthpersist_____d__header_part:__s
setne cl
mov byte [r14 + 0x650], cl
movzx r8d, cl
mov rcx, rbx
call fcn.18008ed60
mov rcx, rdi
call qword [fcn.18018f81c]
xor eax, eax
jmp 0x18009ee63
mov eax, dword [rbx + 0x158]
sub eax, 0x12c
cmp eax, 0x63
ja 0x18009ed6f
mov r8d, 9
lea rcx, str.Location:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ed6f
cmp qword [rbx + 0x190], 0
jne 0x18009ed6f
mov rcx, rsi
call fcn.18009d170
test rax, rax
je 0x18009ed65
cmp byte [rax], 0
jne 0x18009ed24
mov rcx, rax
call qword [fcn.18018f81c]
xor eax, eax
jmp 0x18009ee63
cmp byte [rbx + 0xb21], 0
mov qword [rbx + 0x190], rax
je 0x18009ee4e
mov rcx, rax
call qword [case.0x180080b59.0]
mov qword [rbx + 0x198], rax
test rax, rax
je 0x18009ed65
mov rdx, r14
mov rcx, rbx
call fcn.1800a0ca0
test eax, eax
je 0x18009ee4e
jmp 0x18009ee63
mov eax, 0x1b
jmp 0x18009ee63
cmp qword [rbx + 0xb58], 0
je 0x18009edd7
mov r8d, 0x1a
lea rcx, str.Strict_Transport_Security:
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009edd7
mov rax, qword [r14 + 0x410]
test byte [rax + 0x8c], 1
je 0x18009edd7
mov rdx, qword [rbx + 0x11e0]
lea r8, [rsi + 0x1a]
mov rcx, qword [rbx + 0xb58]
call fcn.180087f80
test eax, eax
je 0x18009ee4e
lea rdx, str.Illegal_STS_header_skipped
mov rcx, rbx
call fcn.18008ed60
xor eax, eax
jmp 0x18009ee63
cmp qword [rbx + 0xb60], 0
je 0x18009ee52
mov edi, 8
lea rcx, str.Alt_Svc:
mov r8d, edi
mov rdx, rsi
call fcn.18007e750
test eax, eax
je 0x18009ee52
mov rax, qword [r14 + 0x410]
test byte [rax + 0x8c], 1
je 0x18009ee52
cmp byte [r14 + 0x1b0], 0x14
mov ecx, dword [r14 + 0x154]
cmove edi, ebp
call fcn.180086a80
mov rdx, qword [rbx + 0xb60]
lea r8, [rsi + 8]
mov word [rsp + 0x28], ax
mov r9d, edi
mov rax, qword [r14 + 0xa0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.180086e10
test eax, eax
jne 0x18009ee63
xor eax, eax
jmp 0x18009ee63
mov rax, qword [r14 + 0x410]
movzx eax, word [rax + 0x86]
and eax, 4
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret