Function at 0x14014de40
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
movsx eax, byte [rdx]
mov rsi, r8
mov rbp, qword [rcx + 0x20]
add eax, 0xffffffbf
mov rdi, rdx
mov rbx, rcx
cmp eax, 0x36
ja case.0x14014de8a.66
lea rcx, [0x140000000]
cdqe
movzx eax, byte [rcx + rax + 0x14e8e4]
mov r8d, dword [rcx + rax*4 + 0x14e8c0]
add r8, rcx
jmp r8
cmp qword [rbx + 0x9e8], 0
je case.0x14014de8a.66
mov rax, qword [rbp + 0x3c0]
test byte [rax + 0x94], 1
je case.0x14014de8a.66
cmp rsi, 8
jb case.0x14014de8a.66
mov esi, 8
lea rcx, str.Alt_Svc:
mov r8d, esi
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
add rdi, rsi
je case.0x14014de8a.66
movzx eax, byte [rbp + 0x5c8]
cmp al, 0x1e
jne 0x14014def0
mov esi, 0x20
jmp 0x14014defc
cmp al, 0x14
mov r8d, reloc.WS2_32.dll_recv
cmove esi, r8d
mov ecx, dword [rbp + 0x5b4]
call fcn.140144540
mov rdx, qword [rbx + 0x9e8]
mov r9d, esi
mov word [rsp + 0x28], ax
mov r8, rdi
mov rax, qword [rbp + 0x50]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140144f50
jmp 0x14014e334
cmp byte [rbx + 0x1d3], 0
jne 0x14014e057
cmp byte [rbx + 0x9bc], 0
jne 0x14014e00c
cmp rsi, 0xf
jb 0x14014e00c
mov r8d, reloc.WS2_32.dll_ntohs
lea rcx, str.Content_Length:
call fcn.140158340
test eax, eax
je 0x14014e00c
lea rcx, [rdi + 0xf]
test rcx, rcx
je 0x14014e00c
xor edx, edx
lea r9, [rsp + 0x60]
lea r8d, [rdx + 0xa]
call fcn.14015b720
test eax, eax
jne 0x14014dfa8
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0xf0], rax
mov qword [rbx + 0xf8], rax
xor eax, eax
jmp 0x14014e334
cmp eax, 1
jne 0x14014dff3
cmp qword [rbx + 0x6e0], 0
je 0x14014dfd0
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rbx
call fcn.140140590
mov eax, 0x3f
jmp 0x14014e334
mov edx, 2
mov rcx, rbp
call fcn.140143200
lea rdx, str.Overflow_Content_Length:_value
mov rcx, rbx
call fcn.140140680
xor eax, eax
jmp 0x14014e334
lea rdx, str.Invalid_Content_Length:_value
mov rcx, rbx
call fcn.140140590
mov eax, 8
jmp 0x14014e334
cmp byte [rbx + 0x1d3], 0
jne 0x14014e057
cmp qword [rbx + 0x7f8], 0
je 0x14014e057
cmp rsi, 0x11
jb 0x14014e057
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.Content_Encoding:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e05d
lea rdx, [rdi + 0x11]
test rdx, rdx
je 0x14014e05d
xor r8d, r8d
mov rcx, rbx
call fcn.14015ad30
jmp 0x14014e334
cmp rsi, 0xd
jb 0x14014e0c3
mov r8d, reloc.WS2_32.dll_listen
lea rcx, str.Content_Type:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e0c3
lea rax, [rdi + 0xd]
test rax, rax
je 0x14014e0c9
mov rcx, rdi
call fcn.14014d4e0
mov rdi, rax
test rax, rax
je 0x14014e8af
cmp byte [rax], 0
jne 0x14014e0a8
mov rcx, rax
call qword [0x140255558]
xor eax, eax
jmp 0x14014e334
mov rcx, qword [rbx + 0x1220]
call qword [0x140255558]
xor eax, eax
mov qword [rbx + 0x1220], rdi
jmp 0x14014e334
cmp rsi, 0xb
jb 0x14014e125
mov r8d, ntohs
lea rcx, str.Connection:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e125
cmp rsi, 0x10
jbe 0x14014e125
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, ntohs
lea rdx, str.Connection:
mov rcx, rdi
call fcn.14014d410
test al, al
je 0x14014e125
mov edx, 2
mov rcx, rbp
call fcn.140143200
xor eax, eax
jmp 0x14014e334
cmp byte [rbp + 0x5c8], 0xa
jne 0x14014e19c
cmp rsi, 0xb
jb 0x14014e19c
mov r8d, ntohs
lea rcx, str.Connection:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e19c
cmp rsi, 0x15
jbe 0x14014e19c
lea r9, str.keep_alive
mov qword [rsp + 0x20], 0xa
mov r8d, ntohs
lea rdx, str.Connection:
mov rcx, rdi
call fcn.14014d410
test al, al
je 0x14014e19c
xor edx, edx
mov rcx, rbp
call fcn.140143200
lea rdx, str.HTTP_1.0_connection_set_to_keep_alive
mov rcx, rbx
call fcn.140140680
xor eax, eax
jmp 0x14014e334
cmp byte [rbx + 0x1d3], 0
jne case.0x14014de8a.66
cmp rsi, 0xe
jb case.0x14014de8a.66
mov r8d, recvfrom
lea rcx, str.Content_Range:
mov rdx, rdi
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
add rdi, 0xe
je case.0x14014de8a.66
movzx ecx, byte [rdi]
test cl, cl
je 0x14014e204
movzx eax, cl
cmp al, 0x30
jl 0x14014e1ef
movzx ecx, al
cmp al, 0x39
jle 0x14014e204
movzx ecx, al
cmp al, 0x2a
je 0x14014e204
movzx ecx, byte [rdi + 1]
inc rdi
movzx eax, cl
test cl, cl
jne 0x14014e1e4
sub cl, 0x30
cmp cl, 9
ja 0x14014e249
xor edx, edx
lea r9, [rbx + 0x130]
mov rcx, rdi
lea r8d, [rdx + 0xa]
call fcn.14015b720
test eax, eax
jne case.0x14014de8a.66
mov rax, qword [rbx + 0x130]
cmp qword [rbx + 0x1000], rax
jne case.0x14014de8a.66
mov byte [rbx + 0x1cb], 1
jmp case.0x14014de8a.66
cmp dword [rbx + 0x13c], 0x12c
jge case.0x14014de8a.66
xor ecx, ecx
mov qword [rbx + 0x1000], rcx
jmp case.0x14014de8a.66
cmp byte [rbx + 0x1d3], 0
jne 0x14014e2cb
cmp byte [rbx + 0x520], 0
jne 0x14014e282
cmp byte [rbx + 0x9a8], 0
je 0x14014e2cb
cmp rsi, 0xe
jb 0x14014e2cb
mov r8d, recvfrom
lea rcx, str.Last_Modified:
call fcn.140158340
test eax, eax
je 0x14014e2cb
lea rcx, [rdi + 0xe]
test rcx, rcx
je 0x14014e2cb
call fcn.14015b910
mov qword [rbx + 0x1a0], rax
cmp byte [rbx + 0x9a8], 0
je 0x14014e864
mov qword [rbx + 0x1200], rax
xor eax, eax
jmp 0x14014e334
mov eax, dword [rbx + 0x13c]
sub eax, 0x12c
cmp eax, 0x63
ja case.0x14014de8a.66
cmp rsi, 9
jb case.0x14014de8a.66
mov r8d, 9
lea rcx, str.Location:
mov rdx, rdi
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
cmp qword [rbx + 0x1a8], 0
jne case.0x14014de8a.66
mov rcx, rdi
call fcn.14014d4e0
test rax, rax
je 0x14014e8af
cmp byte [rax], 0
jne 0x14014e347
mov rcx, rax
call qword [0x140255558]
mov rax, qword [rbp + 0x3c0]
movzx eax, word [rax + 0x8e]
and eax, 4
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
cmp byte [rbx + 0x9b0], 0
mov qword [rbx + 0x1a8], rax
je case.0x14014de8a.66
mov rcx, rax
call qword [case.0x14013ab42.1]
mov qword [rbx + 0x1b0], rax
test rax, rax
je 0x14014e8af
mov rdx, rbp
mov rcx, rbx
call fcn.140150d10
test eax, eax
jne 0x14014e334
mov byte [rbx + 0x11dd], 1
jmp case.0x14014de8a.66
cmp rsi, 0x11
jb 0x14014e4c4
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.Proxy_Connection:
call fcn.140158340
test eax, eax
je 0x14014e4c4
lea rax, [rdi + 0x11]
test rax, rax
je 0x14014e4c4
cmp byte [rbp + 0x5c8], 0xa
jne 0x14014e433
cmp byte [rbp + 0x3a0], 0
je 0x14014e433
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.Proxy_Connection:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e433
cmp rsi, 0x1b
jbe 0x14014e433
lea r9, str.keep_alive
mov qword [rsp + 0x20], 0xa
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.Proxy_Connection:
mov rcx, rdi
call fcn.14014d410
test al, al
je 0x14014e433
xor edx, edx
mov rcx, rbp
call fcn.140143200
lea rdx, str.HTTP_1.0_proxy_connection_set_to_keep_alive
mov rcx, rbx
call fcn.140140680
xor eax, eax
jmp 0x14014e334
cmp byte [rbp + 0x5c8], 0xb
jne 0x14014e864
cmp byte [rbp + 0x3a0], 0
je 0x14014e864
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.Proxy_Connection:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e864
cmp rsi, 0x16
jbe 0x14014e864
lea r9, str.close
mov qword [rsp + 0x20], 5
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.Proxy_Connection:
mov rcx, rdi
call fcn.14014d410
test al, al
je 0x14014e864
mov edx, 1
mov rcx, rbp
call fcn.140143200
lea rdx, str.HTTP_1.1_proxy_connection_set_close
mov rcx, rbx
call fcn.140140680
xor eax, eax
jmp 0x14014e334
cmp dword [rbx + 0x13c], 0x197
jne 0x14014e522
cmp rsi, 0x13
jb 0x14014e522
mov r8d, reloc.WS2_32.dll_send
lea rcx, str.Proxy_authenticate:
mov rdx, rdi
call fcn.140158340
test eax, eax
je 0x14014e52c
mov rcx, rdi
call fcn.14014d4e0
mov rdi, rax
test rax, rax
je 0x14014e8af
mov dl, 1
mov r8, rdi
mov rcx, rbx
call fcn.14014ebc0
mov rcx, rdi
mov ebx, eax
call qword [0x140255558]
mov eax, ebx
jmp 0x14014e334
cmp rsi, 0x10
jb case.0x14014de8a.66
mov r8d, reloc.WS2_32.dll_recv
lea rcx, str.Persistent_Auth:
mov rdx, rdi
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
cmp dword [rbx + 0xc6c], 4
jne case.0x14014de8a.66
mov rcx, rdi
call fcn.14014d4e0
mov rdi, rax
test rax, rax
je 0x14014e8af
mov r8d, 5
lea rdx, str.false
mov rcx, rax
call fcn.140158340
test eax, eax
mov byte [rbp + 0x4f9], 1
mov r9, rdi
lea rdx, str.Negotiate:_noauthpersist_____d__header_part:__s
setne cl
mov byte [rbp + 0x4f8], cl
movzx r8d, cl
mov rcx, rbx
call fcn.140140680
mov rcx, rdi
jmp 0x14014e31d
cmp rsi, 0xc
jb case.0x14014de8a.66
mov r8d, recvfrom
lea rcx, str.Retry_After:
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
lea rsi, [rdi + 0xc]
test rsi, rsi
je case.0x14014de8a.66
xor ecx, ecx
lea r9, [rsp + 0x60]
mov qword [rsp + 0x60], rcx
xor edx, edx
lea r8d, [rcx + 0xa]
mov rcx, rsi
call fcn.14015b720
mov rdi, qword [rsp + 0x60]
test rdi, rdi
jne 0x14014e633
mov rcx, rsi
call fcn.14015b910
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x14014e62e
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
sub rdi, rax
mov qword [rbx + 0x1230], rdi
xor eax, eax
jmp 0x14014e334
mov rdi, qword [rsp + 0x60]
mov qword [rbx + 0x1230], rdi
xor eax, eax
jmp 0x14014e334
cmp qword [rbx + 0x9d8], 0
je 0x14014e74f
cmp byte [rbx + 0x11e7], 0
je 0x14014e74f
cmp rsi, 0xb
jb 0x14014e74f
mov r8d, ntohs
lea rcx, str.Set_Cookie:
call fcn.140158340
test eax, eax
je 0x14014e74f
lea r14, [rdi + 0xb]
test r14, r14
je 0x14014e74f
mov rdi, qword [rbx + 0x11a0]
test rdi, rdi
jne 0x14014e69d
mov rdi, qword [rbp + 0x50]
mov rax, qword [rbp + 0x3c0]
test byte [rax + 0x8c], 2
jne 0x14014e6f3
mov rdx, rdi
lea rcx, str.localhost
call fcn.1401582d0
test eax, eax
jne 0x14014e6f3
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 0x14014e6f3
xor ecx, ecx
lea rdx, [0x1401e7ef8]
nop dword [rax]
movzx eax, byte [rdi + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x14014e74a
cmp rcx, 4
jne 0x14014e6e0
mov sil, 1
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.140152ec0
mov rax, qword [rbx + 0x1070]
xor r9d, r9d
mov rdx, qword [rbx + 0x9d8]
mov r8b, 1
mov byte [rsp + 0x38], sil
mov rcx, rbx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
call fcn.14012e150
mov edx, 2
mov rcx, rbx
call fcn.140152f00
xor eax, eax
jmp 0x14014e334
xor sil, sil
jmp 0x14014e6f6
cmp qword [rbx + 0x9e0], 0
je case.0x14014de8a.66
mov rax, qword [rbp + 0x3c0]
test byte [rax + 0x94], 1
je case.0x14014de8a.66
cmp rsi, 0x1a
jb case.0x14014de8a.66
mov r8d, 0x1a
lea rcx, str.Strict_Transport_Security:
mov rdx, rdi
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
lea r8, [rdi + 0x1a]
test r8, r8
je case.0x14014de8a.66
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbx + 0x9e0]
call fcn.1401463c0
test eax, eax
je case.0x14014de8a.66
lea rdx, str.Illegal_STS_header_skipped
mov rcx, rbx
call fcn.140140680
jmp case.0x14014de8a.66
cmp byte [rbx + 0x1d3], 0
jne case.0x14014de8a.66
cmp byte [rbx + 0x11da], 5
je case.0x14014de8a.66
cmp dword [rbx + 0x13c], 0x130
je case.0x14014de8a.66
cmp rsi, 0x12
jb case.0x14014de8a.66
mov r8d, reloc.WS2_32.dll_select
lea rcx, str.Transfer_Encoding:
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
lea rdx, [rdi + 0x12]
test rdx, rdx
je case.0x14014de8a.66
mov r8d, 1
mov rcx, rbx
call fcn.14015ad30
test eax, eax
jne 0x14014e334
cmp byte [rbx + 0x1d4], al
jne 0x14014e864
cmp byte [rbx + 0x9b1], al
je 0x14014e864
lea edx, [rax + 1]
mov rcx, rbp
call fcn.140143200
mov byte [rbx + 0x1d5], 1
xor eax, eax
jmp 0x14014e334
cmp dword [rbx + 0x13c], 0x191
jne case.0x14014de8a.66
cmp rsi, 0x11
jb case.0x14014de8a.66
mov r8d, reloc.WS2_32.dll_recvfrom
lea rcx, str.WWW_Authenticate:
call fcn.140158340
test eax, eax
je case.0x14014de8a.66
mov rcx, rdi
call fcn.14014d4e0
mov rdi, rax
test rax, rax
jne 0x14014e8b9
mov eax, 0x1b
jmp 0x14014e334
xor edx, edx
jmp 0x14014e505