Function at 0x14004e360
Capabilities:
Check http status code

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0x40
cmp byte [rcx + 0x1c5], 0
lea r15, [0x140000000]
mov rbp, r8
mov rsi, rdx
mov rbx, rcx
jne 0x14004e4de
cmp byte [rcx + 0xa7c], 0
jne 0x14004e4de
cmp byte [rbp], 0
lea r9, str.Content_Length:
mov r8d, 0xf
mov rdx, rbp
je 0x14004e3e6
nop dword [rax + rax]
movzx eax, byte [r9]
test al, al
je 0x14004e3e1
test r8, r8
je 0x14004e404
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e3e6
inc rdx
dec r8
inc r9
cmp byte [rdx], 0
jne 0x14004e3b0
test r8, r8
je 0x14004e404
movzx eax, byte [r9]
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e4de
add rbp, 0xf
call fcn.14006ac68
xor edi, edi
mov dword [rax], edi
movzx eax, byte [rbp]
test al, al
je 0x14004e446
movzx ecx, al
nop dword [rax]
movzx eax, cl
cmp al, 0x80
jae 0x14004e446
movzx eax, byte [rax + r15 + 0xba1c0]
and eax, 8
movzx eax, cl
je 0x14004e446
movzx eax, byte [rbp + 1]
inc rbp
movzx ecx, al
test al, al
jne 0x14004e420
cmp al, 0x2d
je 0x14004e4bf
mov r8d, 0xa
lea rdx, [rsp + 0x88]
mov rcx, rbp
call fcn.1400750b0
mov rdi, rax
call fcn.14006ac68
cmp dword [rax], 0x22
jne 0x14004e49a
cmp qword [rbx + 0x708], 0
je 0x14004e6ab
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rbx
call fcn.14002b570
mov eax, 0x3f
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp rbp, qword [rsp + 0x88]
je 0x14004e4bf
mov qword [rbx + 0xe8], rdi
xor eax, eax
mov qword [rbx + 0xf0], rdi
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.Invalid_Content_Length:_value
mov rcx, rbx
call fcn.14002b570
mov eax, 8
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp byte [rbp], 0
lea r9, str.Content_Type:
mov r8d, 0xd
mov rdx, rbp
je 0x14004e52a
movzx eax, byte [r9]
test al, al
je 0x14004e525
test r8, r8
je 0x14004e544
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e52a
inc rdx
dec r8
inc r9
cmp byte [rdx], 0
jne 0x14004e4f4
test r8, r8
je 0x14004e544
movzx eax, byte [r9]
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e594
mov rcx, rbp
call fcn.140049ea0
mov rdi, rax
test rax, rax
je 0x14004ece4
cmp byte [rax], 0
jne 0x14004e573
mov rcx, rax
call qword [fcn.14006baa8]
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, qword [rbx + 0x12b0]
call qword [fcn.14006baa8]
xor eax, eax
mov qword [rbx + 0x12b0], rdi
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp byte [rsi + 0x1b8], 0xa
jne 0x14004e5d3
cmp byte [rsi + 0x3c4], 0
je 0x14004e5d3
lea r9, str.keep_alive
mov qword [rsp + 0x20], 0xa
mov r8d, 0x11
lea rdx, str.Proxy_Connection:
mov rcx, rbp
call fcn.14004b680
test al, al
jne 0x14004e661
cmp byte [rsi + 0x1b8], 0xb
jne 0x14004e62f
cmp byte [rsi + 0x3c4], 0
je 0x14004e62f
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0x11
lea rdx, str.Proxy_Connection:
mov rcx, rbp
call fcn.14004b680
test al, al
je 0x14004e62f
cmp byte [rsi + 0x3ca], 1
je 0x14004e566
mov byte [rsi + 0x3ca], 1
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp byte [rsi + 0x1b8], 0xa
jne 0x14004e682
lea r9, str.keep_alive
mov qword [rsp + 0x20], 0xa
mov r8d, 0xb
lea rdx, str.Connection:
mov rcx, rbp
call fcn.14004b680
test al, al
je 0x14004e682
cmp byte [rsi + 0x3ca], 0
je 0x14004e566
mov byte [rsi + 0x3ca], 0
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, 0xb
lea rdx, str.Connection:
mov rcx, rbp
call fcn.14004b680
test al, al
je 0x14004e6ea
mov rax, qword [rsi + 0x408]
mov ecx, dword [rax + 0x8c]
and ecx, 0x200
sete al
bt ecx, 9
jb 0x14004e566
cmp al, byte [rsi + 0x3ca]
je 0x14004e566
mov byte [rsi + 0x3ca], al
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx r11d, byte [rbx + 0x1c5]
test r11b, r11b
jne 0x14004e7a3
mov r8d, 0x12
lea rdx, str.Transfer_Encoding:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004e75e
lea rdx, [rbp + 0x12]
mov r8d, 1
mov rcx, rbx
call fcn.14003ad40
test eax, eax
jne 0x14004e568
cmp byte [rbx + 0x1c6], al
jne 0x14004e566
cmp byte [rsi + 0x3ca], 1
je 0x14004e74a
mov byte [rsi + 0x3ca], 1
mov byte [rbx + 0x1c7], 1
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r8d, 0x11
lea rdx, str.Content_Encoding:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004e7a3
cmp qword [rbx + 0x788], 0
je 0x14004e7a3
lea rdx, [rbp + 0x11]
xor r8d, r8d
mov rcx, rbx
call fcn.14003ad40
test eax, eax
je 0x14004e566
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp byte [rbp], 0
lea r9, str.Retry_After:
mov r8d, 0xc
mov rdx, rbp
je 0x14004e7f6
nop dword [rax]
movzx eax, byte [r9]
test al, al
je 0x14004e7f1
test r8, r8
je 0x14004e814
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e7f6
inc rdx
dec r8
inc r9
cmp byte [rdx], 0
jne 0x14004e7c0
test r8, r8
je 0x14004e814
movzx eax, byte [r9]
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004e8cd
add rbp, 0xc
mov rcx, rbp
call fcn.140051540
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14004e8af
call fcn.14006ac68
xor edi, edi
mov dword [rax], edi
movzx eax, byte [rbp]
test al, al
je 0x14004e867
movzx ecx, al
movzx eax, cl
cmp al, 0x80
jae 0x14004e867
movzx eax, byte [rax + r15 + 0xba1c0]
and eax, 8
movzx eax, cl
je 0x14004e867
movzx eax, byte [rbp + 1]
inc rbp
movzx ecx, al
test al, al
jne 0x14004e841
cmp al, 0x2d
je 0x14004e8b9
mov r8d, 0xa
lea rdx, [rsp + 0x88]
mov rcx, rbp
call fcn.1400750b0
mov rsi, rax
call fcn.14006ac68
cmp dword [rax], 0x22
je 0x14004e8b9
cmp rbp, qword [rsp + 0x88]
je 0x14004e8b9
mov rdi, rsi
mov qword [rbx + 0x12c0], rsi
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
xor ecx, ecx
call fcn.14006ee58
sub rdi, rax
mov qword [rbx + 0x12c0], rdi
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
test r11b, r11b
jne 0x14004e9a1
mov r8d, 0xe
lea rdx, str.Content_Range:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004e9a1
movzx eax, byte [rbp + 0xe]
add rbp, 0xe
test al, al
je 0x14004e931
movzx ecx, al
cmp cl, 0x80
jae 0x14004e91b
movzx eax, cl
movzx eax, byte [rax + r15 + 0xba1c0]
and eax, 4
movzx eax, cl
jne 0x14004e931
movzx eax, cl
cmp cl, 0x2a
je 0x14004e931
movzx eax, byte [rbp + 1]
inc rbp
movzx ecx, al
test al, al
jne 0x14004e902
cmp al, 0x80
jae 0x14004e98b
movzx eax, al
movzx eax, byte [rax + r15 + 0xba1c0]
and eax, 4
je 0x14004e98b
xor edx, edx
lea r9, [rbx + 0x150]
mov rcx, rbp
lea r8d, [rdx + 0xa]
call fcn.140050b90
test eax, eax
jne 0x14004e566
mov rax, qword [rbx + 0x150]
cmp qword [rbx + 0x10d8], rax
jne 0x14004e566
mov byte [rbx + 0x1c2], 1
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
xor edi, edi
mov qword [rbx + 0x10d8], rdi
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp qword [rbx + 0xa98], 0
je 0x14004eaec
cmp byte [rbx + 0x126e], 0
je 0x14004eaec
mov r8d, 0xb
lea rdx, str.Set_Cookie:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004eaec
mov qword [rsp + 0x78], r14
mov r14, qword [rbx + 0x1228]
test r14, r14
jne 0x14004e9f1
mov r14, qword [rsi + 0xa0]
mov rax, qword [rsi + 0x408]
test byte [rax + 0x84], 2
jne 0x14004ea84
mov r8, r14
lea rdx, str.localhost
nop
movzx eax, byte [r8]
xor edi, edi
test al, al
je 0x14004ea3f
movzx ecx, byte [rdx]
movzx eax, byte [rax + r15 + 0xb9950]
cmp byte [rcx + r15 + 0xb9950], al
jne 0x14004ea51
inc rdx
inc r8
cmp byte [rdx], dil
jne 0x14004ea10
movzx eax, byte [r8]
test al, al
mov ecx, edi
mov eax, edi
setne cl
cmp byte [rdx], al
sete al
cmp eax, ecx
jne 0x14004ea84
lea rdx, str.127.0.0.1
mov rcx, r14
call fcn.14006d240
test eax, eax
je 0x14004ea84
lea rcx, str._::1_
nop dword [rax + rax]
movzx eax, byte [r14 + rdi]
inc rdi
cmp al, byte [rcx + rdi - 1]
jne 0x14004eae7
cmp rdi, 6
jne 0x14004ea70
mov dil, 1
mov edx, 2
mov rcx, rbx
call fcn.14003aa60
mov rax, qword [rbx + 0x1130]
lea rcx, [rbp + 0xb]
mov rdx, qword [rbx + 0xa98]
xor r9d, r9d
mov byte [rsp + 0x38], dil
mov r8b, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.14002e690
mov edx, 2
mov rcx, rbx
call fcn.14003aaa0
mov r14, qword [rsp + 0x78]
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
xor dil, dil
jmp 0x14004ea87
test r11b, r11b
jne 0x14004eb4d
mov r8d, 0xe
lea rdx, str.Last_Modified:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004eb4d
cmp dword [rbx + 0x550], 0
jne 0x14004eb1c
cmp byte [rbx + 0xa66], r11b
je 0x14004eb4d
lea rcx, [rbp + 0xe]
call fcn.140051540
mov qword [rbx + 0x180], rax
cmp byte [rbx + 0xa66], 0
je 0x14004e566
mov qword [rbx + 0x1288], rax
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r8d, 0x11
lea rdx, str.WWW_Authenticate:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004eb74
mov edi, dword [rbx + 0x158]
cmp edi, 0x191
je 0x14004eb9b
mov r8d, 0x13
lea rdx, str.Proxy_authenticate:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004ebe3
mov edi, dword [rbx + 0x158]
cmp edi, 0x197
jne 0x14004ebe3
mov rcx, rbp
call fcn.140049ea0
mov rsi, rax
test rax, rax
je 0x14004ece4
cmp edi, 0x197
mov r8, rax
mov rcx, rbx
sete dl
call fcn.14004aae0
mov rcx, rsi
mov ebx, eax
call qword [fcn.14006baa8]
test ebx, ebx
je 0x14004e566
mov eax, ebx
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov edi, 0x10
lea rdx, str.Persistent_Auth:
mov r8d, edi
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004ec4c
cmp dword [rbx + 0xd9c], 4
jne 0x14004e566
mov rcx, rbp
call fcn.140049ea0
mov r11, rax
test rax, rax
je 0x14004ece4
lea r8d, [rdi - 0xb]
mov rcx, rax
lea rdx, str.false
call fcn.14003b160
test eax, eax
mov byte [rsi + 0x649], 1
setne cl
mov byte [rsi + 0x648], cl
mov rcx, r11
jmp 0x14004e560
mov eax, dword [rbx + 0x158]
sub eax, 0x12c
cmp eax, 0x63
ja 0x14004ecf4
mov r8d, 9
lea rdx, str.Location:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004ecf4
cmp qword [rbx + 0x190], 0
jne 0x14004ecf4
mov rcx, rbp
call fcn.140049ea0
test rax, rax
je 0x14004ece4
cmp byte [rax], 0
jne 0x14004ec9d
mov rcx, rax
jmp 0x14004e560
cmp byte [rbx + 0xa6e], 0
mov qword [rbx + 0x190], rax
je 0x14004e566
mov rcx, rax
call qword [case.0x14002e419.0]
mov qword [rbx + 0x198], rax
test rax, rax
je 0x14004ece4
mov rdx, rsi
mov rcx, rbx
call fcn.14004a080
test eax, eax
je 0x14004e566
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 0x1b
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r11, qword [rbx + 0xaa0]
test r11, r11
je 0x14004ed49
mov r8d, 0x1a
lea rdx, str.Strict_Transport_Security:
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004ed49
mov rax, qword [rsi + 0x408]
test byte [rax + 0x8c], 1
je 0x14004ed49
mov rdx, qword [rbx + 0x1108]
lea r8, [rbp + 0x1a]
mov rcx, r11
call fcn.140036a80
xor eax, eax
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rbx, qword [rbx + 0xaa8]
test rbx, rbx
je 0x14004edc6
mov r11d, 8
lea rdx, str.Alt_Svc:
mov r8d, r11d
mov rcx, rbp
call fcn.14003b160
test eax, eax
je 0x14004edc6
mov rax, qword [rsi + 0x408]
test byte [rax + 0x8c], 1
je 0x14004edc6
movzx eax, word [rsi + 0x154]
lea r8, [rbp + 8]
cmp byte [rsi + 0x1b8], 0x14
mov rdx, rbx
mov word [rsp + 0x28], ax
mov rax, qword [rsi + 0xa0]
cmove r11d, edi
mov r9d, r11d
mov qword [rsp + 0x20], rax
call fcn.140039440
test eax, eax
je 0x14004e566
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rsi + 0x408]
test dword [rax + 0x84], 0x40000
je 0x14004e566
mov eax, 4
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret