Function at 0x1400ce4f4
Capabilities:
Reference sql statements

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x30
xor r14d, r14d
mov rdi, rdx
mov rbp, rcx
cmp byte [rdx + 0x28], r14b
jne 0x1400ce528
lea r8, str.cannot_VACUUM_from_within_a_transaction
call fcn.1400d0874
mov eax, 1
jmp 0x1400ce872
cmp dword [rdx + 0xb0], 1
jle 0x1400ce53a
lea r8, str.cannot_VACUUM___SQL_statements_in_progress
jmp 0x1400ce519
mov eax, dword [rdx + 0x18]
mov ecx, dword [rdx + 0x4c]
mov ebx, dword [rdx + 8]
mov dword [rsp + 0x88], eax
and eax, 0xfaffffff
mov dword [rsp + 0x20], ecx
mov ecx, dword [rdx + 0x50]
or eax, 0x10050000
lea r8, str.ATTACH_:memory:_AS_vacuum_db_
mov dword [rdx + 0x18], eax
mov rax, qword [rdx + 0x10]
mov dword [rsp + 0x24], ecx
mov rcx, qword [rdx + 0xc0]
and qword [rdx + 0xc0], r14
mov r12, qword [rax + 8]
mov rax, qword [r12 + 8]
cmp byte [rdx + 0x29], 2
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax]
mov rdx, rbp
movzx eax, byte [rcx + 0x12]
mov rcx, rdi
mov dword [rsp + 0x78], eax
lea rax, str.ATTACH__AS_vacuum_db_
cmovne r8, rax
call fcn.1400a7500
mov esi, eax
movsxd rax, dword [rdi + 8]
cmp eax, ebx
jle 0x1400ce5c6
lea ecx, [rax - 1]
movsxd r14, ecx
shl r14, 5
add r14, qword [rdi + 0x10]
test esi, esi
jne 0x1400ce810
mov rcx, rax
mov rax, qword [rdi + 0x10]
shl rcx, 5
mov r13, qword [rcx + rax - 0x18]
mov rcx, r13
call fcn.1400b9d1c
mov rcx, r12
call fcn.1400ba4d0
mov rax, qword [r12 + 8]
mov rcx, r12
mov ebx, dword [rax + 0x34]
sub ebx, dword [rax + 0x38]
mov dword [rsp + 0x80], ebx
call fcn.1400bad24
mov rax, qword [r12 + 8]
mov rcx, qword [rax]
cmp byte [rcx + 9], 5
jne 0x1400ce619
and dword [rdi + 0x30], esi
mov rax, qword [r12 + 8]
xor r9d, r9d
mov r8d, ebx
mov edx, dword [rax + 0x34]
mov rcx, r13
call fcn.1400bbd94
test eax, eax
jne 0x1400ce80b
cmp dword [rsp + 0x78], eax
jne 0x1400ce656
mov edx, dword [rdi + 0x30]
xor r9d, r9d
mov r8d, ebx
mov rcx, r13
call fcn.1400bbd94
test eax, eax
jne 0x1400ce80b
cmp byte [rdi + 0x2a], 0
jne 0x1400ce80b
lea r8, str.PRAGMA_vacuum_db.synchronousOFF
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7500
mov esi, eax
test eax, eax
jne 0x1400ce810
mov al, byte [rdi + 0x2c]
test al, al
js 0x1400ce688
movsx eax, al
jmp 0x1400ce690
mov rcx, r12
call fcn.1400ba5d8
mov edx, eax
mov rcx, r13
call fcn.1400bbcc4
lea r8, str.BEGIN_EXCLUSIVE_
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7500
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_CREATE_TABLE_vacuum_db.__substr_sql_14____FROM_sqlite_master_WHERE_typetable_AND_name_sqlite_sequence___AND_rootpage_0
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_CREATE_UNIQUE_INDEX_vacuum_db.__substr_sql_21____FROM_sqlite_master_WHERE_sql_LIKE_CREATE_UNIQUE_INDEX__
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM_main.__quote_name____FROM_main.sqlite_master_WHERE_type__table_AND_name_sqlite_sequence___AND_rootpage_0
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM_main.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence_
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7458
mov esi, eax
test eax, eax
jne 0x1400ce810
lea r8, str.INSERT_INTO_vacuum_db.sqlite_master___SELECT_type__name__tbl_name__rootpage__sql____FROM_main.sqlite_master___WHERE_typeview_OR_typetrigger______OR__typetable_AND_rootpage0_
mov rdx, rbp
mov rcx, rdi
call fcn.1400a7500
mov esi, eax
test eax, eax
jne 0x1400ce810
xor ebx, ebx
lea rsi, [0x14011c8c8]
lea r8, [rsp + 0x78]
mov rcx, r12
movzx edx, byte [rbx + rsi]
call fcn.1400ba618
movzx r8d, byte [rbx + rsi + 1]
movzx edx, byte [rbx + rsi]
add r8d, dword [rsp + 0x78]
mov rcx, r13
call fcn.1400bbf74
mov esi, eax
test eax, eax
jne 0x1400ce810
add rbx, 2
cmp rbx, 8
jl 0x1400ce77c
mov rdx, r13
mov rcx, r12
call fcn.1400b9ea0
mov esi, eax
test eax, eax
jne 0x1400ce810
mov rcx, r13
call fcn.1400b9d1c
mov esi, eax
test eax, eax
jne 0x1400ce810
mov rcx, r13
call fcn.1400ba5d8
mov rcx, r12
mov edx, eax
call fcn.1400bbcc4
mov rax, qword [r13 + 8]
mov r8d, dword [rsp + 0x80]
mov edx, dword [rax + 0x34]
lea r9d, [rsi + 1]
mov rcx, r12
call fcn.1400bbd94
mov esi, eax
jmp 0x1400ce810
mov esi, 7
mov eax, dword [rsp + 0x88]
or ebx, 0xffffffff
mov r9d, 1
mov dword [rdi + 0x18], eax
mov eax, dword [rsp + 0x20]
mov r8d, ebx
mov dword [rdi + 0x4c], eax
mov eax, dword [rsp + 0x24]
mov edx, ebx
mov dword [rdi + 0x50], eax
mov rax, qword [rsp + 0x28]
mov rcx, r12
mov qword [rdi + 0xc0], rax
call fcn.1400bbd94
mov byte [rdi + 0x28], 1
test r14, r14
je 0x1400ce866
mov rcx, qword [r14 + 8]
call fcn.1400b9b58
and qword [r14 + 8], 0
and qword [r14 + 0x18], 0
mov edx, ebx
mov rcx, rdi
call fcn.1400cda74
mov eax, esi
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret