// File: /workspace/github_cpp_makefile_star2_O1/dustin[P]kvtest/sqlite-base.cc
// Function: kvtest::Sqlite3::get(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, kvtest::Callback<kvtest::GetValue>&)
void Sqlite3::get(std::string &key, kvtest::Callback<kvtest::GetValue> &cb) {
        sel_stmt->bind(1, key.c_str());

        if(sel_stmt->fetch()) {
            std::string str(sel_stmt->column(0));
            kvtest::GetValue rv(str, true);
            cb.callback(rv);
        } else {
            std::string str(":(");
            kvtest::GetValue rv(str, false);
            cb.callback(rv);
        }
        sel_stmt->reset();
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdx, %r14
movq %rdi, %rbx
movq 0x28(%rdi), %rax
movq (%rsi), %r15
movq 0x8(%rax), %r12
movq %r15, %rdi
callq 0x30e0
movq %r12, %rdi
movl $0x1, %esi
movq %r15, %rdx
movl %eax, %ecx
xorl %r8d, %r8d
callq 0x3220
movq 0x28(%rbx), %rdi
callq 0x3974
testb %al, %al
je 0x3fc8
movq 0x28(%rbx), %rax
movq 0x8(%rax), %rdi
xorl %esi, %esi
callq 0x3210
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
movq %rax, %rsi
callq 0x419c
leaq 0x78(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
addq %rsi, %rdx
leaq 0x68(%rsp), %rdi
callq 0x4272
leaq 0x20(%rsp), %rdi
leaq 0x68(%rsp), %rsi
movl $0x1, %edx
callq 0x41da
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x3f6c
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x32c0
movq (%r14), %rax
leaq 0x20(%rsp), %rsi
movq %r14, %rdi
callq *0x10(%rax)
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x3f95
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x32c0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x3fb0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x32c0
movq 0x28(%rbx), %rdi
callq 0x3a2c
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
leaq 0x10(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x547c(%rip), %rsi      # 0x9454
leaq 0x5477(%rip), %rdx      # 0x9456
movq %rsp, %rdi
callq 0x4302
leaq 0x58(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
addq %rsi, %rdx
leaq 0x48(%rsp), %rdi
callq 0x4272
leaq 0x20(%rsp), %rdi
leaq 0x48(%rsp), %rsi
xorl %edx, %edx
callq 0x41da
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x402f
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x32c0
movq (%r14), %rax
leaq 0x20(%rsp), %rsi
movq %r14, %rdi
callq *0x10(%rax)
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x4058
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x32c0
movq (%rsp), %rdi
cmpq %r15, %rdi
jne 0x3fa3
jmp 0x3fb0
movq %rax, %rbx
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x40d5
movq 0x30(%rsp), %rsi
jmp 0x40ac
movq %rax, %rbx
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x40e3
movq 0x30(%rsp), %rsi
jmp 0x40c8
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x40d5
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x32c0
jmp 0x40d5
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x40e3
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x32c0
jmp 0x40e3
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r15, %rdi
jne 0x40f1
jmp 0x4105
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x4105
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x32c0
jmp 0x4105
jmp 0x4102
movq %rax, %rbx
movq %rbx, %rdi
callq 0x3440
nop