Function at 0x180089400
Capabilities:
Reference sql statements

Disassembly:
push rbp
push rdi
push r13
sub rsp, 0x60
xor r13d, r13d
mov rdi, rdx
mov rbp, rcx
cmp byte [rdx + 0x5f], r13b
jne 0x180089431
lea r8, str.cannot_VACUUM_from_within_a_transaction
call fcn.180010830
lea eax, [r13 + 1]
add rsp, 0x60
pop r13
pop rdi
pop rbp
ret
cmp dword [rdx + 0xbc], 1
jle 0x180089454
lea r8, str.cannot_VACUUM___SQL_statements_in_progress
call fcn.180010830
mov eax, 1
add rsp, 0x60
pop r13
pop rdi
pop rbp
ret
mov eax, dword [rdx + 0x30]
mov dword [rsp + 0x2c], eax
movzx eax, word [rdx + 0x2c]
or dword [rdx + 0x2c], 6
mov word [rsp + 0x98], ax
mov eax, dword [rdx + 0x74]
mov dword [rsp + 0x30], eax
mov eax, dword [rdx + 0x78]
mov dword [rsp + 0x34], eax
movzx eax, byte [rdx + 0x68]
mov byte [rsp + 0x88], al
mov rax, qword [rdx + 0x30]
mov byte [rdx + 0x68], r13b
and rax, 0xffffffffefffaf7f
mov qword [rsp + 0x80], rbx
or rax, 0x201
mov qword [rdx + 0x30], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], r12
movsxd r12, dword [rdx + 0x28]
mov rdx, rbp
mov qword [rsp + 0x48], r14
movsxd r14, r8d
lea r8, str.ATTACHAS_vacuum_db
shl r14, 5
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x28], r12d
mov rbx, qword [r14 + rax + 8]
mov r15, qword [r14 + rax]
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
movzx eax, byte [rcx + 0x10]
mov rcx, rdi
mov dword [rsp + 0x24], eax
call fcn.1800890a0
mov esi, eax
test eax, eax
jne 0x1800897a8
mov r13, r12
shl r13, 5
add r13, qword [rdi + 0x20]
mov r12, qword [r13 + 8]
mov rcx, r12
call fcn.180027e90
cmp byte [rbx + 0x11], sil
je 0x18008952e
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], sil
jne 0x18008952e
mov rcx, rbx
call fcn.180023c40
mov rax, qword [rbx + 8]
mov ecx, dword [rax + 0x30]
sub ecx, dword [rax + 0x34]
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x20], ecx
je 0x180089550
sub dword [rbx + 0x14], 1
jne 0x180089550
mov rcx, rbx
call fcn.180023c10
mov rax, qword [rdi + 0x20]
mov rcx, qword [r14 + rax + 0x18]
mov edx, dword [rcx + 0x74]
mov rcx, r12
call fcn.180026600
xor edx, edx
mov rcx, rbx
call fcn.180026690
mov edx, eax
mov rcx, r12
call fcn.180026690
mov edx, reloc.WLDAP32.dll_Ordinal_33
mov rcx, r12
call fcn.180026750
lea r8, str.BEGIN
mov rdx, rbp
mov rcx, rdi
call fcn.1800890a0
mov esi, eax
test eax, eax
jne 0x1800897a8
xor r8d, r8d
lea edx, [rax + 2]
mov rcx, rbx
call fcn.180026de0
mov esi, eax
test eax, eax
jne 0x1800897a8
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
cmp byte [rcx + 9], 5
jne 0x1800895c9
mov dword [rdi + 0x6c], esi
mov rax, qword [rbx + 8]
xor r9d, r9d
mov esi, dword [rsp + 0x20]
mov rcx, r12
mov r8d, esi
mov edx, dword [rax + 0x30]
call fcn.1800267b0
test eax, eax
jne 0x1800897a3
cmp dword [rsp + 0x24], eax
jne 0x180089609
mov edx, dword [rdi + 0x6c]
xor r9d, r9d
mov r8d, esi
mov rcx, r12
call fcn.1800267b0
test eax, eax
jne 0x1800897a3
cmp byte [rdi + 0x61], 0
jne 0x1800897a3
movzx eax, byte [rdi + 0x64]
test al, al
js 0x180089620
movsx eax, al
jmp 0x180089628
mov rcx, rbx
call fcn.1800269b0
mov edx, eax
mov rcx, r12
call fcn.180026920
mov eax, dword [rsp + 0x28]
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typetableAND_name__sqlite_sequence_AND_coalesce_rootpage_1__0
mov r9, r15
mov byte [rdi + 0xb4], al
mov rdx, rbp
mov rcx, rdi
call fcn.180089240
mov esi, eax
test eax, eax
jne 0x1800897a8
mov r9, r15
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typeindex
mov rdx, rbp
mov rcx, rdi
call fcn.180089240
mov esi, eax
test eax, eax
jne 0x1800897a8
mov r9, r15
mov byte [rdi + 0xb4], al
lea r8, str.SELECTINSERT_INTO_vacuum_db.quote_name__SELECTFROM__w_.quote_name_FROM_vacuum_db.sqlite_master_WHERE_typetableAND_coalesce_rootpage_1__0
mov rdx, rbp
mov rcx, rdi
call fcn.180089240
and dword [rdi + 0x2c], 0xfffffffb
mov esi, eax
test eax, eax
jne 0x1800897a8
mov r9, r15
lea r8, str.INSERT_INTO_vacuum_db.sqlite_master_SELECTFROM___w_.sqlite_master_WHERE_type_IN_view_trigger__OR_typetableAND_rootpage0_
mov rdx, rbp
mov rcx, rdi
call fcn.180089240
mov esi, eax
test eax, eax
jne 0x1800897a8
xor r14d, r14d
lea rbp, [0x18014e608]
nop dword [rax]
cmp byte [rbx + 0x11], 0
movzx esi, byte [r14 + rbp]
mov r15, qword [rbx + 8]
je 0x1800896f0
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1800896f0
mov rcx, rbx
call fcn.180023c40
cmp esi, 0xf
jne 0x180089703
mov rax, qword [r15]
mov esi, dword [rax + 0x84]
add esi, dword [rbx + 0x1c]
jmp 0x180089717
mov rax, qword [r15 + 0x18]
lea edx, [rsi*4 + 0x24]
mov rcx, qword [rax + 0x50]
mov esi, dword [rdx + rcx]
bswap esi
cmp byte [rbx + 0x11], 0
je 0x18008972b
sub dword [rbx + 0x14], 1
jne 0x18008972b
mov rcx, rbx
call fcn.180023c10
movzx r8d, byte [r14 + rbp + 1]
mov rcx, r12
movzx edx, byte [r14 + rbp]
add r8d, esi
call fcn.18002e7b0
mov esi, eax
test eax, eax
jne 0x1800897a8
add r14, 2
cmp r14, 0xa
jl 0x1800896d0
mov rdx, r12
mov rcx, rbx
call fcn.180031000
mov esi, eax
test eax, eax
jne 0x1800897a8
mov rcx, r12
call fcn.180027e90
mov esi, eax
test eax, eax
jne 0x1800897a8
mov rcx, r12
call fcn.1800269b0
mov edx, eax
mov rcx, rbx
call fcn.180026920
mov rax, qword [r12 + 8]
lea r9d, [rsi + 1]
mov r8d, dword [rsp + 0x20]
mov rcx, rbx
mov edx, dword [rax + 0x30]
call fcn.1800267b0
mov esi, eax
jmp 0x1800897a8
mov esi, 7
movzx eax, word [rsp + 0x98]
or r8d, 0xffffffff
mov dword [rdi + 0x2c], eax
mov r9d, 1
mov eax, dword [rsp + 0x2c]
or edx, r8d
mov qword [rdi + 0x30], rax
mov rcx, rbx
mov eax, dword [rsp + 0x30]
mov dword [rdi + 0x74], eax
mov eax, dword [rsp + 0x34]
mov dword [rdi + 0x78], eax
movzx eax, byte [rsp + 0x88]
mov byte [rdi + 0x68], al
mov byte [rdi + 0xb4], 0
call fcn.1800267b0
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x80]
mov byte [rdi + 0x5f], 1
test r13, r13
je 0x180089829
mov rcx, qword [r13 + 8]
call fcn.1800264e0
mov qword [r13 + 8], 0
mov qword [r13 + 0x18], 0
mov rcx, rdi
call fcn.18005a130
mov eax, esi
mov rsi, qword [rsp + 0x58]
add rsp, 0x60
pop r13
pop rdi
pop rbp
ret