// File: /workspace/github_cpp_makefile_star2_O2/QZzcoder[P]LiveChat/server.cpp
// Function: storeMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
bool storeMessage(string origin,string target,string msg){
    MYSQL mysql_conn;
    MYSQL_RES * ptr_res;
    MYSQL_ROW result_row;
    mysql_init(&mysql_conn);
    if(!mysql_real_connect(&mysql_conn,"localhost","root",dbpassword,"Chat",0,NULL,0)){
        cout<<"mysql error";
        exit(1);
    }
    string sql = "insert into message values("+to_string(timeStamp())
                +",\'"+origin+"\',\'"+target+"\',\'"+msg+"\');";

    return !mysql_query(&mysql_conn,sql.c_str());
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x5c0, %rsp            # imm = 0x5C0
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
leaq -0x5c8(%rbp), %r12
movq %r12, %rdi
callq 0x3130
xorps %xmm0, %xmm0
movups %xmm0, (%rsp)
leaq 0x34c6(%rip), %rsi      # 0x7020
leaq 0x34c9(%rip), %rdx      # 0x702a
leaq 0x7708(%rip), %rcx      # 0xb270
leaq 0x34c0(%rip), %r8       # 0x702f
movq %r12, %rdi
xorl %r9d, %r9d
callq 0x3170
testq %rax, %rax
je 0x3cd5
callq 0x6978
leaq -0x140(%rbp), %r12
movq %r12, %rdi
movq %rax, %rsi
callq 0x5079
leaq 0x3502(%rip), %rsi      # 0x70a3
leaq -0x40(%rbp), %rdi
movq %r12, %rdx
callq 0x504b
leaq 0x350c(%rip), %rdx      # 0x70c0
leaq -0x60(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x4ec0
leaq -0x80(%rbp), %rdi
leaq -0x60(%rbp), %rsi
movq %r15, %rdx
callq 0x4f5f
leaq 0x34e7(%rip), %rdx      # 0x70bf
leaq -0xa0(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x4ec0
leaq -0xc0(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
movq %r14, %rdx
callq 0x4f5f
leaq 0x34ba(%rip), %rdx      # 0x70bf
leaq -0xe0(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x4ec0
leaq -0x100(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
movq %rbx, %rdx
callq 0x4f5f
leaq 0x348e(%rip), %rdx      # 0x70c3
leaq -0x120(%rbp), %rdi
leaq -0x100(%rbp), %rsi
callq 0x4ec0
leaq -0x100(%rbp), %rdi
callq 0x3110
leaq -0xe0(%rbp), %rdi
callq 0x3110
leaq -0xc0(%rbp), %rdi
callq 0x3110
leaq -0xa0(%rbp), %rdi
callq 0x3110
leaq -0x80(%rbp), %rdi
callq 0x3110
leaq -0x60(%rbp), %rdi
callq 0x3110
leaq -0x40(%rbp), %rdi
callq 0x3110
leaq -0x140(%rbp), %rdi
callq 0x3110
movq -0x120(%rbp), %rsi
leaq -0x5c8(%rbp), %rdi
callq 0x31d0
testl %eax, %eax
sete %bl
leaq -0x120(%rbp), %rdi
callq 0x3110
movl %ebx, %eax
addq $0x5c0, %rsp            # imm = 0x5C0
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq 0x72fc(%rip), %rdi      # 0xafd8
leaq 0x3351(%rip), %rsi      # 0x7034
callq 0x32b0
pushq $0x1
popq %rdi
callq 0x3340
movq %rax, %rbx
leaq -0x120(%rbp), %rdi
jmp 0x3d65
movq %rax, %rbx
leaq -0x100(%rbp), %rdi
callq 0x3110
jmp 0x3d10
movq %rax, %rbx
leaq -0xe0(%rbp), %rdi
callq 0x3110
jmp 0x3d21
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
callq 0x3110
jmp 0x3d32
movq %rax, %rbx
leaq -0xa0(%rbp), %rdi
callq 0x3110
jmp 0x3d43
movq %rax, %rbx
leaq -0x80(%rbp), %rdi
callq 0x3110
leaq -0x60(%rbp), %rdi
callq 0x3110
leaq -0x40(%rbp), %rdi
callq 0x3110
leaq -0x140(%rbp), %rdi
callq 0x3110
movq %rbx, %rdi
callq 0x3440
movq %rax, %rbx
jmp 0x3d4c
movq %rax, %rbx
jmp 0x3d55
movq %rax, %rbx
jmp 0x3d5e