Function at 0x7ec830
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xe8
lea rax, str.Wrong_number_of_columns_for_an_rtree_table
lea rbx, str.Auxiliary_rtree_columns_must_be_last
mov qword [rsp + 0x130], rcx
lea ecx, [r8 - 6]
mov rbp, rdx
mov rsi, r9
mov qword [rsp + 0x78], rax
lea rdx, str.Too_many_columns_for_an_rtree_table
cmp ecx, 0x61
lea rax, str.Too_few_columns_for_an_rtree_table
mov dword [rsp + 0x140], r8d
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rbx
jbe 0x7ec8e0
cmp r8d, 5
mov r14d, 1
cmovle rdx, rax
lea rcx, [0x00b4affa]
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov qword [rsi], rax
mov eax, r14d
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x130]
mov r8d, 1
mov edx, 1
call fcn.00762de0
mov rcx, qword [rsi + 8]
call sub.msvcrt.dll_strlen
mov rcx, qword [rsi + 0x10]
mov rdi, rax
call sub.msvcrt.dll_strlen
mov r12, rax
call fcn.00778510
test eax, eax
jne 0x7ecb60
movsxd rdi, edi
movsxd r12, r12d
lea r15, [rdi + r12 + 0x3ca]
mov rcx, r15
call fcn.0074a560
test rax, rax
mov rbx, rax
je 0x7ecb60
test rbp, rbp
mov r8, r15
mov rcx, rax
lea r15, str.__.s_REAL
setne r13b
xor edx, edx
call sub.msvcrt.dll_memset
lea rcx, [rbx + 0x3c8]
mov byte [rbx + 0x26], r13b
mov r8, rdi
lea rbp, [rcx + rdi + 1]
mov qword [rbx + 0x30], rcx
and r13d, 1
mov qword [rbx + 0x38], rbp
mov rdx, qword [rsi + 8]
lea rax, [0x008405e0]
mov dword [rbx + 0x40], 1
mov qword [rbx], rax
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsi + 0x10]
mov r8, r12
mov rcx, rbp
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x130]
call fcn.0077a280
mov rdi, qword [rsi + 0x18]
mov dword [rsp + 0xa0], 0
mov rbp, rax
lea rax, [rsp + 0xa0]
mov rdx, rax
mov qword [rsp + 0x50], rax
mov rcx, rdi
call fcn.00748380
mov r9, rdi
mov rcx, rbp
lea rdx, str.CREATE_TABLE_x__.s_INT
mov r8d, eax
call fcn.00754540
mov eax, dword [rsp + 0x140]
lea r12d, [rax - 5]
lea rax, [r12 + 5]
mov r12d, 4
mov qword [rsp + 0x58], rax
mov rax, r13
mov r13, rbx
mov rbx, rax
jmp 0x7eca66
test al, al
jne 0x7ecac2
add byte [r13 + 0x25], 1
mov rcx, r14
add r12, 1
mov dword [rsp + 0xa0], 0
mov rdx, qword [rsp + 0x50]
call fcn.00748380
mov rdx, qword [r15 + rbx*8]
mov r9, r14
mov rcx, rbp
mov r8d, eax
call fcn.00754540
cmp qword [rsp + 0x58], r12
lea r8d, [rdi + 1]
je 0x7ecac2
mov r14, qword [rsi + r12*8]
mov edi, r12d
mov r8d, r12d
movzx eax, byte [r13 + 0x29]
cmp byte [r14], 0x2b
jne 0x7eca20
mov rdx, qword [rsp + 0x50]
add eax, 1
add r14, 1
add r12, 1
mov byte [r13 + 0x29], al
mov rcx, r14
mov dword [rsp + 0xa0], 0
call fcn.00748380
mov r9, r14
mov rcx, rbp
lea rdx, str.__.s
mov r8d, eax
call fcn.00754540
cmp qword [rsp + 0x58], r12
lea r8d, [rdi + 1]
jne 0x7eca66
lea rdx, [0x00b51a4e]
mov rcx, rbp
mov dword [rsp + 0x58], r8d
mov rbx, r13
call fcn.00754540
test rbp, rbp
mov r8d, dword [rsp + 0x58]
je 0x7ecb70
lea rdi, [0x008410a0]
cmp rbp, rdi
je 0x7ecb70
mov rcx, rbp
mov dword [rsp + 0x58], r8d
call fcn.00754970
test rax, rax
mov rbp, rax
je 0x7ecb70
mov r8d, dword [rsp + 0x58]
cmp dword [rsp + 0x140], r8d
jle 0x7ecb80
mov rdx, qword [rsp + 0x90]
lea rcx, [0x00b4affa]
mov r14d, 1
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov rcx, rbp
mov qword [rsi], rax
call fcn.00740fd0
mov eax, dword [rbx + 0x40]
sub eax, 1
mov dword [rbx + 0x40], eax
jne 0x7ec8c9
mov rcx, rbx
call fcn.0079d6e0
jmp 0x7ec8c9
mov r14d, 7
jmp 0x7ec8c9
xor ecx, ecx
mov r14d, 7
call fcn.00740fd0
jmp 0x7ecb44
mov rcx, qword [rsp + 0x130]
mov rdx, rax
call fcn.007e4cf0
test eax, eax
mov r14d, eax
jne 0x7ecf83
mov rcx, rbp
call fcn.00740fd0
movzx eax, byte [rbx + 0x25]
mov edx, eax
shr dl, 1
cmp al, 1
mov byte [rbx + 0x24], dl
jbe 0x7ecfd0
cmp al, 0xa
ja 0x7ecfc0
test al, 1
mov edx, 1
je 0x7ecbf0
mov rdx, qword [rsp + rdx*8 + 0x70]
lea rcx, [0x00b4affa]
mov r14d, 1
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov qword [rsi], rax
jmp 0x7ecb44
lea eax, [rax*4 + 8]
mov rdx, qword [rbx + 0x30]
mov byte [rbx + 0x27], al
mov eax, dword [rsp + 0x160]
test eax, eax
je 0x7ecfda
lea rcx, str.PRAGMA__Q.page_size
mov dword [rsp + 0xa0], 0
call fcn.00782ad0
test rax, rax
mov rbp, rax
je 0x7ed162
mov r8, qword [rsp + 0x50]
mov rdx, rax
mov rcx, qword [rsp + 0x130]
call fcn.007e8eb0
test eax, eax
mov r15d, eax
jne 0x7ed168
mov eax, dword [rsp + 0xa0]
lea edx, [rax - 0x40]
movzx eax, byte [rbx + 0x27]
mov dword [rbx + 0x20], edx
imul eax, eax, 0x33
add eax, 4
cmp edx, eax
jle 0x7ecc6e
mov dword [rbx + 0x20], eax
lea r13, str._a_d
mov rcx, rbp
call fcn.00740fd0
mov rax, qword [rsp + 0x130]
mov rbp, qword [rsi + 0x10]
mov rsi, qword [rsi + 8]
mov rcx, rax
mov qword [rbx + 0x18], rax
call fcn.0077a280
lea rdx, str.CREATE_TABLE___w_.__w_rowid__rowid_INTEGER_PRIMARY_KEY_nodeno
mov r9, rbp
mov r8, rsi
mov rcx, rax
mov r12, rax
call fcn.00754540
cmp byte [rbx + 0x29], 0
je 0x7eccdb
nop word [rax + rax]
mov r8d, r15d
mov rdx, r13
mov rcx, r12
call fcn.00754540
movzx eax, byte [rbx + 0x29]
add r15d, 1
cmp r15d, eax
jl 0x7eccc0
mov r9, rbp
mov r8, rsi
mov rcx, r12
lea rdx, str.__CREATE_TABLE___w_.__w_node__nodeno_INTEGER_PRIMARY_KEY_data__
call fcn.00754540
mov r9, rbp
mov r8, rsi
mov rcx, r12
lea rdx, str.CREATE_TABLE___w_.__w_parent__nodeno_INTEGER_PRIMARY_KEY_parentnode__
call fcn.00754540
mov eax, dword [rbx + 0x20]
mov r9, rbp
mov r8, rsi
lea rdx, str.INSERT_INTO___w_.__w_node_VALUES_1_zeroblob__d__
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.00754540
test r12, r12
je 0x7ed130
cmp r12, rdi
je 0x7ed130
mov rcx, r12
call fcn.00754970
test rax, rax
mov r12, rax
je 0x7ed130
mov rcx, qword [rsp + 0x130]
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov qword [rsp + 0x20], 0
call fcn.007c6850
mov rcx, r12
mov r13d, eax
call fcn.00740fd0
test r13d, r13d
jne 0x7ed2dc
lea rax, [rbx + 0x78]
mov rdx, qword [rbx + 0x30]
xor r9d, r9d
mov qword [rsp + 0x40], 0
mov qword [rsp + 0xa0], rax
lea rax, [rbx + 0x80]
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0xa8], rax
lea rax, [rbx + 0x88]
mov qword [rsp + 0xb0], rax
lea rax, [rbx + 0x90]
mov qword [rsp + 0xb8], rax
lea rax, [rbx + 0x98]
mov qword [rsp + 0xc0], rax
lea rax, [rbx + 0xa0]
mov qword [rsp + 0xc8], rax
lea rax, [rbx + 0xa8]
mov qword [rsp + 0xd0], rax
lea r8, str.sqlite_stat1
mov qword [rsp + 0x38], 0
lea rax, [rbx + 0xb0]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov qword [rsp + 0xd8], rax
call fcn.007e7160
test eax, eax
mov r15d, eax
je 0x7ed1e7
cmp eax, 1
mov qword [rbx + 0x48], 0x100000
je 0x7ed07e
cmp byte [rbx + 0x29], 0
je 0x7ed2d4
lea rcx, str.SELECT__FROM___w_.__w_rowid__WHERE_rowid_1
mov r8, rbp
mov rdx, rsi
call fcn.00782ad0
test rax, rax
mov qword [rbx + 0x58], rax
je 0x7ed130
mov rcx, qword [rsp + 0x130]
call fcn.0077a280
mov r9, rbp
mov r8, rsi
lea rdx, str.UPDATE___w_.__w_rowid_SET
mov rcx, rax
mov r12, rax
call fcn.00754540
cmp byte [rbx + 0x29], 0
lea rsi, str.a_d__d
lea rbp, [0x00b4a72b]
jne 0x7eced1
jmp 0x7ecef0
mov r8d, 1
mov rdx, rbp
mov rcx, r12
call fcn.00758780
lea r9d, [r14 + 2]
mov r8d, r14d
mov rdx, rsi
mov rcx, r12
add r14d, 1
call fcn.00754540
movzx eax, byte [rbx + 0x29]
cmp r14d, eax
jl 0x7ecec0
lea rdx, str._WHERE_rowid_1
mov rcx, r12
call fcn.00754540
test r12, r12
je 0x7ed130
cmp r12, rdi
je 0x7ed130
mov rcx, r12
call fcn.00754970
test rax, rax
mov rsi, rax
je 0x7ed130
lea rax, [rbx + 0xb8]
mov r9d, 0x85
mov rdx, rsi
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0x30], 0
mov r8d, 0xffffffff
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
call fcn.007dc110
mov rcx, rsi
mov r14d, eax
call fcn.00740fd0
test r14d, r14d
jne 0x7ed136
mov rax, qword [rsp + 0x150]
mov qword [rax], rbx
jmp 0x7ec8c9
mov rcx, qword [rsp + 0x130]
call fcn.00766ed0
lea rcx, [0x00b4affa]
mov rdx, rax
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov rcx, rbp
mov qword [rsi], rax
call fcn.00740fd0
jmp 0x7ecb44
mov edx, 3
jmp 0x7ecbc7
mov edx, 2
jmp 0x7ecbc7
mov r8, qword [rbx + 0x38]
lea rcx, str.SELECT_length_data__FROM__q._q_node_WHERE_nodeno__1
call fcn.00782ad0
test rax, rax
mov rbp, rax
je 0x7ed19f
mov rcx, qword [rsp + 0x130]
lea r8, [rbx + 0x20]
mov rdx, rax
call fcn.007e8eb0
test eax, eax
mov r12d, eax
jne 0x7ed1a5
cmp dword [rbx + 0x20], 0x1bf
jle 0x7ed273
mov rcx, rbp
call fcn.00740fd0
mov rax, qword [rsp + 0x130]
mov rbp, qword [rsi + 0x10]
mov rsi, qword [rsi + 8]
mov qword [rbx + 0x18], rax
jmp 0x7ecd7a
mov rcx, qword [rsp + 0x68]
mov r13d, 0x64
call fcn.007c57e0
cmp eax, 0x64
je 0x7ed2a1
mov rcx, qword [rsp + 0x68]
call fcn.0079b760
mov rcx, r12
mov r15d, eax
call fcn.00740fd0
test r15d, r15d
mov qword [rbx + 0x48], r13
jne 0x7ece53
xor r13d, r13d
mov dword [rsp + 0x58], r14d
mov r12, qword [rsp + 0x50]
jmp 0x7ed0ee
mov rdx, r15
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0x30], 0
mov r9d, 0x85
mov rax, qword [r12 + r13*8]
mov r8d, 0xffffffff
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
call fcn.007dc110
mov rcx, r15
mov r14d, eax
call fcn.00740fd0
lea edx, [r13 + 1]
cmp edx, 7
setle cl
test r14d, r14d
sete dl
add r13, 1
test cl, dl
je 0x7ed2ba
cmp r13, 3
je 0x7ed1d1
lea rax, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
mov rcx, qword [rax + r13*8]
mov r8, rbp
mov rdx, rsi
call fcn.00782ad0
test rax, rax
mov r15, rax
jne 0x7ed090
xor ecx, ecx
mov r14d, dword [rsp + 0x58]
call fcn.00740fd0
cmp byte [rbx + 0x29], 0
jne 0x7ece5d
mov r14d, 7
mov rcx, qword [rsp + 0x130]
call fcn.00766ed0
lea rcx, [0x00b4affa]
mov rdx, rax
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov qword [rsi], rax
jmp 0x7ecb44
mov r15d, 7
mov rcx, qword [rsp + 0x130]
mov r14d, r15d
call fcn.00766ed0
lea rcx, [0x00b4affa]
mov rdx, rax
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov qword [rsi], rax
mov rcx, rbp
call fcn.00740fd0
jmp 0x7ecb44
mov r12d, 7
mov rcx, qword [rsp + 0x130]
mov r14d, r12d
call fcn.00766ed0
lea rcx, [0x00b4affa]
mov rdx, rax
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov qword [rsi], rax
jmp 0x7ed192
cmp byte [rbx + 0x29], 0
lea rcx, str.INSERT_INTO__w_.__w_rowid__rowid_nodeno_VALUES__1__2_ON_CONFLICT_rowid_DO_UPDATE_SET_nodenoexcluded.nodeno
jne 0x7ed103
jmp 0x7ed0f8
mov rdx, qword [rbx + 0x30]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
mov r8, qword [rbx + 0x38]
call fcn.00782ad0
test rax, rax
mov r12, rax
je 0x7ed260
mov rcx, qword [rsp + 0x130]
lea rax, [rsp + 0x68]
mov rdx, r12
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
mov r9d, pe_nt_image_headers64
mov r8d, 0xffffffff
mov qword [rsp + 0x20], 0
call fcn.007dc110
test eax, eax
mov r15d, eax
je 0x7ed043
mov rcx, r12
call fcn.00740fd0
mov qword [rbx + 0x48], 0x64
jmp 0x7ece53
mov qword [rbx + 0x48], 0x64
mov r15d, 7
jmp 0x7ece53
mov rdx, qword [rbx + 0x38]
lea rcx, str.undersize_RTree_blobs_in___q_node_
mov r14d, 0x10b
call fcn.00782ad0
mov rsi, qword [rsp + 0x158]
mov rcx, rbp
mov qword [rsi], rax
call fcn.00740fd0
jmp 0x7ecb44
mov rcx, qword [rsp + 0x68]
xor edx, edx
call fcn.0074e610
cmp rax, 0x64
cmovge r13, rax
jmp 0x7ed05c
cmp byte [rbx + 0x29], 0
mov r12d, r14d
mov r14d, dword [rsp + 0x58]
jne 0x7ece5d
mov r14d, r12d
jmp 0x7ecf6a
mov r14d, r15d
jmp 0x7ed136
mov r14d, r13d
jmp 0x7ed136