Function at 0x14029bf60
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xa0
movaps xmmword [rsp + 0x90], xmm6
lea rsi, [0x14043a570]
xor edi, edi
mov qword [rcx + 0x18], rdx
movq xmm6, rcx
mov r15, r9
mov r12, r8
punpcklqdq xmm6, xmm6
mov r14, rdx
mov rbp, rcx
cmp dword [rsp + 0xf0], edi
je 0x14029c196
call fcn.14030be00
test eax, eax
jne 0x14029bff4
mov ecx, 0x20
call fcn.1402d7360
mov rbx, rax
test rax, rax
je 0x14029bff4
test r14, r14
je 0x14029bfd9
mov eax, dword [r14 + 0x88]
jmp 0x14029bfde
mov eax, 0x3b9aca00
mov qword [rbx + 8], rdi
mov qword [rbx], rdi
mov dword [rbx + 0x10], edi
mov dword [rbx + 0x14], eax
mov dword [rbx + 0x18], edi
mov word [rbx + 0x1c], di
jmp 0x14029bff7
mov rbx, rsi
mov r9, r15
lea rdx, str.CREATE_TABLE___w_.__w_rowid__rowid_INTEGER_PRIMARY_KEY_nodeno
mov r8, r12
mov rcx, rbx
call fcn.1401fcc00
cmp byte [rbp + 0x29], dil
jbe 0x14029c02e
mov r8d, edi
lea rdx, str._a_d
mov rcx, rbx
call fcn.1401fcc00
movzx eax, byte [rbp + 0x29]
inc edi
cmp edi, eax
jl 0x14029c012
mov r9, r15
lea rdx, str.__CREATE_TABLE___w_.__w_node__nodeno_INTEGER_PRIMARY_KEY_data__
mov r8, r12
mov rcx, rbx
call fcn.1401fcc00
mov r9, r15
lea rdx, str.CREATE_TABLE___w_.__w_parent__nodeno_INTEGER_PRIMARY_KEY_parentnode__
mov r8, r12
mov rcx, rbx
call fcn.1401fcc00
mov eax, dword [rbp + 0x20]
lea rdx, str.INSERT_INTO___w_.__w_node_VALUES_1_zeroblob__d__
mov r9, r15
mov dword [rsp + 0x20], eax
mov r8, r12
mov rcx, rbx
call fcn.1401fcc00
test rbx, rbx
je 0x14029c24d
cmp rbx, rsi
je 0x14029c24d
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14029c0af
mov eax, dword [rbx + 0x18]
mov byte [rax + rcx], 0
cmp dword [rbx + 0x14], 0
jbe 0x14029c0af
test byte [rbx + 0x1d], 4
jne 0x14029c0af
mov rcx, rbx
call fcn.14030d640
mov rdi, rax
jmp 0x14029c0b3
mov rdi, qword [rbx + 8]
cmp dword [0x140439d10], 0
je 0x14029c105
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c0ce
call qword [0x140439d90]
mov rcx, rbx
call qword [0x140439d48]
dec qword [0x14043f378]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x14043f330], rdx
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c10e
call qword [0x140439da0]
jmp 0x14029c10e
mov rcx, rbx
call qword [0x140439d38]
test rdi, rdi
je 0x14029c24d
xor ecx, ecx
xor r9d, r9d
mov qword [rsp + 0x20], rcx
xor r8d, r8d
mov rcx, r14
mov rdx, rdi
call fcn.14021c1c0
cmp dword [0x140439d10], 0
mov ebx, eax
je 0x14029c183
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c14c
call qword [0x140439d90]
mov rcx, rdi
call qword [0x140439d48]
dec qword [0x14043f378]
movsxd rcx, eax
sub qword [0x14043f330], rcx
mov rcx, rdi
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c18c
call qword [0x140439da0]
jmp 0x14029c18c
mov rcx, rdi
call qword [0x140439d38]
test ebx, ebx
jne 0x14029c6ef
xor edi, edi
cmp dword [0x14043f050], 2
lea rax, [rbp + 0x78]
mov qword [rsp + 0xd8], r13
jl 0x14029c257
movdqa xmm3, xmmword [0x14033aea0]
movdqa xmm2, xmmword [0x14041fec0]
pmovsxdq xmm0, xmm3
psllq xmm0, 3
paddq xmm0, xmm6
paddq xmm0, xmm2
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm0, xmmword [0x14040d6a0]
paddd xmm0, xmm3
pmovsxdq xmm1, xmm0
movdqa xmm0, xmmword [0x14033aeb0]
psllq xmm1, 3
paddd xmm0, xmm3
paddq xmm1, xmm6
paddq xmm1, xmm2
movdqu xmmword [rsp + 0x60], xmm1
pmovsxdq xmm1, xmm0
movdqa xmm0, xmmword [0x14041fed0]
psllq xmm1, 3
paddd xmm0, xmm3
paddq xmm1, xmm6
paddq xmm1, xmm2
movdqu xmmword [rsp + 0x70], xmm1
pmovsxdq xmm1, xmm0
movq xmm0, rax
psllq xmm1, 3
punpcklqdq xmm0, xmm0
paddq xmm1, xmm0
movdqu xmmword [rsp + 0x80], xmm1
jmp 0x14029c272
mov eax, 7
jmp 0x14029c6f1
lea rcx, [rsp + 0x50]
mov edx, 8
mov qword [rcx], rax
lea rcx, [rcx + 8]
add rax, 8
sub rdx, 1
jne 0x14029c261
mov rdx, qword [rbp + 0x30]
lea r8, str.sqlite_stat1
mov qword [rsp + 0x40], rdi
mov esi, 0x64
mov qword [rsp + 0x38], rdi
xor r9d, r9d
mov qword [rsp + 0x30], rdi
mov rcx, r14
mov qword [rsp + 0x28], rdi
mov r13d, esi
mov qword [rsp + 0x20], rdi
call fcn.1401f9e30
mov ebx, eax
test eax, eax
je 0x14029c2c6
cmp eax, 1
mov r13d, 0
mov esi, 0x100000
cmove ebx, r13d
jmp 0x14029c3b2
mov r8, qword [rbp + 0x38]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
mov rdx, qword [rbp + 0x30]
call fcn.14021e5b0
mov rdi, rax
test rax, rax
jne 0x14029c2ec
mov ebx, 7
jmp 0x14029c3a8
xor ecx, ecx
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x30], rcx
mov r9d, 0x80
mov qword [rsp + 0x28], rax
mov r8d, 0xffffffff
mov qword [rsp + 0x20], rcx
mov rdx, rdi
mov rcx, r14
call fcn.1402d6e50
mov ebx, eax
test eax, eax
jne 0x14029c34d
mov rbx, qword [rsp + 0xd0]
mov rcx, rbx
call fcn.1401f5d20
cmp eax, esi
jne 0x14029c343
xor edx, edx
mov rcx, rbx
call fcn.1401f64e0
mov r13, rax
mov rcx, rbx
call fcn.1401f6d00
mov ebx, eax
cmp dword [0x140439d10], 0
je 0x14029c39f
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c368
call qword [0x140439d90]
mov rcx, rdi
call qword [0x140439d48]
dec qword [0x14043f378]
movsxd rcx, eax
sub qword [0x14043f330], rcx
mov rcx, rdi
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c3a8
call qword [0x140439da0]
jmp 0x14029c3a8
mov rcx, rdi
call qword [0x140439d38]
cmp r13, rsi
cmovg rsi, r13
xor r13d, r13d
mov qword [rbp + 0x48], rsi
lea rax, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
mov rdi, r13
test ebx, ebx
jne 0x14029c4aa
cmp rdi, 3
jne 0x14029c3e4
cmp byte [rbp + 0x29], bl
je 0x14029c3e4
lea rcx, str.INSERT_INTO__w_.__w_rowid__rowid_nodeno_VALUES__1__2_ON_CONFLICT_rowid_DO_UPDATE_SET_nodenoexcluded.nodeno
lea rbx, [rdi*8]
jmp 0x14029c3f0
lea rbx, [rdi*8]
mov rcx, qword [rbx + rax]
mov r8, r15
mov rdx, r12
call fcn.14021e5b0
mov rsi, rax
test rax, rax
je 0x14029c491
mov rcx, qword [rsp + rbx + 0x50]
mov r9d, 0x85
mov qword [rsp + 0x30], r13
mov r8d, 0xffffffff
mov qword [rsp + 0x28], rcx
mov rdx, rax
mov rcx, r14
mov qword [rsp + 0x20], r13
call fcn.1402d6e50
cmp dword [0x140439d10], 0
mov ebx, eax
je 0x14029c486
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c44f
call qword [0x140439d90]
mov rcx, rsi
call qword [0x140439d48]
dec qword [0x14043f378]
movsxd rcx, eax
sub qword [0x14043f330], rcx
mov rcx, rsi
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c496
call qword [0x140439da0]
jmp 0x14029c496
mov rcx, rsi
call qword [0x140439d38]
jmp 0x14029c496
mov ebx, 7
inc rdi
lea rax, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
cmp rdi, 8
jl 0x14029c3c0
cmp byte [rbp + 0x29], 0
je 0x14029c6e7
mov r8, r15
lea rcx, str.SELECT__FROM___w_.__w_rowid__WHERE_rowid_1
mov rdx, r12
call fcn.14021e5b0
mov qword [rbp + 0x58], rax
test rax, rax
je 0x14029c6e2
call fcn.14030be00
test eax, eax
jne 0x14029c522
mov ecx, 0x20
call fcn.1402d7360
mov rbx, rax
test rax, rax
je 0x14029c522
test r14, r14
je 0x14029c4fc
mov eax, dword [r14 + 0x88]
jmp 0x14029c501
mov eax, 0x3b9aca00
mov qword [rbx + 8], r13
lea rsi, [0x14043a570]
mov qword [rbx], r13
mov dword [rbx + 0x10], r13d
mov dword [rbx + 0x14], eax
mov dword [rbx + 0x18], r13d
mov word [rbx + 0x1c], 0
jmp 0x14029c52c
lea rsi, [0x14043a570]
mov rbx, rsi
mov r9, r15
lea rdx, str.UPDATE___w_.__w_rowid_SET
mov r8, r12
mov rcx, rbx
call fcn.1401fcc00
cmp byte [rbp + 0x29], 0
mov edi, r13d
jbe 0x14029c5a4
nop word [rax + rax]
test edi, edi
je 0x14029c584
mov eax, dword [rbx + 0x18]
lea ecx, [rax + 1]
cmp ecx, dword [rbx + 0x10]
jb 0x14029c576
mov r8d, 1
lea rdx, [0x14041a6c0]
mov rcx, rbx
call fcn.140234ee0
jmp 0x14029c584
mov dword [rbx + 0x18], ecx
mov rcx, rax
mov rax, qword [rbx + 8]
mov byte [rcx + rax], 0x2c
lea r9d, [rdi + 2]
mov r8d, edi
lea rdx, str.a_d__d
mov rcx, rbx
call fcn.1401fcc00
movzx eax, byte [rbp + 0x29]
inc edi
cmp edi, eax
jl 0x14029c550
lea rdx, str._WHERE_rowid_1
mov rcx, rbx
call fcn.1401fcc00
test rbx, rbx
je 0x14029c6e2
cmp rbx, rsi
je 0x14029c6e2
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14029c5ee
mov eax, dword [rbx + 0x18]
mov byte [rax + rcx], 0
cmp dword [rbx + 0x14], 0
jbe 0x14029c5ee
test byte [rbx + 0x1d], 4
jne 0x14029c5ee
mov rcx, rbx
call fcn.14030d640
mov rdi, rax
jmp 0x14029c5f2
mov rdi, qword [rbx + 8]
cmp dword [0x140439d10], 0
je 0x14029c644
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c60d
call qword [0x140439d90]
mov rcx, rbx
call qword [0x140439d48]
dec qword [0x14043f378]
movsxd rcx, eax
sub qword [0x14043f330], rcx
mov rcx, rbx
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c64d
call qword [0x140439da0]
jmp 0x14029c64d
mov rcx, rbx
call qword [0x140439d38]
test rdi, rdi
je 0x14029c6e2
lea rax, [rbp + 0xb8]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov r9d, 0x85
mov r8d, 0xffffffff
mov qword [rsp + 0x20], r13
mov rdx, rdi
mov rcx, r14
call fcn.1402d6e50
cmp dword [0x140439d10], 0
mov ebx, eax
je 0x14029c6d7
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c6a0
call qword [0x140439d90]
mov rcx, rdi
call qword [0x140439d48]
dec qword [0x14043f378]
movsxd rcx, eax
sub qword [0x14043f330], rcx
mov rcx, rdi
call qword [0x140439d38]
mov rcx, qword [0x14043f3f0]
test rcx, rcx
je 0x14029c6e7
call qword [0x140439da0]
jmp 0x14029c6e7
mov rcx, rdi
call qword [0x140439d38]
jmp 0x14029c6e7
mov ebx, 7
mov r13, qword [rsp + 0xd8]
mov eax, ebx
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret