Function at 0x14020d2b0
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov edi, dword [rcx + 0x40]
mov dword [rsp + 0x3c], edx
mov r12, rcx
mov r15, r8
mov rbp, r9
test edi, edi
je 0x14020d2e8
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rcx + 0x20]
test rcx, rcx
je 0x14020d350
mov r8, rbp
mov edx, 1
call sym.sqlite3_bind_int64
mov rcx, qword [r12 + 0x20]
call dbg.sqlite3_step
cmp eax, 0x64
je 0x14020d388
mov rcx, qword [r12 + 0x20]
call dbg.sqlite3_reset
mov edx, dword [r12 + 0x40]
test edx, edx
jne 0x14020d2d4
mov dword [r12 + 0x40], eax
test eax, eax
jne 0x14020d2d4
mov r8, rbp
lea rdx, str.Node__lld_missing_from_database
mov rcx, r12
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp dbg.rtreeCheckAppendMsg
mov r9, qword [r12 + 0x10]
mov r8, qword [r12 + 8]
mov rcx, r12
lea rdx, str.SELECT_data_FROM__Q._q_node_WHERE_nodeno_
call dbg.rtreeCheckPrepare
mov r13d, dword [r12 + 0x40]
mov qword [r12 + 0x20], rax
mov rcx, rax
test r13d, r13d
je 0x14020d2f1
jmp 0x14020d2d4
mov rcx, qword [r12 + 0x20]
xor edx, edx
call sym.sqlite3_column_bytes
mov r14, qword [r12 + 0x20]
xor edx, edx
mov ebx, eax
mov rcx, r14
call dbg.columnMem
mov rcx, rax
call sym.sqlite3_value_blob
mov r13, rax
test r14, r14
je 0x14020d3bd
mov rcx, r14
call sym.columnMallocFailure.part.0
mov esi, dword [0x140248ef4]
test esi, esi
jne 0x14020d6c5
call dbg.sqlite3MutexInit
test eax, eax
jne 0x14020d574
call sym.sqlite3_initialize.part.0
test eax, eax
jne 0x14020d574
movsxd rsi, ebx
mov rcx, rsi
call sym.sqlite3Malloc
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14020d574
mov r8, rsi
mov rdx, r13
mov rcx, rax
call sym.memcpy
mov rcx, qword [r12 + 0x20]
call dbg.sqlite3_reset
mov r11d, dword [r12 + 0x40]
test r11d, r11d
je 0x14020d6cd
cmp ebx, 3
jle 0x14020d621
test r15, r15
je 0x14020d690
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + 2]
movzx edx, byte [rcx + 3]
shl eax, 8
lea esi, [rax + rdx]
mov edx, dword [r12 + 0x1c]
mov ecx, esi
mov dword [rsp + 0x58], esi
lea eax, [rdx + 1]
imul ecx, eax
lea ecx, [rcx*8 + 3]
cmp ecx, ebx
jge 0x14020d670
mov ecx, dword [rsp + 0x3c]
lea r14, str.Dimension__d_of_cell__d_on_node__lld_is_corrupt_relative_to_parent
sub ecx, 1
mov dword [rsp + 0x5c], ecx
test esi, esi
je 0x14020d636
mov rcx, r15
mov r15, r12
mov r12, rcx
imul eax, edi
xor ebx, ebx
lea r10d, [rax*8 + 4]
mov rax, qword [rsp + 0x40]
movsxd r10, r10d
lea r13, [rax + r10]
mov rax, qword [r13]
bswap rax
mov qword [rsp + 0x48], rax
lea rax, [r13 + 8]
mov qword [rsp + 0x50], rax
test edx, edx
jle 0x14020d5a5
mov qword [rsp + 0x30], rbp
mov rbp, r13
jmp 0x14020d542
cmp r13d, esi
setg al
test al, al
jne 0x14020d5f6
test r12, r12
je 0x14020d538
mov eax, dword [r12 + rbx*8]
mov edx, dword [r12 + rbx*8 + 4]
mov ecx, dword [r15 + 0x18]
bswap eax
bswap edx
test ecx, ecx
jne 0x14020d588
movd xmm0, eax
movd xmm2, r13d
comiss xmm0, xmm2
ja 0x14020d520
movd xmm0, esi
movd xmm3, edx
comiss xmm0, xmm3
jbe 0x14020d538
nop word [rax + rax]
mov rax, qword [rsp + 0x30]
mov r9d, edi
mov rdx, r14
mov rcx, r15
mov qword [rsp + 0x20], rax
call dbg.rtreeCheckAppendMsg
add rbx, 1
cmp dword [r15 + 0x1c], ebx
jle 0x14020d5a0
mov r13d, dword [rbp + rbx*8 + 8]
mov esi, dword [rbp + rbx*8 + 0xc]
mov r8d, ebx
mov r9d, dword [r15 + 0x18]
bswap r13d
bswap esi
test r9d, r9d
jne 0x14020d4d0
movd xmm0, r13d
movd xmm1, esi
comiss xmm0, xmm1
seta al
jmp 0x14020d4d6
mov dword [r12 + 0x40], 7
jmp 0x14020d30d
cmp esi, edx
jg 0x14020d520
cmp r13d, eax
jl 0x14020d520
add rbx, 1
cmp dword [r15 + 0x1c], ebx
jg 0x14020d542
nop dword [rax + rax]
mov rbp, qword [rsp + 0x30]
mov r10d, dword [rsp + 0x3c]
test r10d, r10d
je 0x14020d650
mov rsi, qword [rsp + 0x48]
mov r9, rbp
xor edx, edx
mov rcx, r15
mov r8, rsi
call dbg.rtreeCheckMapping
mov r8, qword [rsp + 0x50]
mov r9, rsi
mov rcx, r15
mov edx, dword [rsp + 0x5c]
call dbg.rtreeCheckNode
add dword [r15 + 0x3c], 1
add edi, 1
cmp edi, dword [rsp + 0x58]
je 0x14020d636
mov edx, dword [r15 + 0x1c]
lea eax, [rdx + 1]
jmp 0x14020d48c
mov rax, qword [rsp + 0x30]
mov r9d, edi
mov rcx, r15
mov dword [rsp + 0x38], r8d
lea rdx, str.Dimension__d_of_cell__d_on_node__lld_is_corrupt
mov qword [rsp + 0x20], rax
call dbg.rtreeCheckAppendMsg
mov r8d, dword [rsp + 0x38]
jmp 0x14020d4de
mov r9d, ebx
mov r8, rbp
lea rdx, str.Node__lld_is_too_small___d_bytes_
mov rcx, r12
call dbg.rtreeCheckAppendMsg
mov rcx, qword [rsp + 0x40]
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.sqlite3_free
mov r8, qword [rsp + 0x48]
mov r9, rbp
mov edx, 1
mov rcx, r15
call dbg.rtreeCheckMapping
add dword [r15 + 0x38], 1
jmp 0x14020d5e1
mov dword [rsp + 0x20], ebx
mov r9d, dword [rsp + 0x58]
mov r8, rbp
mov rcx, r12
lea rdx, str.Node__lld_is_too_small_for_cell_count_of__d___d_bytes_
call dbg.rtreeCheckAppendMsg
jmp 0x14020d636
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx]
movzx edx, byte [rcx + 1]
shl eax, 8
add eax, edx
mov dword [rsp + 0x3c], eax
cmp eax, 0x28
jle 0x14020d436
mov r8d, eax
lea rdx, str.Rtree_depth_out_of_range___d_
mov rcx, r12
call dbg.rtreeCheckAppendMsg
jmp 0x14020d636
mfence
jmp 0x14020d3e5
mov dword [r12 + 0x40], eax
jmp 0x14020d424