Function at 0x140285a54
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
xor ebx, ebx
mov qword [rcx + 0x18], rdx
mov r13, r9
mov r15, r8
mov r14, rdx
mov rdi, rcx
cmp dword [rsp + 0xf0], ebx
je 0x140285b5b
mov rcx, rdx
call fcn.14021f598
mov r9, r13
lea rdx, str.CREATE_TABLE___w_.__w_rowid__rowid_INTEGER_PRIMARY_KEY_nodeno
mov r8, r15
mov rcx, rax
mov rsi, rax
call fcn.14021f6a8
xor ebp, ebp
cmp byte [rdi + 0x29], bpl
jbe 0x140285ad3
mov r8d, ebx
lea rdx, str._a_d
mov rcx, rsi
call fcn.14021f6a8
movzx eax, byte [rdi + 0x29]
inc ebx
cmp ebx, eax
jl 0x140285ab7
mov r9, r13
lea rdx, str.__CREATE_TABLE___w_.__w_node__nodeno_INTEGER_PRIMARY_KEY_data__
mov r8, r15
mov rcx, rsi
call fcn.14021f6a8
mov r9, r13
lea rdx, str.CREATE_TABLE___w_.__w_parent__nodeno_INTEGER_PRIMARY_KEY_parentnode__
mov r8, r15
mov rcx, rsi
call fcn.14021f6a8
mov eax, dword [rdi + 0x20]
lea rdx, str.INSERT_INTO___w_.__w_node_VALUES_1_zeroblob__d__
mov r9, r13
mov dword [rsp + 0x20], eax
mov r8, r15
mov rcx, rsi
call fcn.14021f6a8
mov rcx, rsi
call fcn.14021f668
mov rsi, rax
test rax, rax
jne 0x140285b31
lea eax, [rsi + 7]
jmp 0x140285dda
xor r9d, r9d
mov qword [rsp + 0x20], rbp
xor r8d, r8d
mov rdx, rsi
mov rcx, r14
call fcn.14023254c
mov rcx, rsi
mov ebx, eax
call fcn.14023352c
test ebx, ebx
jne 0x140285dd8
xor ebx, ebx
lea rax, [rsp + 0x50]
mov edx, 8
lea rcx, [rdi + 0x78]
mov qword [rax], rcx
add rcx, 8
lea rax, [rax + 8]
sub rdx, 1
jne 0x140285b69
mov qword [rsp + 0x40], rbx
lea ebp, [rdx + 0x64]
mov rdx, qword [rdi + 0x30]
lea r8, str.sqlite_stat1
mov qword [rsp + 0x38], rbx
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov rcx, r14
mov qword [rsp + 0x28], rbx
mov r12d, ebp
mov qword [rsp + 0x20], rbx
call fcn.14021d79c
mov ebx, eax
lea esi, [rbp - 0x5d]
xor eax, eax
test ebx, ebx
je 0x140285bce
cmp ebx, 1
mov r12d, eax
mov ebp, 0x100000
cmove ebx, r12d
jmp 0x140285c67
mov r8, qword [rdi + 0x38]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
mov rdx, qword [rdi + 0x30]
call fcn.1402332c8
xor ecx, ecx
mov r15, rax
test rax, rax
jne 0x140285bf0
mov ebx, esi
jmp 0x140285c55
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x28], rax
mov r9d, 0x80
mov qword [rsp + 0x20], rcx
or r8d, 0xffffffff
mov rcx, r14
mov rdx, r15
call fcn.1402adb64
mov ebx, eax
test eax, eax
jne 0x140285c4d
mov rbx, qword [rsp + 0xd0]
mov rcx, rbx
call fcn.140235920
cmp eax, ebp
jne 0x140285c43
xor edx, edx
mov rcx, rbx
call fcn.140235d30
mov r12, rax
mov rcx, rbx
call fcn.140235ec0
mov ebx, eax
mov rcx, r15
call fcn.14023352c
mov r15, qword [rsp + 0xe0]
cmp r12, rbp
cmovg rbp, r12
xor r12d, r12d
mov qword [rdi + 0x48], rbp
mov rbp, r12
test ebx, ebx
jne 0x140285ced
cmp rbp, 3
jne 0x140285c87
cmp byte [rdi + 0x29], r12b
je 0x140285c87
lea rcx, str.INSERT_INTO__w_.__w_rowid__rowid_nodeno_VALUES__1__2_ON_CONFLICT_rowid_DO_UPDATE_SET_nodenoexcluded.nodeno
jmp 0x140285c92
lea rcx, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
mov rcx, qword [rcx + rbp*8]
mov r8, r13
mov rdx, r15
call fcn.1402332c8
mov r15, rax
test rax, rax
je 0x140285cd2
mov rcx, qword [rsp + rbp*8 + 0x50]
mov r9d, 0x85
mov qword [rsp + 0x30], r12
or r8d, 0xffffffff
mov qword [rsp + 0x28], rcx
mov rdx, rax
mov rcx, r14
mov qword [rsp + 0x20], r12
call fcn.1402adb64
mov ebx, eax
jmp 0x140285cd4
mov ebx, esi
mov rcx, r15
call fcn.14023352c
mov r15, qword [rsp + 0xe0]
inc rbp
cmp rbp, 8
jl 0x140285c6e
cmp byte [rdi + 0x29], r12b
je 0x140285dd8
mov rbx, qword [rsp + 0xe0]
lea rcx, str.SELECT__FROM___w_.__w_rowid__WHERE_rowid_1
mov rdx, rbx
mov r8, r13
call fcn.1402332c8
mov qword [rdi + 0x58], rax
test rax, rax
je 0x140285d9f
mov rcx, r14
call fcn.14021f598
mov r9, r13
lea rdx, str.UPDATE___w_.__w_rowid_SET
mov r8, rbx
mov rcx, rax
mov rbp, rax
call fcn.14021f6a8
mov ebx, r12d
cmp byte [rdi + 0x29], r12b
jbe 0x140285d80
test ebx, ebx
je 0x140285d60
mov r8d, 1
lea rdx, [0x14040fcf0]
mov rcx, rbp
call fcn.140220af8
lea r9d, [rbx + 2]
mov r8d, ebx
lea rdx, str.a_d__d
mov rcx, rbp
call fcn.14021f6a8
movzx eax, byte [rdi + 0x29]
inc ebx
cmp ebx, eax
jl 0x140285d47
lea rdx, str._WHERE_rowid_1
mov rcx, rbp
call fcn.14021f6a8
mov rcx, rbp
call fcn.14021f668
mov rbp, rax
test rax, rax
jne 0x140285da3
mov ebx, esi
jmp 0x140285dd8
lea rax, [rdi + 0xb8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
mov r9d, 0x85
or r8d, 0xffffffff
mov qword [rsp + 0x20], r12
mov rdx, rbp
mov rcx, r14
call fcn.1402adb64
mov rcx, rbp
mov ebx, eax
call fcn.14023352c
mov eax, ebx
mov rbx, qword [rsp + 0xd8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret