Function at 0x7e7240
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
cmp byte [rdx + 0x65], 0
mov rdi, rcx
mov r12, rdx
movsxd rbx, r8d
mov rsi, r9
je 0x7e75e0
cmp dword [rdx + 0xd8], 1
jg 0x7e75c0
mov ebp, dword [rdx + 0x4c]
test r9, r9
je 0x7e7600
movzx eax, word [r9 + 0x14]
lea rdx, [0x00b4e600]
and eax, 0x3f
cmp byte [rdx + rax], 3
je 0x7e72c8
lea r8, str.non_text_filename
mov rdx, r12
mov r13d, 1
call fcn.00751e00
mov eax, r13d
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r9
mov edx, 1
call fcn.0074f6d0
mov r9, rax
mov eax, dword [r12 + 0x4c]
and eax, 0xfffffffe
or eax, 6
mov dword [r12 + 0x4c], eax
mov eax, dword [r12 + 0x2c]
mov rdx, qword [r12 + 0x78]
shl rbx, 5
lea r8, str.ATTACH__Q_AS_vacuum_db
mov rcx, qword [r12 + 0x30]
mov r14d, dword [r12 + 0x28]
mov dword [rsp + 0x40], eax
or eax, 6
mov dword [r12 + 0x2c], eax
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0x30], rdx
mov rdx, qword [r12 + 0x80]
add rax, rbx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x38], rdx
movzx edx, byte [r12 + 0x6e]
mov byte [r12 + 0x6e], 0
mov r15, qword [rax + 8]
mov byte [rsp + 0x47], dl
movabs rdx, 0xfffffffeefffafff
and rdx, rcx
mov rcx, qword [rax]
mov rax, qword [r15 + 8]
mov dword [rsp + 0x58], r14d
or rdx, 0x201
mov rax, qword [rax]
mov qword [r12 + 0x30], rdx
mov rdx, rdi
mov qword [rsp + 0x50], rcx
mov rcx, r12
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x48], rax
call fcn.007e71c0
mov dword [r12 + 0x4c], ebp
mov r13d, eax
test eax, eax
jne 0x7e77d0
movsxd rbp, r14d
shl rbp, 5
add rbp, qword [r12 + 0x20]
mov r14, qword [rbp + 8]
test rsi, rsi
je 0x7e7850
mov rax, qword [r14 + 8]
mov rax, qword [rax]
mov rcx, qword [rax + 0x48]
mov qword [rsp + 0x70], 0
mov rax, qword [rcx]
test rax, rax
je 0x7e73eb
lea r8, [rsp + 0x70]
mov rdx, r8
call qword [rax + 0x30]
test eax, eax
jne 0x7e7830
cmp qword [rsp + 0x70], 0
jg 0x7e7830
or dword [r12 + 0x2c], 8
mov rcx, r15
call fcn.00740a70
mov rcx, r14
mov dword [rsp + 0x5c], eax
mov rax, qword [r12 + 0x20]
mov rax, qword [rax + rbx + 0x18]
mov edx, dword [rax + 0x74]
call fcn.00740c20
xor edx, edx
mov rcx, r15
call fcn.00740cb0
mov rcx, r14
mov edx, eax
call fcn.00740cb0
mov edx, 0x21
mov rcx, r14
call fcn.00740d80
lea r8, str.BEGIN
mov rdx, rdi
mov rcx, r12
call fcn.007e7090
mov r13d, eax
test eax, eax
jne 0x7e7750
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.0078d750
mov r13d, eax
test eax, eax
jne 0x7e7750
test rsi, rsi
mov rax, qword [r15 + 8]
sete sil
mov edx, dword [rax + 0x34]
mov r8d, dword [rsp + 0x5c]
xor r9d, r9d
mov rcx, r14
call fcn.0074dce0
test eax, eax
jne 0x7e7910
movabs rax, 0xff000000ff
test qword [rsp + 0x48], rax
je 0x7e78f0
cmp byte [r12 + 0x67], 0
jne 0x7e7910
movsx edx, byte [r12 + 0x6a]
test dl, dl
js 0x7e791b
mov rcx, r14
call fcn.00740dd0
movzx eax, byte [rsp + 0x58]
mov rdx, rdi
mov rcx, r12
mov rbx, qword [rsp + 0x50]
lea r8, str.SELECT_sql_FROM___w_.sqlite_schema_WHERE_typetableAND_name__sqlite_sequence_AND_coalesce_rootpage_1__0
mov byte [r12 + 0xc4], al
mov r9, rbx
call fcn.007e71c0
mov r13d, eax
test eax, eax
jne 0x7e7750
mov r9, rbx
lea r8, str.SELECT_sql_FROM___w_.sqlite_schema_WHERE_typeindex
mov rdx, rdi
mov rcx, r12
call fcn.007e71c0
mov r13d, eax
test eax, eax
jne 0x7e7750
mov r9, rbx
lea r8, str.SELECTINSERT_INTO_vacuum_db.quote_name__SELECTFROM__w_.quote_name_FROM_vacuum_db.sqlite_schema_WHERE_typetableAND_coalesce_rootpage_1__0
mov rdx, rdi
mov rcx, r12
mov byte [r12 + 0xc4], 0
call fcn.007e71c0
and dword [r12 + 0x2c], 0xfffffffb
mov r13d, eax
test eax, eax
jne 0x7e7750
mov r9, rbx
lea r8, str.INSERT_INTO_vacuum_db.sqlite_schema_SELECTFROM___w_.sqlite_schema_WHERE_type_IN_view_trigger__OR_typetableAND_rootpage0_
mov rdx, rdi
mov rcx, r12
call fcn.007e71c0
mov r13d, eax
test eax, eax
jne 0x7e7750
lea rdi, [0x00b4cf18]
mov r13d, 1
lea rbx, [rsp + 0x6c]
mov edx, r13d
mov r8, rbx
mov rcx, r15
call fcn.0074c390
movzx r8d, byte [rdi + 1]
mov edx, r13d
mov rcx, r14
add r8d, dword [rsp + 0x6c]
call fcn.0078e040
mov r13d, eax
test eax, eax
jne 0x7e7750
add rdi, 2
lea rax, [0x00b4cf22]
cmp rax, rdi
je 0x7e792a
movzx r13d, byte [rdi]
jmp 0x7e7578
lea r8, str.cannot_VACUUM___SQL_statements_in_progress
mov r13d, 1
call fcn.00751e00
jmp 0x7e72ac
lea r8, str.cannot_VACUUM_from_within_a_transaction
mov r13d, 1
call fcn.00751e00
jmp 0x7e72ac
lea r9, [0x00b4356e]
jmp 0x7e72e8
cmp byte [r15 + 0x11], 0
je 0x7e761b
mov rcx, r15
call fcn.007408c0
cmp byte [r14 + 0x11], 0
je 0x7e762a
mov rcx, r14
call fcn.007408c0
mov rax, qword [r15 + 8]
lea r8, [rsp + 0x70]
mov rax, qword [rax]
mov rcx, qword [rax + 0x48]
mov r9, qword [rcx]
test r9, r9
je 0x7e767a
mov rdx, qword [r14 + 8]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x48], r8
movsxd rax, dword [rdx + 0x34]
mov edx, dword [rdx + 0x40]
imul rax, rdx
mov edx, 0xb
mov qword [rsp + 0x70], rax
call qword [r9 + 0x50]
mov r8, qword [rsp + 0x48]
test eax, eax
mov r13d, eax
je 0x7e767a
cmp eax, 0xc
jne 0x7e76dc
mov rdi, r8
xor eax, eax
mov ecx, 0x12
mov edx, 0x7fffffff
rep stosd dword [rdi], eax
mov rcx, r8
mov qword [rsp + 0x48], r8
mov rax, qword [r14]
mov qword [rsp + 0x98], r14
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x88], 1
call fcn.00796c10
mov r8, qword [rsp + 0x48]
mov rcx, r8
call fcn.00799e00
mov r13d, eax
test eax, eax
jne 0x7e7943
mov rax, qword [r15 + 8]
and word [rax + 0x28], 0xfffd
cmp byte [r14 + 0x11], 0
je 0x7e76ee
sub dword [r14 + 0x14], 1
je 0x7e7970
cmp byte [r15 + 0x11], 0
je 0x7e7700
sub dword [r15 + 0x14], 1
je 0x7e7963
test r13d, r13d
jne 0x7e7750
mov rcx, r14
call fcn.00796ba0
mov r13d, eax
test eax, eax
jne 0x7e7750
mov rcx, r14
call fcn.00740e40
mov rcx, r15
mov edx, eax
call fcn.00740dd0
mov rcx, r14
call fcn.00740a70
mov r9d, 1
mov rcx, r15
mov r8d, eax
mov rax, qword [r14 + 8]
mov edx, dword [rax + 0x34]
call fcn.0074dce0
mov r13d, eax
nop dword [rax]
mov eax, dword [rsp + 0x40]
mov r9d, 1
xor r8d, r8d
mov rcx, r15
mov byte [r12 + 0xc4], 0
mov edx, 0xffffffff
mov dword [r12 + 0x2c], eax
mov rax, qword [rsp + 0x28]
mov qword [r12 + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [r12 + 0x78], rax
mov rax, qword [rsp + 0x38]
mov qword [r12 + 0x80], rax
movzx eax, byte [rsp + 0x47]
mov byte [r12 + 0x6e], al
call fcn.0074dce0
mov byte [r12 + 0x65], 1
mov rcx, qword [rbp + 8]
call fcn.007998e0
mov qword [rbp + 8], 0
mov qword [rbp + 0x18], 0
mov rcx, r12
call fcn.0074aeb0
jmp 0x7e72ac
mov eax, dword [rsp + 0x40]
mov r9d, 1
xor r8d, r8d
mov rcx, r15
mov byte [r12 + 0xc4], 0
mov edx, 0xffffffff
mov dword [r12 + 0x2c], eax
mov rax, qword [rsp + 0x28]
mov qword [r12 + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [r12 + 0x78], rax
mov rax, qword [rsp + 0x38]
mov qword [r12 + 0x80], rax
movzx eax, byte [rsp + 0x47]
mov byte [r12 + 0x6e], al
call fcn.0074dce0
mov byte [r12 + 0x65], 1
jmp 0x7e77c2
lea r8, str.output_file_already_exists
mov rdx, r12
mov rcx, rdi
mov r13d, 1
call fcn.00751e00
jmp 0x7e7750
mov rcx, r15
call fcn.00740a70
mov rcx, r14
mov dword [rsp + 0x5c], eax
mov rax, qword [r12 + 0x20]
mov rax, qword [rax + rbx + 0x18]
mov edx, dword [rax + 0x74]
call fcn.00740c20
xor edx, edx
mov rcx, r15
call fcn.00740cb0
mov rcx, r14
mov edx, eax
call fcn.00740cb0
mov edx, 0x21
mov rcx, r14
call fcn.00740d80
lea r8, str.BEGIN
mov rdx, rdi
mov rcx, r12
call fcn.007e7090
mov r13d, eax
test eax, eax
jne 0x7e7750
xor r8d, r8d
mov edx, 2
mov rcx, r15
call fcn.0078d750
mov r13d, eax
test eax, eax
jne 0x7e7750
mov rax, qword [r15 + 8]
mov esi, 1
mov rdx, qword [rax]
cmp byte [rdx + 9], 5
jne 0x7e7473
mov dword [r12 + 0x74], 0
jmp 0x7e7473
mov edx, dword [r12 + 0x74]
mov r8d, dword [rsp + 0x5c]
xor r9d, r9d
mov rcx, r14
call fcn.0074dce0
test eax, eax
je 0x7e74a3
nop dword [rax]
mov r13d, 7
jmp 0x7e7750
mov rcx, r15
call fcn.00740e40
mov edx, eax
jmp 0x7e74bd
test sil, sil
jne 0x7e760c
mov rcx, r14
call fcn.00796ba0
mov r13d, eax
jmp 0x7e7750
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 8]
mov rcx, qword [rax]
cmp byte [rcx + 0x10], 0
jne 0x7e76dc
call fcn.007496e0
jmp 0x7e76dc
mov rcx, r15
call fcn.00740950
jmp 0x7e7700
mov rcx, r14
call fcn.00740950
jmp 0x7e76ee