Function at 0x140090290
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 0x140090374
cmp byte [rcx + 0xb3c], 0
jne 0x140090374
mov r8d, reloc.WS2_32.dll_ntohs
lea rcx, str.Content_Length:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090374
xor edx, edx
lea rcx, [rsi + 0xf]
lea r9, [rsp + 0x60]
lea r8d, [rdx + 0xa]
call fcn.1400985b0
test eax, eax
jne 0x140090312
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0xe8], rax
mov qword [rbx + 0xf0], rax
jmp 0x140090d0b
cmp eax, 1
jne 0x14009035b
cmp qword [rbx + 0x758], 0
je 0x14009033a
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rbx
call fcn.1400830c0
mov eax, 0x3f
jmp 0x140090d0d
mov edx, 2
mov rcx, r14
call fcn.140083b90
lea rdx, str.Overflow_Content_Length:_value_
mov rcx, rbx
call fcn.140083230
jmp 0x140090d0b
lea rdx, str.Invalid_Content_Length:_value
mov rcx, rbx
call fcn.1400830c0
mov eax, 8
jmp 0x140090d0d
mov r8d, reloc.WS2_32.dll_listen
lea rcx, str.Content_Type:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x1400903c3
mov rcx, rsi
call fcn.14008f050
mov rdi, rax
test rax, rax
je 0x140090c00
cmp byte [rax], 0
je 0x140090b5a
mov rcx, qword [rbx + 0x1388]
call qword [fcn.1400c4cd7]
mov qword [rbx + 0x1388], rdi
jmp 0x140090d0b
cmp byte [r14 + 0x1b0], 0xa
jne 0x140090489
cmp byte [r14 + 0x3cc], 0
je 0x140090489
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.Proxy_Connection:
mov rcx, rsi
call fcn.140087fc0
test eax, eax
je 0x140090489
movzx eax, byte [rsi + 0x11]
lea rdi, [rsi + 0x11]
test al, al
je 0x14009041f
movzx ecx, al
call fcn.1400b28a0
test eax, eax
je 0x14009041f
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140090408
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x140090454
lea edx, [rax + 0xa]
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x140090454
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
sub rbp, rdi
cmp rbp, 0xa
jb 0x140090489
nop dword [rax]
mov r8d, 0xa
lea rdx, str.keep_alive
mov rcx, rdi
call fcn.140087fc0
test eax, eax
jne 0x140090730
dec rbp
inc rdi
cmp rbp, 0xa
jae 0x140090460
cmp byte [r14 + 0x1b0], 0xb
jne 0x140090559
cmp byte [r14 + 0x3cc], 0
je 0x140090559
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.Proxy_Connection:
mov rcx, rsi
call fcn.140087fc0
test eax, eax
je 0x140090559
movzx eax, byte [rsi + 0x11]
lea rdi, [rsi + 0x11]
test al, al
je 0x1400904e7
nop
movzx ecx, al
call fcn.1400b28a0
test eax, eax
je 0x1400904e7
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x1400904d0
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x14009051c
lea edx, [rax + 0xa]
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x14009051c
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
sub rbp, rdi
cmp rbp, 5
jb 0x140090559
nop word [rax + rax]
mov r8d, 5
lea rdx, str.close
mov rcx, rdi
call fcn.140087fc0
test eax, eax
jne 0x14009074e
dec rbp
inc rdi
cmp rbp, 5
jae 0x140090530
cmp byte [r14 + 0x1b0], 0xa
jne 0x140090619
mov r8d, listen
lea rdx, str.Connection:
mov rcx, rsi
call fcn.140087fc0
test eax, eax
je 0x140090619
movzx eax, byte [rsi + 0xb]
lea rdi, [rsi + 0xb]
test al, al
je 0x1400905a7
movzx ecx, al
call fcn.1400b28a0
test eax, eax
je 0x1400905a7
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140090590
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x1400905dc
lea edx, [rax + 0xa]
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x1400905dc
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
sub rbp, rdi
cmp rbp, 0xa
jb 0x140090619
nop word [rax + rax]
mov r8d, 0xa
lea rdx, str.keep_alive
mov rcx, rdi
call fcn.140087fc0
test eax, eax
jne 0x14009076f
dec rbp
inc rdi
cmp rbp, 0xa
jae 0x1400905f0
mov r8d, listen
lea rdx, str.Connection:
mov rcx, rsi
call fcn.140087fc0
test eax, eax
je 0x1400906c9
movzx eax, byte [rsi + 0xb]
lea rdi, [rsi + 0xb]
test al, al
je 0x140090659
movzx ecx, al
call fcn.1400b28a0
test eax, eax
je 0x140090659
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140090642
mov edx, reloc.WS2_32.dll_listen
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x14009068e
lea edx, [rax + 0xa]
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
test rax, rax
jne 0x14009068e
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_strchr
mov rbp, rax
sub rbp, rdi
cmp rbp, 5
jb 0x1400906c9
nop word [rax + rax]
mov r8d, 5
lea rdx, str.close
mov rcx, rdi
call fcn.140087fc0
test eax, eax
jne 0x14009078d
dec rbp
inc rdi
cmp rbp, 5
jae 0x1400906a0
cmp byte [rbx + 0x1c4], 0
jne 0x1400907e7
mov r8d, reloc.WS2_32.dll_select
lea rcx, str.Transfer_Encoding:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x14009079f
lea rdx, [rsi + 0x12]
mov r8d, 1
mov rcx, rbx
call fcn.140088480
test eax, eax
jne 0x140090d0d
cmp byte [rbx + 0x1c5], al
jne 0x140090d0b
lea edx, [rax + 1]
mov rcx, r14
call fcn.140083b90
mov byte [rbx + 0x1c6], 1
jmp 0x140090d0b
xor edx, edx
mov rcx, r14
call fcn.140083b90
lea rdx, str.HTTP_1.0_proxy_connection_set_to_keep_alive_
mov rcx, rbx
call fcn.140083230
jmp 0x140090d0b
mov edx, 1
mov rcx, r14
call fcn.140083b90
lea rdx, str.HTTP_1.1_proxy_connection_set_close_
mov rcx, rbx
call fcn.140083230
jmp 0x140090d0b
xor edx, edx
mov rcx, r14
call fcn.140083b90
lea rdx, str.HTTP_1.0_connection_set_to_keep_alive_
mov rcx, rbx
call fcn.140083230
jmp 0x140090d0b
mov edx, 2
mov rcx, r14
call fcn.140083b90
jmp 0x140090d0b
cmp byte [rbx + 0x1c4], 0
jne 0x1400907e7
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.Content_Encoding:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x1400907e7
cmp qword [rbx + 0x7e0], 0
je 0x1400907e7
lea rdx, [rsi + 0x11]
xor r8d, r8d
mov rcx, rbx
call fcn.140088480
test eax, eax
je 0x140090d0b
jmp 0x140090d0d
mov r8d, listen
lea rcx, str.Retry_After:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090854
xor ecx, ecx
mov qword [rsp + 0x60], rcx
lea rcx, [rsi + 0xc]
call fcn.140098710
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14009083e
lea r9, [rsp + 0x60]
xor edx, edx
lea r8d, [rax + 0xb]
lea rcx, [rsi + 0xc]
call fcn.1400985b0
mov rdi, qword [rsp + 0x60]
mov qword [rbx + 0x1398], rdi
jmp 0x140090d0b
xor ecx, ecx
call sub.api_ms_win_crt_time_l1_1_0.dll__time64
sub rdi, rax
mov qword [rbx + 0x1398], rdi
jmp 0x140090d0b
cmp byte [rbx + 0x1c4], 0
jne 0x1400908f9
mov r8d, send
lea rcx, str.Content_Range:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x1400908f9
movzx eax, byte [rsi + 0xe]
lea rdi, [rsi + 0xe]
test al, al
je 0x1400908a2
movzx ecx, al
call fcn.1400b2820
test eax, eax
jne 0x1400908a2
cmp byte [rdi], 0x2a
je 0x1400908a2
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140090886
movzx ecx, byte [rdi]
call fcn.1400b2820
test eax, eax
je 0x1400908eb
xor edx, edx
lea r9, [rbx + 0x150]
mov rcx, rdi
lea r8d, [rdx + 0xa]
call fcn.1400985b0
test eax, eax
jne 0x140090d0b
mov rax, qword [rbx + 0x150]
cmp qword [rbx + 0x1190], rax
jne 0x140090d0b
mov byte [rbx + 0x1c1], 1
jmp 0x140090d0b
xor ecx, ecx
mov qword [rbx + 0x1190], rcx
jmp 0x140090d0b
cmp qword [rbx + 0xb58], 0
je 0x1400909f4
cmp byte [rbx + 0x12f7], 0
je 0x1400909f4
mov r8d, listen
lea rcx, str.Set_Cookie:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x1400909f4
mov rdi, qword [rbx + 0x12b0]
test rdi, rdi
jne 0x140090944
mov rdi, qword [r14 + 0xa0]
mov rax, qword [r14 + 0x418]
test byte [rax + 0x84], 2
jne 0x140090996
mov rdx, rdi
lea rcx, str.localhost
call fcn.140087f30
test eax, eax
jne 0x140090996
lea rdx, str.127.0.0.1
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140090996
xor ecx, ecx
lea rdx, str._::1_
movzx eax, byte [rdi + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x1400909ef
cmp rcx, 6
jne 0x140090983
mov bpl, 1
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.1400886d0
mov rax, qword [rbx + 0x1210]
lea rcx, [rsi + 0xb]
mov rdx, qword [rbx + 0xb58]
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.140075a50
mov edx, 2
mov rcx, rbx
call fcn.140088710
jmp 0x140090d0b
xor bpl, bpl
jmp 0x140090999
cmp byte [rbx + 0x1c4], 0
jne 0x140090a51
mov r8d, send
lea rcx, str.Last_Modified:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090a51
cmp dword [rbx + 0x580], 0
jne 0x140090a28
cmp byte [rbx + 0xb21], 0
je 0x140090a51
lea rcx, [rsi + 0xe]
call fcn.140098710
mov qword [rbx + 0x180], rax
cmp byte [rbx + 0xb21], 0
je 0x140090d0b
mov qword [rbx + 0x1360], rax
jmp 0x140090d0b
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.WWW_Authenticate:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090a78
mov edi, dword [rbx + 0x158]
cmp edi, 0x191
je 0x140090a9f
mov r8d, reloc.WS2_32.dll_send
lea rcx, str.Proxy_authenticate:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090ae1
mov edi, dword [rbx + 0x158]
cmp edi, 0x197
jne 0x140090ae1
mov rcx, rsi
call fcn.14008f050
mov rsi, rax
test rax, rax
je 0x140090c00
cmp edi, 0x197
mov r8, rax
mov rcx, rbx
sete dl
call fcn.140090f70
mov rcx, rsi
mov ebx, eax
call qword [fcn.1400c4cd7]
test ebx, ebx
je 0x140090d0b
mov eax, ebx
jmp 0x140090d0d
mov ebp, reloc.WS2_32.dll_recv
lea rcx, str.Persistent_Auth:
mov r8d, ebp
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090b68
cmp dword [rbx + 0xe54], 4
jne 0x140090d0b
mov rcx, rsi
call fcn.14008f050
mov rdi, rax
test rax, rax
je 0x140090c00
lea r8d, [rbp - 0xb]
mov rdx, rax
lea rcx, str.false
call fcn.1400880e0
test eax, eax
mov byte [r14 + 0x659], 1
mov r9, rdi
lea rdx, str.Negotiate:_noauthpersist_____d__header_part:__s
setne cl
mov byte [r14 + 0x658], cl
movzx r8d, cl
mov rcx, rbx
call fcn.140083230
mov rcx, rdi
call qword [fcn.1400c4cd7]
jmp 0x140090d0b
mov eax, dword [rbx + 0x158]
sub eax, 0x12c
cmp eax, 0x63
ja 0x140090c0a
mov r8d, 9
lea rcx, str.Location:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090c0a
cmp qword [rbx + 0x190], 0
jne 0x140090c0a
mov rcx, rsi
call fcn.14008f050
test rax, rax
je 0x140090c00
cmp byte [rax], 0
jne 0x140090bbf
mov rcx, rax
call qword [fcn.1400c4cd7]
jmp 0x140090d0b
cmp byte [rbx + 0xb2e], 0
mov qword [rbx + 0x190], rax
je 0x140090d0b
mov rcx, rax
call qword [str.3N_f_]
mov qword [rbx + 0x198], rax
test rax, rax
je 0x140090c00
mov rdx, r14
mov rcx, rbx
call fcn.140092800
test eax, eax
je 0x140090d0b
jmp 0x140090d0d
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x140090d0d
cmp qword [rbx + 0xb60], 0
je 0x140090c70
mov r8d, reloc.WLDAP32.dll_Ordinal_26
lea rcx, str.Strict_Transport_Security:
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090c70
mov rax, qword [r14 + 0x418]
test byte [rax + 0x8c], 1
je 0x140090c70
mov rdx, qword [rbx + 0x11e8]
lea r8, [rsi + 0x1a]
mov rcx, qword [rbx + 0xb60]
call fcn.1400877f0
test eax, eax
je 0x140090d0b
lea rdx, str.Illegal_STS_header_skipped
mov rcx, rbx
call fcn.140083230
jmp 0x140090d0b
cmp qword [rbx + 0xb68], 0
je 0x140090ce9
mov edi, 8
lea rcx, str.Alt_Svc:
mov r8d, edi
mov rdx, rsi
call fcn.1400880e0
test eax, eax
je 0x140090ce9
mov rax, qword [r14 + 0x418]
test byte [rax + 0x8c], 1
je 0x140090ce9
cmp byte [r14 + 0x1b0], 0x14
mov ecx, dword [r14 + 0x154]
cmove edi, ebp
call fcn.140085ca0
mov rdx, qword [rbx + 0xb68]
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.140086690
test eax, eax
je 0x140090d0b
jmp 0x140090d0d
mov rax, qword [r14 + 0x418]
test dword [rax + 0x84], 0x40000
je 0x140090d0b
mov rdx, rsi
mov rcx, rbx
call fcn.1400a8fa0
test eax, eax
jne 0x140090d0d
xor eax, eax
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret