Function at 0x1400a5d70
Capabilities:
Reference sql statements

Disassembly:
push rbx
push rbp
push r15
sub rsp, 0xb0
cmp byte [rdx + 0x53], 0
mov rbp, rdx
mov r15, rcx
mov qword [rsp + 0x38], 0
jne 0x1400a5e89
mov rbx, qword [rcx]
test rbx, rbx
je 0x1400a5e41
cmp qword [rdx + 0x298], 0
je 0x1400a5dbb
mov rdx, rbx
mov rcx, rbp
call fcn.14001dff0
jmp 0x1400a5e41
cmp rbx, qword [rdx + 0x180]
jb 0x1400a5de6
cmp rbx, qword [rdx + 0x188]
jae 0x1400a5de6
mov rax, qword [rdx + 0x178]
mov qword [rbx], rax
dec dword [rdx + 0x160]
mov qword [rdx + 0x178], rbx
jmp 0x1400a5e41
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x1400a5e38
mov rcx, qword [0x1401bae88]
test rcx, rcx
je 0x1400a5e01
call qword [0x1401b4498]
mov rcx, rbx
call qword [0x1401b4450]
dec qword [0x1401bac38]
movsxd rcx, eax
sub qword [0x1401babf0], rcx
mov rcx, rbx
call qword [0x1401b4440]
mov rcx, qword [0x1401bae88]
test rcx, rcx
je 0x1400a5e41
call qword [0x1401b44a8]
jmp 0x1400a5e41
mov rcx, rbx
call qword [0x1401b4440]
mov edx, Ordinal_41
mov rcx, rbp
call fcn.14001e450
test rax, rax
je 0x1400a5e75
movups xmm0, xmmword [str.cannot_VACUUM_from_within_a_transaction]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140190558]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x140190568]
movsd qword [rax + 0x20], xmm0
mov qword [r15], rax
mov eax, 1
add rsp, 0xb0
pop r15
pop rbp
pop rbx
ret
cmp dword [rdx + 0xac], 1
jle 0x1400a5fa2
mov rbx, qword [rcx]
test rbx, rbx
je 0x1400a5f42
cmp qword [rdx + 0x298], 0
je 0x1400a5ebc
mov rdx, rbx
mov rcx, rbp
call fcn.14001dff0
jmp 0x1400a5f42
cmp rbx, qword [rdx + 0x180]
jb 0x1400a5ee7
cmp rbx, qword [rdx + 0x188]
jae 0x1400a5ee7
mov rax, qword [rdx + 0x178]
mov qword [rbx], rax
dec dword [rdx + 0x160]
mov qword [rdx + 0x178], rbx
jmp 0x1400a5f42
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x1400a5f39
mov rcx, qword [0x1401bae88]
test rcx, rcx
je 0x1400a5f02
call qword [0x1401b4498]
mov rcx, rbx
call qword [0x1401b4450]
dec qword [0x1401bac38]
movsxd rcx, eax
sub qword [0x1401babf0], rcx
mov rcx, rbx
call qword [0x1401b4440]
mov rcx, qword [0x1401bae88]
test rcx, rcx
je 0x1400a5f42
call qword [0x1401b44a8]
jmp 0x1400a5f42
mov rcx, rbx
call qword [0x1401b4440]
mov edx, Ordinal_46
mov rcx, rbp
call fcn.14001e450
mov rcx, rax
test rax, rax
je 0x1400a5f8e
movups xmm0, xmmword [str.cannot_VACUUM___SQL_statements_in_progress]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140190580]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x140190590]
movsd qword [rax + 0x20], xmm0
movzx eax, word [0x140190598]
mov word [rcx + 0x28], ax
movzx eax, byte [0x14019059a]
mov byte [rcx + 0x2a], al
mov qword [r15], rcx
mov eax, 1
add rsp, 0xb0
pop r15
pop rbp
pop rbx
ret
mov eax, dword [rdx + 0x2c]
mov ecx, dword [rdx + 0x68]
mov qword [rsp + 0xd0], rsi
mov dword [rsp + 0x28], eax
and eax, 0xfff5ff7f
mov dword [rsp + 0x2c], ecx
or eax, 0x10202800
mov ecx, dword [rdx + 0x6c]
mov dword [rdx + 0x2c], eax
mov rax, qword [rdx + 0x20]
mov dword [rsp + 0x30], ecx
movzx ecx, byte [rdx + 0x5c]
mov byte [rdx + 0x5c], 0
mov qword [rsp + 0xa8], rdi
movsxd rdi, dword [rdx + 0x28]
mov rdx, r15
movsxd rsi, r8d
lea r8, str.ATTACHAS_vacuum_db
mov qword [rsp + 0xa0], r12
mov byte [rsp + 0xd8], cl
shl rsi, 5
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x90], r14
mov dword [rsp + 0x20], edi
mov rbx, qword [rax + rsi + 8]
mov r12, qword [rax + rsi]
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
movzx r13d, byte [rcx + 0x11]
mov rcx, rbp
call fcn.1400a5930
mov r14d, eax
test eax, eax
jne 0x1400a65b4
mov rax, rdi
shl rax, 5
add rax, qword [rbp + 0x20]
mov qword [rsp + 0x38], rax
mov rdi, qword [rax + 8]
cmp byte [rdi + 0x11], r14b
je 0x1400a606b
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], r14b
jne 0x1400a606b
mov rcx, rdi
call fcn.140033c80
xor edx, edx
mov rcx, rdi
call fcn.140037be0
test eax, eax
jne 0x1400a6083
xor edx, edx
mov rcx, rdi
call fcn.140037e20
cmp byte [rdi + 0x11], 0
je 0x1400a6097
sub dword [rdi + 0x14], 1
jne 0x1400a6097
mov rcx, rdi
call fcn.140033c50
cmp byte [rbx + 0x11], 0
je 0x1400a60ae
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400a60ae
mov rcx, rbx
call fcn.140033c80
mov rax, qword [rbx + 8]
mov ecx, dword [rax + 0x30]
sub ecx, dword [rax + 0x34]
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0xe8], ecx
je 0x1400a60d3
sub dword [rbx + 0x14], 1
jne 0x1400a60d3
mov rcx, rbx
call fcn.140033c50
mov rax, qword [rbp + 0x20]
mov rcx, rdi
mov rdx, qword [rsi + rax + 0x18]
mov edx, dword [rdx + 0x74]
call fcn.140036460
movzx r8d, byte [rbx + 0x11]
mov rsi, qword [rbx + 8]
test r8b, r8b
je 0x1400a610b
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400a610b
mov rcx, rbx
call fcn.140033c80
movzx r8d, byte [rbx + 0x11]
mov rax, qword [rsi]
mov rsi, qword [rax + 0x110]
movsxd rdx, dword [rsi + 0x1c]
test edx, edx
jns 0x1400a6138
mov eax, dword [rsi + 0x28]
add eax, dword [rsi + 0x24]
movsxd rcx, eax
mov rax, rdx
neg rax
shl rax, 0xa
cqo
idiv rcx
mov rdx, rax
mov esi, dword [rsi + 0x20]
cmp edx, esi
cmovge esi, edx
test r8b, r8b
je 0x1400a6153
sub dword [rbx + 0x14], 1
jne 0x1400a6153
mov rcx, rbx
call fcn.140033c50
mov edx, esi
mov rcx, rdi
call fcn.1400364f0
cmp byte [rdi + 0x11], 0
mov rsi, qword [rdi + 8]
je 0x1400a6178
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1400a6178
mov rcx, rdi
call fcn.140033c80
mov rax, qword [rsi]
mov dword [rax + 0xb], 1
and byte [rax + 0x19], 0xfe
mov word [rax + 0xf], 0
cmp byte [rdi + 0x11], 0
je 0x1400a61a0
sub dword [rdi + 0x14], 1
jne 0x1400a61a0
mov rcx, rdi
call fcn.140033c50
lea r8, str.BEGIN
mov rdx, r15
mov rcx, rbp
call fcn.1400a5930
mov r14d, eax
test eax, eax
jne 0x1400a65b4
lea edx, [rax + 2]
mov rcx, rbx
call fcn.140036cb0
mov r14d, eax
test eax, eax
jne 0x1400a65b4
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
cmp byte [rcx + 9], 5
jne 0x1400a61e4
mov dword [rbp + 0x60], r14d
mov rax, qword [rbx + 8]
xor r9d, r9d
mov esi, dword [rsp + 0xe8]
mov rcx, rdi
mov r8d, esi
mov edx, dword [rax + 0x30]
call fcn.1400366c0
test eax, eax
jne 0x1400a65ae
test r13b, r13b
jne 0x1400a6226
mov edx, dword [rbp + 0x60]
xor r9d, r9d
mov r8d, esi
mov rcx, rdi
call fcn.1400366c0
test eax, eax
jne 0x1400a65ae
cmp byte [rbp + 0x55], 0
jne 0x1400a65ae
movsx eax, byte [rbp + 0x58]
test al, al
js 0x1400a623c
mov esi, eax
jmp 0x1400a6281
movzx eax, byte [rbx + 0x11]
test al, al
je 0x1400a6259
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400a6259
mov rcx, rbx
call fcn.140033c80
movzx eax, byte [rbx + 0x11]
mov rcx, qword [rbx + 8]
xor esi, esi
cmp byte [rcx + 0x21], sil
je 0x1400a626f
cmp byte [rcx + 0x22], sil
setne sil
inc esi
test al, al
je 0x1400a6281
sub dword [rbx + 0x14], 1
jne 0x1400a6281
mov rcx, rbx
call fcn.140033c50
mov edx, esi
mov rcx, rdi
call fcn.140036830
mov eax, dword [rsp + 0x20]
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typetableAND_name__sqlite_sequence_AND_coalesce_rootpage_1__0
mov r9, r12
mov byte [rbp + 0xa8], al
mov rdx, r15
mov rcx, rbp
call fcn.1400a5b00
mov r14d, eax
test eax, eax
jne 0x1400a65b4
mov r9, r12
lea r8, str.SELECT_sql_FROM___w_.sqlite_master_WHERE_typeindex_AND_length_sql__10
mov rdx, r15
mov rcx, rbp
call fcn.1400a5b00
mov r14d, eax
test eax, eax
jne 0x1400a65b4
mov r9, r12
mov byte [rbp + 0xa8], 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, r15
mov rcx, rbp
call fcn.1400a5b00
and dword [rbp + 0x2c], 0xefffffff
mov r14d, eax
test eax, eax
jne 0x1400a65b4
mov r9, r12
lea r8, str.INSERT_INTO_vacuum_db.sqlite_master_SELECTFROM___w_.sqlite_master_WHERE_type_IN_view_trigger__OR_typetableAND_rootpage0_
mov rdx, r15
mov rcx, rbp
call fcn.1400a5b00
mov r14d, eax
test eax, eax
jne 0x1400a65b4
xor r15d, r15d
lea r12, [0x140191868]
nop dword [rax]
movzx r8d, byte [rbx + 0x11]
movzx esi, byte [r15 + r12]
mov r14, qword [rbx + 8]
test r8b, r8b
je 0x1400a6359
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400a6359
mov rcx, rbx
call fcn.140033c80
movzx r8d, byte [rbx + 0x11]
cmp esi, 0xf
jne 0x1400a636c
mov rax, qword [r14]
mov esi, dword [rax + 0x84]
add esi, dword [rbx + 0x1c]
jmp 0x1400a6380
mov rax, qword [r14 + 0x18]
lea edx, [rsi*4 + 0x24]
mov rcx, qword [rax + 0x50]
mov esi, dword [rdx + rcx]
bswap esi
test r8b, r8b
je 0x1400a6393
sub dword [rbx + 0x14], 1
jne 0x1400a6393
mov rcx, rbx
call fcn.140033c50
movzx r8d, byte [r15 + r12 + 1]
mov rcx, rdi
movzx edx, byte [r15 + r12]
add r8d, esi
call fcn.14003e810
mov r14d, eax
test eax, eax
jne 0x1400a65b4
add r15, 2
cmp r15, 0xa
jl 0x1400a6330
cmp byte [rbx + 0x11], al
je 0x1400a63d7
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x1400a63d7
mov rcx, rbx
call fcn.140033c80
cmp byte [rdi + 0x11], 0
je 0x1400a63ee
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1400a63ee
mov rcx, rdi
call fcn.140033c80
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x48]
mov r9, qword [rcx]
test r9, r9
je 0x1400a6436
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x20]
mov edx, dword [rax + 0x3c]
movsxd rax, dword [rax + 0x30]
imul rdx, rax
mov qword [rsp + 0x20], rdx
mov edx, listen
call qword [r9 + 0x50]
xor r14d, r14d
cmp eax, 0xc
cmovne r14d, eax
test r14d, r14d
jne 0x1400a64be
mov rax, qword [rdi]
lea rcx, [rsp + 0x40]
xorps xmm0, xmm0
mov qword [rsp + 0x60], rax
mov edx, 0x7fffffff
movdqa xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x48], rbx
call fcn.1400404c0
lea rcx, [rsp + 0x40]
call fcn.140040c20
mov r14d, eax
test eax, eax
jne 0x1400a64a7
mov rax, qword [rbx + 8]
mov ecx, 0xfffd
and word [rax + 0x26], cx
jmp 0x1400a64be
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
cmp byte [rcx + 0x11], 0
jne 0x1400a64be
call fcn.14002b760
cmp byte [rdi + 0x11], 0
je 0x1400a64d2
sub dword [rdi + 0x14], 1
jne 0x1400a64d2
mov rcx, rdi
call fcn.140033c50
cmp byte [rbx + 0x11], 0
je 0x1400a64e6
sub dword [rbx + 0x14], 1
jne 0x1400a64e6
mov rcx, rbx
call fcn.140033c50
test r14d, r14d
jne 0x1400a65b4
cmp byte [rdi + 0x11], r14b
je 0x1400a6506
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], r14b
jne 0x1400a6506
mov rcx, rdi
call fcn.140033c80
xor edx, edx
mov rcx, rdi
call fcn.140037be0
mov r14d, eax
test eax, eax
jne 0x1400a6524
xor edx, edx
mov rcx, rdi
call fcn.140037e20
mov r14d, eax
cmp byte [rdi + 0x11], 0
je 0x1400a6538
sub dword [rdi + 0x14], 1
jne 0x1400a6538
mov rcx, rdi
call fcn.140033c50
test r14d, r14d
jne 0x1400a65b4
movzx eax, byte [rdi + 0x11]
test al, al
je 0x1400a655a
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], r14b
jne 0x1400a655a
mov rcx, rdi
call fcn.140033c80
movzx eax, byte [rdi + 0x11]
mov rcx, qword [rdi + 8]
xor esi, esi
cmp byte [rcx + 0x21], sil
je 0x1400a6570
cmp byte [rcx + 0x22], sil
setne sil
inc esi
test al, al
je 0x1400a6582
sub dword [rdi + 0x14], 1
jne 0x1400a6582
mov rcx, rdi
call fcn.140033c50
mov edx, esi
mov rcx, rbx
call fcn.140036830
mov rax, qword [rdi + 8]
mov r9d, 1
mov r8d, dword [rsp + 0xe8]
mov rcx, rbx
mov edx, dword [rax + 0x30]
call fcn.1400366c0
mov r14d, eax
jmp 0x1400a65b4
mov r14d, 7
mov eax, dword [rsp + 0x28]
mov r13, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
mov dword [rbp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov dword [rbp + 0x68], eax
mov eax, dword [rsp + 0x30]
mov dword [rbp + 0x6c], eax
movzx eax, byte [rsp + 0xd8]
mov byte [rbp + 0x5c], al
mov byte [rbp + 0xa8], 0
cmp byte [rbx + 0x11], 0
mov r15, qword [rbx + 8]
je 0x1400a6606
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1400a6606
mov rcx, rbx
call fcn.140033c80
test byte [r15 + 0x26], 2
jne 0x1400a6637
mov edi, dword [r15 + 0x30]
lea rdx, [r15 + 0x30]
sub edi, dword [r15 + 0x34]
mov rcx, qword [r15]
mov r8d, edi
call fcn.14002d1d0
mov ecx, dword [r15 + 0x30]
movzx eax, di
sub ecx, eax
or word [r15 + 0x26], 2
mov dword [r15 + 0x34], ecx
cmp byte [rbx + 0x11], 0
je 0x1400a664b
sub dword [rbx + 0x14], 1
jne 0x1400a664b
mov rcx, rbx
call fcn.140033c50
mov rbx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xd0]
mov byte [rbp + 0x53], 1
test rbx, rbx
je 0x1400a6682
mov rcx, qword [rbx + 8]
call fcn.1400361a0
mov qword [rbx + 8], 0
mov qword [rbx + 0x18], 0
mov rcx, rbp
call fcn.14006b9f0
mov eax, r14d
mov r14, qword [rsp + 0x90]
add rsp, 0xb0
pop r15
pop rbp
pop rbx
ret