Function at 0x4b3531
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 0x4b356f
push 0
push str.cannot_VACUUM_from_within_a_transaction
push dword [ebp + 8]
call fcn.0048abde
xor esi, esi
add esp, 0xc
inc esi
jmp 0x4b37a3
mov eax, dword [edi + 8]
mov ebx, dword [eax + 4]
push str.ATTACH__AS_vacuum_db_
push edi
call fcn.004b3485
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
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.0049113f
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.004911a1
mov eax, dword [ebx + 4]
push dword [ebp - 0xc]
movzx eax, word [eax + 0x1c]
push dword [ebp - 4]
call fcn.00492515
pop ecx
pop ecx
test eax, eax
jne 0x4b37d7
push dword [ebp - 0xc]
mov eax, dword [edi + 0x24]
push dword [ebp - 4]
call fcn.00492515
pop ecx
pop ecx
test eax, eax
jne 0x4b37d7
cmp byte [edi + 0x1e], al
jne 0x4b37d7
push str.PRAGMA_vacuum_db.synchronousOFF
push edi
call fcn.004b3485
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
mov al, byte [edi + 0x21]
test al, al
jl 0x4b3621
movsx eax, al
jmp 0x4b3628
mov eax, ebx
call fcn.004925d9
push eax
mov eax, dword [ebp - 4]
call fcn.00492595
mov dword [esp], str.BEGIN_EXCLUSIVE_
push edi
call fcn.004b3485
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
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.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
push str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
push edi
call fcn.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
push str.SELECT_CREATE_UNIQUE_INDEX_vacuum_db.__substr_sql_21____FROM_sqlite_master_WHERE_sql_LIKE_CREATE_UNIQUE_INDEX__
push edi
call fcn.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
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.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
push str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
push edi
call fcn.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
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.004b34d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
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.004b3485
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a3
and dword [ebp - 8], eax
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0x52b130]
push eax
mov edi, ebx
call fcn.004963ed
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a0
mov edi, dword [ebp - 8]
movzx eax, byte [edi + 0x52b131]
add eax, dword [ebp - 0x14]
push eax
movzx eax, byte [edi + 0x52b130]
push eax
mov eax, dword [ebp - 4]
call fcn.00496474
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x4b37a0
inc edi
inc edi
mov dword [ebp - 8], edi
cmp edi, 8
jb 0x4b36ee
mov eax, ebx
call fcn.0049113f
mov edi, dword [ebp - 4]
mov eax, edi
call fcn.0049113f
push ebx
mov eax, edi
call fcn.00496e70
pop ecx
mov esi, edi
mov dword [ebp - 0x14], eax
call fcn.004911a1
mov esi, ebx
call fcn.004911a1
mov esi, dword [ebp - 0x14]
test esi, esi
jne 0x4b37a0
mov eax, edi
call fcn.00492fff
mov esi, eax
test esi, esi
jne 0x4b37a0
mov eax, ebx
call fcn.00492fff
mov esi, eax
test esi, esi
jne 0x4b37a0
mov eax, dword [edi + 4]
push dword [ebp - 0xc]
movzx eax, word [eax + 0x1c]
push ebx
call fcn.00492515
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 0x4b37c7
mov ebx, dword [eax + 4]
call fcn.004923f4
mov eax, dword [ebp - 0x10]
and dword [eax + 4], 0
and dword [eax + 0x14], 0
xor eax, eax
mov ebx, edi
call fcn.004a39d3
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret
push 7
pop esi
jmp 0x4b37a3