Function at 0x4e8e5f
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 0x4e8ec4
push 0
push str.cannot_VACUUM_from_within_a_transaction
mov ecx, dword [ebp + 8]
push ecx
call fcn.004bacaf
add esp, 0xc
mov dword [ebp - 8], 1
jmp 0x4e921b
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.004caa5f
add esp, 4
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
test ecx, ecx
jne 0x4e8ef0
xor eax, eax
jmp 0x4e929a
mov edx, dword [ebp - 4]
push edx
call fcn.00484fd0
add esp, 4
mov dword [ebp - 0xc], eax
push 1
mov eax, dword [ebp - 0xc]
add eax, 0x64
push eax
call fcn.004babac
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x4e8f25
mov dword [ebp - 8], 7
jmp 0x4e921b
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x20]
push edx
call fcn.004f3f70
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.004e929e
add esp, 4
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004cb309
add esp, 4
test eax, eax
jne 0x4e8f35
mov edx, dword [ebp - 0x20]
push edx
push str.ATTACH__q_AS_vacuum_db_
call fcn.004b23d0
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4e8f87
mov dword [ebp - 8], 7
jmp 0x4e921b
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004e92ef
add esp, 8
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x10]
push edx
call fcn.004bab82
add esp, 4
mov dword [ebp - 0x10], 0
cmp dword [ebp - 8], 0
je 0x4e8fb8
jmp 0x4e921b
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.004c329a
add esp, 4
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004c3289
add esp, 4
push eax
mov edx, dword [ebp - 0x18]
push edx
call fcn.004c31fb
add esp, 0xc
push str.PRAGMA_vacuum_db.synchronousOFF
mov eax, dword [ebp + 0xc]
push eax
call fcn.004e92ef
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e902b
jmp 0x4e921b
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004c32f0
add esp, 4
push eax
mov edx, dword [ebp - 0x18]
push edx
call fcn.004c32bb
add esp, 8
push str.BEGIN_EXCLUSIVE_
mov eax, dword [ebp + 0xc]
push eax
call fcn.004e92ef
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e9063
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e9082
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e90a1
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e90c0
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e90df
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e90fe
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e911d
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e913c
jmp 0x4e921b
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.004e9340
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e915b
jmp 0x4e921b
cmp dword [ebp - 8], 0
jne 0x4e921b
mov dword [ebp - 0x2c], 0
jmp 0x4e9177
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 8
jae 0x4e91da
lea ecx, [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x50f1c8]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.004c9957
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e91a4
jmp 0x4e921b
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x50f1c9]
mov ecx, dword [ebp - 0x28]
add ecx, eax
push ecx
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [edx + 0x50f1c8]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004c9b99
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e91d8
jmp 0x4e921b
jmp 0x4e916e
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.004caaa1
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e91f5
jmp 0x4e921b
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004c39c7
add esp, 4
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4e920c
jmp 0x4e921b
mov edx, dword [ebp - 0x14]
push edx
call fcn.004c39c7
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 0x4e9254
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 4]
push ecx
call fcn.004c3039
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 0x4e925f
call fcn.004bbfcf
cmp dword [ebp - 0x20], 0
je 0x4e927d
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004cb18d
add esp, 4
mov edx, dword [ebp - 0x20]
push edx
call fcn.004bab82
add esp, 4
mov eax, dword [ebp - 0x10]
push eax
call fcn.004bab82
add esp, 4
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004be11d
add esp, 8
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret