Function at 0x1401cc214
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r13d, r13d
mov rbx, rdx
mov rbp, rcx
cmp byte [rdx + 0x5f], r13b
jne 0x1401cc250
lea r8, str.cannot_VACUUM_from_within_a_transaction
call fcn.140227ba0
mov eax, 1
jmp 0x1401cc586
cmp dword [rdx + 0xbc], 1
jle 0x1401cc262
lea r8, str.cannot_VACUUM___SQL_statements_in_progress
jmp 0x1401cc241
mov eax, dword [rdx + 0x30]
movsxd r15, dword [rdx + 0x28]
mov dword [rsp + 0x2c], eax
movzx eax, word [rdx + 0x2c]
or dword [rdx + 0x2c], 6
mov word [rsp + 0x88], ax
mov eax, dword [rdx + 0x74]
mov dword [rsp + 0x30], eax
mov eax, dword [rdx + 0x78]
mov dword [rsp + 0x34], eax
mov al, byte [rdx + 0x68]
mov byte [rsp + 0x78], al
mov rax, qword [rdx + 0x30]
mov byte [rdx + 0x68], r13b
and rax, 0xffffffffefffaf7f
or rax, 0x201
movsxd r12, r8d
mov qword [rdx + 0x30], rax
lea r8, str.ATTACHAS_vacuum_db
mov rax, qword [rdx + 0x20]
mov rdx, rbp
shl r12, 5
mov dword [rsp + 0x28], r15d
mov rcx, qword [r12 + rax]
mov r14, qword [r12 + rax + 8]
mov qword [rsp + 0x38], rcx
mov rax, qword [r14 + 8]
mov rcx, qword [rax]
movzx eax, byte [rcx + 0x10]
mov rcx, rbx
mov dword [rsp + 0x24], eax
call fcn.1401cc6a4
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov r13, r15
shl r13, 5
add r13, qword [rbx + 0x20]
mov r15, qword [r13 + 8]
mov rcx, r15
call fcn.1402133b4
mov rcx, r14
call fcn.1402146e0
mov rcx, qword [rbx + 0x20]
mov dword [rsp + 0x20], eax
mov rdx, qword [r12 + rcx + 0x18]
mov rcx, r15
mov edx, dword [rdx + 0x74]
call fcn.140214974
xor edx, edx
mov rcx, r14
call fcn.140214908
mov edx, eax
mov rcx, r15
call fcn.140214908
lea edx, [rdi + 0x21]
mov rcx, r15
call fcn.14021483c
lea r8, str.BEGIN
mov rdx, rbp
mov rcx, rbx
call fcn.1401cc6a4
mov edi, eax
test eax, eax
jne 0x1401cc51d
xor r8d, r8d
lea edx, [rax + 2]
mov rcx, r14
call fcn.140213e8c
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov rax, qword [r14 + 8]
mov rcx, qword [rax]
cmp byte [rcx + 9], 5
jne 0x1401cc38d
and dword [rbx + 0x6c], edi
mov rax, qword [r14 + 8]
xor r9d, r9d
mov edi, dword [rsp + 0x20]
mov rcx, r15
mov r8d, edi
mov edx, dword [rax + 0x30]
call fcn.140214758
test eax, eax
jne 0x1401cc518
cmp dword [rsp + 0x24], eax
jne 0x1401cc3cd
mov edx, dword [rbx + 0x6c]
xor r9d, r9d
mov r8d, edi
mov rcx, r15
call fcn.140214758
test eax, eax
jne 0x1401cc518
cmp byte [rbx + 0x61], 0
jne 0x1401cc518
mov al, byte [rbx + 0x64]
test al, al
js 0x1401cc3e3
movsx eax, al
jmp 0x1401cc3eb
mov rcx, r14
call fcn.140214504
mov edx, eax
mov rcx, r15
call fcn.140214568
mov eax, dword [rsp + 0x28]
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typetableAND_name__sqlite_sequence_AND_coalesce_rootpage_1__0
mov r12, qword [rsp + 0x38]
mov rdx, rbp
mov r9, r12
mov byte [rbx + 0xb4], al
mov rcx, rbx
call fcn.1401cc644
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov r9, r12
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typeindex
mov rdx, rbp
mov rcx, rbx
call fcn.1401cc644
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov r9, r12
mov byte [rbx + 0xb4], al
lea r8, str.SELECTINSERT_INTO_vacuum_db.quote_name__SELECTFROM__w_.quote_name_FROM_vacuum_db.sqlite_master_WHERE_typetableAND_coalesce_rootpage_1__0
mov rdx, rbp
mov rcx, rbx
call fcn.1401cc644
and dword [rbx + 0x2c], 0xfffffffb
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov r9, r12
lea r8, str.INSERT_INTO_vacuum_db.sqlite_master_SELECTFROM___w_.sqlite_master_WHERE_type_IN_view_trigger__OR_typetableAND_rootpage0_
mov rdx, rbp
mov rcx, rbx
call fcn.1401cc644
mov edi, eax
test eax, eax
jne 0x1401cc51d
xor ebp, ebp
lea rdi, [0x140697bd0]
mov rcx, r14
movzx edx, byte [rdi + rbp]
lea r8, [rsp + 0x28]
call fcn.14020dcb8
movzx r8d, byte [rdi + rbp + 1]
mov rcx, r15
add r8d, dword [rsp + 0x28]
movzx edx, byte [rdi + rbp]
call fcn.14020dc14
mov edi, eax
test eax, eax
jne 0x1401cc51d
add rbp, 2
cmp rbp, 0xa
jl 0x1401cc48c
mov rdx, r15
mov rcx, r14
call fcn.14020bd00
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov rcx, r15
call fcn.1402133b4
mov edi, eax
test eax, eax
jne 0x1401cc51d
mov rcx, r15
call fcn.140214504
mov edx, eax
mov rcx, r14
call fcn.140214568
mov rax, qword [r15 + 8]
lea r9d, [rdi + 1]
mov r8d, dword [rsp + 0x20]
mov rcx, r14
mov edx, dword [rax + 0x30]
call fcn.140214758
mov edi, eax
jmp 0x1401cc51d
mov edi, 7
movzx eax, word [rsp + 0x88]
or edx, 0xffffffff
mov dword [rbx + 0x2c], eax
mov r9d, 1
mov eax, dword [rsp + 0x2c]
mov r8d, edx
mov qword [rbx + 0x30], rax
mov rcx, r14
mov eax, dword [rsp + 0x30]
mov dword [rbx + 0x74], eax
mov eax, dword [rsp + 0x34]
mov dword [rbx + 0x78], eax
mov al, byte [rsp + 0x78]
mov byte [rbx + 0x68], al
mov byte [rbx + 0xb4], 0
call fcn.140214758
mov byte [rbx + 0x5f], 1
test r13, r13
je 0x1401cc57c
mov rcx, qword [r13 + 8]
call fcn.1402149f0
and qword [r13 + 8], 0
and qword [r13 + 0x18], 0
mov rcx, rbx
call fcn.1401ed034
mov eax, edi
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret