Function at 0x1402437a0
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 0x1402437e5
call sym.sqlite3GetVdbe.part.0
mov r13, rax
test r15, r15
je 0x1402437f3
mov r10d, dword [rbx + 0x30]
test r10d, r10d
je 0x140243820
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 0x1402437f3
cmp byte [rbp], 6
ja 0x140243876
mov r8, qword [r15 + 0x48]
test r8, r8
je 0x140243866
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 0x1402438bb
mov r10d, dword [r15 + 4]
test r10d, 0x800000
jne 0x140243b38
cmp byte [rbp], 9
je 0x140243b98
mov rdx, r15
mov rcx, rbx
call sym.sqlite3WindowRewrite
test eax, eax
mov dword [rsp + 0x6c], eax
je 0x140243900
mov eax, 1
movsxd rdx, dword [rbx + 0x140]
test edx, edx
je 0x1402438f2
mov r8, qword [rbx + 0x10]
lea rcx, [0x1402b8b80]
mov r9, qword [r8]
cmp byte [r9 + 0x67], 0
jne 0x1402438ef
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 0x1402437f8
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 0x140244023
mov qword [rsp + 0x60], r13
mov r13, r15
mov r15, qword [rsp + 0x58]
mov dword [rsp + 0x50], r9d
jmp 0x140243a6e
test rdi, rdi
je 0x140243a5f
mov rax, qword [rdi + 0x20]
movsx r8d, word [r14 + 0x36]
mov edx, dword [rax]
cmp r8d, edx
jne 0x140244090
mov eax, dword [rdi + 4]
test al, 8
jne 0x140243a5f
mov r8, qword [rdi + 0x48]
test r8, r8
je 0x140243a10
cmp qword [r13 + 0x48], 0
je 0x140243ae0
cmp qword [rdi + 0x60], 0
je 0x140243af0
test r12d, r12d
jne 0x140243a10
test byte [r13 + 6], 4
je 0x140243a10
cmp dword [r15], 1
je 0x140243b88
test byte [r15 + 0xac], 0x22
jne 0x140243b88
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 0x140243a3a
mov r8d, dword [rbx + 0x30]
test r8d, r8d
jne 0x1402438bb
mov r12d, 0xffffffff
mov rax, qword [rsp + 0x48]
mov r15, qword [r13 + 0x28]
cmp byte [rax + 0x67], 0
jne 0x1402438bb
cmp byte [rbp], 8
jbe 0x140243a5f
mov rax, qword [r13 + 0x48]
mov qword [rsp + 0x120], rax
add r12d, 1
cmp qword [r13 + 0x50], 0
jne 0x140244020
cmp dword [r15], r12d
jle 0x140243bb0
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 0x1402439a0
mov edx, dword [rsi + 0x4c]
mov rcx, qword [r13 + 0x30]
call sym.sqlite3ExprImpliesNonNullRow
test eax, eax
je 0x1402439a0
mov rax, qword [rsp + 0x48]
test byte [rax + 0x61], 0x20
jne 0x1402439a0
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 0x1402439a0
cmp dword [r15], 1
jg 0x1402439dc
jmp 0x1402439e7
test eax, 0x8000000
jne 0x1402439e7
test byte [r13 + 7], 8
jne 0x1402439e7
mov rax, qword [rsp + 0x48]
test byte [rax + 0x62], 4
jne 0x1402439e7
lea rdx, [sym.sqlite3ExprListDelete]
mov rcx, rbx
call sym.sqlite3ParserAddCleanup
mov qword [rdi + 0x48], 0
jmp 0x140243a10
mov r11, qword [r15 + 0x28]
lea rcx, [r11 + 8]
mov rdx, r11
call sym.sameSrcAlias
test eax, eax
jne 0x140243b60
and r10d, 0xff7fffff
mov dword [r15 + 4], r10d
jmp 0x14024389e
mov r8, qword [r11 + 0x20]
test r8, r8
je 0x1402453e8
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rbx
call sym.sqlite3ErrorMsg
jmp 0x1402438bb
mov r12d, 1
jmp 0x140243a63
mov rdx, r15
mov rcx, rbx
call sym.sqlite3GenerateColumnNames
jmp 0x1402438a8
mov qword [rsp + 0x58], r15
mov r15, r13
mov r13, qword [rsp + 0x60]
mov r12, qword [r15 + 0x30]
test r12, r12
je 0x140243bd1
cmp byte [r12], 0x2c
je 0x1402451d3
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 0x1402440b8
mov rsi, rax
mov qword [rsp + 0x250], rbp
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
jmp 0x140243d5d
imul rax, r12, 0x68
test byte [rsi + rax + 0x49], 1
je 0x140244000
mov rax, qword [rdi + 0x68]
cmp byte [rax + 0x12], 0
je 0x140243c3a
cmp dword [rax], 1
jle 0x140244000
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 0x140243ca8
cmp dword [rax], 1
jle 0x140243c6a
cmp dl, 2
jne 0x140243ca8
test byte [rsi + 0x44], 0x40
jne 0x140243ca8
mov rax, qword [rbx]
test byte [rax + 0x63], 2
jne 0x140243ca8
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 0x1402460a8
mov r10, qword [rdi + 0x68]
nop word [rax + rax]
mov r9d, dword [r10 + 4]
test r9d, r9d
jg 0x140244048
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
mov r9d, r14d
mov rcx, rsi
call sym.isSelfJoinView
test rax, rax
mov r10, rax
je 0x140245089
mov r9d, dword [rax + 0x30]
test r9d, r9d
jne 0x1402444a8
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 0x1402438bb
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 0x1402440b0
cmp qword [rdi + 0x58], 0
jne 0x140243d8a
mov r8, qword [rdi + 0x18]
test r8, r8
je 0x140243d8a
mov rax, qword [rdi + 0x10]
lea r9, [0x140313768]
mov edx, 0x14
mov rcx, rbx
mov qword [rsp + 0x20], rax
call sym.sqlite3AuthCheck
mov rbp, qword [rdi + 0x30]
test rbp, rbp
je 0x140243d4c
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 0x140243c18
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 0x140243e90
movzx r10d, byte [rsi + 0x44]
and r10d, 0x40
jne 0x140243cb5
mov rax, qword [rbx]
test byte [rax + 0x63], 2
jne 0x140243cb5
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 0x140243cb5
test r14d, r14d
jne 0x140243e99
cmp r9d, 1
je 0x140243ece
test byte [rsi + 0xac], 2
jne 0x140243ece
and r11d, 0x10000000
je 0x140243ece
test r10b, r10b
jne 0x140243c9e
jmp 0x140243cb5
mov rax, qword [rdi + 0x68]
jmp 0x140243c55
and r11d, 0x10000000
jne 0x140243e79
mov rax, qword [rsp + 0x50]
mov rdx, rsi
sub rdx, rdi
add rdx, rax
jmp 0x140243ec3
sub rax, 0x68
cmp qword [rax + 0x28], 0
jne 0x140243e79
test byte [rax + 0x3c], 0x22
jne 0x140243e79
cmp rax, rdx
jne 0x140243eb8
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, [0x1402b8b80]
cmp byte [rcx + 0x67], 0
jne 0x140243fe8
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 0x140243d0c
mov r9, qword [rsp + 0x50]
mov rdx, rbp
mov rcx, rbx
mov r8, qword [r15 + 0x30]
call sym.pushDownWhereTerms.isra.0
jmp 0x140243dd3
mov r15, r13
mov r8, rbp
mov rdx, r15
mov rcx, rbx
call sym.multiSelect
cmp qword [r15 + 0x58], 0
jne 0x1402437f8
jmp 0x1402438c0
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 0x140244082
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 0x140243d0c
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 0x1402438bb
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 0x140245faf
test r12, r12
mov dword [rsp + 0x78], 0xffffffff
je 0x140244173
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 0x140245ecf
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 0x1402441ac
mov r9d, 0x140
mov word [r15 + 2], r9w
cmp qword [r15 + 0x60], 0
je 0x1402441ca
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 0x140244209
mov edi, dword [rsp + 0x78]
test edi, edi
js 0x140244209
mov rcx, qword [r13]
lea rax, [0x1402b8b80]
cmp byte [rcx + 0x67], 0
jne 0x1402441fe
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 0x1402453f4
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 0x1402448ed
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 0x1402444f8
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 0x14024429e
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 0x140244334
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 0x140246e79
mov word [rsp + 0x70], si
mov rsi, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x250], rbp
jmp 0x14024443b
cmp byte [rdi + 0x21], 0x5a
je 0x140244449
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 0x1402443f2
mov rax, qword [rdi + 0x50]
mov rax, qword [rax + 0x38]
cmp byte [rax + 1], 0x69
jne 0x1402443f2
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 0x1402444e8
mov rax, qword [rdi + 0x50]
test byte [rax + 5], 0x10
jne 0x140244388
mov rax, qword [rax + 0x38]
lea rcx, str.nth_value
cmp rax, rcx
je 0x1402444c8
lea rcx, str.first_value
cmp rax, rcx
je 0x1402444c8
lea rcx, str.lead
cmp rax, rcx
je 0x14024447d
lea rdx, [0x140325400]
cmp rax, rdx
jne 0x14024442e
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 0x14024442e
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 0x140243ce1
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 0x14024448c
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 0x1402438bb
movzx eax, word [rax + 0x48]
cmp word [r15 + 2], ax
jle 0x14024454c
mov word [r15 + 2], ax
cmp byte [rsp + 0x9c], 0
je 0x140244571
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x43]
test al, al
je 0x140244571
mov byte [rsp + 0xf1], al
mov byte [rsp + 0x8c], al
test r12, r12
je 0x140245eb0
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 0x1402445b6
movzx edx, byte [rdi + 0x40]
sub edx, 1
movsxd rdx, edx
imul rdx, rdx, 0x70
add rdx, rdi
cmp qword [rdx + 0x398], 0
je 0x140246eee
mov edx, dword [rdi + 0x30]
cmp dword [r12], eax
mov dword [rsp + 0x140], edx
je 0x140245ea4
cmp qword [rsp + 0x50], 0
je 0x14024610b
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 0x140244652
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 0x140246321
cmp cl, 0x5a
je 0x1402463a8
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 0x140246394
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 0x1402447a4
add edx, 1
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x78], edx
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x20], 0x4c
je 0x140246350
mov rax, qword [rsp + 0xa8]
xor ecx, ecx
test rax, rax
je 0x1402447c4
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 0x1402447ee
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 0x140245480
mov qword [rsp + 0x240], rbx
mov ebx, r9d
jmp 0x1402448b4
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 0x140245478
movsxd rax, dword [rsi + 0x90]
lea edx, [rdi + rbx]
movdqa xmm0, xmm6
movd xmm1, ebx
cmp eax, dword [rsi + 0x94]
punpckldq xmm0, xmm1
jl 0x140244878
mov dword [rsp + 0x20], edx
mov r9d, ebx
movd r8d, xmm6
mov rcx, rsi
mov edx, 0x5e
call sym.growOp3
jmp 0x1402448a8
cmp qword [rsp + 0x60], 0
je 0x1402460bb
mov rcx, qword [r15 + 0x20]
mov edx, dword [rcx]
lea rax, [rcx + 8]
test edx, edx
jle 0x140244949
sub edx, 1
shl rdx, 5
lea rdx, [rcx + rdx + 0x28]
mov r8, rdx
sub r8, rax
and r8d, 0x20
je 0x140244930
xor r8d, r8d
mov word [rax + 0x1a], r8w
lea rax, [rcx + 0x28]
cmp rax, rdx
je 0x140244949
xor r10d, r10d
xor r11d, r11d
add rax, 0x40
mov word [rax - 0x26], r10w
mov word [rax - 6], r11w
cmp rax, rdx
jne 0x140244930
mov rax, qword [rsp + 0x60]
mov edx, dword [rax]
add rax, 8
test edx, edx
jle 0x1402449a9
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 0x140244990
xor r9d, r9d
mov word [rax + 0x1a], r9w
mov rax, qword [rsp + 0x60]
add rax, 0x28
cmp rax, rcx
je 0x1402449a9
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 0x140244990
cmp word [r15 + 2], 0x42
jle 0x1402449bb
mov ecx, 0x42
mov word [r15 + 2], cx
test r12, r12
je 0x1402449ca
cmp dword [r12], edx
je 0x14024644f
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 0x140244a10
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 0x1402438bb
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 0x140244a8d
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 0x14024643d
mov ecx, dword [r14]
test ecx, ecx
jle 0x14024643d
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 0x140245078
mov rcx, rbx
add rsi, 1
call sym.walkExpr
mov ecx, dword [r14]
cmp ecx, esi
jg 0x140244b00
mov rbx, rbp
mov rbp, qword [rsp + 0x250]
test r12, r12
je 0x140244c08
mov ecx, dword [r12]
test ecx, ecx
jle 0x140244c08
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 0x140245060
mov rcx, rbx
add rsi, 1
call sym.walkExpr
mov ecx, dword [r12]
cmp ecx, esi
jg 0x140244ba0
mov rbx, rbp
mov rbp, qword [rsp + 0x250]
cmp qword [rsp + 0xa0], 0
je 0x140244cd2
cmp qword [rsp + 0x60], 0
lea rcx, [rsp + 0x150]
mov rsi, rcx
je 0x140244c87
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 0x140244c7b
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 0x140246614
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 0x14024619f
cmp qword [rsp + 0x60], 0
mov edx, dword [rdi + 0x30]
je 0x140246fa1
xor eax, eax
cmp edx, 1
mov word [rsp + 0xc4], ax
je 0x14024736b
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 0x140246185
cmp qword [rbx + 0x60], 0
je 0x140244efe
mov rdi, qword [rsp + 0x70]
movsxd rax, dword [rdi + 0x24]
cmp word [rdi + 2], 0
mov dword [rdi + 0x20], eax
je 0x140244eef
test eax, eax
jne 0x1402477a6
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 0x140247421
cmp byte [rsp + 0x9c], 0
lea r9, str.GROUP_BY
je 0x140244f63
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 0x14024797b
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 0x140244fa2
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 0x140246791
mov r10, rbx
mov qword [rsp + 0x250], rbp
mov rbx, rax
mov ebp, esi
mov rsi, qword [rsp + 0x70]
jmp 0x140245016
add rbx, 1
cmp ecx, ebx
jle 0x140246784
mov rdx, qword [rsi + 0x18]
lea rax, [rbx + rbx*2]
lea rax, [rdx + rax*8]
movsx edx, word [rax + 0x16]
cmp edx, edi
jl 0x14024500a
cmp qword [r10 + 0x10], 0
je 0x140245058
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 0x14024500a
add rsi, 1
cmp ecx, esi
jg 0x140244ba0
jmp 0x140244bfd
add rsi, 1
cmp ecx, esi
jg 0x140244b00
jmp 0x140244b5c
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 0x140245dd0
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, [0x1402b8b80]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x14024518f
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 0x140243d0c
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 0x140243d0c
mov rax, qword [rsp + 0x48]
test byte [rax + 0x61], 0x80
jne 0x140243bd1
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 0x140245298
mov ecx, dword [rdx]
test ecx, ecx
jle 0x140245298
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 0x140243bd1
and eax, dword [r12 + 4]
jne 0x1402452e1
movzx eax, byte [r12]
cmp al, 0x2c
jne 0x140245368
mov rdx, qword [r12 + 0x18]
mov rcx, rdi
call sym.findConstInWhere
mov r12, qword [r12 + 0x10]
test r12, r12
je 0x1402452e1
mov eax, dword [rsp + 0x10c]
and eax, dword [r12 + 4]
je 0x1402452af
mov r11d, dword [rsp + 0x100]
test r11d, r11d
jne 0x140245306
mov eax, dword [rsp + 0x104]
test eax, eax
je 0x140243bd1
mov r12, qword [r15 + 0x30]
jmp 0x140245250
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 0x140245349
mov rcx, qword [rsp + 0x50]
call sym.walkExpr
mov rdx, qword [rsp + 0x110]
test rdx, rdx
je 0x1402452ee
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call sym.sqlite3DbFreeNN
jmp 0x1402452ee
cmp al, 0x35
jne 0x1402452e1
mov r14, qword [r12 + 0x18]
mov rsi, qword [r12 + 0x10]
cmp byte [r14], 0xa7
je 0x140246725
cmp byte [rsi], 0xa7
jne 0x1402452e1
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 0x1402452e1
lea rcx, [rsp + 0xf0]
mov r9, r12
mov r8, r14
mov rdx, rsi
call sym.constInsert
jmp 0x1402452e1
mov rax, qword [r11 + 0x28]
mov r8, qword [rax]
jmp 0x140243b6d
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 0x14024546b
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 0x14024421a
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 0x1402460f0
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 0x14024722b
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 0x14024666a
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 0x140245637
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 0x1402456fd
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 0x1402456ae
mov eax, dword [rdx]
mov r10d, dword [rbx + 0x84]
cmp esi, eax
cmovl esi, eax
test r10d, r10d
jne 0x1402456f0
mov rax, qword [rbp + 0x38]
lea rcx, str.nth_value
cmp rax, rcx
je 0x140245738
lea rcx, str.first_value
cmp rax, rcx
je 0x140245738
test byte [rbp + 5], 0x10
je 0x1402456f0
mov r8d, dword [rdi + 0x64]
test r8d, r8d
jne 0x140246010
nop
mov rdi, qword [rdi + 0x40]
test rdi, rdi
je 0x1402457d1
movsxd rax, dword [r12 + 0x90]
cmp eax, dword [r12 + 0x94]
mov rbp, qword [rdi + 0x50]
mov r9d, dword [rdi + 0x5c]
jl 0x140245668
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x4b
mov rcx, r12
call sym.growOp3
jmp 0x14024569d
movsxd rcx, dword [r12 + 0x90]
mov edx, dword [r12 + 0x94]
mov r9d, dword [rdi + 0x68]
cmp ecx, edx
jge 0x1402461c6
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 0x1402461a9
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 0x1402456db
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 0x14024583e
cmp qword [rbx + 0x10], 0
je 0x14024581f
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 0x140245880
cmp qword [rbx + 0x10], 0
je 0x140245860
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 0x1402458ad
cmp byte [rdi + 0x22], al
jne 0x1402458ad
mov ecx, dword [rsp + 0x60]
test ecx, ecx
jne 0x1402474af
cmp al, 0x56
je 0x1402461f7
cmp al, 0x5a
jne 0x1402460c7
movsxd rdx, dword [rsi + 0x90]
mov ecx, dword [rsi + 0x94]
cmp edx, ecx
jge 0x140246dc1
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 0x140246d9e
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 0x14024626c
movsxd rax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x140246e50
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, [0x1402b8b80]
cmp byte [rcx + 0x67], 0
jne 0x1402459cc
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 0x14024623c
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x21], 0x56
je 0x140246e15
cmp byte [rax + 0x22], 0x58
je 0x1402464b4
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 0x140245a5a
cmp byte [rax + 0x20], 0x59
je 0x14024728d
mov eax, dword [rsp + 0x78]
test eax, eax
jne 0x140247437
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 0x140246629
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 0x1402460e4
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, [0x1402b8b80]
cmp byte [rdx + 0x67], 0
jne 0x140245aea
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 0x14024669b
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 0x1402466c1
xor r9d, r9d
xor r8d, r8d
cmp byte [rax + 0x21], 0x56
mov edx, 3
mov rcx, qword [rsp + 0x50]
je 0x14024650c
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 0x140246156
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 0x140246df0
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 0x140245cc3
mov r9d, dword [rax + 0x84]
test r9d, r9d
jne 0x140246636
mov rcx, qword [rsi]
lea rdx, [0x1402b8b80]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140245c7c
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 0x14024726a
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 0x140246168
cmp qword [rsp + 0x120], 0
je 0x140245d94
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 0x1402438c0
mov rcx, qword [rsp + 0x48]
mov rdx, r12
mov dword [rsp + 0x50], eax
call sym.exprListDeleteNN
mov eax, dword [rsp + 0x50]
jmp 0x1402438c0
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 0x14024514c
mov rcx, qword [r13]
lea rax, [0x1402b8b80]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140245e9c
mov rax, qword [r13 + 0x88]
lea rcx, [r11 + r11*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x14024514c
mov qword [rsp + 0x120], 0
mov r11d, dword [rsp + 0x78]
test r11d, r11d
js 0x1402445ca
mov edx, dword [rsp + 0x78]
mov rcx, r13
call sym.sqlite3VdbeChangeToNoop.isra.0
jmp 0x1402445ca
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 0x14024418c
mov ecx, dword [r14]
lea esi, [rcx - 1]
test esi, esi
jle 0x140245f59
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 0x140245f52
mov rdx, qword [rdi - 0x18]
test rdx, rdx
je 0x140245f32
mov rcx, qword [rsp + 0x48]
call sym.sqlite3ExprDeleteNN
mov rdx, qword [rdi - 0x10]
test rdx, rdx
je 0x140245f9c
mov rcx, qword [rsp + 0x48]
sub rdi, 0x20
call sym.sqlite3DbFreeNN
sub dword [r14], 1
sub esi, 1
jne 0x140245f10
mov eax, dword [r15 + 4]
mov ecx, dword [r14]
mov edx, eax
xor eax, eax
test ecx, ecx
movsxd r8, ecx
jle 0x14024418c
nop dword [rax + rax]
movsxd rcx, eax
shl rcx, 5
test byte [r14 + rcx + 0x1c], 0x40
jne 0x140245f8e
mov rcx, rax
shl rcx, 5
mov rcx, qword [r14 + rcx + 8]
mov byte [rcx], 0x79
add rax, 1
cmp rax, r8
jne 0x140245f70
jmp 0x14024418c
sub dword [r14], 1
sub rdi, 0x20
sub esi, 1
jne 0x140245f10
jmp 0x140245f52
mov r8d, 0xffffffff
mov rdx, r14
mov rcx, r12
call sym.sqlite3ExprListCompare
test eax, eax
jne 0x14024410f
cmp qword [r15 + 0x70], 0
jne 0x14024410f
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 0x14024410f
movsxd rdx, dword [r12 + 0x90]
mov ecx, dword [r12 + 0x94]
cmp edx, ecx
jge 0x14024733e
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 0x140247321
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 0x1402456f0
mov r11d, dword [rsp + 0x8c]
mov r10d, 1
jmp 0x140243e5c
xor edx, edx
mov word [r15 + 2], dx
jmp 0x1402449ca
mov r8d, dword [rsp + 0xd8]
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x1402458bd
movsxd rdi, dword [rsi + 0x90]
jmp 0x140245aed
mov dword [rsp + 0xb4], 0
mov dword [rsp + 0xec], 0
jmp 0x14024558a
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 0x140245d5d
mov dword [0x1402b8b88], eax
lea rdx, [0x1402b8b80]
jmp 0x140245bea
lea r9, str.DISTINCT
xor edx, edx
mov rcx, rbx
lea r8, str.USE_TEMP_B_TREE_FOR__s
call sym.sqlite3VdbeExplain
jmp 0x140245d6e
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x14024619f
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call sym.exprListDeleteNN
mov eax, 1
jmp 0x140245dad
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x47
mov rcx, r12
call sym.growOp3
jmp 0x1402456db
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 0x140245789
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x20], 0x59
je 0x1402460c7
cmp dword [rsp + 0x78], 0
je 0x1402460c7
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 0x1402458b5
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 0x1402459de
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 0x14024595a
cmp byte [rdi + 0x20], 0x59
jne 0x140246ef9
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 0x14024476f
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 0x140244858
mov dword [rsp + 0xb0], edx
mov dword [rsp + 0x60], 0
jmp 0x140244782
mov eax, dword [rdi + 0x84]
mov rdx, rdi
test eax, eax
mov dword [rsp + 0x50], eax
jne 0x14024640c
lea rdi, str.nth_value
lea r10, str.first_value
lea r9, str.lead
lea r8, [0x140325400]
jmp 0x1402463e9
cmp rax, r8
je 0x14024640c
mov rdx, qword [rdx + 0x40]
test rdx, rdx
je 0x1402473fe
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 0x1402463d7
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 0x140244782
lea rax, [rsp + 0x180]
mov qword [rsp + 0x50], rax
jmp 0x140244b67
test edx, edx
jle 0x140246485
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 0x140246470
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 0x1402449d5
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 0x140245a30
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 0x140245a5a
call sym.windowCodeOp
mov rax, qword [rsp + 0x58]
mov r9d, 1
mov r12d, dword [rsi + 0x90]
cmp byte [rax + 0x20], 0x59
je 0x14024767f
cmp byte [rax + 0x22], 0x5a
je 0x140247646
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, [0x1402b8b80]
mov r12d, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x1402465a7
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 0x140246156
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 0x140245be2
mov r12, qword [r15 + 0x40]
test r12, r12
je 0x14024757e
xor r12d, r12d
jmp 0x140244ceb
mov rdx, rsi
call sym.resizeResolveLabel
jmp 0x140245a86
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 0x140245c51
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 0x1402455de
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 0x140245b3f
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 0x140247950
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call sym.windowCodeOp
mov rcx, qword [rsi]
lea rdx, [0x1402b8b80]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140245bea
mov rdx, qword [rsi + 0x88]
jmp 0x140245be2
mov eax, 1
test rsi, rsi
movups xmmword [rsp + 0x188], xmm7
mov word [rsp + 0x1a4], ax
mov dword [rsp + 0x1a8], 0
je 0x140246769
lea rcx, [rsp + 0x180]
mov rdx, rsi
call sym.walkExpr
cmp word [rsp + 0x1a4], 0
je 0x140245384
lea rcx, [rsp + 0xf0]
mov r9, r12
mov r8, rsi
mov rdx, r14
call sym.constInsert
jmp 0x140245384
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 0x140247798
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 0x1402467f5
mov edx, edi
mov rcx, rbx
call sym.sqlite3ReleaseTempReg.part.0
cmp esi, 1
je 0x14024793f
cmp esi, dword [rbx + 0x28]
jle 0x140246816
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 0x14024777d
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 0x140246907
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 0x140246907
xor edi, edi
jmp 0x1402468ee
mov rcx, rsi
add rdi, 1
call sym.walkExpr
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax + 0x30]
cmp ecx, edi
jle 0x140246907
mov rax, qword [rax + 0x28]
lea rdx, [rdi + rdi*2]
mov rdx, qword [rax + rdx*8]
test rdx, rdx
jne 0x1402468d6
add rdi, 1
cmp ecx, edi
jg 0x1402468f2
mov eax, dword [rsp + 0xc0]
test eax, eax
je 0x140246d04
mov rax, qword [rsp + 0x48]
test byte [rax + 0x60], 4
jne 0x140246d04
cmp dword [rsp + 0x58], 0
jne 0x140247b26
mov rax, qword [rsp + 0x90]
test byte [rax + 0x44], 8
je 0x140246954
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 0x1402469c5
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 0x1402469be
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 0x1402469be
mov rcx, qword [rsp + 0x70]
add rsi, 1
mov byte [rcx], 1
cmp qword [rdi + 0x10], 0
jne 0x140246986
mov rbx, rdi
mov edi, dword [rsp + 0x50]
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x1402469d5
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, [0x1402b8b80]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140246ad4
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 0x140246f80
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 0x140246b4d
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 0x140246cf0
mov eax, dword [rsp + 0xd8]
test eax, eax
je 0x140246cf0
cmp dword [rbx + 0x30], 0
jne 0x140246cf0
sub eax, 1
cmp eax, 1
jbe 0x140247b48
mov edx, dword [rsp + 0xa8]
mov rcx, r13
call sym.sqlite3VdbeResolveLabel
jmp 0x140245d60
mov esi, dword [rsp + 0x58]
mov edi, dword [r13 + 0x90]
test esi, esi
je 0x14024695b
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 0x1402469c5
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 0x140246d68
mov edi, dword [rsp + 0x78]
mov rbx, qword [rsp + 0x240]
jmp 0x1402469c5
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 0x14024594c
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 0x14024590a
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 0x140245c31
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 0x140245a5a
cmp byte [rax + 0x20], 0x59
je 0x1402477c3
mov r8d, dword [rsp + 0x78]
xor r9d, r9d
jmp 0x140245a33
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 0x1402459a5
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 0x1402444f8
mov edx, dword [rdx + 0x370]
jmp 0x1402445b9
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 0x140247569
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 0x140247569
mov qword [rsp + 0x50], rcx
call sym.sqlite3VdbeIntValue
mov rcx, qword [rsp + 0x50]
mov rdi, rax
call sym.sqlite3ValueFree
test edi, edi
jle 0x140247570
mov dword [rsp + 0x1a4], 1
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rax + 0x21]
jmp 0x140244743
mov rcx, qword [rsp + 0x90]
call sym.sqlite3WhereEnd
mov edx, dword [rsp + 0xe8]
mov rcx, r13
call sym.sqlite3VdbeChangeToNoop.isra.0
jmp 0x140246b33
cmp qword [r15 + 0x30], 0
jne 0x140247af2
mov rcx, qword [r15 + 0x20]
cmp dword [rcx], 1
jne 0x140247af2
mov rax, qword [r15 + 0x28]
cmp dword [rax], 1
jne 0x140247af2
cmp qword [rax + 0x30], 0
jne 0x140247af2
cmp edx, 1
jne 0x140247b6e
mov rdi, qword [r15 + 0x40]
test rdi, rdi
jne 0x1402479ab
mov rax, qword [rax + 0x28]
cmp byte [rax + 0x3f], 0
mov qword [rsp + 0x50], rax
jne 0x1402479ab
mov rcx, qword [rcx + 8]
mov rax, qword [rsp + 0x70]
cmp byte [rcx], 0xa8
jne 0x140247cb7
cmp rax, qword [rcx + 0x38]
jne 0x140247cb7
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
mov r8, qword [rax + 8]
test byte [r8 + 5], 1
je 0x1402479b4
test dword [rcx + 4], 0x1000004
jne 0x1402479b4
mov rax, qword [rsp + 0x50]
mov rcx, qword [rbx]
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x140247d01
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 0x1402476b8
mov rdi, qword [rax + 0x10]
test rdi, rdi
mov rax, rdi
jne 0x1402470c9
jmp 0x1402476d4
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x1402470d5
movzx edx, byte [rdi + 0x64]
and edx, 3
cmp dl, 2
jne 0x1402470c0
mov rdx, qword [r15 + 0x28]
test byte [rdx + 0x48], 1
je 0x14024720d
test rdi, rdi
je 0x1402476d4
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 0x140247148
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 0x140247982
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 0x140246cf0
test rdi, rdi
je 0x1402471fd
cmp dx, word [rdi + 0x5c]
jge 0x140247200
mov rdi, rax
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1402470e3
test byte [rax + 0x64], 4
jne 0x140247200
mov rcx, qword [rsp + 0x50]
movzx edx, word [rax + 0x5c]
cmp dx, word [rcx + 0x3c]
jge 0x140247200
cmp qword [rax + 0x48], 0
jne 0x140247200
jmp 0x1402471f2
cmp qword [rdx + 0x308], 0
jne 0x14024552a
test rdi, rdi
je 0x14024552a
sub dword [rdi], 1
jne 0x14024552a
mov rcx, qword [rdi + 0x10]
mov rdx, rdi
mov dword [rsp + 0xec], eax
call sym.sqlite3DbNNFreeNN
mov eax, dword [rsp + 0xec]
jmp 0x14024552a
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 0x140245cc3
cmp dword [rsp + 0x78], 0
mov r12d, dword [rsi + 0x90]
je 0x140245a2d
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 0x140245a5a
xor r8d, r8d
mov edx, 0x47
mov rcx, r12
mov dword [rsp + 0x20], r8d
xor r8d, r8d
call sym.growOp3
jmp 0x1402456f0
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 0x14024605d
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
cmp dword [rax + 0x10], 0
js 0x140244d2e
mov rax, qword [rax]
test rax, rax
je 0x14024796c
test byte [rax + 5], 0x10
jne 0x140244d2e
mov rax, qword [rax + 0x20]
test rax, rax
mov qword [rsp + 0x80], rax
je 0x140244d2e
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x1402473c2
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 0x140244d2e
mov rdi, qword [rsp + 0x58]
cmp byte [rdi + 0x22], 0x58
movzx eax, byte [rdi + 0x20]
je 0x140247825
mov dword [rsp + 0x1a4], 1
jmp 0x14024640c
xor eax, eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], eax
jmp 0x14024689c
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, [0x1402b8b80]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1402474a7
movsxd rax, edi
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 8], edx
jmp 0x140245a5a
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, [0x1402b8b80]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140247558
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 0x1402458ad
xor ecx, ecx
call sym.sqlite3ValueFree
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rax + 0x21]
jmp 0x140244743
cmp dword [rdi + 0x30], 1
jne 0x140244ceb
mov rax, qword [rdi + 0x28]
mov rax, qword [rax]
mov r9, qword [rax + 0x20]
test r9, r9
je 0x140244ceb
mov edi, dword [r9]
cmp edi, 1
jne 0x140244ceb
test byte [rax + 7], 1
jne 0x140244ceb
mov rcx, qword [rsp + 0x48]
test byte [rcx + 0x62], 1
jne 0x140244ceb
mov r10, qword [rax + 8]
lea r11, [0x1403171cf]
xor ecx, ecx
lea rdx, [0x1403266c0]
jmp 0x1402475ea
movzx esi, byte [rdx + r8]
cmp byte [rdx + rax], sil
jne 0x140247cc0
add rcx, 1
movzx eax, byte [r10 + rcx]
movzx r8d, byte [r11 + rcx]
cmp eax, r8d
jne 0x1402475d7
test eax, eax
jne 0x1402475e6
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 0x140247639
movzx r8d, byte [rsp + 0xb0]
mov byte [rax + 0x18], r8b
mov byte [rsp + 0xb0], dil
jmp 0x140244ceb
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 0x14024656d
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 0x14024656d
mov rax, qword [r15 + 0x28]
test byte [rax + 0x48], 1
jne 0x1402476d4
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14024720d
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 0x14024719d
lea rax, [0x140313768]
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 0x14024719d
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 0x140246861
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
mov dword [rbx + 0x38], edi
jmp 0x1402467b5
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 0x140244eef
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 0x1402472f5
cmp al, 0x59
je 0x14024640c
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 0x140247570
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 0x140247570
movzx r9d, word [rdi + 0x14]
test r9b, 0x24
jne 0x140247c83
test r9b, 8
jne 0x140247c75
test r9b, 0x12
je 0x1402478cc
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1402478cc
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 0x1402478da
cmp dword [rdi + 0x20], 0
je 0x1402478e2
mov rcx, rdi
call sym.vdbeMemClear
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14024791c
cmp rdi, qword [rcx + 0x1f0]
jae 0x14024790e
cmp rdi, qword [rcx + 0x1e0]
jae 0x140247ca1
cmp rdi, qword [rcx + 0x1e8]
jae 0x140247c8b
cmp qword [rcx + 0x308], 0
jne 0x140247c50
mov rcx, rdi
call sym.sqlite3_free
cmp dword [rsp + 0x50], 0
je 0x140247570
mov dword [rsp + 0x1a4], 3
jmp 0x140247570
mov edx, dword [rsp + 0x50]
mov rcx, rbx
call sym.sqlite3ReleaseTempRange.part.0
jmp 0x140246816
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 2
mov rcx, qword [rsp + 0x50]
call sym.windowCodeOp
jmp 0x1402466e9
xor eax, eax
mov qword [rsp + 0x80], rax
jmp 0x140244d2e
mov esi, edi
jmp 0x140244fb8
mov rax, qword [rsp + 0x50]
test byte [rax + 0x30], 0x80
je 0x14024799c
movzx eax, byte [rdi + 0x64]
and eax, 3
cmp al, 2
je 0x14024774b
mov rax, qword [rdi]
lea rdx, str._USING_COVERING_INDEX
jmp 0x140247755
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
mov rdi, qword [rsp + 0x70]
cmp dword [rdi + 0x24], 0
je 0x140247c28
xor ecx, ecx
mov r8, qword [rax]
test byte [r8 + 7], 1
jne 0x1402479de
mov r8, qword [rax + 8]
test byte [r8 + 4], 0x20
jne 0x140247b17
add ecx, 1
add rax, 0x18
cmp ecx, edx
jne 0x1402479c5
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 0x14024619f
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 0x140247abe
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
test rax, rax
je 0x140247abe
cmp dword [rbx + 0x30], 0
jne 0x140247abe
lea edx, [rdi - 1]
cmp edx, 1
jbe 0x140247c5d
cmp dword [rsp + 0x6c], 0
jne 0x140247c02
cmp byte [rsp + 0xb0], 0
jne 0x140247b8b
mov rcx, rsi
call sym.sqlite3WhereEnd
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rsp + 0x70]
call sym.finalizeAggFunctions.isra.0
jmp 0x14024719d
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x24], 0
jne 0x140247b79
cmp edx, 1
je 0x140247c1f
xor r10d, r10d
xor edi, edi
mov dword [rsp + 0x6c], r10d
jmp 0x140247a13
xor ecx, ecx
xor edi, edi
cmp ecx, edx
jne 0x140247a13
jmp 0x1402479e9
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 0x140246d17
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 0x140246cf0
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x24], 0
je 0x140247b06
test edx, edx
jle 0x140247b15
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
jmp 0x1402479c3
test byte [rsi + 0x44], 4
je 0x140247ad7
cmp byte [rsi + 0x41], 0
je 0x140247ad7
movzx eax, byte [rsi + 0x40]
sub eax, 1
cdqe
jmp 0x140247bc7
imul rcx, rax, 0x70
lea rdx, [rax - 1]
mov rcx, qword [rsi + rcx + 0x3c0]
test byte [rcx + 0x38], 4
jne 0x140247d0e
mov rax, rdx
cmp rax, 0xffffffffffffffff
jne 0x140247baa
movsxd rax, dword [r13 + 0x90]
cmp eax, dword [r13 + 0x94]
mov r9d, dword [rsi + 0x34]
jl 0x140247d30
xor r8d, r8d
mov edx, 9
mov rcx, r13
mov dword [rsp + 0x20], r8d
xor r8d, r8d
call sym.growOp3
jmp 0x140247ad7
mov r9d, dword [rsp + 0x6c]
mov r8d, 1
mov edx, 0x47
mov rcx, r13
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x140247ac9
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
xor edi, edi
cmp dword [rax + 0x10], 0
js 0x140247a13
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x60], rax
neg rax
sbb di, di
and di, 0x500
jmp 0x140247a13
mov rdx, rdi
call sym.measureAllocationSize
jmp 0x140247924
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 0x140247abe
movsd xmm0, qword [rdi]
call sym.doubleToInt64
jmp 0x1402478c0
mov rax, qword [rdi]
jmp 0x1402478c0
mov rax, qword [rcx + 0x1c8]
mov qword [rdi], rax
mov qword [rcx + 0x1c8], rdi
jmp 0x140247924
mov rax, qword [rcx + 0x1d8]
mov qword [rdi], rax
mov qword [rcx + 0x1d8], rdi
jmp 0x140247924
mov rax, qword [rax + 0x28]
jmp 0x1402479b4
lea r11, [0x1403171d3]
xor ecx, ecx
jmp 0x140247cde
movzx edi, byte [rdx + r8]
cmp byte [rdx + rax], dil
jne 0x140244ceb
add rcx, 1
movzx eax, byte [r10 + rcx]
movzx r8d, byte [r11 + rcx]
cmp eax, r8d
jne 0x140247ccb
test eax, eax
jne 0x140247cda
mov r8d, 1
mov edi, 2
jmp 0x14024760f
mov dword [rsp + 0x58], 0xffff8000
jmp 0x140247059
cdqe
imul rax, rax, 0x70
mov r9d, dword [rsi + rax + 0x370]
movsxd rax, dword [r13 + 0x90]
cmp eax, dword [r13 + 0x94]
jge 0x140247be5
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 0x140247ad7