Function at 0x14023c4d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1f8
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1e0], xmm7
mov r13, qword [rcx + 0x10]
mov rax, qword [rcx]
test r13, r13
mov rbx, rcx
mov r15, rdx
mov rbp, r8
mov qword [rsp + 0x48], rax
jne 0x14023c515
call sym.sqlite3GetVdbe.part.0
mov r13, rax
test r15, r15
je 0x14023c523
mov r10d, dword [rbx + 0x30]
test r10d, r10d
je 0x14023c550
mov eax, 1
movaps xmm6, xmmword [rsp + 0x1d0]
movaps xmm7, xmmword [rsp + 0x1e0]
add rsp, 0x1f8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r9d, r9d
xor r8d, r8d
mov edx, 0x15
mov qword [rsp + 0x20], 0
mov rcx, rbx
call sym.sqlite3AuthCheck
test eax, eax
jne 0x14023c523
cmp byte [rbp], 6
ja 0x14023c5a6
mov r8, qword [r15 + 0x48]
test r8, r8
je 0x14023c596
lea rdx, [sym.sqlite3ExprListDelete]
mov rcx, rbx
call sym.sqlite3ParserAddCleanup
mov qword [r15 + 0x48], 0
mov eax, dword [r15 + 4]
and eax, 0xfffffffe
or eax, 0x400000
mov dword [r15 + 4], eax
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call sym.sqlite3SelectPrep
mov r9d, dword [rbx + 0x30]
test r9d, r9d
jne 0x14023c5eb
mov r10d, dword [r15 + 4]
test r10d, 0x800000
jne 0x14023c868
cmp byte [rbp], 9
je 0x14023c8c8
mov rdx, r15
mov rcx, rbx
call sym.sqlite3WindowRewrite
test eax, eax
mov dword [rsp + 0x6c], eax
je 0x14023c630
mov eax, 1
movsxd rdx, dword [rbx + 0x140]
test edx, edx
je 0x14023c622
mov r8, qword [rbx + 0x10]
lea rcx, [0x1402b1b40]
mov r9, qword [r8]
cmp byte [r9 + 0x67], 0
jne 0x14023c61f
lea rcx, [rdx + rdx*2]
mov rdx, qword [r8 + 0x88]
lea rcx, [rdx + rcx*8]
mov edx, dword [rcx + 8]
mov dword [rbx + 0x140], edx
jmp 0x14023c528
mov qword [rsp + 0x128], 0
mov rax, qword [r15 + 0x28]
mov qword [rsp + 0x130], 0
mov rdx, qword [r15 + 0x48]
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x58], rax
mov eax, dword [r15 + 4]
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x120], rdx
and eax, 8
mov dword [rsp + 0x88], eax
mov rax, qword [r15 + 0x50]
setne r9b
xor r12d, r12d
movzx r9d, r9b
test rax, rax
mov qword [rsp + 0x80], rax
jne 0x14023cd53
mov qword [rsp + 0x60], r13
mov r13, r15
mov r15, qword [rsp + 0x58]
mov dword [rsp + 0x50], r9d
jmp 0x14023c79e
test rdi, rdi
je 0x14023c78f
mov rax, qword [rdi + 0x20]
movsx r8d, word [r14 + 0x36]
mov edx, dword [rax]
cmp r8d, edx
jne 0x14023cdc0
mov eax, dword [rdi + 4]
test al, 8
jne 0x14023c78f
mov r8, qword [rdi + 0x48]
test r8, r8
je 0x14023c740
cmp qword [r13 + 0x48], 0
je 0x14023c810
cmp qword [rdi + 0x60], 0
je 0x14023c820
test r12d, r12d
jne 0x14023c740
test byte [r13 + 6], 4
je 0x14023c740
cmp dword [r15], 1
je 0x14023c8b8
test byte [r15 + 0xac], 0x22
jne 0x14023c8b8
nop dword [rax + rax]
mov r9d, dword [rsp + 0x50]
mov r8d, r12d
mov rdx, r13
mov rcx, rbx
call sym.flattenSubquery
test eax, eax
je 0x14023c76a
mov r8d, dword [rbx + 0x30]
test r8d, r8d
jne 0x14023c5eb
mov r12d, 0xffffffff
mov rax, qword [rsp + 0x48]
mov r15, qword [r13 + 0x28]
cmp byte [rax + 0x67], 0
jne 0x14023c5eb
cmp byte [rbp], 8
jbe 0x14023c78f
mov rax, qword [r13 + 0x48]
mov qword [rsp + 0x120], rax
add r12d, 1
cmp qword [r13 + 0x50], 0
jne 0x14023cd50
cmp dword [r15], r12d
jle 0x14023c8e0
movsxd rsi, r12d
imul rsi, rsi, 0x68
add rsi, r15
movzx eax, byte [rsi + 0x44]
mov rdi, qword [rsi + 0x30]
mov r14, qword [rsi + 0x28]
and eax, 0x18
cmp al, 8
jne 0x14023c6d0
mov edx, dword [rsi + 0x4c]
mov rcx, qword [r13 + 0x30]
call sym.sqlite3ExprImpliesNonNullRow
test eax, eax
je 0x14023c6d0
mov rax, qword [rsp + 0x48]
test byte [rax + 0x61], 0x20
jne 0x14023c6d0
and byte [rsi + 0x44], 0xd7
movzx r8d, byte [r15 + 0x44]
mov edx, dword [rsi + 0x4c]
mov rcx, qword [r13 + 0x30]
and r8d, 0x40
call sym.unsetJoinExpr
jmp 0x14023c6d0
cmp dword [r15], 1
jg 0x14023c70c
jmp 0x14023c717
test eax, 0x8000000
jne 0x14023c717
test byte [r13 + 7], 8
jne 0x14023c717
mov rax, qword [rsp + 0x48]
test byte [rax + 0x62], 4
jne 0x14023c717
lea rdx, [sym.sqlite3ExprListDelete]
mov rcx, rbx
call sym.sqlite3ParserAddCleanup
mov qword [rdi + 0x48], 0
jmp 0x14023c740
mov r11, qword [r15 + 0x28]
lea rcx, [r11 + 8]
mov rdx, r11
call sym.sameSrcAlias
test eax, eax
jne 0x14023c890
and r10d, 0xff7fffff
mov dword [r15 + 4], r10d
jmp 0x14023c5ce
mov r8, qword [r11 + 0x20]
test r8, r8
je 0x14023e118
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rbx
call sym.sqlite3ErrorMsg
jmp 0x14023c5eb
mov r12d, 1
jmp 0x14023c793
mov rdx, r15
mov rcx, rbx
call sym.sqlite3GenerateColumnNames
jmp 0x14023c5d8
mov qword [rsp + 0x58], r15
mov r15, r13
mov r13, qword [rsp + 0x60]
mov r12, qword [r15 + 0x30]
test r12, r12
je 0x14023c901
cmp byte [r12], 0x2c
je 0x14023df03
mov rax, qword [rsp + 0x58]
xor r14d, r14d
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x150]
mov r10d, dword [rax]
mov rdi, rax
test r10d, r10d
jle 0x14023cde8
mov rsi, rax
mov qword [rsp + 0x250], rbp
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
jmp 0x14023ca8d
imul rax, r12, 0x68
test byte [rsi + rax + 0x49], 1
je 0x14023cd30
mov rax, qword [rdi + 0x68]
cmp byte [rax + 0x12], 0
je 0x14023c96a
cmp dword [rax], 1
jle 0x14023cd30
mov rcx, qword [rbx + 0x178]
mov rdx, qword [rdi + 0x18]
mov r11d, dword [r15 + 4]
mov qword [rsp + 0x60], rcx
mov qword [rbx + 0x178], rdx
movzx edx, byte [rax + 0x12]
mov r10, rax
test dl, dl
je 0x14023c9d8
cmp dword [rax], 1
jle 0x14023c99a
cmp dl, 2
jne 0x14023c9d8
test byte [rsi + 0x44], 0x40
jne 0x14023c9d8
mov rax, qword [rbx]
test byte [rax + 0x63], 2
jne 0x14023c9d8
mov r9d, dword [rsi]
lea r8d, [r14 + 1]
mov rcx, rsi
mov dword [rsp + 0x8c], r11d
mov rdx, qword [rsp + 0x50]
call sym.isSelfJoinView
test rax, rax
je 0x14023edd8
mov r10, qword [rdi + 0x68]
nop word [rax + rax]
mov r9d, dword [r10 + 4]
test r9d, r9d
jg 0x14023cd78
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
mov r9d, r14d
mov rcx, rsi
call sym.isSelfJoinView
test rax, rax
mov r10, rax
je 0x14023ddb9
mov r9d, dword [rax + 0x30]
test r9d, r9d
jne 0x14023d1d8
mov r9d, dword [r10 + 0x44]
mov edx, 0x73
mov rcx, r13
mov qword [rsp + 0x50], r10
mov r8d, dword [rdi + 0x4c]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r10, qword [rsp + 0x50]
mov rax, qword [r10 + 0x28]
movzx eax, word [rax + 2]
mov word [rbp + 2], ax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
jne 0x14023c5eb
mov rdx, qword [rsp + 0x78]
mov rcx, r15
mov dword [rsp + 0x150], 0
call sym.heightOfSelect
mov eax, dword [rsp + 0x150]
sub dword [rbx + 0x13c], eax
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0x178], rax
add r14d, 1
add rdi, 0x68
cmp dword [rsi], r14d
jle 0x14023cde0
cmp qword [rdi + 0x58], 0
jne 0x14023caba
mov r8, qword [rdi + 0x18]
test r8, r8
je 0x14023caba
mov rax, qword [rdi + 0x10]
lea r9, [0x140329f88]
mov edx, 0x14
mov rcx, rbx
mov qword [rsp + 0x20], rax
call sym.sqlite3AuthCheck
mov rbp, qword [rdi + 0x30]
test rbp, rbp
je 0x14023ca7c
mov rdx, qword [rsp + 0x70]
lea rax, [rdi + 8]
mov rcx, r15
movsxd r12, r14d
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x180], 0
call sym.heightOfSelect
mov eax, dword [rsp + 0x180]
add dword [rbx + 0x13c], eax
mov rax, qword [rsp + 0x48]
test byte [rax + 0x61], 0x10
je 0x14023c948
imul rax, r12, 0x68
mov rcx, qword [rbx + 0x178]
mov rdx, qword [rdi + 0x18]
mov r11d, dword [r15 + 4]
movzx eax, byte [rsi + rax + 0x49]
mov qword [rsp + 0x60], rcx
mov qword [rbx + 0x178], rdx
and eax, 1
test al, al
jne 0x14023cbc0
movzx r10d, byte [rsi + 0x44]
and r10d, 0x40
jne 0x14023c9e5
mov rax, qword [rbx]
test byte [rax + 0x63], 2
jne 0x14023c9e5
mov r9d, dword [rsi]
lea r8d, [r14 + 1]
mov rcx, rsi
mov byte [rsp + 0x98], r10b
mov rdx, qword [rsp + 0x50]
mov dword [rsp + 0x8c], r11d
call sym.isSelfJoinView
mov r11d, dword [rsp + 0x8c]
movzx r10d, byte [rsp + 0x98]
test rax, rax
jne 0x14023c9e5
test r14d, r14d
jne 0x14023cbc9
cmp r9d, 1
je 0x14023cbfe
test byte [rsi + 0xac], 2
jne 0x14023cbfe
and r11d, 0x10000000
je 0x14023cbfe
test r10b, r10b
jne 0x14023c9ce
jmp 0x14023c9e5
mov rax, qword [rdi + 0x68]
jmp 0x14023c985
and r11d, 0x10000000
jne 0x14023cba9
mov rax, qword [rsp + 0x50]
mov rdx, rsi
sub rdx, rdi
add rdx, rax
jmp 0x14023cbf3
sub rax, 0x68
cmp qword [rax + 0x28], 0
jne 0x14023cba9
test byte [rax + 0x3c], 0x22
jne 0x14023cba9
cmp rax, rdx
jne 0x14023cbe8
mov eax, dword [rbx + 0x38]
xor r9d, r9d
mov edx, 0xb
mov rcx, r13
mov r10d, dword [r13 + 0x90]
lea r8d, [rax + 1]
lea r11d, [r10 + 1]
mov dword [rbx + 0x38], r8d
mov dword [rdi + 0x3c], r8d
mov dword [rsp + 0x20], r11d
mov dword [rsp + 0x98], r10d
mov dword [rsp + 0x8c], r11d
call sym.sqlite3VdbeAddOp3
mov eax, dword [rdi + 0x3c]
mov edx, 1
mov rcx, rbx
mov r11d, dword [rsp + 0x8c]
lea r8, str.CO_ROUTINE___S
mov r9, qword [rsp + 0x50]
mov dword [rdi + 0x38], r11d
mov byte [rsp + 0x180], 0xd
mov dword [rsp + 0x184], eax
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x188], 0
mov dword [rsp + 0x190], 0
call sym.sqlite3VdbeExplain
mov r8, qword [rsp + 0x70]
mov rdx, rbp
mov rcx, rbx
call sym.sqlite3Select
movzx edx, word [rbp + 2]
xor r9d, r9d
mov rcx, r13
mov rax, qword [rdi + 0x28]
mov word [rax + 0x3a], dx
imul rax, r12, 0x68
mov edx, 0x44
or byte [rsi + rax + 0x48], 0x20
mov eax, dword [rsp + 0x18c]
mov r8d, dword [rdi + 0x3c]
mov dword [rdi + 0x40], eax
call sym.sqlite3VdbeAddOp3.constprop.0
mov rax, qword [r13 + 0x18]
mov byte [rax + 0x1f], 0
mov rcx, qword [r13]
mov dword [rax + 0x28], 0
mov edx, dword [r13 + 0x90]
lea rax, [0x1402b1b40]
cmp byte [rcx + 0x67], 0
jne 0x14023cd18
movsxd r10, dword [rsp + 0x98]
mov rax, qword [r13 + 0x88]
lea rcx, [r10 + r10*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov byte [rbx + 0x1f], 0
mov dword [rbx + 0x28], 0
jmp 0x14023ca3c
mov r9, qword [rsp + 0x50]
mov rdx, rbp
mov rcx, rbx
mov r8, qword [r15 + 0x30]
call sym.pushDownWhereTerms.isra.0
jmp 0x14023cb03
mov r15, r13
mov r8, rbp
mov rdx, r15
mov rcx, rbx
call sym.multiSelect
cmp qword [r15 + 0x58], 0
jne 0x14023c528
jmp 0x14023c5f0
mov r8d, dword [r10 + 8]
mov edx, 0xa
mov rcx, r13
mov qword [rsp + 0x50], r10
call sym.sqlite3VdbeAddOp3.constprop.0
mov r10, qword [rsp + 0x50]
mov r8d, dword [rdi + 0x4c]
mov r9d, dword [r10 + 0xc]
cmp r8d, r9d
je 0x14023cdb2
mov edx, 0x73
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
mov r10, qword [rsp + 0x50]
movzx eax, word [r10 + 0x10]
mov word [rbp + 2], ax
jmp 0x14023ca3c
mov r9, qword [r14]
mov rcx, rbx
mov dword [rsp + 0x20], edx
lea rdx, str.expected__d_columns_for__s_but_got__d
call sym.sqlite3ErrorMsg
jmp 0x14023c5eb
mov rbp, qword [rsp + 0x250]
mov rax, qword [r15 + 0x30]
mov r14, qword [r15 + 0x20]
mov r12, qword [rsp + 0x120]
mov qword [rsp + 0x90], rax
mov rax, qword [r15 + 0x38]
mov qword [rsp + 0x60], rax
mov rax, qword [r15 + 0x40]
mov qword [rsp + 0xa0], rax
mov eax, dword [r15 + 4]
mov edi, eax
and eax, 9
and edi, 1
cmp eax, 1
mov byte [rsp + 0x50], dil
mov byte [rsp + 0x9c], dil
mov byte [rsp + 0xf0], dil
je 0x14023ecdf
test r12, r12
mov dword [rsp + 0x78], 0xffffffff
je 0x14023cea3
mov r9d, dword [r14]
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
call sym.sqlite3KeyInfoFromExprList
mov r8d, dword [rbx + 0x34]
mov rcx, r13
mov rdi, rax
mov edx, dword [r12]
lea eax, [r8 + 1]
mov dword [rsp + 0x12c], r8d
mov dword [rbx + 0x34], eax
mov eax, dword [r14]
lea r9d, [rdx + rax + 1]
mov edx, 0x76
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, 0xfffffff8
mov r8, rdi
mov rcx, r13
mov edx, eax
mov dword [rsp + 0x78], eax
call sym.sqlite3VdbeChangeP4
mov eax, dword [rsp + 0x78]
cmp byte [rbp], 0xc
mov dword [rsp + 0x138], eax
je 0x14023ebff
mov edx, dword [r15 + 4]
mov eax, dword [rbx + 0x44]
sub eax, 1
test dh, 0x40
mov dword [rsp + 0x98], eax
mov dword [rbx + 0x44], eax
jne 0x14023cedc
mov r9d, 0x140
mov word [r15 + 2], r9w
cmp qword [r15 + 0x60], 0
je 0x14023cefa
mov r8d, dword [rsp + 0x98]
mov rdx, r15
mov rcx, rbx
call sym.computeLimitRegisters
mov edx, dword [r15 + 4]
mov r8d, dword [r15 + 8]
test r8d, r8d
jne 0x14023cf39
mov edi, dword [rsp + 0x78]
test edi, edi
js 0x14023cf39
mov rcx, qword [r13]
lea rax, [0x1402b1b40]
cmp byte [rcx + 0x67], 0
jne 0x14023cf2e
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
lea rax, [rax + rcx*8]
mov byte [rax], 0x77
mov byte [rsp + 0x144], 1
and edx, 1
mov byte [rsp + 0x8c], 0
jne 0x14023e124
movzx eax, byte [rsp + 0x8c]
mov byte [rsp + 0xf1], al
mov eax, dword [rsp + 0x88]
test eax, eax
sete dl
cmp qword [rsp + 0x60], 0
sete al
and dl, al
mov byte [rsp + 0x88], dl
je 0x14023d61d
movzx edx, word [r15 + 4]
movzx eax, word [rsp + 0x50]
and dx, 0x4000
shl eax, 8
mov esi, edx
or esi, eax
mov rax, qword [r15 + 0x70]
test rax, rax
mov qword [rsp + 0x50], rax
je 0x14023d228
mov rax, qword [r15 + 0x28]
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x20]
mov edi, dword [rax]
mov rax, qword [rbx + 0x10]
test rax, rax
mov qword [rsp + 0x60], rax
jne 0x14023cfce
mov rcx, rbx
call sym.sqlite3GetVdbe.part.0
mov qword [rsp + 0x60], rax
mov r9d, edi
mov rdi, qword [rsp + 0x50]
mov edx, 0x76
mov rcx, qword [rsp + 0x60]
mov r8d, dword [rdi + 0x58]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rdi + 0x58]
mov edx, 0x73
mov rcx, qword [rsp + 0x60]
lea r8d, [r9 + 1]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rdi + 0x58]
mov edx, 0x73
mov rcx, qword [rsp + 0x60]
lea r8d, [r9 + 2]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rdi + 0x58]
mov edx, 0x73
mov rcx, qword [rsp + 0x60]
lea r8d, [r9 + 3]
call sym.sqlite3VdbeAddOp3.constprop.0
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14023d064
mov edx, dword [rax]
xor r8d, r8d
mov eax, dword [rbx + 0x38]
mov rcx, qword [rsp + 0x60]
lea r9d, [rax + 1]
add eax, edx
mov dword [rdi + 0x6c], r9d
mov dword [rbx + 0x38], eax
lea eax, [rdx + r9 - 1]
mov edx, 0x4b
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov eax, dword [rbx + 0x38]
mov r8d, 1
mov edx, 0x47
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x60]
lea r9d, [rax + 1]
mov dword [rbx + 0x38], r9d
mov dword [rdi + 0x80], r9d
call sym.sqlite3VdbeAddOp3.constprop.0
cmp byte [rdi + 0x24], 0
jne 0x14023fba9
mov word [rsp + 0x70], si
mov rsi, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x250], rbp
jmp 0x14023d16b
cmp byte [rdi + 0x21], 0x5a
je 0x14023d179
mov rax, qword [rdi + 0x70]
xor r8d, r8d
xor r9d, r9d
mov rcx, rsi
mov rdx, qword [rax + 0x20]
call sym.sqlite3KeyInfoFromExprList
mov r8d, dword [rsi + 0x34]
mov rbp, rax
lea eax, [r8 + 1]
movd xmm0, r8d
mov dword [rsi + 0x34], eax
mov eax, dword [rsi + 0x38]
lea edx, [rax + 1]
add eax, 3
test rbp, rbp
movd xmm2, edx
punpckldq xmm0, xmm2
movq qword [rdi + 0x64], xmm0
mov dword [rsi + 0x38], eax
je 0x14023d122
mov rax, qword [rdi + 0x50]
mov rax, qword [rax + 0x38]
cmp byte [rax + 1], 0x69
jne 0x14023d122
mov rax, qword [rbp + 0x18]
mov byte [rax], 1
mov r8d, dword [rdi + 0x64]
mov r9d, 2
mov edx, 0x76
mov rcx, rbx
call sym.sqlite3VdbeAddOp3.constprop.0
mov r8d, 0xfffffff8
mov rdx, rbp
mov rcx, rbx
call sym.sqlite3VdbeAppendP4
mov r9d, dword [rdi + 0x68]
xor r8d, r8d
mov rcx, rbx
mov edx, 0x47
add r9d, 1
call sym.sqlite3VdbeAddOp3.constprop.0
mov rdi, qword [rdi + 0x40]
test rdi, rdi
je 0x14023d218
mov rax, qword [rdi + 0x50]
test byte [rax + 5], 0x10
jne 0x14023d0b8
mov rax, qword [rax + 0x38]
lea rcx, str.nth_value
cmp rax, rcx
je 0x14023d1f8
lea rcx, str.first_value
cmp rax, rcx
je 0x14023d1f8
lea rcx, str.lead
cmp rax, rcx
je 0x14023d1ad
lea rdx, [0x14033b820]
cmp rax, rdx
jne 0x14023d15e
mov r8d, dword [rsi + 0x34]
lea eax, [r8 + 1]
mov dword [rsi + 0x34], eax
mov dword [rdi + 0x64], r8d
mov rax, qword [rsp + 0x50]
mov edx, 0x73
mov rcx, rbx
mov r9d, dword [rax + 0x58]
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x14023d15e
mov r8d, dword [rax + 0x34]
mov edx, 0xa
mov rcx, r13
mov qword [rsp + 0x50], rax
call sym.sqlite3VdbeAddOp3.constprop.0
mov r10, qword [rsp + 0x50]
jmp 0x14023ca11
mov eax, dword [rsi + 0x38]
mov r8d, dword [rsi + 0x34]
lea edx, [rax + 1]
add eax, 2
mov dword [rdi + 0x68], edx
lea edx, [r8 + 1]
mov dword [rsi + 0x34], edx
mov dword [rdi + 0x64], r8d
mov dword [rsi + 0x38], eax
jmp 0x14023d1bc
mov rbx, rsi
mov rbp, qword [rsp + 0x250]
movzx esi, word [rsp + 0x70]
movsx eax, word [r15 + 2]
mov qword [rsp + 0x28], r15
mov r9, r12
mov rcx, rbx
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x58]
mov dword [rsp + 0x38], eax
movzx eax, si
mov dword [rsp + 0x30], eax
mov rax, qword [r15 + 0x20]
mov qword [rsp + 0x20], rax
call sym.sqlite3WhereBegin
test rax, rax
mov qword [rsp + 0x70], rax
je 0x14023c5eb
movzx eax, word [rax + 0x48]
cmp word [r15 + 2], ax
jle 0x14023d27c
mov word [r15 + 2], ax
cmp byte [rsp + 0x9c], 0
je 0x14023d2a1
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x43]
test al, al
je 0x14023d2a1
mov byte [rsp + 0xf1], al
mov byte [rsp + 0x8c], al
test r12, r12
je 0x14023ebe0
mov rdi, qword [rsp + 0x70]
xor edx, edx
movsx eax, byte [rdi + 0x41]
test al, al
cmovs eax, edx
test byte [rdi + 0x44], 4
mov dword [rsp + 0x128], eax
je 0x14023d2e6
movzx edx, byte [rdi + 0x40]
sub edx, 1
movsxd rdx, edx
imul rdx, rdx, 0x70
add rdx, rdi
cmp qword [rdx + 0x398], 0
je 0x14023fc1e
mov edx, dword [rdi + 0x30]
cmp dword [r12], eax
mov dword [rsp + 0x140], edx
je 0x14023ebd4
cmp qword [rsp + 0x50], 0
je 0x14023ee3b
mov eax, dword [rbx + 0x44]
movq xmm7, rbx
mov rsi, qword [rbx + 0x10]
lea edi, [rax - 1]
mov dword [rsp + 0xa0], edi
lea edi, [rax - 2]
sub eax, 3
mov dword [rsp + 0xc8], edi
mov edi, dword [rbx + 0x38]
mov dword [rsp + 0xc4], eax
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x90], eax
add edi, 1
test rsi, rsi
mov dword [rsp + 0x9c], edi
mov dword [rbx + 0x38], edi
mov rdi, qword [r15 + 0x70]
movq xmm5, rdi
mov qword [rsp + 0x58], rdi
mov rdi, qword [rdi + 0x18]
punpcklqdq xmm7, xmm5
mov qword [rsp + 0xa8], rdi
jne 0x14023d382
mov rcx, rbx
call sym.sqlite3GetVdbe.part.0
mov rsi, rax
mov eax, dword [rbx + 0x44]
mov dword [rsp + 0x90], eax
mov rax, qword [r15 + 0x28]
mov rdi, qword [rsp + 0x58]
movd xmm6, dword [rax + 0x4c]
mov rax, qword [rax + 0x28]
movsx r12d, word [rax + 0x36]
movaps xmmword [rsp + 0x180], xmm7
mov eax, dword [rsp + 0x90]
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1a0], 0
sub eax, 1
mov qword [rsp + 0x190], rsi
mov dword [rbx + 0x44], eax
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0x9c]
mov qword [rsp + 0x1c0], 0
mov dword [rsp + 0x19c], eax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x198], eax
mov eax, dword [rdi + 0x58]
lea ecx, [rax + 1]
mov dword [rsp + 0x1b4], eax
mov dword [rsp + 0x80], eax
mov dword [rsp + 0x88], ecx
lea ecx, [rax + 2]
add eax, 3
mov dword [rsp + 0xd8], ecx
mov dword [rsp + 0x1ac], ecx
mov dword [rsp + 0x1bc], eax
movzx ecx, byte [rdi + 0x21]
mov dword [rsp + 0xbc], eax
cmp cl, 0x56
je 0x14023f051
cmp cl, 0x5a
je 0x14023f0d8
mov dword [rsp + 0x1a4], 2
mov eax, dword [rbx + 0x38]
sub ecx, 0x56
lea edi, [rax + 1]
add eax, r12d
and ecx, 0xfd
lea edx, [rax + 1]
mov dword [rsp + 0x50], edx
lea edx, [rax + 2]
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x1a8], edx
jne 0x14023f0c4
add eax, 3
mov dword [rsp + 0xb0], edx
mov dword [rsp + 0x60], eax
mov edx, eax
mov dword [rbx + 0x38], eax
mov rax, qword [rsp + 0x58]
mov dword [rsp + 0x78], 0
movzx eax, byte [rax + 0x22]
sub eax, 0x56
test al, 0xfd
jne 0x14023d4d4
add edx, 1
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x78], edx
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x20], 0x4c
je 0x14023f080
mov rax, qword [rsp + 0xa8]
xor ecx, ecx
test rax, rax
je 0x14023d4f4
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov r11d, dword [rax + 0x78]
mov rax, qword [rax + 0x10]
add r11d, edi
test rax, rax
mov dword [rsp + 0xd0], r11d
je 0x14023d51e
mov eax, dword [rax]
add r11d, eax
mov dword [rsp + 0xd0], r11d
lea eax, [rcx + rdx]
lea r11d, [rax + 1]
add eax, ecx
mov dword [rsp + 0xe0], r11d
mov dword [rsp + 0x1b0], r11d
lea r11d, [rax + 1]
add eax, ecx
add ecx, eax
add edx, 1
mov dword [rsp + 0xe4], r11d
mov dword [rsp + 0xc0], edx
setne dl
cmp qword [rsp + 0xa8], 0
mov dword [rsp + 0x1b8], r11d
lea r11d, [rax + 1]
mov dword [rbx + 0x38], ecx
mov dword [rsp + 0xe8], r11d
setne al
mov dword [rsp + 0x1c0], r11d
and edx, eax
mov byte [rsp + 0xd4], dl
xor r9d, r9d
test r12d, r12d
jle 0x14023e1b0
mov qword [rsp + 0x240], rbx
mov ebx, r9d
jmp 0x14023d5e4
lea r9d, [rax + 1]
mov dword [rsi + 0x90], r9d
lea r9, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + r9*8]
movq qword [rax + 4], xmm0
mov dword [rax + 0xc], edx
mov qword [rax + 0x10], 0
mov dword [rax], 0x5e
add ebx, 1
cmp r12d, ebx
je 0x14023e1a8
movsxd rax, dword [rsi + 0x90]
lea edx, [rdi + rbx]
movdqa xmm0, xmm6
movd xmm1, ebx
cmp eax, dword [rsi + 0x94]
punpckldq xmm0, xmm1
jl 0x14023d5a8
mov dword [rsp + 0x20], edx
mov r9d, ebx
movd r8d, xmm6
mov rcx, rsi
mov edx, 0x5e
call sym.growOp3
jmp 0x14023d5d8
cmp qword [rsp + 0x60], 0
je 0x14023edeb
mov rcx, qword [r15 + 0x20]
mov edx, dword [rcx]
lea rax, [rcx + 8]
test edx, edx
jle 0x14023d679
sub edx, 1
shl rdx, 5
lea rdx, [rcx + rdx + 0x28]
mov r8, rdx
sub r8, rax
and r8d, 0x20
je 0x14023d660
xor r8d, r8d
mov word [rax + 0x1a], r8w
lea rax, [rcx + 0x28]
cmp rax, rdx
je 0x14023d679
xor r10d, r10d
xor r11d, r11d
add rax, 0x40
mov word [rax - 0x26], r10w
mov word [rax - 6], r11w
cmp rax, rdx
jne 0x14023d660
mov rax, qword [rsp + 0x60]
mov edx, dword [rax]
add rax, 8
test edx, edx
jle 0x14023d6d9
mov rdi, qword [rsp + 0x60]
lea ecx, [rdx - 1]
shl rcx, 5
lea rcx, [rdi + rcx + 0x28]
mov r8, rcx
sub r8, rax
and r8d, 0x20
je 0x14023d6c0
xor r9d, r9d
mov word [rax + 0x1a], r9w
mov rax, qword [rsp + 0x60]
add rax, 0x28
cmp rax, rcx
je 0x14023d6d9
nop dword [rax + rax]
xor r8d, r8d
xor r9d, r9d
add rax, 0x40
mov word [rax - 0x26], r8w
mov word [rax - 6], r9w
cmp rax, rcx
jne 0x14023d6c0
cmp word [r15 + 2], 0x42
jle 0x14023d6eb
mov ecx, 0x42
mov word [r15 + 2], cx
test r12, r12
je 0x14023d6fa
cmp dword [r12], edx
je 0x14023f17f
mov dword [rsp + 0xc0], 0
mov eax, dword [rbx + 0x44]
mov edx, 0x38
mov rcx, qword [rsp + 0x48]
sub eax, 1
mov dword [rbx + 0x44], eax
mov dword [rsp + 0xa8], eax
call sym.sqlite3DbMallocZero
test rax, rax
mov qword [rsp + 0x70], rax
je 0x14023d740
lea rdx, [sym.agginfoFree]
mov r8, rax
mov rcx, rbx
call sym.sqlite3ParserAddCleanup
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x67]
test al, al
mov byte [rsp + 0xb0], al
jne 0x14023c5eb
mov rdi, qword [rsp + 0x70]
movq xmm0, rbx
mov eax, dword [r15 + 0x10]
movhps xmm0, qword [rsp + 0x58]
mov dword [rdi + 0x34], eax
xor eax, eax
mov qword [rsp + 0x190], rdi
mov rdi, qword [rsp + 0x60]
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], 0
test rdi, rdi
movaps xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x1b0], 0
je 0x14023d7bd
movzx eax, word [rdi]
lea rdi, [sym.analyzeAggregate]
test r14, r14
lea rdx, [sym.sqlite3WalkerDepthIncrease]
movq xmm6, rdi
mov rdi, qword [rsp + 0x70]
movq xmm3, rdx
punpcklqdq xmm6, xmm3
mov word [rdi + 2], ax
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x10], rax
je 0x14023f16d
mov ecx, dword [r14]
test ecx, ecx
jle 0x14023f16d
lea rsi, [rsp + 0x150]
xor r8d, r8d
mov qword [rsp + 0x250], rbp
mov rbp, rbx
lea rax, [rsp + 0x180]
mov rbx, rsi
mov rsi, r8
mov qword [rsp + 0x50], rax
lea rdi, [sym.sqlite3WalkerDepthDecrease]
nop
mov rax, rsi
shl rax, 5
mov rdx, qword [r14 + rax + 8]
movups xmmword [rsp + 0x158], xmm6
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x168], rdi
mov dword [rsp + 0x170], 0
mov qword [rsp + 0x150], 0
test rdx, rdx
mov qword [rsp + 0x178], rax
je 0x14023dda8
mov rcx, rbx
add rsi, 1
call sym.walkExpr
mov ecx, dword [r14]
cmp ecx, esi
jg 0x14023d830
mov rbx, rbp
mov rbp, qword [rsp + 0x250]
test r12, r12
je 0x14023d938
mov ecx, dword [r12]
test ecx, ecx
jle 0x14023d938
lea rsi, [rsp + 0x150]
xor r8d, r8d
mov qword [rsp + 0x250], rbp
mov rbp, rbx
lea rdi, [sym.sqlite3WalkerDepthDecrease]
mov rbx, rsi
mov rsi, r8
nop
mov rax, rsi
shl rax, 5
mov rdx, qword [r12 + rax + 8]
movups xmmword [rsp + 0x158], xmm6
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x168], rdi
mov dword [rsp + 0x170], 0
mov qword [rsp + 0x150], 0
test rdx, rdx
mov qword [rsp + 0x178], rax
je 0x14023dd90
mov rcx, rbx
add rsi, 1
call sym.walkExpr
mov ecx, dword [r12]
cmp ecx, esi
jg 0x14023d8d0
mov rbx, rbp
mov rbp, qword [rsp + 0x250]
cmp qword [rsp + 0xa0], 0
je 0x14023da02
cmp qword [rsp + 0x60], 0
lea rcx, [rsp + 0x150]
mov rsi, rcx
je 0x14023d9b7
mov rdx, qword [r15 + 0x40]
lea rax, [sym.havingToWhereExprCb]
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x150], rbx
test rdx, rdx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x178], r15
je 0x14023d9ab
call sym.walkExpr
mov rax, qword [r15 + 0x30]
mov qword [rsp + 0x90], rax
lea rax, [sym.sqlite3WalkerDepthDecrease]
mov rdx, qword [rsp + 0xa0]
mov rcx, rsi
movups xmmword [rsp + 0x158], xmm6
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x170], 0
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x178], rax
call sym.walkExpr
mov rdi, qword [rsp + 0x70]
xor r12d, r12d
cmp qword [r15 + 0x38], 0
mov eax, dword [rdi + 0x20]
mov dword [rdi + 0x24], eax
je 0x14023f344
mov rdi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
call sym.analyzeAggFuncArgs
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
jne 0x14023eecf
cmp qword [rsp + 0x60], 0
mov edx, dword [rdi + 0x30]
je 0x14023fcd1
xor eax, eax
cmp edx, 1
mov word [rsp + 0xc4], ax
je 0x14024009b
mov rdi, qword [rsp + 0x70]
xor r8d, r8d
mov rcx, rbx
mov eax, dword [rbx + 0x34]
mov rsi, qword [rsp + 0x60]
mov r9d, dword [rdi + 0x20]
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov rdx, rsi
mov dword [rdi + 4], eax
call sym.sqlite3KeyInfoFromExprList
movzx r9d, word [rdi + 2]
mov edx, 0x77
mov rcx, r13
mov r8d, dword [rdi + 4]
mov qword [rsp + 0xc8], rax
call sym.sqlite3VdbeAddOp3.constprop.0
mov r8, qword [rsp + 0xc8]
mov r9d, 0xfffffff8
mov rcx, r13
mov edx, eax
mov dword [rsp + 0xe8], eax
call sym.sqlite3VdbeChangeP4
mov eax, dword [rbx + 0x38]
xor r8d, r8d
mov edx, dword [rbx + 0x44]
lea edi, [rax + 1]
mov dword [rsp + 0xb4], edi
lea edi, [rax + 3]
mov dword [rsp + 0xb0], edi
lea edi, [rdx - 1]
mov dword [rsp + 0xd4], edi
lea edi, [rdx - 2]
lea r11d, [rax + 2]
mov dword [rsp + 0xd0], edi
lea ecx, [rax + 4]
mov dword [rbx + 0x44], edi
mov r9d, r11d
lea edi, [rax + 5]
mov eax, dword [rsi]
mov dword [rsp + 0xb8], ecx
mov dword [rsp + 0xe0], r11d
mov dword [rsp + 0xe4], edi
lea edx, [rcx + rax]
mov rcx, r13
lea r10d, [rdx + 1]
add eax, edx
mov dword [rsp + 0xbc], edx
mov edx, 0x47
mov dword [rbx + 0x38], eax
mov dword [rsp + 0xdc], r10d
call sym.sqlite3VdbeAddOp3.constprop.0
mov eax, dword [rsi]
xor r8d, r8d
mov r9d, edi
mov edx, 0x4b
mov rcx, r13
add eax, edi
sub eax, 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov r9d, dword [rsp + 0xd0]
mov edx, 0xa
mov rcx, r13
mov r8d, dword [rsp + 0xb8]
call sym.sqlite3VdbeAddOp3.constprop.0
mov eax, pe_nt_image_headers64
mov r9, rsi
mov rcx, rbx
cmp byte [rsp + 0x9c], 2
mov edx, 0x40
mov dword [rsp + 0x38], 0
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x28], r15
cmove edx, eax
movzx eax, word [rsp + 0x88]
shl eax, 9
or eax, edx
or ax, word [rsp + 0xc4]
mov rdx, qword [rsp + 0x58]
movzx eax, ax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call sym.sqlite3WhereBegin
test rax, rax
mov qword [rsp + 0x90], rax
je 0x14023eeb5
cmp qword [rbx + 0x60], 0
je 0x14023dc2e
mov rdi, qword [rsp + 0x70]
movsxd rax, dword [rdi + 0x24]
cmp word [rdi + 2], 0
mov dword [rdi + 0x20], eax
je 0x14023dc1f
test eax, eax
jne 0x1402404d6
mov rax, qword [r15 + 0x38]
mov eax, dword [rax]
mov word [rdi + 2], ax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x70]
call sym.analyzeAggFuncArgs
mov edx, dword [rbx + 0x38]
mov rdi, qword [rsp + 0x70]
lea eax, [rdx + 1]
mov dword [rdi + 0xc], eax
mov eax, dword [rdi + 0x30]
add eax, dword [rdi + 0x20]
add eax, edx
xor edx, edx
mov dword [rbx + 0x38], eax
mov rax, qword [rsp + 0x90]
movzx edi, byte [rax + 0x43]
movsx eax, byte [rax + 0x41]
mov dword [rsp + 0xd8], edi
mov rdi, qword [rsp + 0x60]
test al, al
cmovs eax, edx
cmp dword [rdi], eax
je 0x140240151
cmp byte [rsp + 0x9c], 0
lea r9, str.GROUP_BY
je 0x14023dc93
test byte [r15 + 4], 1
lea rax, str.DISTINCT
cmove r9, rax
xor edx, edx
mov rcx, rbx
lea r8, str.USE_TEMP_B_TREE_FOR__s
call sym.sqlite3VdbeExplain
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x70]
mov edi, dword [rax]
movsxd rax, dword [rcx + 0x20]
test eax, eax
jle 0x1402406ab
mov rcx, qword [rcx + 0x18]
imul rax, rax, 0x18
mov esi, edi
lea rdx, [rcx + 0x16]
mov qword [rsp + 0x50], rcx
add rax, rdx
movsx ecx, word [rdx]
cmp esi, ecx
setle cl
add rdx, 0x18
movzx ecx, cl
add esi, ecx
cmp rdx, rax
jne 0x14023dcd2
mov rcx, rbx
mov edx, esi
call sym.sqlite3GetTempRange
mov rdx, qword [rsp + 0x60]
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov r8d, eax
mov dword [rsp + 0x50], eax
call sym.sqlite3ExprCodeExprList.isra.0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax + 0x20]
mov byte [rax], 1
xor eax, eax
test ecx, ecx
jle 0x14023f4c1
mov r10, rbx
mov qword [rsp + 0x250], rbp
mov rbx, rax
mov ebp, esi
mov rsi, qword [rsp + 0x70]
jmp 0x14023dd46
add rbx, 1
cmp ecx, ebx
jle 0x14023f4b4
mov rdx, qword [rsi + 0x18]
lea rax, [rbx + rbx*2]
lea rax, [rdx + rax*8]
movsx edx, word [rax + 0x16]
cmp edx, edi
jl 0x14023dd3a
cmp qword [r10 + 0x10], 0
je 0x14023dd88
mov rdx, qword [rax + 8]
mov rcx, r10
mov qword [rsp + 0x240], r10
mov eax, dword [rsp + 0x50]
lea r8d, [rax + rdi]
call sym.sqlite3ExprCode.part.0
mov ecx, dword [rsi + 0x20]
mov r10, qword [rsp + 0x240]
add edi, 1
jmp 0x14023dd3a
add rsi, 1
cmp ecx, esi
jg 0x14023d8d0
jmp 0x14023d92d
add rsi, 1
cmp ecx, esi
jg 0x14023d830
jmp 0x14023d88c
mov eax, dword [rbx + 0x38]
xor r9d, r9d
xor r8d, r8d
mov edx, 9
mov rcx, r13
add eax, 1
mov dword [rbx + 0x38], eax
mov dword [rdi + 0x3c], eax
call sym.sqlite3VdbeAddOp3.constprop.0
lea r10d, [rax + 1]
mov dword [rsp + 0x8c], eax
imul rax, r12, 0x68
mov dword [rdi + 0x38], r10d
lea rdx, [rsi + rax + 0x30]
movzx eax, byte [rdx + 0x18]
or eax, 0x10
test al, 8
mov byte [rdx + 0x18], al
je 0x14023eb00
mov eax, dword [rdi + 0x4c]
lea r8, str.MATERIALIZE___S
mov rcx, rbx
mov edx, 1
mov r9, qword [rsp + 0x50]
mov dword [rsp + 0x98], r10d
mov byte [rsp + 0x180], 0xc
mov qword [rsp + 0x198], 0
mov dword [rsp + 0x184], eax
mov qword [rsp + 0x188], 0
mov dword [rsp + 0x190], 0
call sym.sqlite3VdbeExplain
mov r8, qword [rsp + 0x70]
mov rdx, rbp
mov rcx, rbx
call sym.sqlite3Select
mov rax, qword [rdi + 0x28]
movzx edx, word [rbp + 2]
mov r10d, dword [rsp + 0x98]
mov word [rax + 0x3a], dx
mov r8d, dword [rdi + 0x3c]
mov edx, 0x43
mov rcx, r13
mov r9d, r10d
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [r13]
lea rax, [0x1402b1b40]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14023debf
movsxd rax, dword [rsp + 0x8c]
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
imul rax, r12, 0x68
mov byte [rbx + 0x1f], 0
mov dword [rbx + 0x28], 0
movzx eax, word [rsi + rax + 0x48]
and ax, 0x108
cmp ax, 0x100
jne 0x14023ca3c
mov rdx, qword [rdi + 0x38]
mov rax, qword [rdi + 0x68]
mov qword [rax + 4], rdx
mov edx, dword [rdi + 0x4c]
mov dword [rax + 0xc], edx
movzx edx, word [rbp + 2]
mov word [rax + 0x10], dx
jmp 0x14023ca3c
mov rax, qword [rsp + 0x48]
test byte [rax + 0x61], 0x80
jne 0x14023c901
lea rax, [sym.sqlite3SelectWalkNoop]
movq xmm0, rbx
lea rdi, [sym.propagateConstantExprRewrite]
movq xmm4, rax
lea rax, [sym.sqlite3SelectWalkFail]
movq xmm6, rdi
punpcklqdq xmm6, xmm4
lea rdi, [sym.exprNodeIsConstant]
movq xmm5, rax
mov rax, qword [rbx]
movq xmm7, rdi
lea rdi, [rsp + 0xf0]
punpcklqdq xmm7, xmm5
add rax, 0x67
movq xmm4, rax
lea rax, [rsp + 0x150]
punpcklqdq xmm0, xmm4
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x50], rax
nop dword [rax]
mov rdx, qword [r15 + 0x28]
mov eax, 1
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x110], 0
mov dword [rsp + 0x108], 0
test rdx, rdx
je 0x14023dfc8
mov ecx, dword [rdx]
test ecx, ecx
jle 0x14023dfc8
movzx eax, byte [rdx + 0x44]
and eax, 0x40
cmp al, 1
sbb eax, eax
and eax, 0xfffffffe
add eax, 3
test r12, r12
mov dword [rsp + 0x10c], eax
je 0x14023c901
and eax, dword [r12 + 4]
jne 0x14023e011
movzx eax, byte [r12]
cmp al, 0x2c
jne 0x14023e098
mov rdx, qword [r12 + 0x18]
mov rcx, rdi
call sym.findConstInWhere
mov r12, qword [r12 + 0x10]
test r12, r12
je 0x14023e011
mov eax, dword [rsp + 0x10c]
and eax, dword [r12 + 4]
je 0x14023dfdf
mov r11d, dword [rsp + 0x100]
test r11d, r11d
jne 0x14023e036
mov eax, dword [rsp + 0x104]
test eax, eax
je 0x14023c901
mov r12, qword [r15 + 0x30]
jmp 0x14023df80
mov rdx, qword [r15 + 0x30]
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
movups xmmword [rsp + 0x158], xmm6
test rdx, rdx
mov qword [rsp + 0x178], rdi
je 0x14023e079
mov rcx, qword [rsp + 0x50]
call sym.walkExpr
mov rdx, qword [rsp + 0x110]
test rdx, rdx
je 0x14023e01e
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call sym.sqlite3DbFreeNN
jmp 0x14023e01e
cmp al, 0x35
jne 0x14023e011
mov r14, qword [r12 + 0x18]
mov rsi, qword [r12 + 0x10]
cmp byte [r14], 0xa7
je 0x14023f455
cmp byte [rsi], 0xa7
jne 0x14023e011
xor eax, eax
mov rdx, r14
mov word [rsp + 0x1a4], 1
lea rcx, [rsp + 0x180]
movups xmmword [rsp + 0x188], xmm7
mov dword [rsp + 0x1a8], eax
call sym.walkExpr
cmp word [rsp + 0x1a4], 0
je 0x14023e011
lea rcx, [rsp + 0xf0]
mov r9, r12
mov r8, r14
mov rdx, rsi
call sym.constInsert
jmp 0x14023e011
mov rax, qword [r11 + 0x28]
mov r8, qword [rax]
jmp 0x14023c89d
mov esi, dword [rbx + 0x34]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov rdx, qword [r15 + 0x20]
lea eax, [rsi + 1]
mov dword [rsp + 0xf4], esi
mov dword [rbx + 0x34], eax
call sym.sqlite3KeyInfoFromExprList
xor r9d, r9d
mov r8d, esi
mov edx, 0x76
mov rcx, r13
mov rdi, rax
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, 0xfffffff8
mov r8, rdi
mov rcx, r13
mov edx, eax
mov esi, eax
call sym.sqlite3VdbeChangeP4
movsxd rax, dword [r13 + 0x90]
mov dword [rsp + 0xf8], esi
test eax, eax
jle 0x14023e19b
mov rdx, qword [r13 + 0x88]
lea rax, [rax + rax*2]
mov ecx, 8
lea rax, [rdx + rax*8]
mov word [rax - 0x16], cx
mov byte [rsp + 0x8c], 3
jmp 0x14023cf4a
mov rbx, qword [rsp + 0x240]
mov eax, dword [rsp + 0x50]
mov edx, 0x61
mov r9d, r12d
mov r8d, edi
mov rcx, rsi
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14023ee20
add edi, dword [rax + 0x78]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov r12d, dword [rdx]
mov dword [rsp + 0xdc], edi
call sym.sqlite3KeyInfoFromExprList
mov ecx, dword [rbx + 0x38]
mov edx, 0x5a
mov rdi, rax
mov rax, qword [rsp + 0x58]
mov r8d, dword [rsp + 0xdc]
add ecx, 1
mov r9d, dword [rax + 0x6c]
mov dword [rbx + 0x38], ecx
mov dword [rsp + 0xb4], ecx
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call sym.sqlite3VdbeAddOp3
mov rdx, qword [rsi]
cmp byte [rdx + 0x67], 0
jne 0x14023ff5b
movsxd rdx, dword [rsi + 0x90]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8 - 0x18]
mov byte [rdx + 1], 0xf8
mov qword [rdx + 0x10], rdi
lea r8d, [rax + 2]
mov edx, 0xe
mov rcx, rsi
mov dword [rsp + 0x20], r8d
lea r9d, [rax + 4]
call sym.sqlite3VdbeAddOp3
xor r9d, r9d
mov edx, 0xa
mov rcx, rsi
mov r8d, dword [rsp + 0xb4]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r8d, dword [rsp + 0xdc]
mov edx, 0x50
mov rcx, rsi
mov dword [rsp + 0xec], eax
mov rax, qword [rsp + 0x58]
mov r9d, dword [rax + 0x6c]
lea eax, [r12 - 1]
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
movsxd rax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x14023f39a
lea edx, [rax + 1]
mov edi, dword [rsp + 0x88]
mov dword [rsi + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov edi, dword [rsp + 0xb0]
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x7f
mov dword [rax + 8], edi
mov r9d, dword [rsp + 0x50]
mov edx, pe_nt_image_headers64
mov rcx, rsi
mov dword [rsp + 0x20], edi
mov r8d, dword [rsp + 0x88]
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x58]
xor r9d, r9d
mov rcx, rsi
mov edx, 0x34
mov r8d, dword [rax + 0x80]
mov dword [rsp + 0x20], edi
call sym.sqlite3VdbeAddOp3
mov r12, qword [rbx + 0x10]
mov dword [rsp + 0xb0], eax
test r12, r12
jne 0x14023e367
mov rcx, rbx
call sym.sqlite3GetVdbe.part.0
mov r12, rax
mov rax, qword [rsp + 0x58]
xor r10d, r10d
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x240], rbx
mov esi, r10d
mov qword [rsp + 0x250], rbp
mov rdi, rax
mov rbx, rax
jmp 0x14023e42d
lea edx, [rax + 1]
mov dword [r12 + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x4b
mov rax, qword [rdi + 0x70]
mov rdx, qword [rax + 0x20]
xor eax, eax
test rdx, rdx
je 0x14023e3de
mov eax, dword [rdx]
mov r10d, dword [rbx + 0x84]
cmp esi, eax
cmovl esi, eax
test r10d, r10d
jne 0x14023e420
mov rax, qword [rbp + 0x38]
lea rcx, str.nth_value
cmp rax, rcx
je 0x14023e468
lea rcx, str.first_value
cmp rax, rcx
je 0x14023e468
test byte [rbp + 5], 0x10
je 0x14023e420
mov r8d, dword [rdi + 0x64]
test r8d, r8d
jne 0x14023ed40
nop
mov rdi, qword [rdi + 0x40]
test rdi, rdi
je 0x14023e501
movsxd rax, dword [r12 + 0x90]
cmp eax, dword [r12 + 0x94]
mov rbp, qword [rdi + 0x50]
mov r9d, dword [rdi + 0x5c]
jl 0x14023e398
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x4b
mov rcx, r12
call sym.growOp3
jmp 0x14023e3cd
movsxd rcx, dword [r12 + 0x90]
mov edx, dword [r12 + 0x94]
mov r9d, dword [rdi + 0x68]
cmp ecx, edx
jge 0x14023eef6
lea eax, [rcx + 1]
lea r8, [rcx + rcx*2]
mov rcx, qword [r12 + 0x88]
mov dword [r12 + 0x90], eax
lea rcx, [rcx + r8*8]
mov dword [rcx + 8], r9d
mov dword [rcx + 0xc], 0
mov qword [rcx + 0x10], 0
mov qword [rcx], 0x47
add r9d, 1
cmp eax, edx
jge 0x14023eed9
lea edx, [rax + 1]
cdqe
mov dword [r12 + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x47
jmp 0x14023e40b
mov rbx, qword [rsp + 0x240]
mov r10d, esi
mov r8d, dword [rsp + 0x60]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x250]
mov eax, dword [rbx + 0x38]
lea edx, [r10 + rax]
add eax, 1
test r8d, r8d
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x1a0], eax
je 0x14023e56e
cmp qword [rbx + 0x10], 0
je 0x14023e54f
mov rax, qword [rsp + 0x58]
mov rcx, rbx
mov rdx, qword [rax + 0x28]
call sym.sqlite3ExprCode.part.0
mov rax, qword [rsp + 0x58]
mov rcx, rbx
mov edx, dword [rsp + 0x60]
cmp byte [rax + 0x20], 0x59
sete al
movzx eax, al
lea r8d, [rax + rax*2]
call sym.windowCheckValue
mov r8d, dword [rsp + 0x78]
test r8d, r8d
je 0x14023e5b0
cmp qword [rbx + 0x10], 0
je 0x14023e590
mov rax, qword [rsp + 0x58]
mov rcx, rbx
mov rdx, qword [rax + 0x30]
call sym.sqlite3ExprCode.part.0
mov rax, qword [rsp + 0x58]
mov rcx, rbx
mov edx, dword [rsp + 0x78]
cmp byte [rax + 0x20], 0x59
sete al
movzx eax, al
lea r8d, [rax + rax*2 + 1]
call sym.windowCheckValue
mov rdi, qword [rsp + 0x58]
lea rcx, [rsp + 0x180]
mov qword [rsp + 0x50], rcx
cmp byte [rdi + 0x20], 0x59
movzx eax, byte [rdi + 0x21]
je 0x14023e5dd
cmp byte [rdi + 0x22], al
jne 0x14023e5dd
mov ecx, dword [rsp + 0x60]
test ecx, ecx
jne 0x1402401df
cmp al, 0x56
je 0x14023ef27
cmp al, 0x5a
jne 0x14023edf7
movsxd rdx, dword [rsi + 0x90]
mov ecx, dword [rsi + 0x94]
cmp edx, ecx
jge 0x14023faf1
lea eax, [rdx + 1]
mov edi, dword [rsp + 0x80]
lea r8, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
mov dword [rsi + 0x90], eax
lea rdx, [rdx + r8*8]
mov dword [rdx + 4], edi
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov dword [rdx], 0x24
cmp eax, ecx
jge 0x14023face
lea edx, [rax + 1]
cdqe
mov edi, dword [rsp + 0xbc]
mov dword [rsi + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x24
cmp byte [rsp + 0xd4], 0
jne 0x14023ef9c
movsxd rax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x14023fb80
lea edx, [rax + 1]
mov edi, dword [rsp + 0xb8]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov dword [rsi + 0x90], edx
lea rax, [rax + rcx*8]
mov dword [rax + 8], edi
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 9
mov rcx, qword [rsi]
lea rax, [0x1402b1b40]
cmp byte [rcx + 0x67], 0
jne 0x14023e6fc
movsxd rax, dword [rsp + 0xb0]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov eax, dword [rsp + 0xc0]
test eax, eax
jne 0x14023ef6c
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x21], 0x56
je 0x14023fb45
cmp byte [rax + 0x22], 0x58
je 0x14023f1e4
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 3
call sym.windowCodeOp
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x22], 0x5a
je 0x14023e78a
cmp byte [rax + 0x20], 0x59
je 0x14023ffbd
mov eax, dword [rsp + 0x78]
test eax, eax
jne 0x140240167
xor r9d, r9d
xor r8d, r8d
mov rdi, qword [rsp + 0x50]
mov edx, 1
mov rcx, rdi
call sym.windowCodeOp
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, rdi
mov edx, 2
call sym.windowCodeOp
mov rcx, qword [rsi + 0x18]
mov r8d, dword [rsp + 0x90]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x14023f359
mov edx, dword [rsi + 0x90]
movsxd r8, r8d
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov rcx, qword [rsp + 0x70]
call sym.sqlite3WhereEnd
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x10], 0
je 0x14023ee14
mov r9d, dword [rsp + 0xb4]
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
mov rdx, qword [rsi]
mov dword [rsp + 0x6c], eax
movsxd rdi, dword [rsi + 0x90]
lea rax, [0x1402b1b40]
cmp byte [rdx + 0x67], 0
jne 0x14023e81a
movsxd rax, dword [rsp + 0xec]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 8], edi
cmp dword [rsi + 0x94], edi
mov dword [rsp + 0x1a8], 0
jle 0x14023f3cb
lea eax, [rdi + 1]
mov ecx, dword [rsp + 0x88]
mov dword [rsi + 0x90], eax
movsxd rax, edi
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], ecx
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x24
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x22], 0x58
je 0x14023f3f1
xor r9d, r9d
xor r8d, r8d
cmp byte [rax + 0x21], 0x56
mov edx, 3
mov rcx, qword [rsp + 0x50]
je 0x14023f23c
call sym.windowCodeOp
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov r9d, 1
mov edx, 1
mov r12d, dword [rsi + 0x90]
call sym.windowCodeOp
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 2
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x70], eax
call sym.windowCodeOp
xor r8d, r8d
mov edx, 9
mov r9d, r12d
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
mov rdx, qword [rsi]
movsxd rax, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x14023ee86
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsi + 0x88]
lea rcx, [rcx + rcx*2]
mov dword [rdx + rcx*8 + 8], eax
lea rcx, [rdi + rdi*2]
lea rdx, [rdx + rcx*8]
cmp dword [rsi + 0x94], eax
mov dword [rdx + 8], eax
jle 0x14023fb20
lea edx, [rax + 1]
mov edi, dword [rsp + 0x80]
mov dword [rsi + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x92
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x10], 0
je 0x14023e9f3
mov r9d, dword [rax + 0x84]
test r9d, r9d
jne 0x14023f366
mov rcx, qword [rsi]
lea rdx, [0x1402b1b40]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14023e9ac
movsxd rdx, dword [rsp + 0x6c]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8]
cmp eax, dword [rsi + 0x94]
mov dword [rdx + 4], eax
jge 0x14023ff9a
lea edx, [rax + 1]
mov edi, dword [rsp + 0xb4]
mov dword [rsi + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x43
mov edi, dword [rsp + 0xc4]
xor r8d, r8d
mov edx, 9
mov rcx, r13
mov r9d, edi
call sym.sqlite3VdbeAddOp3.constprop.0
mov edx, dword [rsp + 0xa0]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
mov esi, dword [rsp + 0xc8]
mov rdx, r15
mov r8d, 0xffffffff
lea rax, [rsp + 0xf0]
mov rcx, rbx
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x140], 0
call sym.selectInnerLoop
mov edx, esi
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
mov edx, 0x43
mov rcx, r13
xor r9d, r9d
mov r8d, dword [rsp + 0x9c]
call sym.sqlite3VdbeAddOp3.constprop.0
mov edx, edi
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
xor r12d, r12d
cmp byte [rsp + 0x8c], 3
je 0x14023ee98
cmp qword [rsp + 0x120], 0
je 0x14023eac4
mov r9d, dword [r14]
mov rdx, r15
mov qword [rsp + 0x20], rbp
mov rcx, rbx
lea r8, [rsp + 0x120]
call sym.generateSortTail
mov edx, dword [rsp + 0x98]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
mov esi, dword [rbx + 0x30]
xor eax, eax
test esi, esi
setg al
test r12, r12
je 0x14023c5f0
mov rcx, qword [rsp + 0x48]
mov rdx, r12
mov dword [rsp + 0x50], eax
call sym.exprListDeleteNN
mov eax, dword [rsp + 0x50]
jmp 0x14023c5f0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf
mov dword [rsp + 0x90], r10d
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9, qword [rsp + 0x50]
mov edx, 1
mov rcx, rbx
mov dword [rsp + 0x98], eax
mov eax, dword [rdi + 0x4c]
lea r8, str.MATERIALIZE___S
mov byte [rsp + 0x180], 0xc
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x188], 0
mov dword [rsp + 0x184], eax
mov dword [rsp + 0x190], 0
call sym.sqlite3VdbeExplain
mov r8, qword [rsp + 0x70]
mov rdx, rbp
mov rcx, rbx
call sym.sqlite3Select
movsxd r11, dword [rsp + 0x98]
mov rax, qword [rdi + 0x28]
movzx edx, word [rbp + 2]
mov r10d, dword [rsp + 0x90]
test r11d, r11d
mov word [rax + 0x3a], dx
je 0x14023de7c
mov rcx, qword [r13]
lea rax, [0x1402b1b40]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14023ebcc
mov rax, qword [r13 + 0x88]
lea rcx, [r11 + r11*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x14023de7c
mov qword [rsp + 0x120], 0
mov r11d, dword [rsp + 0x78]
test r11d, r11d
js 0x14023d2fa
mov edx, dword [rsp + 0x78]
mov rcx, r13
call sym.sqlite3VdbeChangeToNoop.isra.0
jmp 0x14023d2fa
mov r9d, dword [r14]
mov edx, 0x76
mov rcx, r13
mov r8d, dword [rbp + 4]
call sym.sqlite3VdbeAddOp3.constprop.0
mov eax, dword [r15 + 4]
test ah, 8
mov edx, eax
je 0x14023cebc
mov ecx, dword [r14]
lea esi, [rcx - 1]
test esi, esi
jle 0x14023ec89
movsxd rdi, ecx
shl rdi, 5
add rdi, r14
nop word cs:[rax + rax]
movsxd rax, esi
shl rax, 5
test byte [r14 + rax + 0x1c], 0x40
jne 0x14023ec82
mov rdx, qword [rdi - 0x18]
test rdx, rdx
je 0x14023ec62
mov rcx, qword [rsp + 0x48]
call sym.sqlite3ExprDeleteNN
mov rdx, qword [rdi - 0x10]
test rdx, rdx
je 0x14023eccc
mov rcx, qword [rsp + 0x48]
sub rdi, 0x20
call sym.sqlite3DbFreeNN
sub dword [r14], 1
sub esi, 1
jne 0x14023ec40
mov eax, dword [r15 + 4]
mov ecx, dword [r14]
mov edx, eax
xor eax, eax
test ecx, ecx
movsxd r8, ecx
jle 0x14023cebc
nop dword [rax + rax]
movsxd rcx, eax
shl rcx, 5
test byte [r14 + rcx + 0x1c], 0x40
jne 0x14023ecbe
mov rcx, rax
shl rcx, 5
mov rcx, qword [r14 + rcx + 8]
mov byte [rcx], 0x79
add rax, 1
cmp rax, r8
jne 0x14023eca0
jmp 0x14023cebc
sub dword [r14], 1
sub rdi, 0x20
sub esi, 1
jne 0x14023ec40
jmp 0x14023ec82
mov r8d, 0xffffffff
mov rdx, r14
mov rcx, r12
call sym.sqlite3ExprListCompare
test eax, eax
jne 0x14023ce3f
cmp qword [r15 + 0x70], 0
jne 0x14023ce3f
and dword [r15 + 4], 0xfffffffe
mov rdx, r14
mov rcx, qword [rsp + 0x48]
call sym.sqlite3ExprListDup.constprop.0
mov byte [rsp + 0xf0], 2
or dword [r15 + 4], 8
mov qword [rsp + 0x60], rax
mov qword [r15 + 0x38], rax
mov byte [rsp + 0x50], 1
mov byte [rsp + 0x9c], 2
jmp 0x14023ce3f
movsxd rdx, dword [r12 + 0x90]
mov ecx, dword [r12 + 0x94]
cmp edx, ecx
jge 0x14024006e
lea eax, [rdx + 1]
lea r9, [rdx + rdx*2]
mov rdx, qword [r12 + 0x88]
mov dword [r12 + 0x90], eax
lea rdx, [rdx + r9*8]
mov dword [rdx + 4], r8d
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov dword [rdx], 0x92
mov edx, dword [rdi + 0x68]
cmp eax, ecx
lea r9d, [rdx + 1]
jge 0x140240051
lea edx, [rax + 1]
cdqe
mov dword [r12 + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x47
jmp 0x14023e420
mov r11d, dword [rsp + 0x8c]
mov r10d, 1
jmp 0x14023cb8c
xor edx, edx
mov word [r15 + 2], dx
jmp 0x14023d6fa
mov r8d, dword [rsp + 0xd8]
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x14023e5ed
movsxd rdi, dword [rsi + 0x90]
jmp 0x14023e81d
mov dword [rsp + 0xb4], 0
mov dword [rsp + 0xec], 0
jmp 0x14023e2ba
mov rdi, qword [rsp + 0x70]
mov rcx, rbx
mov r8d, 0xffffffff
mov rdx, r15
lea r9, [rsp + 0x120]
mov eax, dword [rdi + 0x34]
mov dword [rsp + 0x38], eax
mov eax, dword [rdi + 0x30]
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
call sym.selectInnerLoop
mov rcx, rdi
call sym.sqlite3WhereEnd
jmp 0x14023ea8d
mov dword [0x1402b1b48], eax
lea rdx, [0x1402b1b40]
jmp 0x14023e91a
lea r9, str.DISTINCT
xor edx, edx
mov rcx, rbx
lea r8, str.USE_TEMP_B_TREE_FOR__s
call sym.sqlite3VdbeExplain
jmp 0x14023ea9e
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x14023eecf
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call sym.exprListDeleteNN
mov eax, 1
jmp 0x14023eadd
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x47
mov rcx, r12
call sym.growOp3
jmp 0x14023e40b
mov edx, 0x47
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov rcx, r12
call sym.growOp3
mov r9d, dword [rdi + 0x68]
mov eax, dword [r12 + 0x90]
mov edx, dword [r12 + 0x94]
jmp 0x14023e4b9
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x20], 0x59
je 0x14023edf7
cmp dword [rsp + 0x78], 0
je 0x14023edf7
mov eax, dword [rsp + 0x60]
mov edx, 0x6b
mov rcx, rsi
mov r9d, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
mov r8d, eax
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x21]
jmp 0x14023e5e5
mov eax, dword [rsp + 0xb8]
mov rcx, rbx
mov r9d, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0xd0]
mov rdx, qword [rsp + 0xa8]
mov dword [rsp + 0x20], eax
call sym.windowIfNewPeer
jmp 0x14023e70e
mov rdi, qword [rsp + 0xa8]
mov rcx, rsi
mov edx, 0x50
mov r12d, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0xd0]
mov eax, dword [rdi]
mov r9d, r12d
mov dword [rsp + 0xd4], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov eax, dword [rdi]
mov r8d, r12d
mov rcx, rsi
mov r9d, dword [rsp + 0xe0]
mov edx, 0x50
mov dword [rsp + 0xd4], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov eax, dword [rdi]
mov r8d, r12d
mov rcx, rsi
mov r9d, dword [rsp + 0xe4]
mov edx, 0x50
mov dword [rsp + 0xd4], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov eax, dword [rdi]
mov r8d, r12d
mov edx, 0x50
mov r9d, dword [rsp + 0xe8]
mov rcx, rsi
mov dword [rsp + 0xd4], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
jmp 0x14023e68a
cmp byte [rdi + 0x20], 0x59
jne 0x14023fc29
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
add eax, r12d
lea ecx, [rax + 1]
lea edx, [rax + 2]
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x1a8], edx
jmp 0x14023d49f
mov dword [rsp + 0xe8], 0
mov dword [rsp + 0xe4], 0
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0xc0], 0
mov dword [rsp + 0xd0], 0
mov byte [rsp + 0xd4], 0
jmp 0x14023d588
mov dword [rsp + 0xb0], edx
mov dword [rsp + 0x60], 0
jmp 0x14023d4b2
mov eax, dword [rdi + 0x84]
mov rdx, rdi
test eax, eax
mov dword [rsp + 0x50], eax
jne 0x14023f13c
lea rdi, str.nth_value
lea r10, str.first_value
lea r9, str.lead
lea r8, [0x14033b820]
jmp 0x14023f119
cmp rax, r8
je 0x14023f13c
mov rdx, qword [rdx + 0x40]
test rdx, rdx
je 0x14024012e
mov rax, qword [rdx + 0x50]
mov rax, qword [rax + 0x38]
cmp rax, rdi
sete cl
cmp rax, r10
sete r11b
or r11d, ecx
cmp rax, r9
sete cl
or cl, r11b
je 0x14023f107
mov eax, dword [rbx + 0x38]
xor r10d, r10d
mov dword [rsp + 0x60], r10d
lea edi, [rax + 1]
add eax, r12d
lea edx, [rax + 2]
lea ecx, [rax + 1]
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x1a8], edx
mov dword [rsp + 0xb0], edx
jmp 0x14023d4b2
lea rax, [rsp + 0x180]
mov qword [rsp + 0x50], rax
jmp 0x14023d897
test edx, edx
jle 0x14023f1b5
mov r8, qword [rsp + 0x60]
movsxd rcx, edx
mov eax, 0x18
shl rcx, 5
add rcx, 0x18
nop dword [rax + rax]
movzx edx, byte [r12 + rax]
and edx, 1
mov byte [r8 + rax], dl
add rax, 0x20
cmp rax, rcx
jne 0x14023f1a0
mov rcx, qword [rsp + 0x60]
mov r8d, 0xffffffff
mov rdx, r12
call sym.sqlite3ExprListCompare
test eax, eax
sete byte [rsp + 0x88]
sete al
movzx eax, al
mov dword [rsp + 0xc0], eax
jmp 0x14023d705
movzx edi, word [rax + 0x20]
xor r9d, r9d
mov edx, 3
mov r8d, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
xor r9d, r9d
cmp di, 0x5859
jne 0x14023e760
mov rdi, qword [rsp + 0x50]
mov edx, 2
mov r8d, dword [rsp + 0x60]
mov rcx, rdi
call sym.windowCodeOp
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, rdi
call sym.windowCodeOp
jmp 0x14023e78a
call sym.windowCodeOp
mov rax, qword [rsp + 0x58]
mov r9d, 1
mov r12d, dword [rsi + 0x90]
cmp byte [rax + 0x20], 0x59
je 0x1402403af
cmp byte [rax + 0x22], 0x5a
je 0x140240376
mov r8d, dword [rsp + 0x78]
mov edx, 1
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
mov r8d, dword [rsp + 0x60]
mov r9d, 1
mov edx, 2
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x70], eax
call sym.windowCodeOp
mov dword [rsp + 0x60], eax
mov r9d, r12d
xor r8d, r8d
mov edx, 9
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
mov rdx, qword [rsi]
lea rax, [0x1402b1b40]
mov r12d, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x14023f2d7
movsxd rax, dword [rsp + 0x60]
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov r9d, 1
mov dword [rax + 8], r12d
mov edx, 1
call sym.windowCodeOp
xor r8d, r8d
mov edx, 9
mov r9d, r12d
mov rcx, rsi
mov dword [rsp + 0x50], eax
call sym.sqlite3VdbeAddOp3.constprop.0
mov rdx, qword [rsi]
movsxd rax, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x14023ee86
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsi + 0x88]
imul rcx, rcx, 0x18
mov dword [rdx + rcx + 8], eax
movsxd rcx, dword [rsp + 0x50]
imul rcx, rcx, 0x18
mov dword [rdx + rcx + 8], eax
jmp 0x14023e912
mov r12, qword [r15 + 0x40]
test r12, r12
je 0x1402402ae
xor r12d, r12d
jmp 0x14023da1b
mov rdx, rsi
call sym.resizeResolveLabel
jmp 0x14023e7b6
mov rcx, rsi
mov r8d, 1
mov edx, 0x47
call sym.sqlite3VdbeAddOp3.constprop.0
mov rax, qword [rsp + 0x58]
xor r8d, r8d
mov rcx, rsi
mov edx, 0x47
mov r9d, dword [rax + 0x88]
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x14023e981
mov r9d, dword [rsp + 0xb0]
xor r11d, r11d
mov edx, 0x7f
mov rcx, rsi
mov r8d, dword [rsp + 0x88]
mov dword [rsp + 0x20], r11d
call sym.growOp3
mov edi, dword [rsp + 0xb0]
jmp 0x14023e30e
mov r8d, dword [rsp + 0x88]
xor eax, eax
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], eax
mov edx, 0x24
call sym.growOp3
movsxd rdi, eax
jmp 0x14023e86f
movzx r12d, word [rax + 0x20]
xor r9d, r9d
mov edx, 3
mov r8d, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
cmp r12w, 0x5859
je 0x140240680
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call sym.windowCodeOp
mov rcx, qword [rsi]
lea rdx, [0x1402b1b40]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14023e91a
mov rdx, qword [rsi + 0x88]
jmp 0x14023e912
mov eax, 1
test rsi, rsi
movups xmmword [rsp + 0x188], xmm7
mov word [rsp + 0x1a4], ax
mov dword [rsp + 0x1a8], 0
je 0x14023f499
lea rcx, [rsp + 0x180]
mov rdx, rsi
call sym.walkExpr
cmp word [rsp + 0x1a4], 0
je 0x14023e0b4
lea rcx, [rsp + 0xf0]
mov r9, r12
mov r8, rsi
mov rdx, r14
call sym.constInsert
jmp 0x14023e0b4
mov esi, ebp
mov rbp, qword [rsp + 0x250]
mov rbx, r10
mov rax, qword [rsp + 0x70]
mov byte [rax], 0
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x1402404c8
sub eax, 1
mov byte [rbx + 0x1f], al
movzx eax, al
mov edi, dword [rbx + rax*4 + 0xe4]
mov r8d, dword [rsp + 0x50]
mov r9d, esi
mov edx, 0x61
mov rcx, r13
mov dword [rsp + 0x20], edi
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x70]
mov r9d, edi
mov rcx, r13
mov edx, 0x8b
mov r8d, dword [rax + 4]
call sym.sqlite3VdbeAddOp3.constprop.0
test edi, edi
je 0x14023f525
mov edx, edi
mov rcx, rbx
call sym.sqlite3ReleaseTempReg.part.0
cmp esi, 1
je 0x14024066f
cmp esi, dword [rbx + 0x28]
jle 0x14023f546
movd xmm5, dword [rsp + 0x50]
movd xmm0, esi
punpckldq xmm0, xmm5
movq qword [rbx + 0x28], xmm0
mov rcx, qword [rsp + 0x90]
call sym.sqlite3WhereEnd
mov edi, dword [rbx + 0x34]
lea eax, [rdi + 1]
mov dword [rsp + 0x50], edi
mov dword [rbx + 0x34], eax
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], edi
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x1402404ad
sub eax, 1
mov r8d, edi
mov byte [rbx + 0x1f], al
movzx eax, al
mov eax, dword [rbx + rax*4 + 0xe4]
mov dword [rsp + 0x88], eax
mov r9d, eax
mov edx, 0x79
mov rcx, r13
mov dword [rsp + 0x20], esi
call sym.sqlite3VdbeAddOp3
mov rdi, qword [rsp + 0x70]
mov edx, 0x22
mov rcx, r13
mov r9d, dword [rsp + 0xa8]
mov r8d, dword [rdi + 4]
call sym.sqlite3VdbeAddOp3.constprop.0
mov byte [rdi + 1], 1
mov dword [rsp + 0x58], 1
cmp qword [rbx + 0x60], 0
je 0x14023f637
lea rdi, [rsp + 0x150]
xor eax, eax
mov ecx, 0xc
mov rsi, rdi
rep stosd dword [rdi], eax
lea rax, [sym.aggregateIdxEprRefToColCallback]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax + 0x30]
test ecx, ecx
jle 0x14023f637
xor edi, edi
jmp 0x14023f61e
mov rcx, rsi
add rdi, 1
call sym.walkExpr
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax + 0x30]
cmp ecx, edi
jle 0x14023f637
mov rax, qword [rax + 0x28]
lea rdx, [rdi + rdi*2]
mov rdx, qword [rax + rdx*8]
test rdx, rdx
jne 0x14023f606
add rdi, 1
cmp ecx, edi
jg 0x14023f622
mov eax, dword [rsp + 0xc0]
test eax, eax
je 0x14023fa34
mov rax, qword [rsp + 0x48]
test byte [rax + 0x60], 4
jne 0x14023fa34
cmp dword [rsp + 0x58], 0
jne 0x140240856
mov rax, qword [rsp + 0x90]
test byte [rax + 0x44], 8
je 0x14023f684
mov edx, dword [rsp + 0x78]
xor eax, eax
mov rcx, r13
mov qword [rsp + 0x120], rax
call sym.sqlite3VdbeChangeToNoop.isra.0
mov edi, dword [r13 + 0x90]
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
test eax, eax
jle 0x14023f6f5
mov rcx, qword [rsp + 0x70]
mov dword [rsp + 0x50], edi
mov rdi, rbx
mov esi, 1
mov rbx, qword [rsp + 0x60]
mov byte [rcx], 1
cmp qword [rdi + 0x10], 0
je 0x14023f6ee
mov rax, rsi
mov rcx, rdi
shl rax, 5
mov rdx, qword [rbx + rax - 0x18]
mov eax, dword [rsp + 0xbc]
lea r8d, [rax + rsi]
call sym.sqlite3ExprCode.part.0
mov eax, dword [rbx]
cmp eax, esi
jle 0x14023f6ee
mov rcx, qword [rsp + 0x70]
add rsi, 1
mov byte [rcx], 1
cmp qword [rdi + 0x10], 0
jne 0x14023f6b6
mov rbx, rdi
mov edi, dword [rsp + 0x50]
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14023f705
add dword [rcx], 1
mov r9d, dword [rsp + 0xdc]
mov edx, 0x5a
mov rcx, r13
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0xe4]
call sym.sqlite3VdbeAddOp3
mov r8, qword [rsp + 0xc8]
mov r9d, 0xfffffff8
mov rcx, r13
mov edx, eax
call sym.sqlite3VdbeChangeP4
xor r9d, r9d
mov edx, 0xe
mov rcx, r13
mov esi, dword [r13 + 0x90]
lea r8d, [rsi + 1]
mov dword [rsp + 0x20], r8d
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x60]
mov edx, 0x4f
mov rcx, qword [rbx + 0x10]
mov r9d, dword [rsp + 0xe4]
mov r8d, dword [rsp + 0xdc]
mov eax, dword [rax]
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov r9d, dword [rsp + 0xd4]
mov edx, 0xa
mov rcx, r13
mov r8d, dword [rsp + 0xb0]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rsp + 0xa8]
mov edx, 0x3b
mov rcx, r13
mov r8d, dword [rsp + 0xe0]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rsp + 0xd0]
mov edx, 0xa
mov rcx, r13
mov r8d, dword [rsp + 0xb8]
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [r13]
lea rax, [0x1402b1b40]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14023f804
movsxd rax, esi
imul rax, rax, 0x18
add rax, qword [r13 + 0x88]
mov rsi, qword [rsp + 0x70]
mov dword [rax + 8], edx
mov rcx, rbx
mov r9d, dword [rsp + 0xd8]
mov edx, dword [rsp + 0xb4]
mov r8, rsi
call sym.updateAccumulator
mov r9d, dword [rsp + 0xb4]
mov edx, 0x47
mov rcx, r13
mov r8d, 1
call sym.sqlite3VdbeAddOp3.constprop.0
mov r11d, dword [rsp + 0x58]
test r11d, r11d
je 0x14023fcb0
mov r8d, dword [rsi + 4]
mov r9d, edi
mov edx, 0x25
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x14023f87d
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call sym.exprListDeleteNN
mov esi, dword [rsp + 0xb0]
mov edx, 0xa
mov rcx, r13
mov r9d, dword [rsp + 0xd4]
mov r8d, esi
call sym.sqlite3VdbeAddOp3.constprop.0
xor r8d, r8d
mov edx, 9
mov rcx, r13
mov r9d, dword [rsp + 0xa8]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rsp + 0xe0]
mov edx, 0x47
mov rcx, r13
mov r8d, 1
mov edi, dword [r13 + 0x90]
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov r8d, esi
mov edx, 0x43
mov rcx, r13
mov dword [rsp + 0xb0], esi
call sym.sqlite3VdbeAddOp3.constprop.0
mov edx, dword [rsp + 0xd4]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
mov esi, dword [r13 + 0x90]
mov edx, 0x3b
mov rcx, r13
mov r8d, dword [rsp + 0xb4]
lea r9d, [rsi + 2]
add esi, 1
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov edx, 0x43
mov rcx, r13
mov r8d, dword [rsp + 0xb0]
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rsp + 0x70]
call sym.finalizeAggFunctions.isra.0
mov rdx, qword [rsp + 0xa0]
mov r8d, esi
mov rcx, rbx
mov r9d, 0x10
call sym.sqlite3ExprIfFalse
mov rdx, r15
mov rcx, rbx
mov dword [rsp + 0x38], edi
lea rax, [rsp + 0xf0]
mov r8d, 0xffffffff
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
mov qword [rsp + 0x28], rbp
call sym.selectInnerLoop
xor r9d, r9d
mov edx, 0x43
mov rcx, r13
mov r8d, dword [rsp + 0xb0]
call sym.sqlite3VdbeAddOp3.constprop.0
mov edx, dword [rsp + 0xd0]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call sym.resetAccumulator
xor r8d, r8d
mov edx, 0x47
mov rcx, r13
mov r9d, dword [rsp + 0xb4]
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov edx, 0x43
mov rcx, r13
mov r8d, dword [rsp + 0xb8]
call sym.sqlite3VdbeAddOp3.constprop.0
cmp word [rsp + 0xc4], 0
je 0x14023fa20
mov eax, dword [rsp + 0xd8]
test eax, eax
je 0x14023fa20
cmp dword [rbx + 0x30], 0
jne 0x14023fa20
sub eax, 1
cmp eax, 1
jbe 0x140240878
mov edx, dword [rsp + 0xa8]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
jmp 0x14023ea90
mov esi, dword [rsp + 0x58]
mov edi, dword [r13 + 0x90]
test esi, esi
je 0x14023f68b
mov rax, qword [rsp + 0x70]
mov edx, 0x85
mov rcx, r13
mov r9d, dword [rsp + 0x88]
mov r8d, dword [rax + 4]
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
test eax, eax
jle 0x14023f6f5
mov dword [rsp + 0x78], edi
mov esi, dword [rsp + 0xdc]
mov qword [rsp + 0x240], rbx
mov edi, dword [rsp + 0x6c]
mov rbx, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x50]
lea eax, [rsi + rdi]
mov r9d, edi
mov edx, 0x5e
mov dword [rsp + 0x20], eax
mov rcx, r13
add edi, 1
call sym.sqlite3VdbeAddOp3
mov eax, dword [rbx]
cmp edi, eax
jl 0x14023fa98
mov edi, dword [rsp + 0x78]
mov rbx, qword [rsp + 0x240]
jmp 0x14023f6f5
mov r8d, dword [rsp + 0xbc]
xor eax, eax
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], eax
mov edx, 0x24
call sym.growOp3
jmp 0x14023e67c
mov r8d, dword [rsp + 0x80]
xor edx, edx
mov rcx, rsi
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov edx, 0x24
call sym.growOp3
mov eax, dword [rsi + 0x90]
mov ecx, dword [rsi + 0x94]
jmp 0x14023e63a
mov r8d, dword [rsp + 0x80]
xor r12d, r12d
xor r9d, r9d
mov edx, 0x92
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call sym.growOp3
jmp 0x14023e961
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 3
call sym.windowCodeOp
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x22], 0x5a
je 0x14023e78a
cmp byte [rax + 0x20], 0x59
je 0x1402404f3
mov r8d, dword [rsp + 0x78]
xor r9d, r9d
jmp 0x14023e763
mov r9d, dword [rsp + 0xb8]
xor eax, eax
xor r8d, r8d
mov rcx, rsi
mov edx, 9
mov dword [rsp + 0x20], eax
call sym.growOp3
mov edx, dword [rsi + 0x90]
jmp 0x14023e6d5
mov eax, dword [rbx + 0x38]
mov r8d, 1
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x60]
lea r9d, [rax + 1]
add eax, 2
mov dword [rdi + 0x84], r9d
mov dword [rbx + 0x38], eax
mov dword [rdi + 0x88], eax
mov eax, dword [rbx + 0x34]
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov edx, 0x47
mov dword [rdi + 0x64], eax
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rdi + 0x88]
xor r8d, r8d
mov edx, 0x47
mov rcx, qword [rsp + 0x60]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r9d, dword [rdi + 0x58]
mov edx, 0x73
mov r8d, dword [rdi + 0x64]
mov rcx, qword [rsp + 0x60]
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x14023d228
mov edx, dword [rdx + 0x370]
jmp 0x14023d2e9
mov rdx, qword [rdi + 0x28]
xor eax, eax
mov rcx, qword [rbx]
mov qword [rsp + 0x150], rax
test rdx, rdx
movzx r8d, byte [rcx + 0x64]
je 0x140240299
xor eax, eax
mov r9d, 0x43
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x150]
mov qword [rsp + 0x20], rax
call sym.valueFromExpr
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x140240299
mov qword [rsp + 0x50], rcx
call sym.sqlite3VdbeIntValue
mov rcx, qword [rsp + 0x50]
mov rdi, rax
call sym.sqlite3ValueFree
test edi, edi
jle 0x1402402a0
mov dword [rsp + 0x1a4], 1
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rax + 0x21]
jmp 0x14023d473
mov rcx, qword [rsp + 0x90]
call sym.sqlite3WhereEnd
mov edx, dword [rsp + 0xe8]
mov rcx, r13
call sym.sqlite3VdbeChangeToNoop.isra.0
jmp 0x14023f863
cmp qword [r15 + 0x30], 0
jne 0x140240822
mov rcx, qword [r15 + 0x20]
cmp dword [rcx], 1
jne 0x140240822
mov rax, qword [r15 + 0x28]
cmp dword [rax], 1
jne 0x140240822
cmp qword [rax + 0x30], 0
jne 0x140240822
cmp edx, 1
jne 0x14024089e
mov rdi, qword [r15 + 0x40]
test rdi, rdi
jne 0x1402406db
mov rax, qword [rax + 0x28]
cmp byte [rax + 0x3f], 0
mov qword [rsp + 0x50], rax
jne 0x1402406db
mov rcx, qword [rcx + 8]
mov rax, qword [rsp + 0x70]
cmp byte [rcx], 0xa8
jne 0x1402409e7
cmp rax, qword [rcx + 0x38]
jne 0x1402409e7
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
mov r8, qword [rax + 8]
test byte [r8 + 5], 1
je 0x1402406e4
test dword [rcx + 4], 0x1000004
jne 0x1402406e4
mov rax, qword [rsp + 0x50]
mov rcx, qword [rbx]
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x140240a31
call sym.sqlite3SchemaToIndex.part.0
mov dword [rsp + 0x58], eax
mov esi, dword [rbx + 0x34]
mov edx, dword [rsp + 0x58]
lea eax, [rsi + 1]
mov dword [rbx + 0x34], eax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x28]
mov dword [rsp + 0x60], ecx
mov rcx, rbx
call sym.sqlite3CodeVerifySchema
mov rax, qword [rsp + 0x50]
xor r9d, r9d
mov rcx, rbx
mov edx, dword [rsp + 0x58]
mov r8d, dword [rax + 0x28]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.sqlite3TableLock
mov rax, qword [rsp + 0x50]
test byte [rax + 0x30], 0x80
je 0x1402403e8
mov rdi, qword [rax + 0x10]
test rdi, rdi
mov rax, rdi
jne 0x14023fdf9
jmp 0x140240404
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x14023fe05
movzx edx, byte [rdi + 0x64]
and edx, 3
cmp dl, 2
jne 0x14023fdf0
mov rdx, qword [r15 + 0x28]
test byte [rdx + 0x48], 1
je 0x14023ff3d
test rdi, rdi
je 0x140240404
mov r9d, dword [rdi + 0x58]
mov rdx, rdi
mov rcx, rbx
mov dword [rsp + 0x6c], r9d
call sym.sqlite3KeyInfoOfIndex
mov r9d, dword [rsp + 0x6c]
mov r8d, esi
mov rcx, r13
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x58]
mov edx, 0x70
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp4Int.isra.0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14023fe78
mov r9d, 0xfffffff8
mov r8, rax
or edx, 0xffffffff
mov rcx, r13
call sym.sqlite3VdbeChangeP4
mov rax, qword [rsp + 0x70]
mov r8d, esi
mov ecx, dword [rbx + 0x38]
mov edx, dword [rax + 0x20]
mov r11d, dword [rax + 0x30]
lea r9d, [rcx + 1]
mov dword [rax + 0xc], r9d
add r9d, edx
add r11d, edx
mov edx, 0x62
mov eax, r11d
add eax, ecx
mov rcx, r13
mov dword [rbx + 0x38], eax
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov r8d, esi
mov edx, 0x7a
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
cmp byte [rbx + 0x133], 2
je 0x1402406b2
xor edi, edi
mov rcx, rbx
mov rdx, qword [rsp + 0xa0]
mov r9d, 0x10
mov qword [rsp + 0x120], rdi
mov edi, dword [rsp + 0xa8]
mov r8d, edi
call sym.sqlite3ExprIfFalse
xor eax, eax
mov dword [rsp + 0x38], edi
xor r9d, r9d
mov dword [rsp + 0x30], edi
or r8d, 0xffffffff
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
call sym.selectInnerLoop
jmp 0x14023fa20
test rdi, rdi
je 0x14023ff2d
cmp dx, word [rdi + 0x5c]
jge 0x14023ff30
mov rdi, rax
mov rax, qword [rax + 0x28]
test rax, rax
je 0x14023fe13
test byte [rax + 0x64], 4
jne 0x14023ff30
mov rcx, qword [rsp + 0x50]
movzx edx, word [rax + 0x5c]
cmp dx, word [rcx + 0x3c]
jge 0x14023ff30
cmp qword [rax + 0x48], 0
jne 0x14023ff30
jmp 0x14023ff22
cmp qword [rdx + 0x308], 0
jne 0x14023e25a
test rdi, rdi
je 0x14023e25a
sub dword [rdi], 1
jne 0x14023e25a
mov rcx, qword [rdi + 0x10]
mov rdx, rdi
mov dword [rsp + 0xec], eax
call sym.sqlite3DbNNFreeNN
mov eax, dword [rsp + 0xec]
jmp 0x14023e25a
mov r8d, dword [rsp + 0xb4]
xor edi, edi
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], edi
mov edx, 0x43
call sym.growOp3
jmp 0x14023e9f3
cmp dword [rsp + 0x78], 0
mov r12d, dword [rsi + 0x90]
je 0x14023e75d
mov eax, dword [rbx + 0x44]
mov edx, 0x39
mov r9d, dword [rsp + 0x78]
mov r8d, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x50]
lea edi, [rax - 1]
mov eax, dword [rsp + 0xbc]
mov dword [rbx + 0x44], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call sym.windowCodeRangeTest
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call sym.windowCodeOp
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 2
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
mov rcx, rsi
mov r9d, r12d
xor r8d, r8d
mov edx, 9
call sym.sqlite3VdbeAddOp3.constprop.0
mov edx, edi
mov rcx, rsi
call sym.sqlite3VdbeResolveLabel
jmp 0x14023e78a
xor r8d, r8d
mov edx, 0x47
mov rcx, r12
mov dword [rsp + 0x20], r8d
xor r8d, r8d
call sym.growOp3
jmp 0x14023e420
xor r9d, r9d
mov rcx, r12
mov edx, 0x92
mov dword [rsp + 0x20], r9d
xor r9d, r9d
call sym.growOp3
mov eax, dword [r12 + 0x90]
mov ecx, dword [r12 + 0x94]
jmp 0x14023ed8d
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
cmp dword [rax + 0x10], 0
js 0x14023da5e
mov rax, qword [rax]
test rax, rax
je 0x14024069c
test byte [rax + 5], 0x10
jne 0x14023da5e
mov rax, qword [rax + 0x20]
test rax, rax
mov qword [rsp + 0x80], rax
je 0x14023da5e
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x1402400f2
mov rcx, qword [rsp + 0x48]
mov rdx, rdi
call sym.exprDup.constprop.0
mov rdi, rax
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x48]
call sym.sqlite3ExprListDup.constprop.0
mov r8, rdi
mov rcx, rbx
mov rdx, rax
call sym.sqlite3ExprListAppend
mov qword [rsp + 0x80], rax
neg rax
sbb ax, ax
and ax, 0x500
mov word [rsp + 0xc4], ax
jmp 0x14023da5e
mov rdi, qword [rsp + 0x58]
cmp byte [rdi + 0x22], 0x58
movzx eax, byte [rdi + 0x20]
je 0x140240555
mov dword [rsp + 0x1a4], 1
jmp 0x14023f13c
xor eax, eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], eax
jmp 0x14023f5cc
mov r8d, dword [rsp + 0x78]
xor r9d, r9d
mov edx, 0x3b
mov rcx, rsi
mov dword [rsp + 0x20], 1
call sym.sqlite3VdbeAddOp3
mov r12, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov edi, eax
mov rcx, r12
call sym.windowCodeOp
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, r12
mov edx, 2
call sym.windowCodeOp
mov rcx, qword [rsi]
lea rax, [0x1402b1b40]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1402401d7
movsxd rax, edi
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 8], edx
jmp 0x14023e78a
xor edx, edx
cmp al, 0x56
mov eax, dword [rsp + 0x78]
mov rcx, rsi
mov r8d, dword [rsp + 0x60]
sete dl
xor r9d, r9d
lea edx, [rdx + rdx + 0x37]
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp3
mov rdx, qword [rsp + 0x58]
xor r8d, r8d
mov rcx, rbx
mov edi, eax
call sym.windowAggFinal.isra.0
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
mov r12d, dword [rsp + 0x80]
mov r8d, r12d
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [rsp + 0x50]
call sym.windowReturnOneRow
xor r9d, r9d
mov r8d, r12d
mov edx, 0x92
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
xor r8d, r8d
mov edx, 9
mov rcx, rsi
mov r9d, dword [rsp + 0xb8]
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [rsi]
lea rax, [0x1402b1b40]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140240288
movsxd rax, edi
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x21]
jmp 0x14023e5dd
xor ecx, ecx
call sym.sqlite3ValueFree
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rax + 0x21]
jmp 0x14023d473
cmp dword [rdi + 0x30], 1
jne 0x14023da1b
mov rax, qword [rdi + 0x28]
mov rax, qword [rax]
mov r9, qword [rax + 0x20]
test r9, r9
je 0x14023da1b
mov edi, dword [r9]
cmp edi, 1
jne 0x14023da1b
test byte [rax + 7], 1
jne 0x14023da1b
mov rcx, qword [rsp + 0x48]
test byte [rcx + 0x62], 1
jne 0x14023da1b
mov r10, qword [rax + 8]
lea r11, [0x14032d9ef]
xor ecx, ecx
lea rdx, [0x14033cae0]
jmp 0x14024031a
movzx esi, byte [rdx + r8]
cmp byte [rdx + rax], sil
jne 0x1402409f0
add rcx, 1
movzx eax, byte [r10 + rcx]
movzx r8d, byte [r11 + rcx]
cmp eax, r8d
jne 0x140240307
test eax, eax
jne 0x140240316
mov rcx, qword [r9 + 8]
call sym.sqlite3ExprCanBeNull
test eax, eax
setne al
lea r8d, [rax + rax]
mov rcx, qword [rsp + 0x48]
mov rdx, r9
mov byte [rsp + 0xb0], r8b
call sym.sqlite3ExprListDup.constprop.0
test rax, rax
mov r12, rax
je 0x140240369
movzx r8d, byte [rsp + 0xb0]
mov byte [rax + 0x18], r8b
mov byte [rsp + 0xb0], dil
jmp 0x14023da1b
mov r8d, dword [rsp + 0x60]
mov edx, 1
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
mov rcx, qword [rsp + 0x50]
mov r9d, 1
xor r8d, r8d
mov edx, 2
mov dword [rsp + 0x70], eax
call sym.windowCodeOp
mov dword [rsp + 0x60], eax
jmp 0x14023f29d
mov r8d, dword [rsp + 0x60]
mov edx, 2
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
mov rcx, qword [rsp + 0x50]
mov r9d, 1
xor r8d, r8d
mov edx, 1
mov dword [rsp + 0x60], eax
call sym.windowCodeOp
mov dword [rsp + 0x70], eax
jmp 0x14023f29d
mov rax, qword [r15 + 0x28]
test byte [rax + 0x48], 1
jne 0x140240404
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14023ff3d
mov eax, dword [rsp + 0x58]
mov r8d, esi
mov edx, 0x70
mov rcx, r13
mov r9d, dword [rsp + 0x60]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], eax
call sym.sqlite3VdbeAddOp4Int.isra.0
mov rax, qword [rsp + 0x70]
mov r8d, esi
mov ecx, dword [rbx + 0x38]
mov edx, dword [rax + 0x20]
mov edi, dword [rax + 0x30]
lea r9d, [rcx + 1]
mov dword [rax + 0xc], r9d
add r9d, edx
add edi, edx
mov edx, 0x62
mov eax, edi
add eax, ecx
mov rcx, r13
mov dword [rbx + 0x38], eax
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov r8d, esi
mov edx, 0x7a
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
cmp byte [rbx + 0x133], 2
jne 0x14023fecd
lea rax, [0x140329f88]
mov rdx, rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x50]
lea r8, str.SCAN__s_s_s
mov rcx, rbx
mov qword [rsp + 0x20], rdx
xor edx, edx
mov r9, qword [rax]
call sym.sqlite3VdbeExplain
jmp 0x14023fecd
mov eax, dword [rbx + 0x38]
mov r8d, edi
add eax, 1
mov dword [rsp + 0x88], eax
mov r9d, eax
mov dword [rbx + 0x38], eax
jmp 0x14023f591
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
mov dword [rbx + 0x38], edi
jmp 0x14023f4e5
mov rdi, qword [rsp + 0x70]
imul rax, rax, 0x18
add rax, qword [rdi + 0x18]
movzx eax, word [rax - 2]
add eax, 1
mov word [rdi + 2], ax
jmp 0x14023dc1f
mov eax, dword [rbx + 0x44]
mov edx, 0x39
mov r9d, dword [rsp + 0x78]
mov r8d, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x50]
lea edi, [rax - 1]
mov eax, dword [rsp + 0xbc]
mov r12d, dword [rsi + 0x90]
mov dword [rbx + 0x44], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call sym.windowCodeRangeTest
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 2
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
xor r9d, r9d
xor r8d, r8d
mov edx, 1
jmp 0x140240025
cmp al, 0x59
je 0x14023f13c
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbx]
mov rdx, qword [rax + 0x30]
xor eax, eax
mov qword [rsp + 0x150], rax
movzx r8d, byte [rcx + 0x64]
test rdx, rdx
je 0x1402402a0
lea rax, [rsp + 0x150]
xor edi, edi
mov r9d, 0x43
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
call sym.valueFromExpr
mov rdi, qword [rsp + 0x150]
test rdi, rdi
je 0x1402402a0
movzx r9d, word [rdi + 0x14]
test r9b, 0x24
jne 0x1402409b3
test r9b, 8
jne 0x1402409a5
test r9b, 0x12
je 0x1402405fc
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1402405fc
mov edx, dword [rdi + 0x10]
mov dword [rsp + 0x50], r9d
movzx r8d, byte [rdi + 0x16]
call sym.memIntValue.isra.0
mov r9d, dword [rsp + 0x50]
test eax, eax
setg al
movzx eax, al
mov dword [rsp + 0x50], eax
test r9w, 0x9000
jne 0x14024060a
cmp dword [rdi + 0x20], 0
je 0x140240612
mov rcx, rdi
call sym.vdbeMemClear
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14024064c
cmp rdi, qword [rcx + 0x1f0]
jae 0x14024063e
cmp rdi, qword [rcx + 0x1e0]
jae 0x1402409d1
cmp rdi, qword [rcx + 0x1e8]
jae 0x1402409bb
cmp qword [rcx + 0x308], 0
jne 0x140240980
mov rcx, rdi
call sym.sqlite3_free
cmp dword [rsp + 0x50], 0
je 0x1402402a0
mov dword [rsp + 0x1a4], 3
jmp 0x1402402a0
mov edx, dword [rsp + 0x50]
mov rcx, rbx
call sym.sqlite3ReleaseTempRange.part.0
jmp 0x14023f546
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 2
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
jmp 0x14023f419
xor eax, eax
mov qword [rsp + 0x80], rax
jmp 0x14023da5e
mov esi, edi
jmp 0x14023dce8
mov rax, qword [rsp + 0x50]
test byte [rax + 0x30], 0x80
je 0x1402406cc
movzx eax, byte [rdi + 0x64]
and eax, 3
cmp al, 2
je 0x14024047b
mov rax, qword [rdi]
lea rdx, str._USING_COVERING_INDEX
jmp 0x140240485
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
mov rdi, qword [rsp + 0x70]
cmp dword [rdi + 0x24], 0
je 0x140240958
xor ecx, ecx
mov r8, qword [rax]
test byte [r8 + 7], 1
jne 0x14024070e
mov r8, qword [rax + 8]
test byte [r8 + 4], 0x20
jne 0x140240847
add ecx, 1
add rax, 0x18
cmp ecx, edx
jne 0x1402406f5
mov eax, dword [rbx + 0x38]
mov edx, 0x47
xor r8d, r8d
mov rcx, r13
xor edi, edi
add eax, 1
mov dword [rbx + 0x38], eax
mov r9d, eax
mov dword [rsp + 0x6c], eax
call sym.sqlite3VdbeAddOp3.constprop.0
mov rax, qword [rsp + 0x70]
mov edx, dword [rax + 0x30]
mov ecx, dword [rbx + 0x38]
mov rsi, qword [rsp + 0x70]
lea eax, [rcx + 1]
mov dword [rsi + 0xc], eax
mov eax, dword [rsi + 0x20]
add eax, edx
mov rdx, rsi
add eax, ecx
mov rcx, rbx
mov dword [rbx + 0x38], eax
call sym.resetAccumulator
mov rdx, qword [rsp + 0x58]
xor r9d, r9d
mov rcx, rbx
movzx eax, byte [rsp + 0xb0]
mov dword [rsp + 0x38], r9d
mov r9, r12
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x28], r15
or eax, edi
movzx eax, ax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
call sym.sqlite3WhereBegin
test rax, rax
mov rsi, rax
je 0x14023eecf
movzx edi, byte [rax + 0x43]
mov rcx, rbx
mov r8, qword [rsp + 0x70]
mov edx, dword [rsp + 0x6c]
mov r9d, edi
call sym.updateAccumulator
test edi, edi
je 0x1402407ee
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1402407ee
cmp dword [rbx + 0x30], 0
jne 0x1402407ee
lea edx, [rdi - 1]
cmp edx, 1
jbe 0x14024098d
cmp dword [rsp + 0x6c], 0
jne 0x140240932
cmp byte [rsp + 0xb0], 0
jne 0x1402408bb
mov rcx, rsi
call sym.sqlite3WhereEnd
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rsp + 0x70]
call sym.finalizeAggFunctions.isra.0
jmp 0x14023fecd
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x24], 0
jne 0x1402408a9
cmp edx, 1
je 0x14024094f
xor r10d, r10d
xor edi, edi
mov dword [rsp + 0x6c], r10d
jmp 0x140240743
xor ecx, ecx
xor edi, edi
cmp ecx, edx
jne 0x140240743
jmp 0x140240719
mov edx, dword [rsp + 0x78]
xor edi, edi
mov rcx, r13
mov qword [rsp + 0x120], rdi
call sym.sqlite3VdbeChangeToNoop.isra.0
mov edi, dword [r13 + 0x90]
jmp 0x14023fa47
mov rax, qword [rsp + 0x70]
mov rcx, qword [rbx + 0x10]
mov edx, dword [rsp + 0xd8]
mov rax, qword [rax + 0x28]
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call sym.fixDistinctOpenEph.part.0.isra.0
jmp 0x14023fa20
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x24], 0
je 0x140240836
test edx, edx
jle 0x140240845
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
jmp 0x1402406f3
test byte [rsi + 0x44], 4
je 0x140240807
cmp byte [rsi + 0x41], 0
je 0x140240807
movzx eax, byte [rsi + 0x40]
sub eax, 1
cdqe
jmp 0x1402408f7
imul rcx, rax, 0x70
lea rdx, [rax - 1]
mov rcx, qword [rsi + rcx + 0x3c0]
test byte [rcx + 0x38], 4
jne 0x140240a3e
mov rax, rdx
cmp rax, 0xffffffffffffffff
jne 0x1402408da
movsxd rax, dword [r13 + 0x90]
cmp eax, dword [r13 + 0x94]
mov r9d, dword [rsi + 0x34]
jl 0x140240a60
xor r8d, r8d
mov edx, 9
mov rcx, r13
mov dword [rsp + 0x20], r8d
xor r8d, r8d
call sym.growOp3
jmp 0x140240807
mov r9d, dword [rsp + 0x6c]
mov r8d, 1
mov edx, 0x47
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x1402407f9
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
xor edi, edi
cmp dword [rax + 0x10], 0
js 0x140240743
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x60], rax
neg rax
sbb di, di
and di, 0x500
jmp 0x140240743
mov rdx, rdi
call sym.measureAllocationSize
jmp 0x140240654
mov rcx, qword [rbx + 0x10]
mov edx, edi
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call sym.fixDistinctOpenEph.part.0.isra.0
jmp 0x1402407ee
movsd xmm0, qword [rdi]
call sym.doubleToInt64
jmp 0x1402405f0
mov rax, qword [rdi]
jmp 0x1402405f0
mov rax, qword [rcx + 0x1c8]
mov qword [rdi], rax
mov qword [rcx + 0x1c8], rdi
jmp 0x140240654
mov rax, qword [rcx + 0x1d8]
mov qword [rdi], rax
mov qword [rcx + 0x1d8], rdi
jmp 0x140240654
mov rax, qword [rax + 0x28]
jmp 0x1402406e4
lea r11, [0x14032d9f3]
xor ecx, ecx
jmp 0x140240a0e
movzx edi, byte [rdx + r8]
cmp byte [rdx + rax], dil
jne 0x14023da1b
add rcx, 1
movzx eax, byte [r10 + rcx]
movzx r8d, byte [r11 + rcx]
cmp eax, r8d
jne 0x1402409fb
test eax, eax
jne 0x140240a0a
mov r8d, 1
mov edi, 2
jmp 0x14024033f
mov dword [rsp + 0x58], 0xffff8000
jmp 0x14023fd89
cdqe
imul rax, rax, 0x70
mov r9d, dword [rsi + rax + 0x370]
movsxd rax, dword [r13 + 0x90]
cmp eax, dword [r13 + 0x94]
jge 0x140240915
lea edx, [rax + 1]
xor ecx, ecx
imul rax, rax, 0x18
mov dword [r13 + 0x90], edx
xor edx, edx
add rax, qword [r13 + 0x88]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], edx
mov qword [rax + 0x10], rcx
mov qword [rax], 9
jmp 0x140240807