// File: /workspace/github_cpp_makefile_star2_O1/trisolaris233[P]httpc/src/connection.hpp
// Function: httpc::Connection::CheckKeepAlive_()
void CheckKeepAlive_() {
            if (this->request_.http_major_version == 1) {
                bool conn_flag = false;
                auto itr = this->request_.FindHeader("Connection");
                if (itr != this->request_.HeaderCEnd()) {
                    if (itr->value == "close") {
                        this->keep_alive_ = false;
                    } else if (itr->value == "keep-alive") {
                        this->keep_alive_ = true;
                    }
                } else {
                    if (this->request_.http_minor_version == 1) {
                        this->keep_alive_ = true;
                    } else if (this->request_.http_minor_version == 0) {
                        this->keep_alive_ = false;
                    }
                }
            }
            if (this->keep_alive_) {
                this->response_.AddHeader(Header{"Connection", "keep-alive"});
            } else {
                this->response_.AddHeader(Header{"Connection", "close"});
            }
            
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x88, %rsp
movq %rdi, %r14
cmpl $0x1, 0x338(%rdi)
jne 0x16f6e
leaq 0x2a8(%r14), %rdi
leaq 0xdcb4(%rip), %rsi      # 0x24bc8
callq 0x17bca
cmpq 0x348(%r14), %rax
je 0x16f51
movq %rax, %rbx
addq $0x20, %rbx
leaq 0xdc7f(%rip), %rsi      # 0x24baf
movq %rbx, %rdi
callq 0x81a0
testl %eax, %eax
je 0x16f61
leaq 0xdc90(%rip), %rsi      # 0x24bd3
movq %rbx, %rdi
callq 0x81a0
testl %eax, %eax
jne 0x16f6e
jmp 0x16f65
movl 0x33c(%r14), %eax
cmpl $0x1, %eax
je 0x16f65
testl %eax, %eax
jne 0x16f6e
xorl %eax, %eax
jmp 0x16f67
movb $0x1, %al
movb %al, 0x491(%r14)
leaq 0x3d0(%r14), %rbx
cmpb $0x1, 0x491(%r14)
jne 0x16fe6
leaq -0x48(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xdc3a(%rip), %rsi      # 0x24bc8
leaq 0xdc3d(%rip), %rdx      # 0x24bd2
leaq -0x58(%rbp), %rdi
callq 0x120b6
leaq -0x28(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0xdc26(%rip), %rsi      # 0x24bd3
leaq 0xdc29(%rip), %rdx      # 0x24bdd
leaq -0x38(%rbp), %rdi
callq 0x120b6
leaq -0x98(%rbp), %rdi
leaq -0x58(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0xb6f4
leaq -0x78(%rbp), %rdx
leaq -0x98(%rbp), %rsi
movq %rbx, %rdi
callq 0xb5cc
jmp 0x1704b
leaq -0x48(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xdbd3(%rip), %rsi      # 0x24bc8
leaq 0xdbd6(%rip), %rdx      # 0x24bd2
leaq -0x58(%rbp), %rdi
callq 0x120b6
leaq -0x28(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0xdb9b(%rip), %rsi      # 0x24baf
leaq 0xdb99(%rip), %rdx      # 0x24bb4
leaq -0x38(%rbp), %rdi
callq 0x120b6
leaq -0x98(%rbp), %rdi
leaq -0x58(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0xb6f4
leaq -0x78(%rbp), %rdx
leaq -0x98(%rbp), %rsi
movq %rbx, %rdi
callq 0xb5cc
leaq -0x68(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x17064
movq -0x68(%rbp), %rsi
incq %rsi
callq 0x8520
leaq -0x88(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x17083
movq -0x88(%rbp), %rsi
incq %rsi
callq 0x8520
movq -0x38(%rbp), %rdi
cmpq %r15, %rdi
je 0x17098
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x8520
movq -0x58(%rbp), %rdi
cmpq %r14, %rdi
je 0x170ad
movq -0x48(%rbp), %rsi
incq %rsi
callq 0x8520
addq $0x88, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0x170bd
movq %rax, %rbx
leaq -0x98(%rbp), %rdi
callq 0xb586
jmp 0x170d3
jmp 0x170d0
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r15, %rdi
je 0x170ef
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x8520
jmp 0x170ef
jmp 0x170ec
movq %rax, %rbx
movq -0x58(%rbp), %rdi
cmpq %r14, %rdi
je 0x1710b
movq -0x48(%rbp), %rsi
incq %rsi
callq 0x8520
jmp 0x1710b
jmp 0x17108
movq %rax, %rbx
movq %rbx, %rdi
callq 0x8830
nop