Function at 0x4cfe7f
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 8], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x24], 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 8]
or ah, 0x28
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 8], eax
mov edx, dword [ebp + 0xc]
xor eax, eax
mov al, byte [edx + 0x10]
test eax, eax
jne 0x4cfee4
push 0
push str.cannot_VACUUM_from_within_a_transaction
mov ecx, dword [ebp + 8]
push ecx
call fcn.004a1ccf
add esp, 0xc
mov dword [ebp - 8], 1
jmp 0x4d023b
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
push edx
call fcn.004b1a7f
add esp, 4
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
test ecx, ecx
jne 0x4cff10
xor eax, eax
jmp 0x4d02ba
mov edx, dword [ebp - 4]
push edx
call fcn.0046bfa0
add esp, 4
mov dword [ebp - 0xc], eax
push 1
mov eax, dword [ebp - 0xc]
add eax, 0x64
push eax
call fcn.004a1bcc
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x4cff45
mov dword [ebp - 8], 7
jmp 0x4d023b
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x20]
push edx
call fcn.004daf60
add esp, 8
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
mov byte [eax], 0x2d
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x20]
lea eax, [edx + ecx + 1]
push eax
call fcn.004d02be
add esp, 4
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004b2329
add esp, 4
test eax, eax
jne 0x4cff55
mov edx, dword [ebp - 0x20]
push edx
push str.ATTACH__q_AS_vacuum_db_
call fcn.004993f0
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4cffa7
mov dword [ebp - 8], 7
jmp 0x4d023b
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004d030f
add esp, 8
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x10]
push edx
call fcn.004a1ba2
add esp, 4
mov dword [ebp - 0x10], 0
cmp dword [ebp - 8], 0
je 0x4cffd8
jmp 0x4d023b
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
sub ecx, 1
imul ecx, ecx, 0x18
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
add eax, ecx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
sub edx, 1
imul edx, edx, 0x18
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + edx + 4]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.004aa2ba
add esp, 4
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004aa2a9
add esp, 4
push eax
mov edx, dword [ebp - 0x18]
push edx
call fcn.004aa21b
add esp, 0xc
push str.PRAGMA_vacuum_db.synchronousOFF
mov eax, dword [ebp + 0xc]
push eax
call fcn.004d030f
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d004b
jmp 0x4d023b
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004aa310
add esp, 4
push eax
mov edx, dword [ebp - 0x18]
push edx
call fcn.004aa2db
add esp, 8
push str.BEGIN_EXCLUSIVE_
mov eax, dword [ebp + 0xc]
push eax
call fcn.004d030f
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d0083
jmp 0x4d023b
push str.SELECT_CREATE_TABLE_vacuum_db.__substr_sql_14_100000000____FROM_sqlite_master_WHERE_typetable_AND_name_sqlite_sequence
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d00a2
jmp 0x4d023b
push str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14_100000000___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
mov edx, dword [ebp + 0xc]
push edx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d00c1
jmp 0x4d023b
push 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]
push eax
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d00e0
jmp 0x4d023b
push str.SELECT_CREATE_VIEW_vacuum_db.__substr_sql_13_100000000____FROM_sqlite_master_WHERE_typeview
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d00ff
jmp 0x4d023b
push str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name____FROM_sqlite_master_WHERE_type__table_AND_name_sqlite_sequence_
mov edx, dword [ebp + 0xc]
push edx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d011e
jmp 0x4d023b
push str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
mov eax, dword [ebp + 0xc]
push eax
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d013d
jmp 0x4d023b
push str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence_
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d015c
jmp 0x4d023b
push str.SELECT_CREATE_TRIGGER__vacuum_db.__substr_sql__16__1000000__FROM_sqlite_master_WHERE_typetrigger
mov edx, dword [ebp + 0xc]
push edx
call fcn.004d0360
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d017b
jmp 0x4d023b
cmp dword [ebp - 8], 0
jne 0x4d023b
mov dword [ebp - 0x2c], 0
jmp 0x4d0197
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 8
jae 0x4d01fa
lea ecx, [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x4f41b8]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004b0977
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d01c4
jmp 0x4d023b
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x4f41b9]
mov ecx, dword [ebp - 0x28]
add ecx, eax
push ecx
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x4f41b8]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004b0bb9
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d01f8
jmp 0x4d023b
jmp 0x4d018e
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.004b1ac1
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d0215
jmp 0x4d023b
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004aa9e7
add esp, 4
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4d022c
jmp 0x4d023b
mov edx, dword [ebp - 0x14]
push edx
call fcn.004aa9e7
add esp, 4
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x1c]
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0xc]
mov byte [edx + 0x10], 1
cmp dword [ebp - 0x24], 0
je 0x4d0274
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 4]
push ecx
call fcn.004aa059
add esp, 4
mov edx, dword [ebp - 0x24]
mov dword [edx + 4], 0
mov eax, dword [ebp - 0x24]
mov dword [eax + 0x14], 0
cmp dword [ebp - 8], 7
jne 0x4d027f
call fcn.004a2fef
cmp dword [ebp - 0x20], 0
je 0x4d029d
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004b21ad
add esp, 4
mov edx, dword [ebp - 0x20]
push edx
call fcn.004a1ba2
add esp, 4
mov eax, dword [ebp - 0x10]
push eax
call fcn.004a1ba2
add esp, 4
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004a513d
add esp, 8
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret