Function at 0x429f55
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x18
mov dword [ebp - 0x14], 0
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x24], 0
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
or ah, 0x28
mov dword [edx + 8], eax
cmp byte [edx + 0x10], 0
jne 0x429fa0
push 0
push str.cannot_VACUUM_from_within_a_transaction
push dword [ebp + 8]
call fcn.00406c82
mov edi, 1
add esp, 0xc
jmp 0x42a20f
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov eax, dword [eax + 4]
push eax
mov dword [ebp - 0x18], eax
call fcn.00411211
mov ebx, eax
pop eax
xor eax, eax
cmp byte [ebx], 0
je 0x42a274
cld
or ecx, 0xffffffff
mov edi, ebx
repne scasb al, byte es:[edi]
not ecx
push 1
lea esi, [ecx - 1]
add ecx, 0x63
push ecx
call fcn.00406d85
pop ecx
test eax, eax
pop edi
mov dword [ebp - 0x14], eax
mov edi, 7
je 0x42a20f
push ebx
push eax
call sub.msvcrt.dll_strcpy
pop eax
pop edx
mov eax, dword [ebp - 0x14]
mov byte [esi + eax], 0x2d
lea ebx, [eax + esi + 1]
push ebx
push 0x14
call fcn.00415fa0
pop ecx
pop edi
xor edi, edi
movzx ax, byte [edi + ebx]
xor edx, edx
mov ecx, 0x24
div cx
and edx, 0x3f
mov al, byte [edx + str.abcdefghijklmnopqrstuvwxyz0123456789]
mov byte [edi + ebx], al
inc edi
cmp edi, 0x13
jle 0x42a00a
push dword [ebp - 0x14]
call fcn.00405683
pop edx
test eax, eax
jne 0x429ff3
push dword [ebp - 0x14]
push str.ATTACH__q_AS_vacuum_db_
call fcn.00417207
mov ebx, eax
pop edi
test ebx, ebx
pop eax
mov edi, 7
je 0x42a20f
mov edx, ebx
mov eax, dword [ebp + 0xc]
call fcn.00429e90
push ebx
mov edi, eax
call fcn.00406120
pop esi
test edi, edi
jne 0x42a20f
mov edx, dword [ebp + 0xc]
imul eax, dword [edx], 0x18
add eax, dword [edx + 4]
sub eax, 0x18
mov dword [ebp - 0x24], eax
mov eax, dword [eax + 4]
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
call fcn.0040cb55
mov dword [esp], eax
push dword [ebp - 0x18]
call fcn.0040cb46
mov dword [esp], eax
push dword [ebp - 0x1c]
call fcn.0040cae6
mov edx, str.PRAGMA_vacuum_db.synchronousOFF
mov eax, dword [ebp + 0xc]
call fcn.00429e90
add esp, 0xc
mov edi, eax
test eax, eax
jne 0x42a20f
push dword [ebp - 0x18]
call fcn.0040cb8a
mov dword [esp], eax
push dword [ebp - 0x1c]
call fcn.0040cb6a
mov edx, str.BEGIN_EXCLUSIVE_
mov eax, dword [ebp + 0xc]
call fcn.00429e90
pop ecx
mov edi, eax
pop ebx
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_CREATE_TABLE_vacuum_db.__substr_sql_14_100000000____FROM_sqlite_master_WHERE_typetable_AND_name_sqlite_sequence
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14_100000000___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_CREATE_UNIQUE_INDEX_vacuum_db.__substr_sql_21_100000000____FROM_sqlite_master_WHERE_sql_LIKE_CREATE_UNIQUE_INDEX__
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_CREATE_VIEW_vacuum_db.__substr_sql_13_100000000____FROM_sqlite_master_WHERE_typeview
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name____FROM_sqlite_master_WHERE_type__table_AND_name_sqlite_sequence_
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence_
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
mov edx, str.SELECT_CREATE_TRIGGER__vacuum_db.__substr_sql__16__1000000__FROM_sqlite_master_WHERE_typetrigger
mov eax, dword [ebp + 0xc]
call fcn.00429ed0
mov edi, eax
test eax, eax
jne 0x42a20f
xor esi, esi
movzx ebx, byte [esi + 0x63fd55]
lea eax, [ebp - 0x10]
push eax
push ebx
push dword [ebp - 0x18]
call fcn.004101d1
add esp, 0xc
mov edi, eax
test eax, eax
jne 0x42a20f
movzx eax, byte [esi + 0x63fd56]
add eax, dword [ebp - 0x10]
push eax
push ebx
push dword [ebp - 0x1c]
call fcn.00410233
add esp, 0xc
mov edi, eax
test eax, eax
jne 0x42a20f
add esi, 2
cmp esi, 7
jbe 0x42a1a0
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
call fcn.0041124d
mov edi, eax
pop eax
test edi, edi
pop edx
jne 0x42a20f
push dword [ebp - 0x1c]
call fcn.0040d169
mov edi, eax
pop eax
test edi, edi
jne 0x42a20f
push dword [ebp - 0x18]
call fcn.0040d169
mov edi, eax
pop eax
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov byte [edx + 0x10], 1
mov dword [edx + 8], eax
cmp dword [ebp - 0x24], 0
je 0x42a23f
mov edx, dword [ebp - 0x24]
push dword [edx + 4]
call fcn.0040de03
mov eax, dword [ebp - 0x24]
mov dword [eax + 4], 0
mov dword [eax + 0x14], 0
pop esi
cmp edi, 7
jne 0x42a249
call fcn.00406bc0
cmp dword [ebp - 0x14], 0
je 0x42a261
push dword [ebp - 0x14]
call fcn.00405650
push dword [ebp - 0x14]
call fcn.00406120
pop ecx
pop ebx
push 0
call fcn.00406120
push 0
push dword [ebp + 0xc]
call fcn.004124bc
mov eax, edi
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret