Function at 0x140171800
Capabilities:
Reference sql statements

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov dword [r11 + 0x18], r8d
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push r12
push r13
push r14
sub rsp, 0xb0
lea rax, str.Wrong_number_of_columns_for_an_rtree_table
xor r12d, r12d
mov qword [r11 - 0x70], rax
mov r13, r9
lea rax, str.Too_few_columns_for_an_rtree_table
mov qword [r11 - 0x78], r12
mov qword [r11 - 0x68], rax
mov r14, rcx
lea rax, str.Too_many_columns_for_an_rtree_table
mov qword [r11 - 0x60], rax
lea rax, str.Auxiliary_rtree_columns_must_be_last
mov qword [r11 - 0x58], rax
lea eax, [r8 - 6]
cmp eax, 0x61
ja 0x140171fd6
mov qword [r11 - 0x20], rbx
mov edx, 1
mov qword [r11 - 0x28], rbp
mov r8d, edx
mov qword [r11 - 0x30], rsi
mov qword [r11 - 0x38], rdi
call fcn.1400cbfb0
mov edx, 2
mov rcx, r14
call fcn.1400cbfb0
mov rax, qword [r13 + 8]
mov rbx, 0xffffffffffffffff
mov rsi, rbx
nop
inc rsi
cmp byte [rax + rsi], r12b
jne 0x1401718a0
mov rax, qword [r13 + 0x10]
nop dword [rax]
inc rbx
cmp byte [rax + rbx], r12b
jne 0x1401718b0
mov qword [rsp + 0x88], r15
lea edi, [rbx + rbx]
movsxd rbp, esi
call fcn.1401e45d0
test eax, eax
jne 0x140171fcc
movsxd r15, edi
lea rcx, [r15 + 0x3d0]
add rcx, rbp
call fcn.1401aeec0
mov rdi, rax
test rax, rax
je 0x140171fcc
lea r8, [r15 + 0x3d0]
xor edx, edx
add r8, rbp
mov rcx, rax
call fcn.140067b50
mov r15, qword [rsp + 0xd8]
lea r10, [rdi + 0x3c8]
mov dword [rdi + 0x48], 1
lea rax, [rdi + 0x48]
mov qword [rsp + 0x48], rax
mov r8, rbp
mov qword [rdi + 0x30], r10
lea rax, [0x1402d0c10]
mov qword [rdi], rax
mov rcx, r10
lea rax, [rdi + 0x30]
mov qword [rsp + 0x40], rax
lea eax, [rsi + 1]
movsxd r9, eax
lea rsi, [rdi + 0x38]
add r9, r10
mov qword [rsp + 0x38], rsi
lea eax, [rbx + 1]
mov qword [rsi], r9
movsxd rdx, eax
add rdx, r9
mov qword [rdi + 0x40], rdx
test r15, r15
setne al
mov byte [rdi + 0x26], al
mov rdx, qword [r13 + 8]
call fcn.140067c10
mov rdx, qword [r13 + 0x10]
mov rcx, qword [rsi]
movsxd rbx, ebx
mov r8, rbx
call fcn.140067c10
mov rdx, qword [r13 + 0x10]
mov r8, rbx
mov rcx, qword [rdi + 0x40]
call fcn.140067c10
mov eax, dword [str._node]
mov rcx, qword [rdi + 0x40]
mov dword [rcx + rbx], eax
movzx eax, word [0x14029343c]
mov word [rcx + rbx + 4], ax
call fcn.1401e45d0
lea rbp, [0x1402cd9b0]
test eax, eax
jne 0x1401719ff
mov ecx, 0x20
call fcn.1401aeec0
mov rbx, rax
test rax, rax
je 0x1401719ff
test r14, r14
je 0x1401719e1
mov eax, dword [r14 + 0x88]
jmp 0x1401719e6
mov eax, 0x3b9aca00
mov qword [rbx + 8], r12
mov qword [rbx], r12
mov dword [rbx + 0x10], r12d
mov dword [rbx + 0x14], eax
mov dword [rbx + 0x18], r12d
mov word [rbx + 0x1c], r12w
jmp 0x140171a02
mov rbx, rbp
mov rcx, qword [r13 + 0x18]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], r12d
call fcn.1401a99f0
mov r9, qword [r13 + 0x18]
lea rdx, str.CREATE_TABLE_x__.s_INT
mov r8d, eax
mov rcx, rbx
call fcn.1400c8630
mov r12d, 4
cmp dword [rsp + 0xe0], r12d
jle 0x140171b00
mov r14, qword [rsp + 0xe8]
mov ebp, r12d
nop word [rax + rax]
mov rsi, qword [r14 + rbp*8]
movzx eax, byte [rdi + 0x29]
cmp byte [rsi], 0x2b
jne 0x140171a86
inc al
mov dword [rsp + 0x30], 0
inc rsi
mov byte [rdi + 0x29], al
mov rcx, rsi
lea rdx, [rsp + 0x30]
lea r15, str.__.s
call fcn.1401a99f0
mov r8d, eax
jmp 0x140171abc
test al, al
jne 0x140171ae9
inc byte [rdi + 0x25]
lea rdx, [rsp + 0x30]
mov rcx, rsi
mov dword [rsp + 0x30], 0
call fcn.1401a99f0
mov r8d, eax
mov rax, r15
neg rax
lea rax, str.__.s_REAL
sbb rcx, rcx
and ecx, 8
mov r15, qword [rcx + rax]
mov r9, rsi
mov rdx, r15
mov rcx, rbx
call fcn.1400c8630
movsxd rcx, dword [rsp + 0xe0]
inc r12d
mov r15, qword [rsp + 0xd8]
inc rbp
cmp rbp, rcx
jl 0x140171a50
mov r14, qword [rsp + 0xd0]
lea rbp, [0x1402cd9b0]
mov r13, qword [rsp + 0xe8]
lea rdx, [0x140293460]
mov rcx, rbx
mov rsi, rdi
call fcn.1400c8630
test rbx, rbx
je 0x140171e79
cmp rbx, rbp
je 0x140171e79
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140171b4d
mov eax, dword [rbx + 0x18]
mov byte [rax + rcx], 0
cmp dword [rbx + 0x14], 0
jbe 0x140171b4d
test byte [rbx + 0x1d], 4
jne 0x140171b4d
mov rcx, rbx
call fcn.1401e5dc0
mov rbp, rax
jmp 0x140171b51
mov rbp, qword [rbx + 8]
cmp dword [0x1402cd290], 0
je 0x140171ba3
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171b6c
call qword [0x1402cd310]
mov rcx, rbx
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x1402d39f0], rdx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171bac
call qword [0x1402cd320]
jmp 0x140171bac
mov rcx, rbx
call qword [0x1402cd2b8]
test rbp, rbp
je 0x140171e79
mov r15, qword [rsp + 0xf8]
cmp r12d, dword [rsp + 0xe0]
jge 0x140171be1
lea rdx, str.Auxiliary_rtree_columns_must_be_last
lea rcx, [0x14028c848]
call fcn.1400ea510
mov ebx, 1
jmp 0x140171c09
mov rdx, rbp
mov rcx, r14
call fcn.1400c6860
mov ebx, eax
test eax, eax
je 0x140171c0c
mov rcx, r14
call fcn.1400ec140
mov rdx, rax
lea rcx, [0x14028c848]
call fcn.1400ea510
mov qword [r15], rax
cmp dword [0x1402cd290], 0
je 0x140171c5e
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171c27
call qword [0x1402cd310]
mov rcx, rbp
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
movsxd rcx, eax
sub qword [0x1402d39f0], rcx
mov rcx, rbp
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171c67
call qword [0x1402cd320]
jmp 0x140171c67
mov rcx, rbp
call qword [0x1402cd2b8]
test ebx, ebx
jne 0x140171e7e
movzx ecx, byte [rdi + 0x25]
movzx eax, cl
shr al, 1
mov byte [rdi + 0x24], al
cmp al, 1
jae 0x140171c88
lea rdx, str.Too_few_columns_for_an_rtree_table
jmp 0x140171ca2
cmp cl, 0xa
jbe 0x140171c96
lea rdx, str.Too_many_columns_for_an_rtree_table
jmp 0x140171ca2
test cl, 1
je 0x140171cbb
lea rdx, str.Wrong_number_of_columns_for_an_rtree_table
lea rcx, [0x14028c848]
call fcn.1400ea510
mov qword [r15], rax
mov ebx, 1
jmp 0x140171e7e
mov rdx, qword [rsp + 0x40]
add cl, 2
mov r12d, dword [rsp + 0x100]
shl cl, 2
mov byte [rdi + 0x27], cl
mov rdx, qword [rdx]
test r12d, r12d
je 0x140171d2c
lea rcx, str.PRAGMA__Q.page_size
mov dword [rsp + 0xe0], 0
call fcn.1400ea510
lea r8, [rsp + 0xe0]
mov rdx, rax
mov rcx, r14
mov rdi, rax
call fcn.14014df10
mov ebx, eax
test eax, eax
jne 0x140171d58
movzx ecx, byte [rsi + 0x27]
mov edx, dword [rsp + 0xe0]
imul eax, ecx, 0x33
add edx, 0xffffffc0
mov dword [rsi + 0x20], edx
add eax, 4
cmp eax, edx
jge 0x140171d91
mov dword [rsi + 0x20], eax
jmp 0x140171d91
mov r8, qword [rsp + 0x38]
lea rcx, str.SELECT_length_data__FROM__q._q_node_WHERE_nodeno__1
mov r8, qword [r8]
call fcn.1400ea510
lea r8, [rsi + 0x20]
mov rdx, rax
mov rcx, r14
mov rdi, rax
call fcn.14014df10
mov ebx, eax
test eax, eax
je 0x140171d6c
mov rcx, r14
call fcn.1400ec140
mov rdx, rax
lea rcx, [0x14028c848]
jmp 0x140171d89
cmp dword [rsi + 0x20], 0x1c0
jge 0x140171d91
mov rax, qword [rsp + 0x38]
lea rcx, str.undersize_RTree_blobs_in___q_node_
mov ebx, 0x10b
mov rdx, qword [rax]
call fcn.1400ea510
mov qword [r15], rax
test rdi, rdi
je 0x140171df1
cmp dword [0x1402cd290], 0
je 0x140171de8
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171db1
call qword [0x1402cd310]
mov rcx, rdi
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
movsxd rcx, eax
sub qword [0x1402d39f0], rcx
mov rcx, rdi
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171df1
call qword [0x1402cd320]
jmp 0x140171df1
mov rcx, rdi
call qword [0x1402cd2b8]
mov rdi, rsi
test ebx, ebx
jne 0x140171e7e
mov r9, qword [r13 + 0x10]
mov rdx, r14
mov r8, qword [r13 + 8]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.1401725f0
mov ebx, eax
test eax, eax
je 0x140171e36
mov rcx, r14
call fcn.1400ec140
mov rdx, rax
lea rcx, [0x14028c848]
call fcn.1400ea510
mov qword [r15], rax
jmp 0x140171e7e
mov rax, qword [rsp + 0xf0]
mov qword [rax], rsi
xor eax, eax
mov r15, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x98]
mov rbp, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x90]
add rsp, 0xb0
pop r14
pop r13
pop r12
ret
mov ebx, 7
mov rax, qword [rsp + 0x48]
add dword [rax], 0xffffffff
jne 0x140171fc5
mov rcx, rdi
mov byte [rdi + 0x28], 0
call fcn.140160a50
mov rcx, qword [rdi + 0x78]
call fcn.1400c13a0
mov rcx, qword [rdi + 0x80]
call fcn.1400c13a0
mov rcx, qword [rdi + 0x88]
call fcn.1400c13a0
mov rcx, qword [rdi + 0x90]
call fcn.1400c13a0
mov rcx, qword [rdi + 0x98]
call fcn.1400c13a0
mov rcx, qword [rdi + 0xa0]
call fcn.1400c13a0
mov rcx, qword [rdi + 0xa8]
call fcn.1400c13a0
mov rcx, qword [rdi + 0xb0]
call fcn.1400c13a0
mov rcx, qword [rdi + 0xb8]
call fcn.1400c13a0
mov rsi, qword [rdi + 0x60]
test rsi, rsi
je 0x140171f65
cmp dword [0x1402cd290], 0
je 0x140171f5c
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171f25
call qword [0x1402cd310]
mov rcx, rsi
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
mov rcx, rsi
movsxd rdx, eax
sub qword [0x1402d39f0], rdx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171f6c
call qword [0x1402cd320]
jmp 0x140171f65
mov rcx, rsi
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
cmp dword [0x1402cd290], 0
je 0x140171fbc
test rcx, rcx
je 0x140171f80
call qword [0x1402cd310]
mov rcx, rdi
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
mov rcx, rdi
movsxd rdx, eax
sub qword [0x1402d39f0], rdx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140171fc5
call qword [0x1402cd320]
mov eax, ebx
jmp 0x140171e43
mov rcx, rdi
call qword [0x1402cd2b8]
mov eax, ebx
jmp 0x140171e43
mov eax, 7
jmp 0x140171e43
cmp r8d, 6
lea rcx, [0x14028c848]
mov eax, 0x18
mov edx, 0x10
cmovge edx, eax
mov rdx, qword [rsp + rdx + 0x50]
call fcn.1400ea510
mov rcx, qword [rsp + 0xf8]
mov qword [rcx], rax
mov eax, 1
add rsp, 0xb0
pop r14
pop r13
pop r12
ret