Function at 0x140435440
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xe8
lea rsi, [0x1404a4d20]
mov r13, qword [rsp + 0x158]
lea eax, [r8 - 6]
mov rbp, rcx
lea rdi, [rsp + 0x78]
mov r15, rdx
mov ecx, 0xa
mov r14d, r8d
mov r12, r9
rep movsd dword [rdi], dword [rsi]
cmp eax, 0x61
jbe 0x1404354b0
xor eax, eax
cmp r8d, 6
lea rcx, [0x140617b83]
mov edi, 1
setge al
add eax, 2
cdqe
mov rdx, qword [rsp + rax*8 + 0x78]
call fcn.14048a630
mov qword [r13], rax
jmp 0x140435c38
mov r8d, 1
mov edx, 1
mov rcx, rbp
mov edi, 7
call fcn.14048ef60
mov rcx, qword [r12 + 8]
call sub.msvcrt.dll_strlen
mov rcx, qword [r12 + 0x10]
mov rbx, rax
call sub.msvcrt.dll_strlen
movsxd rdx, ebx
movsxd r9, eax
mov qword [rsp + 0x58], rdx
lea rsi, [rdx + r9 + 0x3ca]
mov qword [rsp + 0x68], r9
mov rcx, rsi
call fcn.14048a590
mov rbx, rax
test rax, rax
je 0x140435c38
test r15, r15
mov rcx, rsi
mov rdi, rbx
mov rdx, qword [rsp + 0x58]
setne al
setne r10b
lea r15, [rsp + 0xa0]
movzx eax, al
mov dword [rsp + 0x60], eax
xor eax, eax
rep stosb byte [rdi], al
lea rax, [0x1404a9480]
mov byte [rbx + 0x26], r10b
mov rcx, rdx
mov qword [rbx], rax
lea rax, [rbx + 0x3c8]
lea r8, [rax + rdx + 1]
mov qword [rbx + 0x30], rax
mov rdi, rax
mov qword [rbx + 0x38], r8
mov rsi, qword [r12 + 8]
mov dword [rbx + 0x40], 1
rep movsb byte [rdi], byte [rsi]
mov rdi, r8
mov rcx, qword [rsp + 0x68]
mov rsi, qword [r12 + 0x10]
rep movsb byte [rdi], byte [rsi]
mov rcx, rbp
mov esi, 4
call fcn.14048ca80
mov r9, qword [r12 + 0x18]
mov rdx, r15
mov qword [rsp + 0x58], rax
mov rcx, r9
mov qword [rsp + 0x68], r9
call fcn.14045dfd0
mov r9, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
lea rdx, str.CREATE_TABLE_x__.s_INT
mov r8d, eax
call fcn.14048c9f0
movsxd rdi, dword [rsp + 0x60]
mov r9, qword [r12 + rsi*8]
mov al, byte [rbx + 0x29]
cmp byte [r9], 0x2b
jne 0x1404355f3
inc eax
inc r9
mov rdx, r15
mov byte [rbx + 0x29], al
mov rcx, r9
mov qword [rsp + 0x60], r9
call fcn.14045dfd0
mov r9, qword [rsp + 0x60]
lea rdx, str.__.s
mov r8d, eax
jmp 0x14043561d
test al, al
jne 0x140435637
inc byte [rbx + 0x25]
mov rdx, r15
mov rcx, r9
mov qword [rsp + 0x60], r9
call fcn.14045dfd0
mov r9, qword [rsp + 0x60]
mov r8d, eax
lea rax, str.__.s_REAL
mov rdx, qword [rax + rdi*8]
mov rcx, qword [rsp + 0x58]
call fcn.14048c9f0
lea rax, [rsi + 1]
cmp r14d, eax
jle 0x140435635
mov rsi, rax
jmp 0x1404355bd
inc esi
mov rcx, qword [rsp + 0x58]
lea rdx, [0x14061f05b]
call fcn.14048c9f0
mov rcx, qword [rsp + 0x58]
call fcn.14048ca30
mov rdi, rax
test rax, rax
jne 0x14043566b
xor ecx, ecx
mov esi, 7
call fcn.140489690
jmp 0x140435c2e
cmp r14d, esi
jle 0x140435694
lea rdx, str.Auxiliary_rtree_columns_must_be_last
lea rcx, [0x140617b83]
call fcn.14048a630
mov rcx, rdi
mov qword [r13], rax
call fcn.140489690
jmp 0x140435c29
mov rdx, rax
mov rcx, rbp
call fcn.1404889a0
mov esi, eax
test eax, eax
je 0x1404356cd
mov rcx, rbp
call fcn.140488eb0
lea rcx, [0x140617b83]
mov rdx, rax
call fcn.14048a630
mov rcx, rdi
mov qword [r13], rax
call fcn.140489690
jmp 0x140435c2e
mov rcx, rdi
call fcn.140489690
mov al, byte [rbx + 0x25]
mov edx, eax
shr dl, 1
mov byte [rbx + 0x24], dl
cmp al, 1
jbe 0x140435864
cmp al, 0xa
ja 0x14043586b
mov edx, 1
test al, 1
jne 0x140435870
lea eax, [rax*4 + 8]
cmp dword [rsp + 0x160], 0
mov rdx, qword [rbx + 0x30]
mov byte [rbx + 0x27], al
je 0x1404357b4
xor r11d, r11d
lea rcx, str.PRAGMA__Q.page_size
mov dword [rsp + 0xa0], r11d
call fcn.14048a630
mov rdi, rax
test rax, rax
je 0x1404357e4
mov r8, r15
mov rdx, rax
mov rcx, rbp
call fcn.1403fd640
mov r14d, eax
test eax, eax
jne 0x1404357ea
mov eax, dword [rsp + 0xa0]
lea edx, [rax - 0x40]
movzx eax, byte [rbx + 0x27]
mov dword [rbx + 0x20], edx
imul eax, eax, 0x33
add eax, 4
cmp edx, eax
jle 0x140435772
mov dword [rbx + 0x20], eax
mov rcx, rdi
call fcn.140489690
mov rax, qword [r12 + 0x10]
mov r12, qword [r12 + 8]
mov rcx, rbp
mov qword [rbx + 0x18], rbp
mov qword [rsp + 0x58], rax
call fcn.14048ca80
mov r9, qword [rsp + 0x58]
mov r8, r12
lea rdx, str.CREATE_TABLE___w_.__w_rowid__rowid_INTEGER_PRIMARY_KEY_nodeno
mov rcx, rax
mov rdi, rax
call fcn.14048c9f0
jmp 0x14043588a
mov r8, qword [rbx + 0x38]
lea rcx, str.SELECT_length_data__FROM__q._q_node_WHERE_nodeno__1
call fcn.14048a630
mov rdi, rax
test rax, rax
je 0x1404357e4
lea r8, [rbx + 0x20]
mov rdx, rax
mov rcx, rbp
call fcn.1403fd640
mov r14d, eax
test eax, eax
je 0x140435815
jmp 0x1404357ea
mov r14d, 7
mov rcx, rbp
mov esi, r14d
call fcn.140488eb0
lea rcx, [0x140617b83]
mov rdx, rax
call fcn.14048a630
mov rcx, rdi
mov qword [r13], rax
call fcn.140489690
jmp 0x140435c2e
cmp dword [rbx + 0x20], 0x1bf
jg 0x140435844
mov rdx, qword [rbx + 0x38]
lea rcx, str.undersize_RTree_blobs_in___q_node_
mov esi, 0x10b
call fcn.14048a630
mov rcx, rdi
mov qword [r13], rax
call fcn.140489690
jmp 0x140435c2e
mov rcx, rdi
call fcn.140489690
mov rax, qword [r12 + 0x10]
mov r12, qword [r12 + 8]
mov qword [rbx + 0x18], rbp
mov qword [rsp + 0x58], rax
jmp 0x14043593b
mov edx, 2
jmp 0x140435870
mov edx, 3
mov rdx, qword [rsp + rdx*8 + 0x78]
lea rcx, [0x140617b83]
call fcn.14048a630
mov qword [r13], rax
jmp 0x140435c29
movzx eax, byte [rbx + 0x29]
cmp r14d, eax
jge 0x1404358aa
mov r8d, r14d
lea rdx, str._a_d
mov rcx, rdi
inc r14d
call fcn.14048c9f0
jmp 0x14043588a
mov r9, qword [rsp + 0x58]
mov r8, r12
lea rdx, str.__CREATE_TABLE___w_.__w_node__nodeno_INTEGER_PRIMARY_KEY_data__
mov rcx, rdi
call fcn.14048c9f0
mov r9, qword [rsp + 0x58]
mov r8, r12
mov rcx, rdi
lea rdx, str.CREATE_TABLE___w_.__w_parent__nodeno_INTEGER_PRIMARY_KEY_parentnode__
call fcn.14048c9f0
mov eax, dword [rbx + 0x20]
mov r9, qword [rsp + 0x58]
mov r8, r12
lea rdx, str.INSERT_INTO___w_.__w_node_VALUES_1_zeroblob__d__
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.14048c9f0
mov rcx, rdi
call fcn.14048ca30
mov r14, rax
test rax, rax
jne 0x140435910
mov edi, 7
jmp 0x140435bfd
xor r10d, r10d
xor r9d, r9d
xor r8d, r8d
mov rcx, rbp
mov qword [rsp + 0x20], r10
mov rdx, rax
call fcn.140489020
mov rcx, r14
mov edi, eax
call fcn.140489690
test edi, edi
jne 0x140435bfd
lea rax, [rbx + 0x78]
xor r9d, r9d
mov rdx, qword [rbx + 0x30]
mov rcx, rbp
mov qword [rsp + 0xa0], rax
lea rax, [rbx + 0x80]
lea r8, str.sqlite_stat1
mov qword [rsp + 0xa8], rax
lea rax, [rbx + 0x88]
mov qword [rsp + 0xb0], rax
lea rax, [rbx + 0x90]
mov qword [rsp + 0xb8], rax
lea rax, [rbx + 0x98]
mov qword [rsp + 0xc0], rax
lea rax, [rbx + 0xa0]
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r9
xor r9d, r9d
mov qword [rsp + 0xc8], rax
lea rax, [rbx + 0xa8]
mov qword [rsp + 0xd0], rax
lea rax, [rbx + 0xb0]
mov qword [rsp + 0xd8], rax
call fcn.14048de50
mov edi, eax
test eax, eax
je 0x1404359fe
mov r14d, 0x100000
cmp eax, 1
jne 0x140435a90
xor edi, edi
jmp 0x140435a90
mov rdx, qword [rbx + 0x30]
mov r8, qword [rbx + 0x38]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
call fcn.14048a630
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140435a79
xor r8d, r8d
lea r9, [rsp + 0x70]
mov rdx, rax
mov rcx, rbp
mov qword [rsp + 0x20], r8
or r8d, 0xffffffff
mov r14d, 0x64
call fcn.14048aa30
mov edi, eax
test eax, eax
jne 0x140435a6d
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.14048bdb0
cmp eax, 0x64
jne 0x140435a63
xor edx, edx
mov rcx, rdi
call fcn.140487430
mov r14, rax
mov rcx, rdi
call fcn.1404895f0
mov edi, eax
mov rcx, qword [rsp + 0x60]
call fcn.140489690
jmp 0x140435a84
mov r14d, 0x64
mov edi, 7
mov eax, 0x64
cmp r14, rax
cmovl r14, rax
mov qword [rbx + 0x48], r14
xor r14d, r14d
cmp r14d, 7
jg 0x140435b14
test edi, edi
jne 0x140435b14
cmp r14, 3
jne 0x140435ab4
cmp byte [rbx + 0x29], 0
lea rcx, str.INSERT_INTO__w_.__w_rowid__rowid_nodeno_VALUES__1__2_ON_CONFLICT_rowid_DO_UPDATE_SET_nodenoexcluded.nodeno
jne 0x140435abf
lea rax, str.INSERT_OR_REPLACE_INTO__q._q_node_VALUES__1___2_
mov rcx, qword [rax + r14*8]
mov r8, qword [rsp + 0x58]
mov rdx, r12
mov edi, 7
call fcn.14048a630
mov rdx, rax
test rax, rax
je 0x140435b07
xor ecx, ecx
mov r9d, 5
or r8d, 0xffffffff
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x28], rcx
mov rax, qword [r15 + r14*8]
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.14048aa60
mov rdx, qword [rsp + 0x60]
mov edi, eax
mov rcx, rdx
inc r14
call fcn.140489690
jmp 0x140435a97
cmp byte [rbx + 0x29], 0
je 0x140435bf9
mov r8, qword [rsp + 0x58]
mov rdx, r12
lea rcx, str.SELECT__FROM___w_.__w_rowid__WHERE_rowid_1
call fcn.14048a630
mov qword [rbx + 0x58], rax
test rax, rax
je 0x140435906
mov rcx, rbp
lea rdi, str.a_d__d
call fcn.14048ca80
mov r9, qword [rsp + 0x58]
mov r8, r12
lea rdx, str.UPDATE___w_.__w_rowid_SET
mov rcx, rax
mov r14, rax
lea r12, [0x140617265]
call fcn.14048c9f0
cmp byte [rbx + 0x29], 0
je 0x140435ba4
lea r9d, [rsi + 2]
mov r8d, esi
mov rdx, rdi
mov rcx, r14
call fcn.14048c9f0
movzx eax, byte [rbx + 0x29]
inc esi
cmp eax, esi
jle 0x140435ba4
mov r8d, 1
mov rdx, r12
mov rcx, r14
call fcn.14048c920
jmp 0x140435b75
lea rdx, str._WHERE_rowid_1
mov rcx, r14
call fcn.14048c9f0
mov rcx, r14
call fcn.14048ca30
mov rsi, rax
test rax, rax
je 0x140435906
xor eax, eax
mov rcx, rbp
mov r9d, 5
or r8d, 0xffffffff
mov qword [rsp + 0x28], rax
lea rax, [rbx + 0xb8]
mov rdx, rsi
mov qword [rsp + 0x20], rax
call fcn.14048aa60
mov rcx, rsi
mov edi, eax
call fcn.140489690
test edi, edi
je 0x140435c1c
mov rcx, rbp
mov esi, edi
call fcn.140488eb0
lea rcx, [0x140617b83]
mov rdx, rax
call fcn.14048a630
mov qword [r13], rax
jmp 0x140435c2e
mov rax, qword [rsp + 0x150]
mov qword [rax], rbx
jmp 0x140435c38
mov esi, 1
mov rcx, rbx
mov edi, esi
call fcn.140436920
mov eax, edi
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret