// File: 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
subq $0x190, %rsp            # imm = 0x190
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x158(%rbp)
cmpl $0x1, 0x338(%rax)
jne 0x3095d
movq -0x158(%rbp), %rdi
movb $0x0, -0x9(%rbp)
addq $0x2a8, %rdi            # imm = 0x2A8
leaq 0x293f7(%rip), %rsi     # 0x59c77
callq 0x320b0
movq -0x158(%rbp), %rdi
movq %rax, -0x18(%rbp)
addq $0x2a8, %rdi            # imm = 0x2A8
callq 0x30d50
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x14d60
testb $0x1, %al
jne 0x308b3
jmp 0x30919
leaq -0x18(%rbp), %rdi
callq 0x31450
movq %rax, %rdi
addq $0x20, %rdi
leaq 0x29340(%rip), %rsi     # 0x59c0a
callq 0x13b80
testb $0x1, %al
jne 0x308d5
jmp 0x308e5
movq -0x158(%rbp), %rax
movb $0x0, 0x491(%rax)
jmp 0x30917
leaq -0x18(%rbp), %rdi
callq 0x31450
movq %rax, %rdi
addq $0x20, %rdi
leaq 0x29386(%rip), %rsi     # 0x59c82
callq 0x13b80
testb $0x1, %al
jne 0x30907
jmp 0x30915
movq -0x158(%rbp), %rax
movb $0x1, 0x491(%rax)
jmp 0x30917
jmp 0x3095b
movq -0x158(%rbp), %rax
cmpl $0x1, 0x33c(%rax)
jne 0x30939
movq -0x158(%rbp), %rax
movb $0x1, 0x491(%rax)
jmp 0x30959
movq -0x158(%rbp), %rax
cmpl $0x0, 0x33c(%rax)
jne 0x30957
movq -0x158(%rbp), %rax
movb $0x0, 0x491(%rax)
jmp 0x30959
jmp 0x3095b
jmp 0x3095d
movq -0x158(%rbp), %rax
testb $0x1, 0x491(%rax)
je 0x30acc
movq -0x158(%rbp), %rax
addq $0x3d0, %rax            # imm = 0x3D0
movq %rax, -0x168(%rbp)
leaq -0x81(%rbp), %rdi
movq %rdi, -0x160(%rbp)
callq 0xab40
movq -0x160(%rbp), %rdx
leaq 0x292d1(%rip), %rsi     # 0x59c77
leaq -0x80(%rbp), %rdi
callq 0xf9c0
jmp 0x309b1
leaq -0xb9(%rbp), %rdi
movq %rdi, -0x170(%rbp)
callq 0xab40
movq -0x170(%rbp), %rdx
leaq 0x292b0(%rip), %rsi     # 0x59c82
leaq -0xb8(%rbp), %rdi
callq 0xf9c0
jmp 0x309e0
leaq -0x60(%rbp), %rdi
leaq -0x80(%rbp), %rsi
leaq -0xb8(%rbp), %rdx
callq 0x13030
jmp 0x309f6
movq -0x168(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x32140
jmp 0x30a08
leaq -0x60(%rbp), %rdi
callq 0x12ce0
leaq -0xb8(%rbp), %rdi
callq 0xa450
leaq -0xb9(%rbp), %rdi
callq 0xa740
leaq -0x80(%rbp), %rdi
callq 0xa450
leaq -0x81(%rbp), %rdi
callq 0xa740
jmp 0x30c3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30abb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30aa6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30a9a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x12ce0
leaq -0xb8(%rbp), %rdi
callq 0xa450
leaq -0xb9(%rbp), %rdi
callq 0xa740
leaq -0x80(%rbp), %rdi
callq 0xa450
leaq -0x81(%rbp), %rdi
callq 0xa740
jmp 0x30c45
movq -0x158(%rbp), %rax
addq $0x3d0, %rax            # imm = 0x3D0
movq %rax, -0x180(%rbp)
leaq -0x121(%rbp), %rdi
movq %rdi, -0x178(%rbp)
callq 0xab40
movq -0x178(%rbp), %rdx
leaq 0x29176(%rip), %rsi     # 0x59c77
leaq -0x120(%rbp), %rdi
callq 0xf9c0
jmp 0x30b0f
leaq -0x149(%rbp), %rdi
movq %rdi, -0x188(%rbp)
callq 0xab40
movq -0x188(%rbp), %rdx
leaq 0x290da(%rip), %rsi     # 0x59c0a
leaq -0x148(%rbp), %rdi
callq 0xf9c0
jmp 0x30b3e
leaq -0x100(%rbp), %rdi
leaq -0x120(%rbp), %rsi
leaq -0x148(%rbp), %rdx
callq 0x13030
jmp 0x30b5a
movq -0x180(%rbp), %rdi
leaq -0x100(%rbp), %rsi
callq 0x32140
jmp 0x30b6f
leaq -0x100(%rbp), %rdi
callq 0x12ce0
leaq -0x148(%rbp), %rdi
callq 0xa450
leaq -0x149(%rbp), %rdi
callq 0xa740
leaq -0x120(%rbp), %rdi
callq 0xa450
leaq -0x121(%rbp), %rdi
callq 0xa740
jmp 0x30c3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30c2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30c16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
jmp 0x30c0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x90(%rbp)
movl %eax, -0x94(%rbp)
leaq -0x100(%rbp), %rdi
callq 0x12ce0
leaq -0x148(%rbp), %rdi
callq 0xa450
leaq -0x149(%rbp), %rdi
callq 0xa740
leaq -0x120(%rbp), %rdi
callq 0xa450
leaq -0x121(%rbp), %rdi
callq 0xa740
jmp 0x30c45
addq $0x190, %rsp            # imm = 0x190
popq %rbp
retq
movq -0x90(%rbp), %rdi
callq 0xab10
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)