Function at 0x4c13aa
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
and dword [ebp - 0x10], 0
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x18], eax
or eax, 0x2800
cmp byte [edi + 0x1c], 0
mov dword [edi + 0xc], eax
jne 0x4c13e8
push 0
push str.cannot_VACUUM_from_within_a_transaction
push dword [ebp + 8]
call fcn.00498a57
xor esi, esi
add esp, 0xc
inc esi
jmp 0x4c161c
mov eax, dword [edi + 8]
mov ebx, dword [eax + 4]
push str.ATTACH__AS_vacuum_db_
push edi
call fcn.004c12fe
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
imul eax, eax, 0x18
add eax, ecx
lea ecx, [eax - 0x18]
mov eax, dword [eax - 0x14]
mov dword [ebp - 4], eax
mov eax, ebx
mov dword [ebp - 0x10], ecx
call fcn.0049efb8
mov eax, dword [ebx + 4]
movzx ecx, word [eax + 0x1e]
movzx eax, word [eax + 0x1c]
sub eax, ecx
mov esi, ebx
mov dword [ebp - 0xc], eax
call fcn.0049f01a
mov eax, dword [ebx + 4]
push dword [ebp - 0xc]
movzx eax, word [eax + 0x1c]
push dword [ebp - 4]
call fcn.004a038e
pop ecx
pop ecx
test eax, eax
jne 0x4c1650
push dword [ebp - 0xc]
mov eax, dword [edi + 0x24]
push dword [ebp - 4]
call fcn.004a038e
pop ecx
pop ecx
test eax, eax
jne 0x4c1650
cmp byte [edi + 0x1e], al
jne 0x4c1650
push str.PRAGMA_vacuum_db.synchronousOFF
push edi
call fcn.004c12fe
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
mov al, byte [edi + 0x21]
test al, al
jl 0x4c149a
movsx eax, al
jmp 0x4c14a1
mov eax, ebx
call fcn.004a0452
push eax
mov eax, dword [ebp - 4]
call fcn.004a040e
mov dword [esp], str.BEGIN_EXCLUSIVE_
push edi
call fcn.004c12fe
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_CREATE_TABLE_vacuum_db.__substr_sql_14____FROM_sqlite_master_WHERE_typetable_AND_name_sqlite_sequence___AND_rootpage_0
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_CREATE_UNIQUE_INDEX_vacuum_db.__substr_sql_21____FROM_sqlite_master_WHERE_sql_LIKE_CREATE_UNIQUE_INDEX__
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name____FROM_sqlite_master_WHERE_type__table_AND_name_sqlite_sequence___AND_rootpage_0
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence_
push edi
call fcn.004c1349
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
push str.INSERT_INTO_vacuum_db.sqlite_master___SELECT_type__name__tbl_name__rootpage__sql____FROM_sqlite_master___WHERE_typeview_OR_typetrigger______OR__typetable_AND_rootpage0_
push edi
call fcn.004c12fe
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c161c
and dword [ebp - 8], eax
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0x54dfb0]
push eax
mov edi, ebx
call fcn.004a4266
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c1619
mov edi, dword [ebp - 8]
movzx eax, byte [edi + 0x54dfb1]
add eax, dword [ebp - 0x14]
push eax
movzx eax, byte [edi + 0x54dfb0]
push eax
mov eax, dword [ebp - 4]
call fcn.004a42ed
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4c1619
inc edi
inc edi
mov dword [ebp - 8], edi
cmp edi, 8
jb 0x4c1567
mov eax, ebx
call fcn.0049efb8
mov edi, dword [ebp - 4]
mov eax, edi
call fcn.0049efb8
push ebx
mov eax, edi
call fcn.004a4ce9
pop ecx
mov esi, edi
mov dword [ebp - 0x14], eax
call fcn.0049f01a
mov esi, ebx
call fcn.0049f01a
mov esi, dword [ebp - 0x14]
test esi, esi
jne 0x4c1619
mov eax, edi
call fcn.004a0e78
mov esi, eax
test esi, esi
jne 0x4c1619
mov eax, ebx
call fcn.004a0e78
mov esi, eax
test esi, esi
jne 0x4c1619
mov eax, dword [edi + 4]
push dword [ebp - 0xc]
movzx eax, word [eax + 0x1c]
push ebx
call fcn.004a038e
pop ecx
pop ecx
mov esi, eax
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp - 0x18]
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 0x10]
mov byte [edi + 0x1c], 1
test eax, eax
je 0x4c1640
mov ebx, dword [eax + 4]
call fcn.004a026d
mov eax, dword [ebp - 0x10]
and dword [eax + 4], 0
and dword [eax + 0x14], 0
xor eax, eax
mov ebx, edi
call fcn.004b184c
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret
push 7
pop esi
jmp 0x4c161c