Function at 0x1402bff20
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov r13d, dword [rcx + 0x40]
test r13d, r13d
mov rsi, rcx
mov r14d, edx
mov r15, r8
mov r12, r9
je 0x1402bff60
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [rcx + 0x20]
test rbx, rbx
je 0x1402c01cb
xor edx, edx
mov rcx, rbx
call sym.vdbeUnbind
test eax, eax
jne 0x1402bffac
mov rcx, qword [rbx + 0x80]
test word [rcx + 0x14], 0x9000
jne 0x1402c01be
mov edi, 4
mov qword [rcx], r12
mov word [rcx + 0x14], di
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1402bffac
call qword [0x1403951b0]
mov rcx, qword [rsi + 0x20]
call sym.sqlite3_step
cmp eax, 0x64
je 0x1402c0000
mov rcx, qword [rsi + 0x20]
call sym.sqlite3_reset
mov ebx, dword [rsi + 0x40]
test ebx, ebx
jne 0x1402bff45
test eax, eax
mov dword [rsi + 0x40], eax
jne 0x1402bff45
lea rdx, str.Node__lld_missing_from_database
mov r8, r12
mov rcx, rsi
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.rtreeCheckAppendMsg
mov rcx, qword [rsi + 0x20]
xor edx, edx
call sym.sqlite3_column_bytes
mov rbp, qword [rsi + 0x20]
xor edx, edx
mov ebx, eax
mov rcx, rbp
call sym.columnMem
mov rcx, rax
call sym.sqlite3_value_blob
mov rcx, rbp
mov rdi, rax
call sym.columnMallocFailure
call sym.sqlite3_initialize
test eax, eax
mov r13d, eax
jne 0x1402c0208
movsxd rbp, ebx
mov rcx, rbp
call sym.sqlite3Malloc
test rax, rax
je 0x1402c0208
mov r8, rbp
mov rdx, rdi
mov rcx, rax
mov qword [rsp + 0x30], rax
call sym.memcpy
mov rcx, qword [rsi + 0x20]
call sym.sqlite3_reset
mov r11d, dword [rsi + 0x40]
mov r10, qword [rsp + 0x30]
test r11d, r11d
je 0x1402c048b
cmp ebx, 3
jle 0x1402c02c8
test r15, r15
je 0x1402c0358
movzx edx, word [r10 + 2]
mov ecx, dword [rsi + 0x1c]
rol dx, 8
lea eax, [rcx + 1]
movzx r9d, dx
mov r8d, eax
imul r8d, r9d
lea r8d, [r8*8 + 3]
cmp r8d, ebx
jge 0x1402c0330
test r9d, r9d
je 0x1402c02e7
test r15, r15
je 0x1402c0390
mov dword [rsp + 0x4c], r9d
mov rdi, rsi
mov qword [rsp + 0x40], r10
mov dword [rsp + 0x48], r14d
imul eax, r13d
mov rsi, qword [rsp + 0x40]
xor ebx, ebx
lea eax, [rax*8 + 4]
cdqe
add rsi, rax
test ecx, ecx
mov rax, qword [rsi]
bswap rax
mov rbp, rax
jle 0x1402c0253
mov dword [rsp + 0x30], r13d
mov rbp, rsi
mov r14, rdi
mov r13, r15
mov qword [rsp + 0x38], rax
jmp 0x1402c0192
cmp edi, esi
setg al
test al, al
mov r15d, ebx
jne 0x1402c02a7
mov ecx, dword [r14 + 0x18]
mov eax, dword [r13 + rbx*8]
mov edx, dword [r13 + rbx*8 + 4]
test ecx, ecx
bswap eax
bswap edx
jne 0x1402c0218
movd xmm0, eax
movd xmm2, edi
comiss xmm0, xmm2
ja 0x1402c0168
movd xmm0, esi
movd xmm4, edx
comiss xmm0, xmm4
jbe 0x1402c0184
nop dword [rax]
mov r9d, dword [rsp + 0x30]
mov qword [rsp + 0x20], r12
mov r8d, r15d
mov rcx, r14
lea rdx, str.Dimension__d_of_cell__d_on_node__lld_is_corrupt_relative_to_parent
call sym.rtreeCheckAppendMsg
add rbx, 1
cmp dword [r14 + 0x1c], ebx
jle 0x1402c0240
mov r8d, dword [r14 + 0x18]
mov edi, dword [rbp + rbx*8 + 8]
mov esi, dword [rbp + rbx*8 + 0xc]
test r8d, r8d
bswap edi
bswap esi
jne 0x1402c0120
movd xmm0, edi
movd xmm1, esi
comiss xmm0, xmm1
seta al
jmp 0x1402c0125
mov rdx, r12
call sym.vdbeReleaseAndSetInt64
jmp 0x1402bff9a
mov r9, qword [rcx + 0x10]
lea rdx, str.SELECT_data_FROM__Q._q_node_WHERE_nodeno_
mov r8, qword [rcx + 8]
call sym.rtreeCheckPrepare
mov ebp, dword [rsi + 0x40]
mov rbx, rax
mov qword [rsi + 0x20], rax
test ebp, ebp
jne 0x1402bff45
xor edx, edx
mov rcx, rbx
call sym.vdbeUnbind
test eax, eax
jne 0x1402bffac
jmp 0x1402bff7b
mov dword [rsi + 0x40], 7
jmp 0x1402bffba
cmp esi, edx
jg 0x1402c0168
cmp edi, eax
jl 0x1402c0168
add rbx, 1
cmp dword [r14 + 0x1c], ebx
jg 0x1402c0192
nop word cs:[rax + rax]
mov rsi, rbp
mov r15, r13
mov rbp, qword [rsp + 0x38]
mov rdi, r14
mov r13d, dword [rsp + 0x30]
mov r9d, dword [rsp + 0x48]
test r9d, r9d
je 0x1402c0300
xor edx, edx
mov r9, r12
mov r8, rbp
mov rcx, rdi
add r13d, 1
call sym.rtreeCheckMapping
mov eax, dword [rsp + 0x48]
mov r9, rbp
mov rcx, rdi
lea r8, [rsi + 8]
lea edx, [rax - 1]
call sym.rtreeCheckNode
mov eax, dword [rsp + 0x4c]
add dword [rdi + 0x3c], 1
cmp r13d, eax
je 0x1402c0328
mov ecx, dword [rdi + 0x1c]
lea eax, [rcx + 1]
jmp 0x1402c00e1
mov r9d, dword [rsp + 0x30]
mov qword [rsp + 0x20], r12
mov r8d, ebx
mov rcx, r14
lea rdx, str.Dimension__d_of_cell__d_on_node__lld_is_corrupt
call sym.rtreeCheckAppendMsg
jmp 0x1402c0130
mov r9d, ebx
mov r8, r12
mov rcx, rsi
mov qword [rsp + 0x30], r10
lea rdx, str.Node__lld_is_too_small___d_bytes_
call sym.rtreeCheckAppendMsg
mov r10, qword [rsp + 0x30]
mov rcx, r10
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.sqlite3_free
mov r9, r12
mov r8, rbp
mov edx, 1
mov rcx, rdi
add r13d, 1
call sym.rtreeCheckMapping
mov eax, dword [rsp + 0x4c]
add dword [rdi + 0x38], 1
cmp r13d, eax
jne 0x1402c029c
mov r10, qword [rsp + 0x40]
jmp 0x1402c02e7
mov dword [rsp + 0x20], ebx
lea rdx, str.Node__lld_is_too_small_for_cell_count_of__d___d_bytes_
mov r8, r12
mov rcx, rsi
mov qword [rsp + 0x30], r10
call sym.rtreeCheckAppendMsg
mov r10, qword [rsp + 0x30]
jmp 0x1402c02e7
movzx r14d, word [r10]
rol r14w, 8
movzx r14d, r14w
cmp r14d, 0x28
jle 0x1402c0092
mov r8d, r14d
mov rcx, rsi
mov qword [rsp + 0x30], r10
lea rdx, str.Rtree_depth_out_of_range___d_
call sym.rtreeCheckAppendMsg
mov r10, qword [rsp + 0x30]
jmp 0x1402c02e7
lea edi, [r14 - 1]
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x48], edi
mov rdi, rsi
mov rsi, r10
imul eax, r13d
test ecx, ecx
lea r10d, [rax*8 + 4]
movsxd r10, r10d
lea r15, [rsi + r10]
mov rbp, qword [r15]
bswap rbp
jle 0x1402c0424
xor ebx, ebx
jmp 0x1402c03da
cmp edx, eax
setl al
test al, al
jne 0x1402c0401
add rbx, 1
cmp dword [rdi + 0x1c], ebx
jle 0x1402c0424
mov r10d, dword [rdi + 0x18]
mov eax, dword [r15 + rbx*8 + 8]
mov edx, dword [r15 + rbx*8 + 0xc]
test r10d, r10d
bswap eax
bswap edx
jne 0x1402c03c8
movd xmm0, eax
movd xmm3, edx
comiss xmm0, xmm3
seta al
jmp 0x1402c03cd
mov r8d, ebx
mov qword [rsp + 0x20], r12
mov r9d, r13d
mov rcx, rdi
lea rdx, str.Dimension__d_of_cell__d_on_node__lld_is_corrupt
add rbx, 1
call sym.rtreeCheckAppendMsg
cmp dword [rdi + 0x1c], ebx
jg 0x1402c03da
test r14d, r14d
mov r9, r12
mov r8, rbp
je 0x1402c0470
xor edx, edx
mov rcx, rdi
call sym.rtreeCheckMapping
mov edx, dword [rsp + 0x48]
mov r9, rbp
mov rcx, rdi
lea r8, [r15 + 8]
call sym.rtreeCheckNode
add dword [rdi + 0x3c], 1
add r13d, 1
cmp dword [rsp + 0x30], r13d
je 0x1402c0483
mov ecx, dword [rdi + 0x1c]
lea eax, [rcx + 1]
jmp 0x1402c03a3
mov edx, 1
mov rcx, rdi
call sym.rtreeCheckMapping
add dword [rdi + 0x38], 1
jmp 0x1402c0450
mov r10, rsi
jmp 0x1402c02e7
mov dword [rsi + 0x40], eax
jmp 0x1402c0080