Function at 0x431d9d
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
mov edi, ecx
xor edx, edx
mov dword [ebp - 0xc], edx
mov edx, str.ATTACH__AS_vacuum_db_
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0x18], eax
or eax, 0x2800
mov dword [edi + 0xc], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [edi + 0x48]
mov dword [ebp - 0x20], ecx
xor ecx, ecx
mov eax, dword [eax + 4]
mov dword [ebp - 4], eax
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x38]
cmp dword [eax], ecx
sete cl
mov dword [ebp - 8], ecx
mov ecx, edi
call fcn.00431cee
mov esi, eax
test esi, esi
jne 0x432004
imul ecx, dword [edi + 4], 0x18
mov eax, dword [edi + 8]
mov esi, dword [ebp - 4]
lea edx, [eax - 0x18]
add edx, ecx
mov dword [ebp - 0xc], edx
mov ebx, dword [ecx + eax - 0x14]
mov ecx, esi
call fcn.0040b01f
mov eax, dword [esi + 4]
movzx ecx, word [eax + 0x18]
movzx eax, word [eax + 0x16]
sub eax, ecx
mov ecx, esi
mov dword [ebp - 0x10], eax
call fcn.0040b098
mov eax, dword [esi + 4]
mov ecx, ebx
mov esi, dword [ebp - 0x10]
push esi
movzx edx, word [eax + 0x16]
call fcn.0040c64a
pop ecx
test eax, eax
jne 0x432001
cmp dword [ebp - 8], eax
jne 0x431e60
mov edx, dword [edi + 0x24]
mov ecx, ebx
push esi
call fcn.0040c64a
pop ecx
test eax, eax
jne 0x432001
cmp byte [edi + 0x1e], 0
jne 0x432001
mov edx, str.PRAGMA_vacuum_db.synchronousOFF
mov ecx, edi
call fcn.00431cee
mov esi, eax
test esi, esi
jne 0x432004
mov al, byte [edi + 0x21]
test al, al
js 0x431e8c
movsx eax, al
jmp 0x431e94
mov ecx, dword [ebp - 4]
call fcn.0040c712
mov edx, eax
mov ecx, ebx
call fcn.0040c6d3
mov edx, str.BEGIN_EXCLUSIVE_
mov ecx, edi
call fcn.00431cee
mov esi, eax
test esi, esi
jne 0x432004
mov edx, str.SELECT_CREATE_TABLE_vacuum_db.__substr_sql_14____FROM_sqlite_master_WHERE_typetable_AND_name_sqlite_sequence___AND_rootpage_0
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, str.SELECT_CREATE_INDEX_vacuum_db.__substr_sql_14___FROM_sqlite_master_WHERE_sql_LIKE_CREATE_INDEX__
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, str.SELECT_CREATE_UNIQUE_INDEX_vacuum_db.__substr_sql_21____FROM_sqlite_master_WHERE_sql_LIKE_CREATE_UNIQUE_INDEX__
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, 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
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, str.SELECT_DELETE_FROM_vacuum_db.__quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, str.SELECT_INSERT_INTO_vacuum_db.__quote_name____SELECT__FROM___quote_name_____FROM_vacuum_db.sqlite_master_WHERE_namesqlite_sequence_
mov ecx, edi
call fcn.00431d38
mov esi, eax
test esi, esi
jne 0x432004
mov edx, 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_
mov ecx, edi
call fcn.00431cee
mov esi, eax
test esi, esi
jne 0x432004
mov dword [ebp - 8], eax
movzx edx, byte [eax + 0x525194]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, dword [ebp - 4]
call fcn.00410a20
mov esi, eax
pop ecx
test esi, esi
jne 0x432004
mov ecx, dword [ebp - 8]
movzx eax, byte [ecx + 0x525195]
add eax, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x525194]
mov ecx, ebx
push eax
call fcn.00410ace
mov esi, eax
pop ecx
test esi, esi
jne 0x432004
mov eax, dword [ebp - 8]
add eax, 2
mov dword [ebp - 8], eax
cmp eax, 8
jl 0x431f50
mov ecx, dword [ebp - 4]
mov edx, ebx
call fcn.00411d4c
mov esi, eax
test esi, esi
jne 0x432004
mov ecx, ebx
call fcn.0040b01f
xor edx, edx
mov ecx, ebx
call fcn.0040d0b7
mov esi, eax
test esi, esi
jne 0x431fce
mov ecx, ebx
call fcn.0040d117
mov esi, eax
mov ecx, ebx
call fcn.0040b098
test esi, esi
jne 0x432004
mov ecx, ebx
call fcn.0040c712
mov ecx, dword [ebp - 4]
mov edx, eax
call fcn.0040c6d3
mov eax, dword [ebx + 4]
push dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
movzx edx, word [eax + 0x16]
call fcn.0040c64a
pop ecx
mov esi, eax
jmp 0x432004
push 7
pop esi
mov eax, dword [ebp - 0x18]
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x48], eax
mov eax, dword [ebp - 0xc]
mov byte [edi + 0x1c], 1
test eax, eax
je 0x432034
mov ecx, dword [eax + 4]
call fcn.0040c511
mov eax, dword [ebp - 0xc]
and dword [eax + 4], 0
and dword [eax + 0x14], 0
xor edx, edx
mov ecx, edi
call fcn.00420c9a
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret