// File: 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 %rbp
movq %rsp, %rbp
subq $0x130, %rsp            # imm = 0x130
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x110(%rbp)
movq 0x28(%rax), %rax
movq %rax, -0x118(%rbp)
movq -0x10(%rbp), %rdi
callq 0x40e0
movq -0x118(%rbp), %rdi
movq %rax, %rdx
movl $0x1, %esi
callq 0x4ac0
movq -0x110(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0x4c40
testb $0x1, %al
jne 0x55d3
jmp 0x56e2
movq -0x110(%rbp), %rax
movq 0x28(%rax), %rdi
xorl %esi, %esi
callq 0x4d70
movq %rax, -0x128(%rbp)
leaq -0x39(%rbp), %rdi
movq %rdi, -0x120(%rbp)
callq 0x44c0
movq -0x128(%rbp), %rsi
movq -0x120(%rbp), %rdx
leaq -0x38(%rbp), %rdi
callq 0x58c0
jmp 0x5615
leaq -0x39(%rbp), %rdi
callq 0x4320
leaq -0x98(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x40f0
jmp 0x5630
leaq -0x78(%rbp), %rdi
leaq -0x98(%rbp), %rsi
movl $0x1, %edx
callq 0x5970
jmp 0x5647
leaq -0x98(%rbp), %rdi
callq 0x4160
movq -0x18(%rbp), %rdi
movq (%rdi), %rax
movq 0x10(%rax), %rax
leaq -0x78(%rbp), %rsi
callq *%rax
jmp 0x5666
leaq -0x78(%rbp), %rdi
callq 0x59e0
leaq -0x38(%rbp), %rdi
callq 0x4160
jmp 0x57ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x39(%rbp), %rdi
callq 0x4320
jmp 0x5806
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x56d4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x4160
jmp 0x56d4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x59e0
leaq -0x38(%rbp), %rdi
callq 0x4160
jmp 0x5806
leaq -0xb9(%rbp), %rdi
movq %rdi, -0x130(%rbp)
callq 0x44c0
movq -0x130(%rbp), %rdx
leaq 0x8d51(%rip), %rsi      # 0xe454
leaq -0xb8(%rbp), %rdi
callq 0x58c0
jmp 0x5711
leaq -0xb9(%rbp), %rdi
callq 0x4320
leaq -0x108(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x40f0
jmp 0x5732
leaq -0xe8(%rbp), %rdi
leaq -0x108(%rbp), %rsi
xorl %edx, %edx
callq 0x5970
jmp 0x5749
leaq -0x108(%rbp), %rdi
callq 0x4160
movq -0x18(%rbp), %rdi
movq (%rdi), %rax
movq 0x10(%rax), %rax
leaq -0xe8(%rbp), %rsi
callq *%rax
jmp 0x576b
leaq -0xe8(%rbp), %rdi
callq 0x59e0
leaq -0xb8(%rbp), %rdi
callq 0x4160
jmp 0x57ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xb9(%rbp), %rdi
callq 0x4320
jmp 0x5806
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x57df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x108(%rbp), %rdi
callq 0x4160
jmp 0x57df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xe8(%rbp), %rdi
callq 0x59e0
leaq -0xb8(%rbp), %rdi
callq 0x4160
jmp 0x5806
movq -0x110(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0x4da0
addq $0x130, %rsp            # imm = 0x130
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0x44b0
nop