Function at 0x14009add0
Capabilities:
Check http status code

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0xe8
mov rax, qword [rsp + 0xf0]
add rax, 0xe8
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xdd]
test eax, eax
jne 0x14009af1a
mov rax, qword [rsp + 0xf0]
movzx eax, byte [rax + 0xa7c]
test eax, eax
jne 0x14009af1a
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, [0x1400e0ab0]
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009af1a
lea rcx, [0x1400e0aa0]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xd0]
mov r8d, 0xa
xor edx, edx
mov rcx, rax
call fcn.1400a47d0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0
jne 0x14009aea6
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xd0]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov qword [rax + 8], rcx
jmp 0x14009af15
cmp dword [rsp + 0x60], 1
jne 0x14009aef7
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x708], 0
je 0x14009aedd
lea rdx, str.Maximum_file_size_exceeded
mov rcx, qword [rsp + 0xf0]
call fcn.14006f3b4
mov eax, 0x3f
jmp 0x14009bc4d
mov edx, 2
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
xor eax, eax
test eax, eax
jne 0x14009aeef
jmp 0x14009af15
lea rdx, str.Invalid_Content_Length:_value
mov rcx, qword [rsp + 0xf0]
call fcn.14006f3b4
mov eax, 8
jmp 0x14009bc4d
jmp 0x14009bc4b
mov r8d, reloc.WS2_32.dll_listen
lea rdx, [0x1400e0a50]
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009afcf
mov rcx, qword [rsp + 0x100]
call fcn.1400a2978
mov qword [rsp + 0x80], rax
cmp qword [rsp + 0x80], 0
jne 0x14009af66
mov eax, 0x1b
jmp 0x14009bc4d
mov rax, qword [rsp + 0x80]
movsx eax, byte [rax]
test eax, eax
jne 0x14009af85
mov rcx, qword [rsp + 0x80]
call qword [fcn.1400337c0]
jmp 0x14009afca
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x12b0]
call qword [fcn.1400337c0]
mov rax, qword [rsp + 0xf0]
mov qword [rax + 0x12b0], 0
xor eax, eax
test eax, eax
jne 0x14009af85
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x12b0], rcx
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x1b8]
cmp eax, 0xa
jne 0x14009b041
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x3c4]
test eax, eax
je 0x14009b041
mov qword [rsp + 0x20], 0xa
lea r9, str.keep_alive
mov r8d, select
lea rdx, str.Proxy_Connection:
mov rcx, qword [rsp + 0x100]
call fcn.1400a305c
movzx eax, al
test eax, eax
je 0x14009b041
xor edx, edx
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
xor eax, eax
test eax, eax
jne 0x14009b036
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x1b8]
cmp eax, 0xb
jne 0x14009b0b6
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x3c4]
test eax, eax
je 0x14009b0b6
mov qword [rsp + 0x20], 5
lea r9, str.close
mov r8d, select
lea rdx, [0x1400e0a10]
mov rcx, qword [rsp + 0x100]
call fcn.1400a305c
movzx eax, al
test eax, eax
je 0x14009b0b6
mov edx, 1
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
xor eax, eax
test eax, eax
jne 0x14009b0ab
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x1b8]
cmp eax, 0xa
jne 0x14009b115
mov qword [rsp + 0x20], 0xa
lea r9, [0x1400e0a00]
mov r8d, listen
lea rdx, [0x1400e09f0]
mov rcx, qword [rsp + 0x100]
call fcn.1400a305c
movzx eax, al
test eax, eax
je 0x14009b115
xor edx, edx
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
xor eax, eax
test eax, eax
jne 0x14009b10a
jmp 0x14009bc4b
mov qword [rsp + 0x20], 5
lea r9, [0x1400de89c]
mov r8d, listen
lea rdx, [0x1400e09e0]
mov rcx, qword [rsp + 0x100]
call fcn.1400a305c
movzx eax, al
test eax, eax
je 0x14009b15d
mov edx, 2
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
jmp 0x14009bc4b
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xdd]
test eax, eax
jne 0x14009b206
mov r8d, reloc.WS2_32.dll_select
lea rdx, [0x1400e09c8]
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b206
lea rcx, [0x1400e09b0]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov r8d, 1
mov rdx, rax
mov rcx, qword [rsp + 0xf0]
call fcn.1400837c0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14009b1d3
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xde]
test eax, eax
jne 0x14009b201
mov edx, 1
mov rcx, qword [rsp + 0xf8]
call fcn.140071e80
mov rax, qword [rsp + 0x48]
mov byte [rax + 0xdf], 1
jmp 0x14009bc4b
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xdd]
test eax, eax
jne 0x14009b29a
mov r8d, select
lea rdx, str.Content_Encoding:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b29a
mov eax, 8
imul rax, rax, 9
mov rcx, qword [rsp + 0xf0]
cmp qword [rcx + rax + 0x740], 0
je 0x14009b29a
lea rcx, [0x1400e0980]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rsp + 0xf0]
call fcn.1400837c0
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14009b295
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
jmp 0x14009bc4b
mov r8d, listen
lea rdx, str.Retry_After:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b36a
mov qword [rsp + 0xa0], 0
lea rcx, [0x1400e0960]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.1400a55bc
mov qword [rsp + 0xb8], rax
cmp qword [rsp + 0xb8], 0xffffffffffffffff
jne 0x14009b331
lea rcx, [0x1400e0950]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
lea r9, [rsp + 0xa0]
mov r8d, 0xa
xor edx, edx
mov rcx, rax
call fcn.1400a47d0
jmp 0x14009b34e
xor ecx, ecx
call fcn.140037010
mov rcx, qword [rsp + 0xb8]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x12c0], rcx
jmp 0x14009bc4b
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xdd]
test eax, eax
jne 0x14009b46f
mov r8d, select
lea rdx, str.Content_Range:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b46f
lea rcx, [0x1400e0930]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
test eax, eax
je 0x14009b3fa
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax]
mov ecx, eax
call fcn.1400a6714
test eax, eax
jne 0x14009b3fa
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
cmp eax, 0x2a
je 0x14009b3fa
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
jmp 0x14009b3bf
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax]
mov ecx, eax
call fcn.1400a6714
test eax, eax
je 0x14009b457
mov rax, qword [rsp + 0x48]
add rax, 0x68
mov r9, rax
mov r8d, 0xa
xor edx, edx
mov rcx, qword [rsp + 0x58]
call fcn.1400a47d0
test eax, eax
jne 0x14009b455
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x68]
cmp qword [rax + 0x10d8], rcx
jne 0x14009b455
mov rax, qword [rsp + 0x48]
mov byte [rax + 0xda], 1
jmp 0x14009b46a
mov rax, qword [rsp + 0xf0]
mov qword [rax + 0x10d8], 0
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0xa98], 0
je 0x14009b640
mov rax, qword [rsp + 0xf0]
movzx eax, byte [rax + 0x126e]
test eax, eax
je 0x14009b640
mov r8d, listen
lea rdx, str.Set_Cookie:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b640
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x1228], 0
je 0x14009b4e9
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax + 0x1228]
mov qword [rsp + 0xc0], rax
jmp 0x14009b500
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax + 0xa0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax + 0x408]
mov eax, dword [rax + 0x84]
and eax, 2
test eax, eax
jne 0x14009b57e
mov rdx, qword [rsp + 0x88]
lea rcx, [0x1400e0910]
call fcn.1400842b8
test eax, eax
jne 0x14009b57e
lea rdx, [0x1400e0900]
mov rcx, qword [rsp + 0x88]
call fcn.140036d40
test eax, eax
je 0x14009b57e
lea rdx, [0x1400de84c]
mov rcx, qword [rsp + 0x88]
call fcn.140036d40
test eax, eax
je 0x14009b57e
mov dword [rsp + 0x64], 0
jmp 0x14009b586
mov dword [rsp + 0x64], 1
cmp dword [rsp + 0x64], 0
jne 0x14009b597
mov dword [rsp + 0x68], 0
jmp 0x14009b59f
mov dword [rsp + 0x68], 1
mov al, byte [rsp + 0x68]
mov byte [rsp + 0x50], al
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xf0]
call fcn.1400836b0
lea rcx, [0x1400e08f0]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov cl, byte [rsp + 0x50]
mov byte [rsp + 0x38], cl
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x1130]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8b, 1
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rax + 0xa98]
mov rcx, qword [rsp + 0xf0]
call fcn.140073e24
mov edx, 2
mov rcx, qword [rsp + 0xf0]
call fcn.140083740
jmp 0x14009bc4b
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0xdd]
test eax, eax
jne 0x14009b6fb
mov r8d, select
lea rdx, str.Last_Modified:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b6fb
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x550], 0
jne 0x14009b69a
mov rax, qword [rsp + 0xf0]
movzx eax, byte [rax + 0xa66]
test eax, eax
je 0x14009b6fb
lea rcx, [0x1400e08d0]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.1400a55bc
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x98], rax
mov rax, qword [rsp + 0xf0]
movzx eax, byte [rax + 0xa66]
test eax, eax
je 0x14009b6f6
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x98]
mov qword [rax + 0x1288], rcx
jmp 0x14009bc4b
mov r8d, select
lea rdx, str.WWW_Authenticate:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b727
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x70], 0x191
je 0x14009b75b
mov r8d, reloc.WS2_32.dll_send
lea rdx, str.Proxy_authenticate:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b806
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x70], 0x197
jne 0x14009b806
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x70], 0x197
jne 0x14009b773
mov dword [rsp + 0x6c], 1
jmp 0x14009b77b
mov dword [rsp + 0x6c], 0
cmp dword [rsp + 0x6c], 0
jne 0x14009b78c
mov dword [rsp + 0x70], 0
jmp 0x14009b794
mov dword [rsp + 0x70], 1
mov al, byte [rsp + 0x70]
mov byte [rsp + 0x51], al
mov rcx, qword [rsp + 0x100]
call fcn.1400a2978
mov qword [rsp + 0xa8], rax
cmp qword [rsp + 0xa8], 0
jne 0x14009b7c6
mov eax, 0x1b
jmp 0x14009bc4d
mov r8, qword [rsp + 0xa8]
mov dl, byte [rsp + 0x51]
mov rcx, qword [rsp + 0xf0]
call fcn.1400a2210
mov dword [rsp + 0x40], eax
mov rcx, qword [rsp + 0xa8]
call qword [fcn.1400337c0]
cmp dword [rsp + 0x40], 0
je 0x14009b801
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
jmp 0x14009bc4b
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.Persistent_Auth:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009b90d
mov rax, qword [rsp + 0xf8]
add rax, 0x5d0
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xf0]
add rax, 0xd98
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xd8]
cmp dword [rax + 4], 4
jne 0x14009b908
mov rcx, qword [rsp + 0x100]
call fcn.1400a2978
mov qword [rsp + 0xb0], rax
cmp qword [rsp + 0xb0], 0
jne 0x14009b890
mov eax, 0x1b
jmp 0x14009bc4d
mov r8d, 5
lea rdx, str.false
mov rcx, qword [rsp + 0xb0]
call fcn.140084390
test eax, eax
je 0x14009b8b8
mov dword [rsp + 0x74], 1
jmp 0x14009b8c0
mov dword [rsp + 0x74], 0
cmp dword [rsp + 0x74], 0
jne 0x14009b8d1
mov dword [rsp + 0x78], 0
jmp 0x14009b8d9
mov dword [rsp + 0x78], 1
mov rax, qword [rsp + 0xc8]
mov cl, byte [rsp + 0x78]
mov byte [rax + 0x78], cl
mov rax, qword [rsp + 0xc8]
mov byte [rax + 0x79], 1
xor eax, eax
test eax, eax
jne 0x14009b8f4
mov rcx, qword [rsp + 0xb0]
call qword [fcn.1400337c0]
jmp 0x14009bc4b
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x70], 0x12c
jl 0x14009ba53
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x70], 0x190
jge 0x14009ba53
mov r8d, 9
lea rdx, str.Location:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009ba53
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x190], 0
jne 0x14009ba53
mov rcx, qword [rsp + 0x100]
call fcn.1400a2978
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x90], 0
jne 0x14009b993
mov eax, 0x1b
jmp 0x14009bc4d
mov rax, qword [rsp + 0x90]
movsx eax, byte [rax]
test eax, eax
jne 0x14009b9b5
mov rcx, qword [rsp + 0x90]
call qword [fcn.1400337c0]
jmp 0x14009ba4e
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x90]
mov qword [rax + 0x190], rcx
mov rax, qword [rsp + 0xf0]
movzx eax, byte [rax + 0xa6e]
test eax, eax
je 0x14009ba4e
xor eax, eax
test eax, eax
jne 0x14009b9df
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x190]
call qword [fcn.140046d70]
mov rcx, qword [rsp + 0xf0]
mov qword [rcx + 0x198], rax
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x198], 0
jne 0x14009ba25
mov eax, 0x1b
jmp 0x14009bc4d
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xf0]
call fcn.14009fd34
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14009ba4e
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0xaa0], 0
je 0x14009baff
mov r8d, 0x1a
lea rdx, str.Strict_Transport_Security:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009baff
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax + 0x408]
mov eax, dword [rax + 0x8c]
and eax, 1
test eax, eax
je 0x14009baff
lea rcx, [0x1400e0838]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov r8, rax
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rax + 0x1108]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0xaa0]
call fcn.14007e72c
mov dword [rsp + 0x98], eax
cmp dword [rsp + 0x98], 0
je 0x14009bafa
xor eax, eax
test eax, eax
jne 0x14009baf4
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0xaa8], 0
je 0x14009bc18
mov r8d, 8
lea rdx, str.Alt_Svc:
mov rcx, qword [rsp + 0x100]
call fcn.140084390
test eax, eax
je 0x14009bc18
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax + 0x408]
mov eax, dword [rax + 0x8c]
and eax, 1
test eax, eax
jne 0x14009bb5d
xor eax, eax
test eax, eax
je 0x14009bc18
mov rax, qword [rsp + 0xf8]
movzx eax, byte [rax + 0x1b8]
cmp eax, 0x14
jne 0x14009bb7b
mov dword [rsp + 0x7c], reloc.WS2_32.dll_recv
jmp 0x14009bb83
mov dword [rsp + 0x7c], 8
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0xf8]
mov ecx, dword [rax + 0x154]
call fcn.14006f540
mov word [rsp + 0x52], ax
lea rcx, [0x1400e0818]
call fcn.140035aa0
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
movzx ecx, word [rsp + 0x52]
mov word [rsp + 0x28], cx
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx + 0xa0]
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x9c]
mov r8, rax
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rax + 0xaa8]
mov rcx, qword [rsp + 0xf0]
call fcn.1400811b4
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x14009bc16
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
jmp 0x14009bc4b
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax + 0x408]
mov eax, dword [rax + 0x84]
and eax, 0x40000
test eax, eax
je 0x14009bc4b
mov dword [rsp + 0x40], 4
cmp dword [rsp + 0x40], 0
je 0x14009bc4b
mov eax, dword [rsp + 0x40]
jmp 0x14009bc4d
xor eax, eax
add rsp, 0xe8
ret