Function at 0x14028c3d0
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x158
mov r13, qword [rcx + 0x18]
lea rax, [rcx + 0x10]
mov rbp, rcx
mov esi, edx
mov qword [r13 + 0xa8], rax
mov rax, qword [rcx + 0x30]
mov rdi, r8
mov r12, r9
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x14028c419
jmp 0x14028c438
mov rax, qword [rax + 8]
test rax, rax
je 0x14028c438
cmp dword [rax + 0x20], 1
jne 0x14028c410
cmp rbp, qword [rax]
jne 0x14028c410
or dword [rax + 0x50], 0x20
mov rax, qword [rax + 8]
test rax, rax
jne 0x14028c419
nop dword [rax]
mov rax, qword [rdi]
lea r14, [0x14047c3c0]
movzx eax, word [rax + 0x14]
and eax, 0x3f
movzx r15d, byte [r14 + rax]
cmp r15d, 5
je 0x14028c558
mov r10d, dword [r13 + 0x40]
mov edx, 4
test r10d, r10d
je 0x14028c589
cmp r15d, 1
je 0x14028c518
cmp esi, 1
je 0x14028c740
mov rsi, qword [rdi + 8]
movzx eax, word [rsi + 0x14]
and eax, 0x3f
movzx eax, byte [r14 + rax]
cmp eax, 3
je 0x14028c6d8
mov ecx, eax
mov ebx, 0x14
and ecx, 0xfffffffb
cmp ecx, 1
jne 0x14028c4ec
cmp eax, 1
mov rbx, qword [rbp + 0x28]
sete r14b
cmp r15d, 1
je 0x14028ca30
cmp edx, 5
jne 0x14028c708
test r14b, r14b
je 0x14028c708
mov rcx, rsi
call sym.sqlite3VdbeIntValue
xor r8d, r8d
mov rcx, rbx
mov rdx, rax
call sym.sqlite3Fts5StorageDelete
test eax, eax
mov ebx, eax
je 0x14028c700
mov rax, qword [rbp + 0x18]
mov qword [rax + 0xa8], 0
mov eax, ebx
add rsp, 0x158
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rbp + 0x18]
mov ebx, dword [rax + 0x40]
cmp ebx, 1
jne 0x14028c474
mov r8, qword [r13 + 0x10]
cmp esi, 2
lea rax, str.UPDATE
lea rdx, str.DELETE_from
cmovge rdx, rax
lea rcx, str.cannot__s_contentless_fts5_table:__s
call sym.sqlite3_mprintf
mov qword [rbp + 0x10], rax
jmp 0x14028c4ec
mov eax, dword [r13 + 0x18]
add eax, 2
cdqe
mov rcx, qword [rdi + rax*8]
movzx eax, word [rcx + 0x14]
and eax, 0x3f
cmp byte [r14 + rax], 5
jne 0x14028c620
mov r11d, dword [r13 + 0x40]
mov edx, 4
test r11d, r11d
jne 0x14028c474
mov rax, qword [r13]
test rax, rax
je 0x14028e1f1
movzx edx, byte [rax + 0x71]
cmp dl, 0x76
je 0x14028c5fd
cmp dl, 0xba
je 0x14028c760
cmp dl, 0x6d
je 0x14028c760
lea r8, str.invalid
mov ecx, 0x15
lea rdx, str.API_call_with__s_database_connection_pointer
call sym.sqlite3_log
lea rax, [0x14046bfcc]
mov r9d, 0x25011
mov ecx, 0x15
lea rdx, str._s_at_line__d_of___.10s_
mov qword [rsp + 0x20], rax
lea r8, str.misuse
call sym.sqlite3_log
mov edx, 0x15
jmp 0x14028c46a
movzx eax, byte [rax + 0x6c]
lea rdx, [0x14047bae0]
sub eax, 1
cmp r15d, 1
cdqe
movzx edx, byte [rdx + rax]
jne 0x14028c474
jmp 0x14028c518
call sym.sqlite3ValueText.constprop.0
mov rsi, rax
mov eax, dword [r13 + 0x40]
test eax, eax
je 0x14028caa0
test rsi, rsi
je 0x14028e241
lea rcx, str.delete
mov rdx, rsi
call sym.sqlite3_stricmp.part.0
test eax, eax
mov ebx, eax
je 0x14028d08d
mov dword [rsp + 0xe0], 0
movsxd rax, dword [r13 + 0x18]
mov r11, qword [rbp + 0x18]
mov rdi, qword [rdi + rax*8 + 0x18]
lea rcx, str.delete_all
mov r9, rsi
lea r8, [0x14047eee0]
jmp 0x14028c69f
movzx ebx, byte [r8 + rdx]
cmp byte [r8 + rax], bl
jne 0x14028c77d
add rcx, 1
add r9, 1
movzx eax, byte [rcx]
movzx edx, byte [r9]
cmp eax, edx
jne 0x14028c688
test eax, eax
jne 0x14028c697
mov eax, dword [r11 + 0x40]
test eax, eax
jne 0x14028cb48
lea rdx, str.delete_all_may_only_be_used_with_a_contentless_or_external_content_fts5_table
mov rcx, rbp
call sym.fts5SetVtabError
mov ebx, 1
jmp 0x14028c4ec
mov rcx, rsi
mov dword [rsp + 0x58], edx
mov ebx, 0x14
call sym.sqlite3_value_numeric_type.part.0
mov edx, dword [rsp + 0x58]
mov ecx, eax
and ecx, 0xfffffffb
cmp ecx, 1
jne 0x14028c4ec
jmp 0x14028c4a5
mov rbx, qword [rbp + 0x28]
nop dword [rax]
mov rcx, rbx
mov r8, r12
mov rdx, rdi
call sym.sqlite3Fts5StorageContentInsert
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov rcx, qword [rbp + 0x28]
mov rdx, rdi
mov r8, qword [r12]
call sym.sqlite3Fts5StorageIndexInsert
mov ebx, eax
jmp 0x14028c4ec
mov rcx, qword [rdi]
call sym.sqlite3VdbeIntValue
mov rcx, qword [rbp + 0x28]
xor r8d, r8d
mov rdx, rax
call sym.sqlite3Fts5StorageDelete
mov ebx, eax
jmp 0x14028c4ec
lea r8, str.unopened
mov ecx, 0x15
lea rdx, str.API_call_with__s_database_connection_pointer
call sym.sqlite3_log
jmp 0x14028c5c9
lea rdx, str.rebuild
mov rcx, rsi
jmp 0x14028c7a7
movzx eax, byte [r8 + rax]
cmp byte [r8 + r14], al
jne 0x14028cf30
add rdx, 1
add rcx, 1
movzx r14d, byte [rdx]
movzx eax, byte [rcx]
cmp r14d, eax
jne 0x14028c790
test r14d, r14d
jne 0x14028c79f
cmp dword [r11 + 0x40], 1
je 0x14028e3a3
mov r12, qword [rbp + 0x28]
xor r15d, r15d
mov rcx, r12
mov rdi, qword [r12]
mov qword [rsp + 0x120], r12
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x128], 0
call sym.sqlite3Fts5StorageDeleteAll
test eax, eax
mov esi, eax
jne 0x14028c82b
mov eax, dword [r12 + 0x10]
test eax, eax
je 0x14028e49e
xor r9d, r9d
mov edx, 0xa
mov rcx, r12
lea r8, [rsp + 0x100]
call sym.fts5StorageGetStmt
mov r15, qword [rsp + 0x100]
mov esi, eax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x1a0], rbp
test esi, esi
jne 0x14028ed4d
nop dword [rax]
mov rcx, r15
call sym.sqlite3_step
cmp eax, 0x64
jne 0x14028e370
test r15, r15
je 0x14028cf22
mov rbx, qword [r15]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14028c877
call qword [0x1403951a0]
mov rbx, qword [r15]
mov rax, qword [r15 + 0xa0]
test rax, rax
je 0x14028ce78
cmp word [r15 + 0xc0], 0
je 0x14028ce78
movzx edx, word [rax + 0x14]
test dl, 0x24
jne 0x14028d079
test dl, 8
je 0x14028ceb2
movsd xmm0, qword [rax]
call sym.doubleToInt64
mov qword [rsp + 0x60], rax
cmp byte [rbx + 0x67], 0
mov rdx, rbx
mov ecx, dword [r15 + 0x34]
jne 0x14028cea0
xor eax, eax
test ecx, ecx
jne 0x14028cea0
mov rcx, qword [rdx + 0x18]
mov dword [r15 + 0x34], eax
test rcx, rcx
je 0x14028c8e8
call qword [0x1403951b0]
mov rcx, qword [r12 + 8]
xor edx, edx
mov r8, qword [rsp + 0x60]
call sym.sqlite3Fts5IndexBeginWrite
mov dword [rsp + 0x128], 0
test eax, eax
jne 0x14028e307
xor r13d, r13d
xor esi, esi
nop dword [rax]
cmp dword [rdi + 0x18], r13d
jle 0x14028ce28
mov rdx, qword [rdi + 0x28]
lea ebx, [rsi + 9]
movsxd rax, r13d
mov dword [rsp + 0x12c], 0
cmp byte [rdx + rax], 0
je 0x14028cb90
xor ebp, ebp
xor r13d, r13d
cmp r14d, ebx
jae 0x14028ccf0
test r14d, r14d
mov eax, 0x40
cmove r14d, eax
movsxd r14, r14d
cmp r14, rbx
jae 0x14028c970
nop dword [rax + rax]
add r14, r14
cmp r14, rbx
jb 0x14028c968
call sym.sqlite3_initialize
test eax, eax
jne 0x14028cee0
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call sym.sqlite3Realloc
test rax, rax
je 0x14028cee0
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
movsxd rdx, r13d
movsxd rcx, esi
add rcx, rax
cmp rdx, 0x7f
jbe 0x14028ccfe
cmp rdx, 0x3fff
jbe 0x14028cd10
call sym.putVarint64
movsxd rdx, dword [rsp + 0x128]
add esi, eax
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [rsp + 0x12c]
mov r13, rdx
add qword [rax + rdx*8], rcx
add r13d, 1
test ebp, ebp
mov dword [rsp + 0x128], r13d
je 0x14028c918
mov r9d, ebp
mov rbp, qword [rsp + 0x1a0]
add qword [r12 + 0x18], 1
mov r15, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x58]
mov dword [rsp + 0x60], r9d
call sym.sqlite3_free
mov rcx, r15
call sym.sqlite3_reset
mov ebx, dword [rsp + 0x60]
jmp 0x14028c4ec
mov rcx, qword [rdi]
mov dword [rsp + 0x58], edx
call sym.sqlite3VdbeIntValue
mov rcx, rsi
mov r13, rax
call sym.sqlite3VdbeIntValue
cmp rax, r13
mov rsi, rax
je 0x14028cb58
test r14b, r14b
je 0x14028cb58
mov edx, dword [rsp + 0x58]
cmp edx, 5
je 0x14028e33a
mov rcx, rbx
mov r8, r12
mov rdx, rdi
call sym.sqlite3Fts5StorageContentInsert
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov rcx, qword [rbp + 0x28]
xor r8d, r8d
mov rdx, r13
call sym.sqlite3Fts5StorageDelete
test eax, eax
mov ebx, eax
je 0x14028c720
jmp 0x14028c4ec
movsxd rax, dword [r13 + 0x18]
test rsi, rsi
mov dword [rsp + 0xe0], 0
mov r11, qword [rbp + 0x18]
mov rdi, qword [rdi + rax*8 + 0x18]
jne 0x14028c66e
mov r12, qword [rbp + 0x20]
mov rcx, r12
call sym.fts5StructureRead
test rax, rax
mov rcx, rax
je 0x14028cae5
mov eax, dword [rax]
sub eax, 1
test eax, eax
mov dword [rcx], eax
jg 0x14028cae5
call sym.fts5StructureRelease.part.0
mov ebx, dword [r12 + 0x34]
mov dword [r12 + 0x34], 0
test ebx, ebx
jne 0x14028c4ec
mov rcx, qword [rbp + 0x18]
lea r9, [rsp + 0xe0]
mov r8, rdi
mov rdx, rsi
call sym.sqlite3Fts5ConfigSetValue
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov ebx, dword [rsp + 0xe0]
test ebx, ebx
jne 0x14028c6c9
mov rcx, qword [rbp + 0x28]
xor r9d, r9d
mov r8, rdi
mov rdx, rsi
call sym.sqlite3Fts5StorageConfigValue
mov ebx, eax
jmp 0x14028c4ec
mov rcx, qword [rbp + 0x28]
call sym.sqlite3Fts5StorageDeleteAll
mov ebx, eax
jmp 0x14028c4ec
xor r8d, r8d
mov rcx, rbx
mov rdx, r13
call sym.sqlite3Fts5StorageDelete
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov rcx, qword [rbp + 0x28]
mov r8, r12
mov rdx, rdi
call sym.sqlite3Fts5StorageContentInsert
test eax, eax
mov ebx, eax
jne 0x14028c4ec
jmp 0x14028c720
test r15, r15
je 0x14028e430
mov rax, qword [r15]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028cbab
call qword [0x1403951a0]
mov rcx, qword [r15 + 0xa0]
test rcx, rcx
je 0x14028cbd1
movzx eax, word [r15 + 0xc0]
add r13d, 1
cmp r13d, eax
jge 0x14028cbd1
test r13d, r13d
jns 0x14028cdc0
mov rcx, qword [r15]
mov edx, 0x19
xor r13d, r13d
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
mov rcx, qword [r15]
mov edx, dword [r15 + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x14028cd90
xor eax, eax
test edx, edx
jne 0x14028cd90
mov rcx, qword [rcx + 0x18]
mov dword [r15 + 0x34], eax
test rcx, rcx
je 0x14028cda9
call qword [0x1403951b0]
mov rax, qword [r15]
mov ebp, dword [rsp + 0x128]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028cc33
call qword [0x1403951a0]
lea eax, [rbp + 1]
nop word cs:[rax + rax]
mov rcx, qword [r15 + 0xa0]
test rcx, rcx
je 0x14028cc5c
movzx edx, word [r15 + 0xc0]
cmp eax, edx
jb 0x14028cd30
mov rcx, qword [r15]
mov edx, 0x19
xor ebp, ebp
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
mov rcx, qword [r15]
mov edx, dword [r15 + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x14028cd80
xor eax, eax
test edx, edx
jne 0x14028cd80
mov rcx, qword [rcx + 0x18]
mov dword [r15 + 0x34], eax
test rcx, rcx
je 0x14028cca0
call qword [0x1403951b0]
test r13, r13
je 0x14028e430
mov rax, qword [rdi + 0x70]
lea r10, [sym.fts5StorageInsertCallback]
mov r9, r13
mov r8d, 4
mov rcx, qword [rdi + 0x68]
lea rdx, [rsp + 0x120]
mov dword [rsp + 0x20], ebp
mov qword [rsp + 0x28], r10
call qword [rax + 0x10]
mov ebp, eax
cmp r14d, ebx
mov r13d, dword [rsp + 0x12c]
jae 0x14028c998
jmp 0x14028c94f
mov rax, qword [rsp + 0x58]
movsxd rcx, esi
xor r13d, r13d
add rcx, rax
mov byte [rcx], r13b
mov eax, 1
jmp 0x14028c9c2
shr rdx, 7
xor eax, eax
mov al, dl
mov edx, r13d
or al, 0x80
and edx, 0x7f
mov ah, dl
mov word [rcx], ax
mov eax, 2
jmp 0x14028c9c2
cdqe
imul rax, rax, 0x38
add rcx, rax
movzx eax, word [rcx + 0x14]
test al, 2
je 0x14028cd4b
cmp byte [rcx + 0x16], 1
je 0x14028ced7
mov edx, eax
and edx, 0x10
test dx, dx
je 0x14028ce08
test ah, 4
mov ebp, dword [rcx + 0x10]
je 0x14028cc72
add ebp, dword [rcx]
mov rcx, qword [r15]
mov edx, dword [r15 + 0x34]
cmp byte [rcx + 0x67], 0
je 0x14028cc83
nop dword [rax + rax]
call sym.apiHandleError
mov rcx, qword [r15]
jmp 0x14028cc8d
call sym.apiHandleError
mov rcx, qword [r15]
mov dword [r15 + 0x34], eax
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x14028cc14
mov eax, dword [rsp + 0x128]
add eax, 1
jmp 0x14028cc40
movsxd r13, r13d
imul r13, r13, 0x38
add rcx, r13
movzx eax, word [rcx + 0x14]
mov edx, eax
not edx
test dx, 0x202
jne 0x14028cde3
cmp byte [rcx + 0x16], 1
je 0x14028cf19
and eax, 1
test ax, ax
jne 0x14028e2ea
mov edx, 1
call sym.valueToText
mov r13, rax
jmp 0x14028cbe8
test al, 1
jne 0x14028d086
mov edx, 1
call sym.valueBytes
mov ebp, eax
jmp 0x14028cc72
mov rax, qword [r12]
add qword [r12 + 0x18], 1
mov r15, qword [rsp + 0x100]
mov eax, dword [rax + 0x58]
test eax, eax
je 0x14028c848
xor r9d, r9d
mov edx, 6
mov rcx, r12
lea r8, [rsp + 0x110]
call sym.fts5StorageGetStmt
test eax, eax
je 0x14028ecd8
mov rbp, qword [rsp + 0x1a0]
mov r9d, eax
jmp 0x14028ca0d
mov dword [rbx + 0x50], 0x19
mov rcx, rbx
mov edx, 0x19
call sym.sqlite3ErrorFinish
mov rbx, qword [r15]
mov qword [rsp + 0x60], 0
jmp 0x14028c8ba
mov edx, ecx
mov rcx, rbx
call sym.apiHandleError
mov rdx, qword [r15]
jmp 0x14028c8d5
and edx, 0x12
je 0x14028ce8f
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14028ce8f
mov edx, dword [rax + 0x10]
movzx r8d, byte [rax + 0x16]
call sym.memIntValue.isra.0
mov qword [rsp + 0x60], rax
jmp 0x14028c8ba
mov ebp, dword [rcx + 0x10]
jmp 0x14028cc72
movsxd rcx, dword [rsp + 0x128]
mov r9d, 7
mov rdx, qword [r12 + 0x20]
movsxd r8, dword [rsp + 0x12c]
mov rbp, qword [rsp + 0x1a0]
mov rax, rcx
add qword [rdx + rcx*8], r8
add eax, 1
mov dword [rsp + 0x128], eax
jmp 0x14028c9ff
mov r13, qword [rcx + 8]
jmp 0x14028cbe8
mov qword [rsp + 0x60], 0
jmp 0x14028c8e8
lea rcx, str.optimize
mov r9, rsi
jmp 0x14028cf57
movzx ebx, byte [r8 + rdx]
cmp byte [r8 + rax], bl
jne 0x14028d0bf
add rcx, 1
add r9, 1
movzx eax, byte [rcx]
movzx edx, byte [r9]
cmp eax, edx
jne 0x14028cf40
test eax, eax
jne 0x14028cf4f
mov rax, qword [rbp + 0x28]
mov rsi, qword [rax + 8]
mov qword [rsp + 0x120], 0
mov edx, dword [rsi + 0x20]
test edx, edx
jne 0x14028e452
mov rcx, rsi
call sym.fts5StructureRead
mov rcx, rsi
mov rbx, rax
call sym.fts5StructureInvalidate
test rbx, rbx
je 0x14028d06a
mov rdx, rbx
mov rcx, rsi
call sym.fts5IndexOptimizeStruct
mov qword [rsp + 0x120], rax
mov rdi, rax
mov eax, dword [rbx]
sub eax, 1
test eax, eax
mov dword [rbx], eax
jg 0x14028cfca
mov rcx, rbx
call sym.fts5StructureRelease.part.0
test rdi, rdi
je 0x14028d06a
mov ebx, dword [rdi + 0x1c]
test ebx, ebx
jne 0x14028ec2b
lea rdx, [rdi + 0x2c]
mov eax, dword [rdx]
add rdx, 0x10
add ebx, 1
test eax, eax
je 0x14028cfe2
mov r14d, dword [rsi + 0x34]
movsxd r12, ebx
add r12, 1
shl r12, 4
test r14d, r14d
je 0x14028d048
jmp 0x14028d057
lea rdx, [rsp + 0x120]
mov r8d, ebx
mov rcx, rsi
mov dword [rsp + 0x110], 0x3e8
lea r9, [rsp + 0x110]
call sym.fts5IndexMergeLevel
mov r13d, dword [rsi + 0x34]
mov rdi, qword [rsp + 0x120]
test r13d, r13d
jne 0x14028e444
mov eax, dword [rdi + r12 + 0xc]
test eax, eax
jg 0x14028d008
mov rdx, rdi
mov rcx, rsi
call sym.fts5StructureWrite.part.0
mov eax, dword [rdi]
sub eax, 1
test eax, eax
mov dword [rdi], eax
jg 0x14028d06a
mov rcx, rdi
call sym.fts5StructureRelease.part.0
mov ebx, dword [rsi + 0x34]
mov dword [rsi + 0x34], 0
jmp 0x14028c4ec
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
jmp 0x14028c8ba
xor ebp, ebp
jmp 0x14028cc72
mov rcx, qword [rdi + 8]
movzx eax, word [rcx + 0x14]
and eax, 0x3f
cmp byte [r14 + rax], 1
jne 0x14028c4ec
call sym.sqlite3VdbeIntValue
mov rcx, qword [rbp + 0x28]
lea r8, [rdi + 0x10]
mov rdx, rax
call sym.sqlite3Fts5StorageDelete
mov ebx, eax
jmp 0x14028c4ec
lea rcx, str.merge
mov rdx, rsi
call sym.sqlite3_stricmp.part.0
test eax, eax
je 0x14028e3b7
lea rcx, str.integrity_check
mov rdx, rsi
call sym.sqlite3_stricmp.part.0
test eax, eax
jne 0x14028cac1
mov rcx, rdi
call sym.sqlite3VdbeIntValue
mov rdi, rax
mov rax, qword [rbp + 0x28]
mov r12, qword [rax]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov ebx, dword [r12 + 0x18]
mov qword [rsp + 0x140], r12
call sym.sqlite3_initialize
test eax, eax
jne 0x14028e466
movsxd rax, ebx
lea rbx, [rax + rax*2]
shl rbx, 2
lea rax, [rbx - 1]
cmp rax, 0x7ffffefe
ja 0x14028e466
mov esi, dword [0x140395120]
test esi, esi
je 0x14028ec34
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028d189
call qword [0x1403951a0]
mov rcx, rbx
call sym.sqlite3Malloc.part.0
mov qword [rsp + 0xc0], rax
mov rcx, rax
test rcx, rcx
je 0x14028e466
movsxd r14, dword [r12 + 0x18]
xor edx, edx
shl r14, 3
mov r8, r14
call sub.msvcrt.dll_memset
mov eax, dword [r12 + 0x40]
test eax, eax
je 0x14028e4ba
test edi, edi
setne dl
cmp eax, 2
sete al
mov esi, edx
and sil, al
jne 0x14028e4ba
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x60]
mov r15, qword [rax + 8]
mov rax, qword [r15]
mov rcx, r15
mov eax, dword [rax + 0x5c]
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
mov dword [rsp + 0xd0], eax
call sym.fts5StructureRead
test rax, rax
mov qword [rsp + 0xa8], rax
je 0x14028d7c4
mov eax, dword [rax + 0x14]
lea r9, [rsp + 0xf8]
xor r12d, r12d
test eax, eax
jle 0x14028d655
mov r14, r15
mov qword [rsp + 0x88], r9
mov rbx, qword [rsp + 0xa8]
mov rdi, r12
xor r15d, r15d
shl rdi, 4
mov ecx, dword [rbx + rdi + 0x1c]
test ecx, ecx
jle 0x14028d63d
mov qword [rsp + 0xb0], rdi
mov rdi, r14
mov byte [rsp + 0xd7], sil
mov qword [rsp + 0x80], r15
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0x1a0], rbp
nop dword [rax]
mov rsi, qword [rsp + 0xa8]
mov qword [rsp + 0xf0], 0
mov rbx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsi + rbx + 0x20]
lea rax, [rax + rax*2]
lea r15, [rdx + rax*4]
mov rax, qword [rdi]
mov ebx, dword [r15 + 4]
mov esi, dword [r15 + 8]
test ebx, ebx
mov dword [rsp + 0x70], esi
je 0x14028d5fe
mov rdx, qword [rax + 8]
lea rcx, str.SELECT_segid__term___pgno__1____pgno1__FROM__Q._q_idx_WHERE_segid_d_ORDER_BY_1__2
mov r9d, dword [r15]
mov r8, qword [rax + 0x10]
call sym.sqlite3_mprintf
mov rsi, rax
mov eax, dword [rdi + 0x34]
test eax, eax
je 0x14028e196
xor r12d, r12d
lea eax, [rbx - 1]
mov rcx, rsi
mov dword [rsp + 0x78], eax
call sym.sqlite3_free
mov r14d, dword [rdi + 0x34]
nop dword [rax + rax]
test r14d, r14d
jne 0x14028d5d8
mov rcx, r12
call sym.sqlite3_step
cmp eax, 0x64
jne 0x14028d5d8
test r12, r12
je 0x14028dac0
mov rax, qword [r12]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028d35e
call qword [0x1403951a0]
mov rbx, qword [r12 + 0xa0]
test rbx, rbx
je 0x14028d37b
cmp word [r12 + 0xc0], 1
ja 0x14028d7d8
mov rcx, qword [r12]
mov edx, 0x19
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
lea rcx, [0x14047dde0]
call sym.sqlite3ValueText.constprop.0
mov qword [rsp + 0x60], rax
mov rcx, qword [r12]
mov edx, dword [r12 + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x14028d868
xor eax, eax
test edx, edx
jne 0x14028d868
mov rcx, qword [rcx + 0x18]
mov dword [r12 + 0x34], eax
test rcx, rcx
je 0x14028d3e5
call qword [0x1403951b0]
mov rax, qword [r12]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028d3e5
call qword [0x1403951a0]
mov rcx, qword [r12 + 0xa0]
test rcx, rcx
je 0x14028d9f8
cmp word [r12 + 0xc0], 1
jbe 0x14028d9f8
movzx eax, word [rcx + 0x4c]
test al, 2
je 0x14028d418
cmp byte [rcx + 0x4e], 1
je 0x14028dfff
mov edx, eax
and edx, 0x10
test dx, dx
je 0x14028db10
test ah, 4
mov esi, dword [rcx + 0x48]
je 0x14028d431
add esi, dword [rcx + 0x38]
mov rbx, qword [r12]
mov edx, dword [r12 + 0x34]
cmp byte [rbx + 0x67], 0
jne 0x14028da22
xor eax, eax
test edx, edx
jne 0x14028da22
mov rcx, qword [rbx + 0x18]
mov dword [r12 + 0x34], eax
test rcx, rcx
je 0x14028d479
call qword [0x1403951b0]
mov rbx, qword [r12]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14028d479
call qword [0x1403951a0]
mov rbx, qword [r12]
mov rax, qword [r12 + 0xa0]
test rax, rax
je 0x14028d9b8
cmp word [r12 + 0xc0], 2
jbe 0x14028d9b8
movzx edx, word [rax + 0x84]
test dl, 0x24
jne 0x14028dff7
test dl, 8
jne 0x14028dae2
and dl, 0x12
je 0x14028eff5
mov rcx, qword [rax + 0x78]
xor ebp, ebp
test rcx, rcx
je 0x14028d4dc
mov edx, dword [rax + 0x80]
movzx r8d, byte [rax + 0x86]
call sym.memIntValue.isra.0
mov ebp, eax
cmp byte [rbx + 0x67], 0
mov edx, dword [r12 + 0x34]
jne 0x14028d9e1
xor eax, eax
test edx, edx
jne 0x14028d9e1
mov rcx, qword [rbx + 0x18]
mov dword [r12 + 0x34], eax
test rcx, rcx
je 0x14028d520
call qword [0x1403951b0]
mov rbx, qword [r12]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14028d520
call qword [0x1403951a0]
mov rbx, qword [r12]
mov rax, qword [r12 + 0xa0]
test rax, rax
je 0x14028da38
cmp word [r12 + 0xc0], 3
jbe 0x14028da38
movzx edx, word [rax + 0xbc]
test dl, 0x24
jne 0x14028dfe8
test dl, 8
jne 0x14028daf3
and dl, 0x12
je 0x14028ed5d
mov rcx, qword [rax + 0xb0]
mov dword [rsp + 0x58], 0
test rcx, rcx
je 0x14028d58e
mov edx, dword [rax + 0xb8]
movzx r8d, byte [rax + 0xbe]
call sym.memIntValue.isra.0
mov dword [rsp + 0x58], eax
cmp byte [rbx + 0x67], 0
mov rdx, rbx
mov ecx, dword [r12 + 0x34]
jne 0x14028da6a
xor eax, eax
test ecx, ecx
jne 0x14028da6a
mov rcx, qword [rdx + 0x18]
mov dword [r12 + 0x34], eax
test rcx, rcx
je 0x14028d5be
call qword [0x1403951b0]
cmp dword [r15 + 4], ebp
jle 0x14028d880
mov r14d, dword [rdi + 0x34]
test r14d, r14d
je 0x14028d331
nop dword [rax]
mov rcx, r12
call sym.sqlite3_finalize
mov edx, dword [rdi + 0x34]
test edx, edx
jne 0x14028d5ea
mov dword [rdi + 0x34], eax
mov rax, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov ecx, dword [rax + rsi + 0x1c]
add qword [rsp + 0x80], 1
mov rax, qword [rsp + 0x80]
cmp ecx, eax
jg 0x14028d2a0
mov rax, qword [rsp + 0xa8]
mov r14, rdi
movzx esi, byte [rsp + 0xd7]
mov r12, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0x1a0]
mov eax, dword [rax + 0x14]
add r12, 1
cmp eax, r12d
jg 0x14028d253
mov r9, qword [rsp + 0x88]
mov r15, r14
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 0x40], r9
mov r8d, 0x20
xor r9d, r9d
mov dword [rsp + 0x38], 0
mov rcx, r15
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call sym.fts5MultiIterNew
mov eax, dword [r15 + 0x34]
mov r12, qword [rsp + 0xf8]
test eax, eax
jne 0x14028ec0d
lea rax, [rsp + 0x100]
mov qword [rsp + 0x1a0], rbp
xor r14d, r14d
mov ebp, esi
mov qword [rsp + 0x58], rax
cmp byte [r12 + 0x14], 0
jne 0x14028d76a
mov rdx, qword [r12 + 0x58]
xor r13d, r13d
xor eax, eax
mov qword [rsp + 0x110], r13
mov dword [rsp + 0xf0], eax
movzx edx, word [rdx + 4]
mov rcx, rdx
imul rdx, rdx, 0x78
add rdx, r12
cmp dword [rsp + 0xd0], 1
mov rbx, qword [rdx + 0xc8]
mov r13d, dword [rdx + 0xc0]
mov rdi, qword [rdx + 0xb8]
jne 0x14028ed7c
cmp qword [rdx + 0x70], 0
je 0x14028d728
cmp dword [rdx + 0xd0], 0
je 0x14028d74e
imul rbx, rbx, 0x51
test r13d, r13d
jle 0x14028d74b
movsxd rdx, r13d
add rdx, rdi
lea rax, [rbx + rbx*8]
movsx rbx, byte [rdi]
add rdi, 1
add rbx, rax
cmp rdi, rdx
jne 0x14028d737
xor r14, rbx
xor r9d, r9d
xor r8d, r8d
mov rdx, r12
mov rcx, r15
call sym.fts5MultiIterNext
cmp dword [r15 + 0x34], 0
je 0x14028d6c2
mov esi, ebp
mov rbp, qword [rsp + 0x1a0]
mov rcx, r12
call sym.fts5MultiIterFree.part.0
mov edi, dword [r15 + 0x34]
test edi, edi
jne 0x14028d79b
cmp qword [rsp + 0xc8], r14
je 0x14028d79b
test sil, sil
je 0x14028d79b
mov dword [r15 + 0x34], 0x10b
mov rsi, qword [rsp + 0xa8]
mov eax, dword [rsi]
mov dword [rsp + 0x60], eax
sub eax, 1
test eax, eax
mov dword [rsi], eax
jg 0x14028d7ba
mov rcx, rsi
call sym.fts5StructureRelease.part.0
mov rcx, qword [rsp + 0x58]
call sym.sqlite3Fts5BufferFree
mov ebx, dword [r15 + 0x34]
mov dword [r15 + 0x34], 0
jmp 0x14028e8d4
movzx eax, word [rbx + 0x4c]
lea r9, [rbx + 0x38]
test al, 0x12
je 0x14028ed6a
test ah, 4
mov edx, dword [rbx + 0x48]
je 0x14028d83d
mov ecx, dword [rbx + 0x38]
add ecx, edx
test ecx, ecx
jg 0x14028d802
test al, 0x10
je 0x14028d83d
mov ecx, 1
mov edx, ecx
mov r8d, 1
mov rcx, r9
call sym.sqlite3VdbeMemGrow
test eax, eax
jne 0x14028daa8
movsxd rcx, dword [rbx + 0x48]
xor edx, edx
add rcx, qword [rbx + 0x40]
movsxd r8, dword [rbx + 0x38]
call sub.msvcrt.dll_memset
mov edx, dword [rbx + 0x38]
movzx eax, word [rbx + 0x4c]
add edx, dword [rbx + 0x48]
and ah, 0xf9
mov dword [rbx + 0x48], edx
or eax, 0x10
test edx, edx
mov word [rbx + 0x4c], ax
je 0x14028daa8
mov rcx, qword [r12]
mov rax, qword [rbx + 0x40]
mov edx, dword [r12 + 0x34]
cmp byte [rcx + 0x67], 0
mov qword [rsp + 0x60], rax
je 0x14028d3b4
call sym.apiHandleError
mov rcx, qword [r12]
jmp 0x14028d3be
movsxd rdx, dword [r15]
movsxd rax, ebp
mov rcx, rdi
shl rdx, 0x25
add rdx, rax
call sym.fts5DataRead
test rax, rax
mov r13, rax
je 0x14028d5d8
mov eax, dword [rax + 8]
cmp eax, 3
jle 0x14028db30
mov ebx, dword [r13 + 0xc]
cmp eax, ebx
jl 0x14028db30
jne 0x14028db48
mov dword [rdi + 0x34], 0x10b
mov rcx, r13
call sym.sqlite3_free
mov eax, dword [rdi + 0x34]
test eax, eax
jne 0x14028d5d8
mov r13d, dword [rsp + 0x78]
add r13d, 1
cmp r13d, ebp
jge 0x14028da80
mov r14d, dword [rsp + 0x70]
movsxd rbx, r13d
jmp 0x14028d95d
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028d90a
call qword [0x1403951a0]
mov rcx, rsi
call qword [0x140395158]
mov rcx, rsi
sub qword [0x1403954e8], 1
cdqe
sub qword [0x1403954a0], rax
call qword [0x140395148]
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028d93f
call qword [0x1403951b0]
mov r11d, dword [rdi + 0x34]
add r13d, 1
test r11d, r11d
jne 0x14028d5d8
add rbx, 1
cmp ebp, r13d
je 0x14028da80
movsxd rdx, dword [r15]
mov rcx, rdi
shl rdx, 0x25
add rdx, rbx
call sym.fts5DataRead
test rax, rax
mov rsi, rax
je 0x14028d93f
mov eax, dword [rax + 8]
cmp dword [rsi + 0xc], eax
jge 0x14028d986
mov dword [rdi + 0x34], 0x10b
cmp r14d, r13d
jge 0x14028d99b
mov rax, qword [rsi]
cmp word [rax], 0
je 0x14028d99b
mov dword [rdi + 0x34], 0x10b
mov eax, dword [0x140395120]
test eax, eax
jne 0x14028d8f8
mov rcx, rsi
call qword [0x140395148]
jmp 0x14028d93f
mov dword [rbx + 0x50], 0x19
mov edx, 0x19
mov rcx, rbx
xor ebp, ebp
call sym.sqlite3ErrorFinish
mov rbx, qword [r12]
mov edx, dword [r12 + 0x34]
cmp byte [rbx + 0x67], 0
je 0x14028d4eb
mov rcx, rbx
call sym.apiHandleError
mov rbx, qword [r12]
jmp 0x14028d4f5
mov rcx, qword [r12]
mov edx, 0x19
xor esi, esi
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
mov rbx, qword [r12]
mov edx, dword [r12 + 0x34]
cmp byte [rbx + 0x67], 0
je 0x14028d444
mov rcx, rbx
call sym.apiHandleError
mov rbx, qword [r12]
jmp 0x14028d44e
mov rcx, rbx
mov dword [rbx + 0x50], 0x19
mov edx, 0x19
call sym.sqlite3ErrorFinish
mov rbx, qword [r12]
mov dword [rsp + 0x58], 0
mov ecx, dword [r12 + 0x34]
cmp byte [rbx + 0x67], 0
mov rdx, rbx
je 0x14028d5a0
mov edx, ecx
mov rcx, rbx
call sym.apiHandleError
mov rdx, qword [r12]
jmp 0x14028d5aa
mov r10d, dword [rsp + 0x58]
test r10d, r10d
jne 0x14028e03c
mov eax, dword [r15 + 8]
xor r14d, r14d
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x78], ebp
jmp 0x14028d328
mov qword [rsp + 0x60], 0
jmp 0x14028d3a1
lea rcx, [0x14047dde0]
xor esi, esi
xor ebp, ebp
call sym.sqlite3ValueText.constprop.0
mov dword [rsp + 0x58], 0
mov qword [rsp + 0x60], rax
jmp 0x14028d5be
movsd xmm0, qword [rax + 0x70]
call sym.doubleToInt64
mov ebp, eax
jmp 0x14028d4dc
movsd xmm0, qword [rax + 0xa8]
call sym.doubleToInt64
mov dword [rsp + 0x58], eax
jmp 0x14028d58e
test al, 1
jne 0x14028e18f
add rcx, 0x38
mov edx, 1
call sym.valueBytes
mov esi, eax
jmp 0x14028d431
mov dword [rdi + 0x34], 0x10b
mov rcx, r13
call sym.sqlite3_free
jmp 0x14028d5d8
mov r10, qword [r13]
movsxd rcx, ebx
add rcx, r10
movzx r9d, byte [rcx]
test r9b, r9b
jns 0x14028dba4
movzx eax, byte [rcx + 1]
test al, al
jns 0x14028e25a
movzx edx, byte [rcx + 2]
shl r9d, 0xe
or r9d, edx
and edx, 0x80
je 0x14028e2f2
lea rdx, [rsp + 0x110]
mov qword [rsp + 0x68], r10
call sym.sqlite3Fts5GetVarint
mov r9d, dword [rsp + 0x110]
mov r10, qword [rsp + 0x68]
and r9d, 0x7fffffff
movzx eax, word [r10]
rol ax, 8
movzx eax, ax
cmp eax, r9d
jge 0x14028dbbd
cmp ebx, r9d
jg 0x14028e26a
mov dword [rdi + 0x34], 0x10b
mov eax, 0x10b
xor edx, edx
xor esi, esi
mov dword [rsp + 0xb8], ebp
mov qword [rsp + 0x110], 0
movsxd rbp, edx
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x98], r15
mov qword [rsp + 0xa0], r12
nop dword [rax]
test eax, eax
jne 0x14028dfb8
mov r15, qword [r13]
movsxd rcx, ebx
mov eax, 1
add rcx, r15
movzx r9d, byte [rcx]
test r9b, r9b
jns 0x14028dc7a
movzx eax, byte [rcx + 1]
test al, al
jns 0x14028df70
movzx edx, byte [rcx + 2]
shl r9d, 0xe
or r9d, edx
and edx, 0x80
je 0x14028df88
mov rdx, qword [rsp + 0x88]
call sym.sqlite3Fts5GetVarint
mov r9d, dword [rsp + 0xf8]
movzx eax, al
and r9d, 0x7fffffff
mov r12d, dword [r13 + 0xc]
add r14d, r9d
add ebx, eax
cmp r14d, r12d
jge 0x14028de38
movsxd rcx, r14d
add rcx, r15
cmp r14d, r9d
je 0x14028de50
movzx r9d, byte [rcx]
mov r11d, 1
test r9b, r9b
jns 0x14028dced
movzx eax, byte [rcx + 1]
test al, al
jns 0x14028e011
movzx edx, byte [rcx + 2]
shl r9d, 0xe
or r9d, edx
and edx, 0x80
je 0x14028e15a
mov rdx, qword [rsp + 0x88]
call sym.sqlite3Fts5GetVarint
mov r9d, dword [rsp + 0xf8]
movzx r11d, al
and r9d, 0x7fffffff
add r11d, r14d
movsxd rcx, r11d
add rcx, r15
movzx r8d, byte [rcx]
test r8b, r8b
mov eax, r8d
jns 0x14028dfa8
movzx edx, byte [rcx + 1]
test dl, dl
jns 0x14028e027
movzx eax, byte [rcx + 2]
shl r8d, 0xe
or r8d, eax
test al, 0x80
je 0x14028e175
mov rdx, qword [rsp + 0x88]
mov dword [rsp + 0xbc], r9d
mov dword [rsp + 0x90], r11d
call sym.sqlite3Fts5GetVarint
mov r8d, dword [rsp + 0xf8]
mov r9d, dword [rsp + 0xbc]
movzx eax, al
mov r11d, dword [rsp + 0x90]
and r8d, 0x7fffffff
mov edx, dword [rsp + 0x118]
cmp edx, r9d
jl 0x14028dd80
add eax, r11d
lea ecx, [rax + r8]
cmp r12d, ecx
jge 0x14028def9
mov dword [rdi + 0x34], 0x10b
mov esi, edx
test esi, esi
je 0x14028de18
cmp ebp, esi
mov r8d, esi
jae 0x14028ddfb
test ebp, ebp
mov r15d, 0x40
cmovne r15, rbp
cmp r15, r8
jae 0x14028ddb8
nop dword [rax]
add r15, r15
cmp r15, r8
jb 0x14028ddb0
mov qword [rsp + 0x90], r8
call sym.sqlite3_initialize
mov r8, qword [rsp + 0x90]
test eax, eax
jne 0x14028de0c
mov rcx, qword [rsp + 0x60]
mov rdx, r15
mov qword [rsp + 0x90], r8
call sym.sqlite3Realloc
test rax, rax
je 0x14028de0c
mov r8, qword [rsp + 0x90]
movsxd rbp, r15d
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
call sym.memcpy
jmp 0x14028de20
mov dword [rdi + 0x34], 7
nop dword [rax + rax]
xor esi, esi
nop word [rax + rax]
cmp ebx, dword [r13 + 8]
jge 0x14028dfb8
mov eax, dword [rdi + 0x34]
jmp 0x14028dc18
mov dword [rdi + 0x34], 0x10b
mov esi, dword [rsp + 0x118]
jmp 0x14028dd89
movzx r8d, byte [rcx]
test r8b, r8b
mov eax, r8d
jns 0x14028e007
movzx edx, byte [rcx + 1]
test dl, dl
jns 0x14028e1dc
movzx eax, byte [rcx + 2]
shl r8d, 0xe
or r8d, eax
test al, 0x80
je 0x14028e227
mov rdx, qword [rsp + 0x88]
mov dword [rsp + 0x90], r9d
call sym.sqlite3Fts5GetVarint
mov r8d, dword [rsp + 0xf8]
mov r9d, dword [rsp + 0x90]
movzx eax, al
and r8d, 0x7fffffff
add eax, r9d
lea edx, [rax + r8]
cmp r12d, edx
jl 0x14028de38
lea rdx, [rsp + 0x110]
cdqe
mov dword [rsp + 0x118], 0
lea r9, [r15 + rax]
lea rcx, [rdi + 0x34]
call sym.sqlite3Fts5BufferAppendBlob
mov rax, qword [rsp + 0x110]
mov esi, dword [rsp + 0x118]
mov qword [rsp + 0x68], rax
jmp 0x14028dd89
mov dword [rsp + 0x118], r9d
lea rdx, [rsp + 0x110]
cdqe
lea r9, [r15 + rax]
lea rcx, [rdi + 0x34]
call sym.sqlite3Fts5BufferAppendBlob
mov eax, dword [rdi + 0x34]
test eax, eax
jne 0x14028efdc
movsxd r15, dword [rsp + 0x118]
movsxd r8, esi
mov rcx, qword [rsp + 0x110]
cmp r15d, esi
cmovle r8, r15
mov qword [rsp + 0x68], rcx
test r8d, r8d
jle 0x14028df55
mov rdx, qword [rsp + 0x60]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14028df5a
mov eax, r15d
sub eax, esi
test eax, eax
jg 0x14028df65
mov dword [rdi + 0x34], 0x10b
mov esi, r15d
jmp 0x14028dd89
and r9d, 0x7f
shl r9d, 7
or r9d, eax
mov eax, 2
jmp 0x14028dc7a
and eax, 0x7f
and r9d, 0x1fc07f
shl eax, 7
or r9d, eax
mov eax, 3
jmp 0x14028dc7a
mov eax, 1
jmp 0x14028dd64
mov rcx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x98]
mov ebp, dword [rsp + 0xb8]
mov r12, qword [rsp + 0xa0]
call sym.sqlite3_free
mov rcx, qword [rsp + 0x60]
call sym.sqlite3_free
jmp 0x14028d8c6
mov eax, dword [rax + 0xa8]
mov dword [rsp + 0x58], eax
jmp 0x14028d58e
mov ebp, dword [rax + 0x70]
jmp 0x14028d4dc
mov esi, dword [rcx + 0x48]
jmp 0x14028d431
mov eax, 1
jmp 0x14028deae
and r9d, 0x7f
mov r11d, 2
shl r9d, 7
or r9d, eax
jmp 0x14028dced
and eax, 0x7f
shl eax, 7
or eax, edx
mov r8d, eax
mov eax, 2
jmp 0x14028dd64
mov ebx, dword [r15]
xor edx, edx
mov r9d, ebp
mov rcx, rdi
mov r8d, ebx
call sym.fts5DlidxIterInit
mov r13d, dword [rdi + 0x34]
mov rsi, rax
test r13d, r13d
mov dword [rsp + 0x70], r13d
jne 0x14028e20e
shl rbx, 0x25
mov dword [rsp + 0x58], ebp
mov r8d, dword [rsi + 0x14]
test r8d, r8d
jne 0x14028e11f
lea r13d, [rbp + 1]
mov ebp, dword [rsi + 0x1c]
movsxd rax, r13d
lea r14, [rax + rbx]
cmp r13d, ebp
jge 0x14028e0c8
nop dword [rax]
mov rcx, rdi
mov rdx, r14
call sym.fts5DataRead
test rax, rax
mov rcx, rax
je 0x14028e0b8
mov rax, qword [rax]
cmp word [rax], 0
je 0x14028e0b3
mov dword [rdi + 0x34], 0x10b
call sym.sqlite3_free
mov ebp, dword [rsi + 0x1c]
add r13d, 1
add r14, 1
cmp r13d, ebp
jl 0x14028e090
movsxd rdx, ebp
mov rcx, rdi
add rdx, rbx
call sym.fts5DataRead
test rax, rax
mov r14, rax
je 0x14028e104
mov rdx, qword [rax]
movzx eax, word [rdx]
rol ax, 8
movzx ecx, ax
cmp ecx, dword [r14 + 0xc]
jl 0x14028e470
mov dword [rdi + 0x34], 0x10b
mov rcx, r14
call sym.sqlite3_free
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call sym.fts5DlidxIterNextR.isra.0
mov r9d, dword [rdi + 0x34]
test r9d, r9d
je 0x14028e06c
mov ebp, dword [rsp + 0x58]
mov dword [rsp + 0x70], r13d
mov ecx, dword [rsi]
xor ebx, ebx
test ecx, ecx
jle 0x14028e149
mov rax, rbx
add rbx, 1
shl rax, 5
mov rcx, qword [rsi + rax + 8]
call sym.sqlite3_free
cmp dword [rsi], ebx
jg 0x14028e130
mov rcx, rsi
call sym.sqlite3_free
mov r14d, dword [rdi + 0x34]
jmp 0x14028da99
and eax, 0x7f
and r9d, 0x1fc07f
mov r11d, 3
shl eax, 7
or r9d, eax
jmp 0x14028dced
and edx, 0x7f
and r8d, 0x1fc07f
mov eax, 3
shl edx, 7
or r8d, edx
jmp 0x14028dd64
xor esi, esi
jmp 0x14028d431
test rsi, rsi
je 0x14028e32e
mov rax, qword [rdi]
xor r9d, r9d
mov r8d, 0x85
mov rdx, rsi
mov rcx, qword [rax]
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call sym.sqlite3LockAndPrepare.constprop.0
mov r12, qword [rsp + 0xf0]
mov dword [rdi + 0x34], eax
jmp 0x14028d310
and eax, 0x7f
shl eax, 7
or eax, edx
mov r8d, eax
mov eax, 2
jmp 0x14028deae
lea r8, str.NULL
mov ecx, 0x15
lea rdx, str.API_call_with__s_database_connection_pointer
call sym.sqlite3_log
jmp 0x14028c5c9
test rax, rax
jne 0x14028e437
mov r14d, r13d
mov dword [rsp + 0x70], 0
jmp 0x14028da99
and edx, 0x7f
and r8d, 0x1fc07f
mov eax, 3
shl edx, 7
or r8d, edx
jmp 0x14028deae
mov dword [rsp + 0xe0], 0
movsxd rax, dword [r13 + 0x18]
mov rdi, qword [rdi + rax*8 + 0x18]
jmp 0x14028cac1
and r9d, 0x7f
shl r9d, 7
or r9d, eax
jmp 0x14028dba4
lea rdx, [rsp + 0xe4]
movsxd rcx, r9d
mov qword [rsp + 0x68], r10
add rcx, r10
mov dword [rsp + 0x90], r9d
call sym.sqlite3Fts5GetVarint32
movsxd r11, dword [rsp + 0xe4]
movsxd r8, esi
cmp r11d, esi
cmovle r8, r11
test r8d, r8d
jle 0x14028e2d5
mov r9d, dword [rsp + 0x90]
mov dword [rsp + 0x98], r11d
mov r10, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
add eax, r9d
cdqe
lea rcx, [r10 + rax]
call sub.msvcrt.dll_memcmp
mov r11d, dword [rsp + 0x98]
test eax, eax
jne 0x14028e2da
mov eax, r11d
sub eax, esi
test eax, eax
js 0x14028dbbd
mov eax, dword [rdi + 0x34]
jmp 0x14028dbc9
xor r13d, r13d
jmp 0x14028cbe8
and eax, 0x7f
and r9d, 0x1fc07f
shl eax, 7
or r9d, eax
jmp 0x14028dba4
mov rcx, qword [rsp + 0x58]
mov ebx, eax
add qword [r12 + 0x18], 1
mov rbp, qword [rsp + 0x1a0]
call sym.sqlite3_free
mov rcx, r15
call sym.sqlite3_reset
jmp 0x14028c4ec
mov dword [rdi + 0x34], 7
jmp 0x14028d30d
xor r8d, r8d
mov rcx, rbx
mov rdx, r13
call sym.sqlite3Fts5StorageDelete
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov rcx, qword [rbp + 0x28]
xor r8d, r8d
mov rdx, rsi
call sym.sqlite3Fts5StorageDelete
test eax, eax
mov ebx, eax
je 0x14028cb70
jmp 0x14028c4ec
mov rcx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x1a0]
call sym.sqlite3_free
mov rcx, r15
call sym.sqlite3_reset
test eax, eax
mov ebx, eax
jne 0x14028c4ec
mov rcx, r12
call sym.fts5StorageSaveTotals
mov ebx, eax
jmp 0x14028c4ec
lea rdx, str.rebuild_may_not_be_used_with_a_contentless_fts5_table
mov rcx, rbp
call sym.fts5SetVtabError
jmp 0x14028c6c9
mov rcx, rdi
call sym.sqlite3VdbeIntValue
mov r12, rax
mov rax, qword [rbp + 0x28]
mov rsi, qword [rax + 8]
mov rcx, rsi
call sym.fts5StructureRead
test rax, rax
mov rbx, rax
mov qword [rsp + 0x120], rax
je 0x14028d06a
mov rax, qword [rsi]
mov rcx, rsi
mov r13d, r12d
mov edi, dword [rax + 0x90]
call sym.fts5StructureInvalidate
test r12d, r12d
js 0x14028ec90
mov r12d, dword [rbx + 0x14]
test r12d, r12d
jne 0x14028ec4c
mov eax, dword [rbx]
sub eax, 1
test eax, eax
mov dword [rbx], eax
jg 0x14028d06a
mov rcx, rbx
call sym.fts5StructureRelease.part.0
jmp 0x14028d06a
xor ebp, ebp
jmp 0x14028ccd7
mov dword [rsp + 0x70], 0
jmp 0x14028e128
test rdi, rdi
jne 0x14028d057
jmp 0x14028d06a
mov dword [rsi + 0x20], 0
mov rcx, rsi
call sym.fts5FlushOneHash.constprop.0
jmp 0x14028cf85
mov ebx, 7
jmp 0x14028c4ec
lea r8, [rsp + 0x110]
movzx eax, ax
lea rcx, [rdx + rax]
mov rdx, r8
call sym.sqlite3Fts5GetVarint
mov rax, qword [rsp + 0x110]
cmp qword [rsi + 0x20], rax
jne 0x14028e0f5
jmp 0x14028e0fc
mov edx, 1
mov rcx, r12
call sym.fts5StorageLoadTotals.part.0
test eax, eax
mov esi, eax
jne 0x14028c82b
jmp 0x14028c809
mov rcx, qword [rsp + 0x60]
xor r9d, r9d
mov edx, 0xa
lea r8, [rsp + 0xe8]
call sym.fts5StorageGetStmt
test eax, eax
mov ebx, eax
jne 0x14028e8d4
mov rax, qword [rsp + 0xc0]
mov rbx, rbp
add rax, r14
mov qword [rsp + 0x68], rax
mov rdi, qword [rsp + 0xe8]
mov rcx, rdi
call sym.sqlite3_step
cmp eax, 0x64
jne 0x14028ee8e
test rdi, rdi
je 0x14028eb9c
mov rbp, qword [rdi]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14028e528
call qword [0x1403951a0]
mov rbp, qword [rdi]
mov rax, qword [rdi + 0xa0]
test rax, rax
je 0x14028eb19
cmp word [rdi + 0xc0], 0
je 0x14028eb19
movzx edx, word [rax + 0x14]
test dl, 0x24
jne 0x14028ec05
test dl, 8
jne 0x14028eb8b
and dl, 0x12
je 0x14028eb30
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14028eb30
mov edx, dword [rax + 0x10]
movzx r8d, byte [rax + 0x16]
call sym.memIntValue.isra.0
mov rsi, rax
cmp byte [rbp + 0x67], 0
mov rdx, rbp
mov ecx, dword [rdi + 0x34]
jne 0x14028eb37
xor eax, eax
test ecx, ecx
jne 0x14028eb37
mov rcx, qword [rdx + 0x18]
mov dword [rdi + 0x34], eax
test rcx, rcx
je 0x14028e5ae
call qword [0x1403951b0]
mov r11d, dword [r12 + 0x58]
mov qword [rsp + 0x120], rsi
mov dword [rsp + 0x12c], 0
test r11d, r11d
jne 0x14028eb62
cmp dword [r12 + 0x5c], 1
je 0x14028ebab
lea rax, [rsp + 0x110]
mov r13d, 1
xor r14d, r14d
lea r15, [rsp + 0x120]
mov qword [rsp + 0x70], rax
mov rbp, rbx
mov qword [rsp + 0x78], r15
cmp dword [r12 + 0x18], r14d
jle 0x14028eafe
mov rax, qword [r12 + 0x28]
cmp byte [rax + r14], 0
jne 0x14028e8fe
cmp dword [r12 + 0x5c], 2
mov dword [rsp + 0x128], r14d
mov dword [rsp + 0x12c], 0
je 0x14028e9a0
test rdi, rdi
je 0x14028e941
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028e656
call qword [0x1403951a0]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14028e90b
movzx eax, word [rdi + 0xc0]
cmp r13d, eax
jge 0x14028e90b
mov eax, r13d
imul rax, rax, 0x38
add rcx, rax
movzx eax, word [rcx + 0x14]
mov edx, eax
not edx
test dx, 0x202
jne 0x14028e699
cmp byte [rcx + 0x16], 1
je 0x14028ebfc
and eax, 1
xor esi, esi
test ax, ax
jne 0x14028e6b0
mov edx, 1
call sym.valueToText
mov rsi, rax
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x14028e9e1
xor eax, eax
test edx, edx
jne 0x14028e9e1
mov rcx, qword [rcx + 0x18]
mov dword [rdi + 0x34], eax
test rcx, rcx
je 0x14028e6ee
call qword [0x1403951b0]
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028e6ee
call qword [0x1403951a0]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14028e926
movzx eax, word [rdi + 0xc0]
cmp r13d, eax
jge 0x14028e926
mov eax, r13d
imul rax, rax, 0x38
add rcx, rax
movzx eax, word [rcx + 0x14]
test al, 2
je 0x14028e72a
cmp byte [rcx + 0x16], 1
je 0x14028eba3
mov edx, eax
and edx, 0x10
test dx, dx
je 0x14028eb49
test ah, 4
mov ebx, dword [rcx + 0x10]
je 0x14028e742
add ebx, dword [rcx]
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x14028e9ee
xor eax, eax
test edx, edx
jne 0x14028e9ee
mov rcx, qword [rcx + 0x18]
mov dword [rdi + 0x34], eax
test rcx, rcx
je 0x14028e76e
call qword [0x1403951b0]
test rsi, rsi
je 0x14028e941
mov rax, qword [r12 + 0x70]
lea rdx, [sym.fts5StorageIntegrityCallback]
mov r9, rsi
mov r8d, 4
mov rcx, qword [r12 + 0x68]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ebx
mov rdx, qword [rsp + 0x78]
call qword [rax + 0x10]
test eax, eax
mov esi, eax
je 0x14028e941
movsxd rax, dword [rsp + 0x12c]
mov rcx, qword [rsp + 0x138]
mov rbx, qword [rsp + 0xc0]
add qword [rbx + r14*8], rax
cmp dword [r12 + 0x5c], 2
jne 0x14028e9fb
test rcx, rcx
je 0x14028eee3
lea rbx, [rcx + 0x1000]
mov dword [rsp + 0x88], esi
mov r15, rbp
mov rsi, rcx
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x58], rbx
nop word cs:[rax + rax]
mov rdi, qword [rsi]
lea rbp, [0x140395120]
nop word [rax + rax]
test rdi, rdi
je 0x14028e885
mov r8d, dword [rbp]
mov rbx, rdi
mov rdi, qword [rdi + 0x10]
test r8d, r8d
je 0x14028e8f0
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028e84b
call qword [0x1403951a0]
mov rcx, rbx
call qword [0x140395158]
mov rcx, rbx
sub qword [0x1403954e8], 1
cdqe
sub qword [0x1403954a0], rax
call qword [0x140395148]
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028e820
call qword [0x1403951b0]
test rdi, rdi
jne 0x14028e825
mov rax, qword [rsp + 0x58]
add rsi, 8
cmp rsi, rax
jne 0x14028e810
mov esi, dword [rsp + 0x88]
mov rbp, r15
mov rcx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x80]
call sym.sqlite3_free
test esi, esi
mov qword [rsp + 0x138], 0
je 0x14028e8fe
mov rcx, rdi
mov r14d, esi
call sym.sqlite3_reset
mov ebx, r14d
mov rcx, qword [rsp + 0xc0]
call sym.sqlite3_free
jmp 0x14028c4ec
mov rcx, rbx
call qword [0x140395148]
jmp 0x14028e820
add r14, 1
add r13d, 1
jmp 0x14028e601
mov rcx, qword [rdi]
mov edx, 0x19
xor esi, esi
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
jmp 0x14028e6b0
mov rcx, qword [rdi]
mov edx, 0x19
xor ebx, ebx
mov dword [rcx + 0x50], 0x19
call sym.sqlite3ErrorFinish
jmp 0x14028e742
mov r9d, dword [r12 + 0x58]
movsxd rax, dword [rsp + 0x12c]
test r9d, r9d
je 0x14028e970
mov rsi, qword [rsp + 0x68]
cmp dword [rsi + r14*4], eax
je 0x14028e970
mov rcx, qword [rsp + 0x138]
mov esi, 0x10b
jmp 0x14028e7bc
mov rsi, qword [rsp + 0xc0]
add qword [rsi + r14*8], rax
cmp dword [r12 + 0x5c], 2
jne 0x14028e8fe
mov rcx, qword [rsp + 0x138]
test rcx, rcx
je 0x14028e8fe
xor esi, esi
jmp 0x14028e7dd
mov rcx, qword [rsp + 0x70]
mov edx, 0x1000
mov dword [rsp + 0x110], 0
call sym.sqlite3Fts5MallocZero
mov esi, dword [rsp + 0x110]
mov rcx, rax
mov qword [rsp + 0x138], rax
test esi, esi
je 0x14028e63b
movsxd rax, dword [rsp + 0x12c]
jmp 0x14028e7bc
call sym.apiHandleError
mov rcx, qword [rdi]
jmp 0x14028e6ca
call sym.apiHandleError
mov rcx, qword [rdi]
jmp 0x14028e75c
mov edx, esi
mov rbx, rbp
test rcx, rcx
je 0x14028ebee
lea rbp, [rcx + 0x1000]
mov qword [rsp + 0x1a0], rbx
mov r14d, edx
mov rbx, rcx
mov r15, qword [rsp + 0x1a0]
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x70], rcx
mov rsi, qword [rbx]
lea rdi, [0x140395120]
nop word [rax + rax]
test rsi, rsi
je 0x14028eaa2
mov ecx, dword [rdi]
mov r13, rsi
mov rsi, qword [rsi + 0x10]
test ecx, ecx
je 0x14028eaf0
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028ea68
call qword [0x1403951a0]
mov rcx, r13
call qword [0x140395158]
mov rcx, r13
sub qword [0x1403954e8], 1
cdqe
sub qword [0x1403954a0], rax
call qword [0x140395148]
mov rcx, qword [0x140394dc0]
test rcx, rcx
je 0x14028ea40
call qword [0x1403951b0]
test rsi, rsi
jne 0x14028ea45
add rbx, 8
cmp rbx, rbp
jne 0x14028ea30
mov rcx, qword [rsp + 0x70]
mov rbx, r15
mov rdi, qword [rsp + 0x58]
mov dword [rsp + 0x58], r14d
call sym.sqlite3_free
mov edx, dword [rsp + 0x58]
mov qword [rsp + 0x138], 0
test edx, edx
je 0x14028e4f1
mov r14d, edx
mov rbp, r15
mov rcx, rdi
jmp 0x14028e8cc
mov rcx, r13
call qword [0x140395148]
jmp 0x14028ea40
mov rcx, qword [rsp + 0x138]
mov rbx, rbp
test rcx, rcx
je 0x14028e4f1
xor edx, edx
jmp 0x14028ea09
mov dword [rbp + 0x50], 0x19
mov rcx, rbp
mov edx, 0x19
call sym.sqlite3ErrorFinish
mov rbp, qword [rdi]
xor esi, esi
jmp 0x14028e582
mov edx, ecx
mov rcx, rbp
call sym.apiHandleError
mov rdx, qword [rdi]
jmp 0x14028e59c
test al, 1
jne 0x14028ebe7
mov edx, 1
call sym.valueBytes
mov ebx, eax
jmp 0x14028e742
mov rcx, qword [rsp + 0x60]
mov rdx, rsi
mov r8, qword [rsp + 0x68]
call sym.sqlite3Fts5StorageDocsize
mov rcx, qword [rsp + 0x138]
test eax, eax
mov edx, eax
jne 0x14028ea00
jmp 0x14028e5cf
movsd xmm0, qword [rax]
call sym.doubleToInt64
mov rsi, rax
jmp 0x14028e582
xor esi, esi
jmp 0x14028e5ae
mov ebx, dword [rcx + 0x10]
jmp 0x14028e742
lea rcx, [rsp + 0x110]
xor r10d, r10d
mov edx, 0x1000
mov dword [rsp + 0x110], r10d
call sym.sqlite3Fts5MallocZero
mov edx, dword [rsp + 0x110]
mov rcx, rax
mov qword [rsp + 0x138], rax
test edx, edx
je 0x14028e5db
jmp 0x14028ea00
xor ebx, ebx
jmp 0x14028e742
mov rcx, rdi
mov r14d, edx
mov rbp, rbx
jmp 0x14028e8cc
mov rsi, qword [rcx + 8]
jmp 0x14028e6b0
mov rsi, qword [rax]
jmp 0x14028e582
test r12, r12
je 0x14028efca
lea rax, [rsp + 0x100]
xor r14d, r14d
mov qword [rsp + 0x58], rax
jmp 0x14028d774
mov eax, ebx
xor ebx, ebx
jmp 0x14028cfef
mov ecx, ebx
call qword [0x140395140]
mov qword [rsp + 0xc0], rax
mov rcx, rax
jmp 0x14028d19c
lea rdx, [rsp + 0x120]
mov r9d, edi
mov r8d, r13d
mov rcx, rsi
call sym.fts5IndexMerge
test eax, eax
je 0x14028ec70
cmp dword [rsi + 0x34], 0
je 0x14028efb5
mov rbx, qword [rsp + 0x120]
test rbx, rbx
jne 0x14028e410
jmp 0x14028d06a
mov rdx, rbx
mov rcx, rsi
call sym.fts5IndexOptimizeStruct
mov rdi, rax
mov eax, dword [rbx]
sub eax, 1
test eax, eax
mov dword [rbx], eax
jg 0x14028ecb1
mov rcx, rbx
call sym.fts5StructureRelease.part.0
test rdi, rdi
mov qword [rsp + 0x120], rdi
je 0x14028d06a
mov r13d, r12d
mov rbx, rdi
mov edi, 2
neg r13d
jmp 0x14028e403
mov rbx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
call sym.sqlite3_bind_int64.constprop.0.isra.0
mov r8, qword [rsp + 0x58]
mov r9d, esi
mov rcx, rbx
mov qword [rsp + 0x20], 0
mov edx, 2
call sym.sqlite3_bind_blob
mov rcx, rbx
call sym.sqlite3_step
mov rcx, rbx
call sym.sqlite3_reset
mov edx, 1
mov rcx, rbx
mov esi, eax
call sym.vdbeUnbind
test eax, eax
jne 0x14028c83c
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14028c83c
call qword [0x1403951b0]
jmp 0x14028c83c
mov rbp, qword [rsp + 0x1a0]
mov r9d, esi
jmp 0x14028ca0d
xor r9d, r9d
mov dword [rsp + 0x58], r9d
jmp 0x14028d58e
mov rcx, r9
call sym.sqlite3ValueText.constprop.0
mov qword [rsp + 0x60], rax
jmp 0x14028d3a1
movzx edx, cx
mov rsi, qword [rsp + 0x58]
xor eax, eax
mov rcx, r15
imul rdx, rdx, 0x78
xor r8d, r8d
mov dword [rsp + 0x108], eax
mov r9, rsi
lea rdx, [r12 + rdx + 0x60]
call sym.fts5SegiterPoslist
lea rcx, [r15 + 0x34]
mov rdx, rsi
mov r8d, 4
lea r9, [0x14047584e]
movsxd rsi, r13d
call sym.sqlite3Fts5BufferAppendBlob
mov edx, dword [rsp + 0x108]
add rsi, rdi
mov r11, r12
mov rcx, qword [rsp + 0x100]
lea rax, [rsp + 0x110]
mov r12, rsi
lea r10, [rbx*8]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xf0]
mov rsi, r10
mov r10, r15
mov qword [rsp + 0x60], rax
mov r15d, ebp
mov ebp, edx
mov r9, qword [rsp + 0x68]
mov edx, ebp
mov qword [rsp + 0x80], r11
mov r8, qword [rsp + 0x60]
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x70], rcx
call sym.sqlite3Fts5PoslistNext64
mov rcx, qword [rsp + 0x70]
test eax, eax
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x80]
jne 0x14028ee80
mov rax, qword [rsp + 0x110]
mov rdx, rax
and eax, 0x7fffffff
sar rdx, 0x20
add rdx, rbx
add rdx, rsi
add rax, rdx
test r13d, r13d
lea rax, [rax + rdx*8]
jle 0x14028ee7b
mov rdx, rdi
lea r8, [rax + rax*8]
movsx rax, byte [rdx]
add rdx, 1
add rax, r8
cmp rdx, r12
jne 0x14028ee67
xor r14, rax
jmp 0x14028ee05
mov ebp, r15d
mov r12, r11
mov r15, r10
jmp 0x14028d74e
mov rcx, rdi
mov rbp, rbx
call sym.sqlite3_reset
test eax, eax
mov ebx, eax
jne 0x14028e8d4
mov rax, qword [rsp + 0x60]
cmp dword [rax + 0x10], 0
je 0x14028ef13
mov edx, dword [r12 + 0x18]
xor eax, eax
cmp edx, eax
jle 0x14028eef9
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rsi + 0x20]
mov rsi, qword [rsp + 0xc0]
mov rcx, qword [rcx + rax*8]
add rax, 1
cmp rcx, qword [rsi + rax*8 - 8]
je 0x14028eeb5
mov ebx, 0x10b
jmp 0x14028e8d4
xor r8d, r8d
mov rcx, rdi
mov r14d, esi
mov qword [rsp + 0x138], r8
jmp 0x14028e8cc
cmp dword [r12 + 0x40], 0
je 0x14028ef6e
cmp dword [r12 + 0x58], 0
jne 0x14028ef2a
mov esi, 1
jmp 0x14028d1db
mov rcx, qword [rsp + 0x60]
xor edx, edx
call sym.fts5StorageLoadTotals.part.0
test eax, eax
mov ebx, eax
je 0x14028eeae
jmp 0x14028e8d4
mov rsi, qword [rsp + 0x60]
lea rdx, str.docsize
xor eax, eax
lea r8, [rsp + 0x110]
mov qword [rsp + 0x110], rax
mov rcx, qword [rsi]
call sym.fts5StorageCount.constprop.0.isra.0
test eax, eax
mov ebx, eax
jne 0x14028e8d4
mov rax, qword [rsp + 0x110]
cmp qword [rsi + 0x18], rax
jne 0x14028eed9
jmp 0x14028ef09
mov rsi, qword [rsp + 0x60]
lea r8, [rsp + 0x110]
xor edx, edx
mov qword [rsp + 0x110], rdx
lea rdx, str.content
mov rcx, qword [rsi]
call sym.fts5StorageCount.constprop.0.isra.0
test eax, eax
mov ebx, eax
jne 0x14028e8d4
mov rax, qword [rsp + 0x110]
cmp qword [rsi + 0x18], rax
jne 0x14028eed9
jmp 0x14028ef01
mov rdx, qword [rsp + 0x120]
mov rcx, rsi
call sym.fts5StructureWrite.part.0
jmp 0x14028ec70
lea rax, [rsp + 0x100]
mov qword [rsp + 0x58], rax
jmp 0x14028d79b
mov rax, qword [rsp + 0x110]
mov esi, dword [rsp + 0x118]
mov qword [rsp + 0x68], rax
jmp 0x14028dd89
xor ebp, ebp
jmp 0x14028d4dc