Function at 0x1402059f0
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
lea eax, [r8 - 6]
mov qword [rsp + 0x100], rcx
mov rdi, rdx
mov ebx, r8d
mov qword [rsp + 0x118], r9
cmp eax, 0x61
jbe 0x140205a70
cmp r8d, 5
lea rax, str.Too_few_columns_for_an_rtree_table
lea rdx, str.Too_many_columns_for_an_rtree_table
mov ebp, 1
cmovle rdx, rax
lea rcx, [0x14036d099]
call fcn.14018ff30
mov rdi, qword [rsp + 0x128]
mov qword [rdi], rax
mov eax, ebp
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x100]
mov r8d, 1
mov edx, 1
call fcn.140173c50
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_strlen
mov r13, rax
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 0x10]
call sub.msvcrt.dll_strlen
mov r9d, dword [0x140241ed4]
mov r15, rax
test r9d, r9d
jne 0x140205d60
call fcn.140149b40
test eax, eax
jne 0x140205d30
call fcn.14018d4f0
test eax, eax
jne 0x140205d30
movsxd r13, r13d
movsxd r15, r15d
lea rsi, [r13 + r15 + 0x3ca]
mov rcx, rsi
call fcn.14014dcb0
mov r12, rax
test rax, rax
je 0x140205d30
test rdi, rdi
mov r8, rsi
mov rcx, rax
setne dil
setne bpl
xor edx, edx
call sub.msvcrt.dll_memset
lea rcx, [r12 + 0x3c8]
mov byte [r12 + 0x26], dil
mov r8, r13
lea rax, [0x140241180]
lea r14, [rcx + r13 + 1]
mov qword [r12 + 0x30], rcx
movzx ebp, bpl
mov qword [r12], rax
mov rax, qword [rsp + 0x118]
lea rdi, [rsp + 0x70]
mov qword [r12 + 0x38], r14
mov dword [r12 + 0x40], 1
mov rdx, qword [rax + 8]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x118]
mov r8, r15
mov rcx, r14
mov r14d, 4
mov rdx, qword [rax + 0x10]
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x100]
call fcn.14018e340
mov rdx, rdi
mov dword [rsp + 0x70], 0
mov r13, rax
mov rax, qword [rsp + 0x118]
mov r15, qword [rax + 0x18]
mov rcx, r15
call fcn.14014c420
mov r9, r15
lea rdx, str.CREATE_TABLE_x__.s_INT
mov rcx, r13
mov r8d, eax
lea r15, str.__.s_REAL
call fcn.14016eb20
mov rax, qword [rsp + 0x118]
lea rsi, [rax + 0x20]
jmp 0x140205c27
test al, al
jne 0x140205c80
add byte [r12 + 0x25], 1
mov rcx, r9
mov rdx, rdi
add r14d, 1
mov qword [rsp + 0x58], r9
add rsi, 8
mov dword [rsp + 0x70], 0
call fcn.14014c420
mov rdx, qword [r15 + rbp*8]
mov r9, qword [rsp + 0x58]
mov rcx, r13
mov r8d, eax
call fcn.14016eb20
cmp ebx, r14d
je 0x140205c80
mov r9, qword [rsi]
movzx eax, byte [r12 + 0x29]
cmp byte [r9], 0x2b
jne 0x140205be0
add eax, 1
add r9, 1
mov rdx, rdi
add r14d, 1
mov byte [r12 + 0x29], al
mov rcx, r9
add rsi, 8
mov qword [rsp + 0x58], r9
mov dword [rsp + 0x70], 0
call fcn.14014c420
mov r9, qword [rsp + 0x58]
lea rdx, str.__.s
mov rcx, r13
mov r8d, eax
call fcn.14016eb20
cmp ebx, r14d
jne 0x140205c27
nop
lea rdx, [0x140373482]
mov rcx, r13
call fcn.14016eb20
test r13, r13
je 0x140205d70
lea rax, [0x140241ac0]
cmp r13, rax
je 0x140205d70
mov rax, qword [r13 + 8]
test rax, rax
je 0x140205d40
mov edx, dword [r13 + 0x18]
mov byte [rax + rdx], 0
mov r8d, dword [r13 + 0x14]
test r8d, r8d
je 0x140205cd1
test byte [r13 + 0x1d], 4
je 0x140206396
mov r15, qword [r13 + 8]
mov rcx, r13
call fcn.14014ac00
test r15, r15
je 0x140205d48
cmp ebx, r14d
jle 0x140205d88
lea rdx, str.Auxiliary_rtree_columns_must_be_last
lea rcx, [0x14036d099]
mov ebp, 1
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov rcx, r15
mov qword [rbx], rax
call fcn.14014ac00
sub dword [r12 + 0x40], 1
jne 0x140205a54
mov rcx, r12
call fcn.1401b4e00
jmp 0x140205a54
mov ebp, 7
jmp 0x140205a54
mov rcx, r13
call fcn.14014ac00
xor ecx, ecx
mov ebp, 7
call fcn.14014ac00
jmp 0x140205d16
mfence
jmp 0x140205ada
xor r15d, r15d
mov ebp, 7
mov rcx, r15
call fcn.14014ac00
jmp 0x140205d16
mov rcx, qword [rsp + 0x100]
mov rdx, r15
call fcn.140200020
mov ebp, eax
test eax, eax
jne 0x140206200
mov rcx, r15
call fcn.14014ac00
movzx eax, byte [r12 + 0x25]
mov edx, eax
shr dl, 1
mov byte [r12 + 0x24], dl
je 0x140206020
cmp al, 0xa
ja 0x140205ff0
lea rdx, str.Wrong_number_of_columns_for_an_rtree_table
test al, 1
jne 0x140205ff7
mov ecx, dword [rsp + 0x130]
lea eax, [rax*4 + 8]
mov rdx, qword [r12 + 0x30]
mov byte [r12 + 0x27], al
test ecx, ecx
jne 0x140206029
mov r8, qword [r12 + 0x38]
lea rcx, str.SELECT_length_data__FROM__q._q_node_WHERE_nodeno__1
call fcn.14018ff30
mov r13, rax
test rax, rax
je 0x140206366
mov rcx, qword [rsp + 0x100]
lea r8, [r12 + 0x20]
mov rdx, rax
call fcn.140205940
mov ebx, eax
test eax, eax
jne 0x14020636b
cmp dword [r12 + 0x20], 0x1bf
jle 0x140206521
mov rcx, r13
call fcn.14014ac00
mov rax, qword [rsp + 0x118]
mov rbx, qword [rax + 0x10]
mov rsi, qword [rax + 8]
mov rax, qword [rsp + 0x100]
mov qword [r12 + 0x18], rax
lea rax, [r12 + 0x78]
mov rdx, qword [r12 + 0x30]
xor r9d, r9d
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x70], rax
lea r8, str.sqlite_stat1
lea rax, [r12 + 0x80]
mov rcx, qword [rsp + 0x100]
mov qword [rsp + 0x78], rax
lea rax, [r12 + 0x88]
mov qword [rsp + 0x80], rax
lea rax, [r12 + 0x90]
mov qword [rsp + 0x88], rax
lea rax, [r12 + 0x98]
mov qword [rsp + 0x90], rax
lea rax, [r12 + 0xa0]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x98], rax
lea rax, [r12 + 0xa8]
mov qword [rsp + 0xa0], rax
lea rax, [r12 + 0xb0]
mov qword [rsp + 0xa8], rax
call fcn.1402032f0
mov r15d, eax
test eax, eax
je 0x1402063a6
mov qword [r12 + 0x48], 0x100000
cmp eax, 1
je 0x140206268
cmp byte [r12 + 0x29], 0
je 0x1402065ad
mov r8, rbx
mov rdx, rsi
lea rcx, str.SELECT__FROM___w_.__w_rowid__WHERE_rowid_1
call fcn.14018ff30
mov qword [r12 + 0x58], rax
test rax, rax
je 0x140206309
mov rcx, qword [rsp + 0x100]
call fcn.14018e340
mov r9, rbx
mov r8, rsi
lea rdx, str.UPDATE___w_.__w_rowid_SET
mov rcx, rax
mov r13, rax
lea rbx, str.a_d__d
call fcn.14016eb20
cmp byte [r12 + 0x29], 0
lea rsi, [0x14036ca00]
je 0x140206428
lea r9d, [rbp + 2]
mov r8d, ebp
mov rdx, rbx
mov rcx, r13
call fcn.14016eb20
movzx eax, byte [r12 + 0x29]
add ebp, 1
cmp ebp, eax
jge 0x140206428
mov eax, dword [r13 + 0x18]
lea edx, [rax + 1]
cmp edx, dword [r13 + 0x10]
jae 0x1402064fe
add rax, qword [r13 + 8]
mov dword [r13 + 0x18], edx
mov byte [rax], 0x2c
jmp 0x140205fae
lea rdx, str.Too_many_columns_for_an_rtree_table
lea rcx, [0x14036d099]
mov ebp, 1
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov qword [rbx], rax
jmp 0x140205d16
lea rdx, str.Too_few_columns_for_an_rtree_table
jmp 0x140205ff7
lea rcx, str.PRAGMA__Q.page_size
mov dword [rsp + 0x70], 0
call fcn.14018ff30
mov r13, rax
test rax, rax
je 0x140206329
mov rcx, qword [rsp + 0x100]
mov r8, rdi
mov rdx, rax
call fcn.140205940
mov r15d, eax
test eax, eax
jne 0x14020632f
mov eax, dword [rsp + 0x70]
lea edx, [rax - 0x40]
movzx eax, byte [r12 + 0x27]
mov dword [r12 + 0x20], edx
imul eax, eax, 0x33
add eax, 4
cmp edx, eax
jle 0x140206088
mov dword [r12 + 0x20], eax
mov rcx, r13
lea r14, str._a_d
call fcn.14014ac00
mov rax, qword [rsp + 0x118]
mov rbx, qword [rax + 0x10]
mov rsi, qword [rax + 8]
mov rax, qword [rsp + 0x100]
mov qword [r12 + 0x18], rax
mov rcx, rax
call fcn.14018e340
mov r9, rbx
mov r8, rsi
lea rdx, str.CREATE_TABLE___w_.__w_rowid__rowid_INTEGER_PRIMARY_KEY_nodeno
mov rcx, rax
mov r13, rax
call fcn.14016eb20
cmp byte [r12 + 0x29], 0
je 0x1402060fd
nop dword [rax]
mov r8d, r15d
mov rdx, r14
mov rcx, r13
add r15d, 1
call fcn.14016eb20
movzx eax, byte [r12 + 0x29]
cmp r15d, eax
jl 0x1402060e0
mov r9, rbx
mov r8, rsi
lea rdx, str.__CREATE_TABLE___w_.__w_node__nodeno_INTEGER_PRIMARY_KEY_data__
mov rcx, r13
call fcn.14016eb20
mov r9, rbx
mov r8, rsi
mov rcx, r13
lea rdx, str.CREATE_TABLE___w_.__w_parent__nodeno_INTEGER_PRIMARY_KEY_parentnode__
call fcn.14016eb20
mov eax, dword [r12 + 0x20]
mov r9, rbx
mov r8, rsi
lea rdx, str.INSERT_INTO___w_.__w_node_VALUES_1_zeroblob__d__
mov rcx, r13
mov dword [rsp + 0x20], eax
call fcn.14016eb20
lea rax, [0x140241ac0]
cmp r13, rax
je 0x140206309
test r13, r13
je 0x140206309
mov rax, qword [r13 + 8]
test rax, rax
je 0x140206514
mov edx, dword [r13 + 0x18]
mov byte [rax + rdx], 0
mov edx, dword [r13 + 0x14]
test edx, edx
je 0x140206186
test byte [r13 + 0x1d], 4
je 0x14020654f
mov r15, qword [r13 + 8]
mov rcx, r13
call fcn.14014ac00
test r15, r15
je 0x140206309
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
mov rcx, qword [rsp + 0x100]
call fcn.1401defc0
mov rcx, r15
mov r13d, eax
call fcn.14014ac00
test r13d, r13d
je 0x140205e66
mov ebp, r13d
mov rcx, qword [rsp + 0x100]
call fcn.140176d40
lea rcx, [0x14036d099]
mov rdx, rax
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov qword [rbx], rax
jmp 0x140205d16
mov rcx, qword [rsp + 0x100]
call fcn.140176d40
lea rcx, [0x14036d099]
mov rdx, rax
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov qword [rbx], rax
jmp 0x140205d78
mov rcx, qword [rsp + 0x68]
mov r14d, 0x64
call fcn.1401dddc0
cmp eax, 0x64
je 0x14020656f
mov rcx, qword [rsp + 0x68]
call fcn.1401b22b0
mov rcx, r13
mov r15d, eax
call fcn.14014ac00
mov qword [r12 + 0x48], r14
test r15d, r15d
jne 0x140205f43
xor r13d, r13d
jmp 0x1402062ce
mov rdx, r14
mov rcx, qword [rsp + 0x100]
mov qword [rsp + 0x30], 0
mov r9d, 0x85
mov rax, qword [rdi + r13*8]
mov r8d, 0xffffffff
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
call fcn.1401f5c90
mov rcx, r14
mov r15d, eax
call fcn.14014ac00
lea edx, [r13 + 1]
cmp edx, 7
setle cl
test r15d, r15d
sete dl
add r13, 1
test cl, dl
je 0x1402065b5
cmp r13, 3
je 0x140206318
lea rax, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
mov rcx, qword [rax + r13*8]
mov r8, rbx
mov rdx, rsi
call fcn.14018ff30
mov r14, rax
test rax, rax
jne 0x140206270
xor ecx, ecx
call fcn.14014ac00
cmp byte [r12 + 0x29], 0
jne 0x140205f4f
mov ebp, 7
jmp 0x1402061d1
cmp byte [r12 + 0x29], 0
lea rcx, str.INSERT_INTO__w_.__w_rowid__rowid_nodeno_VALUES__1__2_ON_CONFLICT_rowid_DO_UPDATE_SET_nodenoexcluded.nodeno
jne 0x1402062df
jmp 0x1402062d4
mov r15d, 7
mov rcx, qword [rsp + 0x100]
mov ebp, r15d
call fcn.140176d40
lea rcx, [0x14036d099]
mov rdx, rax
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov qword [rbx], rax
mov rcx, r13
call fcn.14014ac00
jmp 0x140205d16
mov ebx, 7
mov rcx, qword [rsp + 0x100]
mov ebp, ebx
call fcn.140176d40
lea rcx, [0x14036d099]
mov rdx, rax
call fcn.14018ff30
mov rdi, qword [rsp + 0x128]
mov qword [rdi], rax
jmp 0x140206359
mov rcx, r13
call fcn.14015dcf0
mov r15, rax
jmp 0x140205cd5
mov rdx, qword [r12 + 0x30]
mov r8, qword [r12 + 0x38]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
call fcn.14018ff30
mov r13, rax
test rax, rax
je 0x1402064ea
lea rax, [rsp + 0x68]
mov rcx, qword [rsp + 0x100]
mov rdx, r13
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.1401f5c90
mov r15d, eax
test eax, eax
je 0x14020622c
mov rcx, r13
call fcn.14014ac00
mov qword [r12 + 0x48], 0x64
jmp 0x140205f43
lea rdx, str._WHERE_rowid_1
mov rcx, r13
call fcn.14016eb20
lea rax, [0x140241ac0]
cmp r13, rax
je 0x140206309
test r13, r13
je 0x140206309
mov rax, qword [r13 + 8]
test rax, rax
je 0x140206514
mov edx, dword [r13 + 0x18]
mov byte [rax + rdx], 0
mov eax, dword [r13 + 0x14]
test eax, eax
je 0x140206478
test byte [r13 + 0x1d], 4
je 0x14020655f
mov r15, qword [r13 + 8]
mov rcx, r13
call fcn.14014ac00
test r15, r15
je 0x140206309
lea rax, [r12 + 0xb8]
mov rcx, qword [rsp + 0x100]
mov rdx, r15
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
mov r9d, 0x85
mov r8d, 0xffffffff
mov qword [rsp + 0x20], 0
call fcn.1401f5c90
mov rcx, r15
mov ebp, eax
call fcn.14014ac00
test ebp, ebp
jne 0x1402061d1
mov rax, qword [rsp + 0x120]
mov qword [rax], r12
jmp 0x140205a54
mov qword [r12 + 0x48], 0x64
mov r15d, 7
jmp 0x140205f43
mov r8d, 1
mov rdx, rsi
mov rcx, r13
call fcn.140164b60
jmp 0x140205fae
mov rcx, r13
call fcn.14014ac00
jmp 0x140206309
mov rdx, qword [r12 + 0x38]
lea rcx, str.undersize_RTree_blobs_in___q_node_
mov ebp, 0x10b
call fcn.14018ff30
mov rbx, qword [rsp + 0x128]
mov rcx, r13
mov qword [rbx], rax
call fcn.14014ac00
jmp 0x140205d16
mov rcx, r13
call fcn.14015dcf0
mov r15, rax
jmp 0x14020618a
mov rcx, r13
call fcn.14015dcf0
mov r15, rax
jmp 0x14020647c
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, r8
mov qword [rsp + 0x58], r8
call fcn.1401558c0
mov rcx, rax
call fcn.14014f740
mov r8, qword [rsp + 0x58]
mov r15, rax
test r8, r8
je 0x1402065a0
mov rcx, r8
call fcn.140155860
cmp r15, 0x64
cmovge r14, r15
jmp 0x140206245
mov ebp, r15d
jmp 0x1402061d1
cmp byte [r12 + 0x29], 0
jne 0x140205f4f
mov ebp, r15d
jmp 0x1402064d2