Function at 0x1402a5350
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, 0x1b8
mov rax, qword [rcx]
mov rax, qword [rax]
mov r10d, dword [rax + 0x30]
mov word [rsp + 0x6e], r9w
mov rbp, rcx
mov r13, r8
mov qword [rsp + 0x208], rdx
mov dword [rsp + 0x110], r9d
mov qword [rsp + 0x80], rax
test r10d, r10d
jne 0x1402a6500
mov r15, qword [rcx + 0x10]
mov rsi, rax
mov rsi, qword [rsi]
mov eax, dword [r15 + 0x38]
movzx edi, word [r15 + 0x1c]
movzx r9d, word [r15 + 0x18]
movzx ebx, word [r15 + 0x1a]
mov qword [rsp + 0xa8], rsi
mov dword [rsp + 0x70], eax
and eax, 0x20
cmp eax, 1
mov word [rsp + 0x76], di
movzx edi, word [r15 + 0x3e]
sbb edx, edx
mov word [rsp + 0x74], r9w
and edx, 0x183
cmp eax, 1
mov word [rsp + 0x11c], di
movzx edi, word [r15 + 0x3c]
sbb eax, eax
mov dword [rsp + 0xd0], r9d
and eax, 0x1a7
mov word [rsp + 0x66], di
mov rdi, qword [r15]
add eax, 0x18
test byte [r8 + 0x64], 4
cmovne eax, edx
mov qword [rsp + 0x78], rdi
mov rdx, qword [rcx + 8]
lea rcx, [rsp + 0x140]
movzx edi, word [r15 + 0x16]
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x208]
mov word [rsp + 0x64], di
mov r8d, dword [rax + 0x44]
mov qword [rsp + 0x48], rcx
call sym.whereScanInit
xor r8d, r8d
xor r9d, r9d
mov r11, rax
mov rax, qword [r13 + 0x10]
mov word [r15 + 0x12], r8w
mov word [rsp + 0x6c], r9w
movsx esi, word [rax]
mov dword [rsp + 0x8c], esi
cmp si, 0xa
jg 0x1402a63a0
test r11, r11
je 0x1402a7319
movzx eax, word [rsp + 0x74]
mov qword [rsp + 0x200], rbp
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0xa0], rax
add rax, rax
mov qword [rsp + 0x50], rax
movzx eax, word [rsp + 0x66]
mov qword [rsp + 0xb0], 0
add eax, 8
mov esi, eax
and eax, 0x1fff8
shl rax, 3
and esi, 0xfffffff8
mov qword [rsp + 0xc8], rax
movzx eax, bx
mov rbx, r11
mov dword [rsp + 0x88], eax
mov dword [rsp + 0xd4], esi
lea rsi, [0x140344560]
movzx edi, word [rbx + 0x14]
cmp di, 0x100
je 0x1402a5501
test byte [rbx + 0x12], 0x80
je 0x1402a5523
mov rax, qword [r13 + 8]
mov rcx, qword [rsp + 0x50]
movsx rdx, word [rax + rcx]
mov rax, rdx
test edx, edx
jns 0x1402a5ab8
cmp edx, 0xffffffff
je 0x1402a5ad8
mov rax, qword [rbx + 0x28]
mov rcx, qword [r15 + 8]
mov rdx, rax
and rdx, rcx
mov qword [rsp + 0x58], rdx
jne 0x1402a5ad8
cmp di, 0x10
sete bpl
and bpl, byte [rbx + 0x13]
jne 0x1402a5e60
mov rdx, qword [rsp + 0x208]
movzx edx, byte [rdx + 0x3c]
test dl, 0x58
je 0x1402a5590
mov r8, qword [rbx]
mov r9d, dword [r8 + 4]
test r9b, 3
je 0x1402a5ad8
mov r14, qword [rsp + 0x208]
mov r14d, dword [r14 + 0x44]
cmp dword [r8 + 0x34], r14d
jne 0x1402a5ad8
and edx, 0x18
jne 0x1402a5ea0
nop
mov rdx, qword [rsp + 0x200]
cmp byte [r13 + 0x62], 0
movzx edx, byte [rdx + 0x2c]
je 0x1402a55ba
movzx r8d, word [r13 + 0x5e]
sub r8d, 1
cmp dword [rsp + 0xd0], r8d
je 0x1402a5e70
or edx, 1
mov r14, qword [rsp + 0x200]
mov r11, qword [rsp + 0x200]
mov r8d, dword [rsp + 0x88]
mov r14d, dword [r14 + 0x28]
mov byte [r11 + 0x2c], dl
mov edx, dword [rsp + 0x70]
shl r8d, 0x10
mov dword [rsp + 0x68], r14d
mov dword [r15 + 0x38], edx
movzx edx, word [rsp + 0x74]
or edx, r8d
mov dword [r15 + 0x18], edx
movzx edx, word [rsp + 0x76]
mov word [r15 + 0x1c], dx
movzx edx, word [rsp + 0x66]
mov word [r15 + 0x3c], dx
cmp dx, word [r15 + 0x40]
jae 0x1402a5dc0
mov rbp, qword [r15 + 0x48]
movzx r8d, dx
or rax, qword [rsp + 0x78]
not rcx
lea edx, [r8 + 1]
and rax, rcx
mov word [r15 + 0x3c], dx
mov qword [rbp + r8*8], rbx
mov qword [r15], rax
mov eax, edi
and ax, 1
mov word [rsp + 0x90], ax
je 0x1402a5b80
mov rcx, qword [rbx]
cmp word [rsp + 0x6c], 9
setg r9b
test byte [rcx + 5], 0x10
jne 0x1402a64a0
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x1402a567b
mov eax, dword [rax]
test eax, eax
jne 0x1402a6509
cmp byte [r13 + 0x64], 0
jns 0x1402a568b
test r9b, r9b
jne 0x1402a6612
mov r9d, dword [r15 + 0x38]
xor r11d, r11d
or r9d, 4
mov dword [r15 + 0x38], r9d
movzx ebp, word [r15 + 0x18]
test r9b, 2
jne 0x1402a5c00
movzx ecx, word [rbx + 0x10]
add ebp, 1
mov word [r15 + 0x18], bp
test cx, cx
jle 0x1402a5d68
cmp word [rsp + 0x6e], 0
mov qword [rsp + 0x128], 0
jne 0x1402a5928
mov eax, dword [r13 + 0x68]
test eax, eax
je 0x1402a5928
movzx r10d, bp
cmp dword [r13 + 0x70], r10d
jl 0x1402a5928
cmp word [rsp + 0x90], 0
je 0x1402a5708
mov rax, qword [rbx]
test byte [rax + 5], 0x10
jne 0x1402a5928
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x61], 8
jne 0x1402a5928
mov rax, qword [rbx]
test di, 0x182
jne 0x1402a58c3
movabs r14, 0x7fffffffffffffff
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x98], r14
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x200]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x10]
movsx edx, word [rax]
mov ecx, edx
imul edx, edx, 0x6667
mov eax, ecx
sar ax, 0xf
sar edx, 0x12
sub edx, eax
mov eax, ecx
lea r8d, [rdx + rdx*4]
add r8d, r8d
sub eax, r8d
movsx rax, ax
cmp rax, 1
mov r9, rax
lea r8, [rax - 2]
adc r9, 0xffffffffffffffff
cmp rax, 5
mov rax, r8
cmovb rax, r9
cmp cx, 0x261
jg 0x1402a57bf
add rax, 8
cmp cx, 0x1d
jle 0x1402a758d
sub edx, 3
mov ecx, edx
shl rax, cl
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x200]
xor r12d, r12d
mov word [rsp + 0xe8], di
lea r9, [rsp + 0x130]
mov rdi, qword [rsp + 0xf0]
mov dword [rsp + 0xd8], r11d
mov eax, dword [rax + 0x28]
mov dword [rsp + 0xf0], r10d
mov word [rsp + 0xc0], bp
mov r14, qword [rsp + 0x200]
mov dword [rsp + 0x90], eax
mov rbp, qword [rsp + 0x58]
mov qword [rsp + 0xe0], r15
mov r15, qword [rsp + 0x80]
mov qword [rsp + 0x210], r13
mov r13, r12
mov r12, qword [rsp + 0x98]
mov qword [rsp + 0xf8], rbx
mov rbx, r9
nop
cmp dword [rdi], r13d
jle 0x1402a74a6
mov rax, r13
mov rcx, r15
mov r9, rbx
mov rdx, r14
shl rax, 5
mov qword [rsp + 0x130], r12
add r13, 1
mov r8, qword [rdi + rax + 8]
call sym.whereEqualScanEst
mov ecx, dword [rsp + 0x90]
add rbp, qword [rsp + 0x130]
mov dword [r14 + 0x28], ecx
test eax, eax
je 0x1402a5840
movzx ebp, word [rsp + 0xc0]
mov r11d, dword [rsp + 0xd8]
mov r14d, eax
mov r15, qword [rsp + 0xe0]
movzx edi, word [rsp + 0xe8]
mov r10d, dword [rsp + 0xf0]
mov rbx, qword [rsp + 0xf8]
mov r13, qword [rsp + 0x210]
jmp 0x1402a5905
mov r8, qword [rax + 0x18]
mov rdx, qword [rsp + 0x200]
lea r9, [rsp + 0x128]
mov dword [rsp + 0x90], r10d
mov rcx, qword [rsp + 0x80]
mov dword [rsp + 0x58], r11d
call sym.whereEqualScanEst
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x90]
test eax, eax
mov r14d, eax
je 0x1402a590f
cmp r14d, 0xc
jne 0x1402a5afb
mov rcx, qword [rsp + 0x128]
test rcx, rcx
jne 0x1402a741e
mov r9d, dword [r15 + 0x38]
nop dword [rax]
mov rax, qword [r13 + 0x10]
movzx ebp, bp
movzx ecx, word [r15 + 0x16]
mov r8d, r11d
add cx, word [rax + rbp*2]
sub cx, word [rax + rbp*2 - 2]
test di, 0x100
je 0x1402a5eb0
movzx eax, byte [r13 + 0x64]
add ecx, 0xa
mov word [r15 + 0x16], cx
mov ebx, ecx
and eax, 3
cmp al, 3
jne 0x1402a5ceb
nop dword [rax]
movsx r11d, word [rsp + 0x6c]
lea eax, [rcx + 0x10]
mov edx, eax
movsx r10d, ax
cmp ax, r11w
jle 0x1402a5d26
lea edi, [r11 + 0x31]
cmp r10d, edi
jg 0x1402a59a0
lea edx, [r11 + 0x1f]
cmp r10d, edx
jle 0x1402a5e80
lea edx, [rax + 1]
nop word [rax + rax]
and r9d, 0x4000140
mov word [r15 + 0x14], dx
mov eax, edx
jne 0x1402a59f5
lea eax, [rcx + 0x10]
movsx r10d, dx
mov r11d, eax
movsx r9d, ax
cmp ax, dx
jg 0x1402a5e38
mov eax, edx
lea edx, [r9 + 0x31]
mov r11d, eax
cmp r10d, edx
jg 0x1402a59f0
lea edx, [r9 + 0x1f]
cmp r10d, edx
jle 0x1402a65da
add eax, 1
mov r11d, eax
nop dword [rax + rax]
mov word [r15 + 0x14], r11w
movzx edi, word [rsp + 0x6e]
add edi, r8d
mov r8d, dword [rsp + 0x8c]
add ecx, edi
add eax, edi
mov edx, ecx
movzx ecx, ax
mov rax, qword [rsp + 0x200]
shl edx, 0x10
or ecx, edx
mov rdx, r15
mov dword [r15 + 0x14], ecx
mov rcx, qword [rax + 8]
call sym.whereLoopOutputAdjust
mov rcx, qword [rsp + 0x200]
mov rdx, r15
call sym.whereLoopInsert
mov r14d, eax
mov eax, dword [r15 + 0x38]
test al, 2
cmovne bx, word [rsp + 0x64]
mov word [r15 + 0x16], bx
test al, 0x10
jne 0x1402a5a90
movzx eax, word [r15 + 0x18]
cmp ax, word [r13 + 0x60]
jae 0x1402a5a90
cmp ax, word [r13 + 0x5e]
jae 0x1402a5ec0
cmp ax, 3
ja 0x1402a63b6
mov rdx, qword [rsp + 0x208]
mov rcx, qword [rsp + 0x200]
movsx r9d, di
mov r8, r13
call sym.whereLoopAddBtreeIndex
movzx eax, word [rsp + 0x64]
mov ebx, dword [rsp + 0x68]
test r14d, r14d
sete bpl
mov word [r15 + 0x16], ax
mov rax, qword [rsp + 0x200]
mov dword [rax + 0x28], ebx
jmp 0x1402a5ae0
mov rdx, qword [r13 + 0x18]
lea rax, [rax + rax*2]
mov rcx, qword [rdx + 8]
lea rax, [rcx + rax*8]
test byte [rax + 8], 0xf
je 0x1402a5523
nop word [rax + rax]
xor r14d, r14d
mov ebp, 1
mov rcx, qword [rsp + 0x48]
call sym.whereScanNext
mov rbx, rax
test rax, rax
je 0x1402a5afb
test bpl, bpl
jne 0x1402a54f0
mov rbp, qword [rsp + 0x200]
mov rax, qword [rsp + 0x78]
movzx ebx, word [rsp + 0x74]
mov qword [r15], rax
mov eax, dword [rsp + 0x88]
mov esi, ebx
shl eax, 0x10
or ebx, eax
movzx eax, word [rsp + 0x76]
mov dword [r15 + 0x18], ebx
movzx ebx, word [rsp + 0x11c]
mov word [r15 + 0x1c], ax
mov eax, dword [rsp + 0x70]
mov edx, ebx
mov dword [r15 + 0x38], eax
movzx eax, word [rsp + 0x64]
shl edx, 0x10
mov word [r15 + 0x16], ax
movzx eax, word [rsp + 0x66]
or eax, edx
mov dword [r15 + 0x3c], eax
cmp si, bx
je 0x1402a6240
mov eax, r14d
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
test dil, 0x82
je 0x1402a5d98
mov rax, qword [r13 + 8]
mov edx, dword [r15 + 0x38]
mov rcx, qword [rsp + 0x50]
mov r9d, edx
movsx eax, word [rax + rcx]
or r9d, 1
mov dword [r15 + 0x38], r9d
cmp eax, 0xffffffff
je 0x1402a6478
test eax, eax
js 0x1402a5bd2
cmp word [rsp + 0x6e], 0
jne 0x1402a5bd2
movzx eax, word [r13 + 0x5e]
mov ecx, eax
sub eax, 1
cmp dword [rsp + 0xd0], eax
je 0x1402a6434
xor r11d, r11d
cmp byte [rsp + 0x169], 1
jbe 0x1402a569a
or r9d, 0x200000
movzx ebp, word [r15 + 0x18]
mov dword [r15 + 0x38], r9d
test r9b, 2
je 0x1402a56a9
nop dword [rax]
movsx eax, word [r15 + 0x16]
mov dword [rsp + 0x98], eax
mov r10d, eax
mov rax, qword [r15 + 0x20]
mov ebx, dword [rax + 0x68]
mov qword [rsp + 0x90], rax
test ebx, ebx
jle 0x1402a5c38
mov rdi, rax
movzx eax, bp
mov dword [rsp + 0xd8], eax
cmp eax, dword [rdi + 0x70]
jl 0x1402a5ee0
mov rbx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
xor ebp, ebp
test rbx, rbx
setne bpl
cmp rdi, 1
sbb ebp, 0xffffffff
test rbx, rbx
je 0x1402a5c7d
movzx eax, word [rbx + 0x10]
test ax, ax
jle 0x1402a6220
movzx eax, word [rsp + 0x98]
sub eax, 0x14
test byte [rbx + 0x12], 0x80
cmove r10d, eax
test rdi, rdi
je 0x1402a5cb2
movzx eax, word [rdi + 0x10]
test ax, ax
jle 0x1402a6238
lea edx, [r10 - 0x14]
test byte [rdi + 0x12], 0x80
cmove r10d, edx
test rbx, rbx
je 0x1402a5cb2
cmp word [rbx + 0x10], 0
jle 0x1402a5cb2
lea edx, [r10 - 0x14]
test ax, ax
cmovg r10d, edx
mov eax, dword [rsp + 0x98]
mov ecx, 0xa
mov r8d, r11d
sub eax, ebp
cmp r10w, 0xa
cmovge ecx, r10d
movsx ecx, cx
cmp ecx, eax
cmovg ecx, eax
mov word [r15 + 0x16], cx
mov ebx, ecx
movzx eax, byte [r13 + 0x64]
and eax, 3
cmp al, 3
je 0x1402a5968
movsx edx, word [r13 + 0x5c]
mov rdi, qword [rsp + 0x208]
movsx r11d, word [rsp + 0x6c]
mov eax, edx
shl eax, 4
sub eax, edx
mov rdx, qword [rdi + 0x20]
movsx r10d, word [rdx + 0x3c]
cdq
idiv r10d
lea eax, [rcx + rax + 1]
mov edx, eax
movsx r10d, ax
cmp ax, r11w
jg 0x1402a5981
lea eax, [r10 + 0x31]
mov edx, r11d
cmp r11d, eax
jg 0x1402a59a0
lea eax, [r10 + 0x1f]
lea edx, [r11 + 1]
cmp r11d, eax
jg 0x1402a59a0
sub r11d, r10d
lea rax, str._n_n_t_t_b_b_a_a_a
movsxd r11, r11d
movzx edx, byte [rax + r11]
add dx, word [rsp + 0x6c]
jmp 0x1402a59a0
mov rax, qword [r13 + 8]
mov rdx, qword [rsp + 0x50]
cmp word [rax + rdx], 0
js 0x1402a56be
add cx, word [r15 + 0x16]
mov r8d, r11d
sub ecx, r11d
mov word [r15 + 0x16], cx
mov ebx, ecx
jmp 0x1402a5cdb
test di, 0x100
je 0x1402a6517
mov r9d, dword [r15 + 0x38]
xor r11d, r11d
or r9d, 8
mov dword [r15 + 0x38], r9d
jmp 0x1402a569a
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xa8]
call sym.sqlite3DbMallocRawNN
mov rbp, rax
test rax, rax
je 0x1402a6965
movzx r8d, word [r15 + 0x40]
mov rdx, qword [r15 + 0x48]
mov rcx, rbp
shl r8, 3
call sym.memcpy
mov rdx, qword [r15 + 0x48]
lea rax, [r15 + 0x58]
cmp rdx, rax
je 0x1402a5e10
mov rcx, qword [rsp + 0xa8]
call sym.sqlite3DbFreeNN
movzx eax, word [rsp + 0xd4]
movzx r8d, word [r15 + 0x3c]
mov qword [r15 + 0x48], rbp
mov rcx, qword [r15 + 8]
mov word [r15 + 0x40], ax
mov rax, qword [rbx + 0x28]
jmp 0x1402a5621
lea edx, [r10 + 0x31]
cmp r9d, edx
jg 0x1402a59f0
lea edx, [r10 + 0x1f]
cmp r9d, edx
jle 0x1402a65f6
lea eax, [rcx + 0x11]
mov r11d, eax
jmp 0x1402a59f0
xor r14d, r14d
jmp 0x1402a5ae0
or edx, 2
jmp 0x1402a55bd
sub r10d, r11d
lea rdx, str._n_n_t_t_b_b_a_a_a
movsxd r10, r10d
movzx edx, byte [rdx + r10]
add edx, eax
jmp 0x1402a59a0
and r9d, 2
je 0x1402a5590
jmp 0x1402a5ad8
mov word [r15 + 0x16], cx
mov ebx, ecx
jmp 0x1402a5cdb
movzx edx, byte [r13 + 0x64]
and edx, 3
cmp dl, 2
je 0x1402a5a90
cmp ax, 3
jbe 0x1402a5a74
jmp 0x1402a63b6
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov qword [rsp + 0xe8], rax
test byte [rax + 0x61], 8
jne 0x1402a5c38
mov rax, qword [rsp + 0x200]
movzx edi, bp
mov r12d, dword [rax + 0x28]
cmp dword [rsp + 0xd8], r12d
jne 0x1402a69a2
mov rdx, qword [rax + 0x20]
movzx eax, word [r15 + 0x1c]
movzx ebp, word [r15 + 0x1a]
mov qword [rsp + 0x128], rdx
mov dword [rsp + 0xd8], eax
test rdx, rdx
je 0x1402a5f41
mov word [rdx + 0x1c], r12w
test r12d, r12d
jne 0x1402a736b
mov rax, qword [rsp + 0x90]
mov r14, qword [rax + 0x90]
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0x38]
cmp byte [rax + rdi], 0
jne 0x1402a6ee5
mov rdi, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
test rbx, rbx
je 0x1402a72de
mov rax, qword [rbx]
mov rdx, qword [rsp + 0x90]
lea r8, [rsp + 0x128]
mov dword [rsp + 0xf0], r11d
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0xe8], r8
mov r9, qword [rax + 0x18]
lea rax, [rsp + 0x120]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x20], ebp
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xc0], r9
call sym.sqlite3Stat4ProbeSetValue
mov r11d, dword [rsp + 0xf0]
test eax, eax
mov r10d, eax
jne 0x1402a7328
mov ecx, dword [rsp + 0x120]
test ecx, ecx
je 0x1402a7328
mov r9, qword [rsp + 0xc0]
movzx eax, byte [r9]
cmp al, 0xb0
jne 0x1402a6019
movzx eax, byte [r9 + 2]
cmp al, 0xb1
je 0x1402a7797
mov edx, 1
cmp al, 0x8a
jne 0x1402a6034
mov rax, qword [r9 + 0x20]
mov rax, qword [rax + 0x20]
mov edx, dword [rax]
cmp ecx, edx
mov eax, 0xc
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x90]
mov ebp, 0x18
lea r9, [rsp + 0x130]
mov dword [rsp + 0xf8], r10d
cmovge ebp, eax
xor r8d, r8d
mov dword [rsp + 0xf0], r11d
call sym.whereKeyStats.constprop.0
and bp, word [rbx + 0x14]
mov r11d, dword [rsp + 0xf0]
mov dword [rsp + 0xc0], eax
mov r10d, dword [rsp + 0xf8]
mov rax, qword [rsp + 0x130]
je 0x1402a60a0
add rax, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x58]
cmp rbx, rax
cmovae rax, rbx
sub dword [rsp + 0x98], 1
xor ebp, ebp
xor ebx, ebx
mov qword [rsp + 0x58], rax
mov r9d, 0xffffffff
test rdi, rdi
je 0x1402a61ee
mov rax, qword [rdi]
mov r8, qword [rsp + 0xe8]
mov dword [rsp + 0xf0], r11d
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x80]
mov r9, qword [rax + 0x18]
mov rax, qword [rsp + 0xe0]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0xd8]
mov qword [rsp + 0xd8], r9
mov dword [rsp + 0x20], eax
call sym.sqlite3Stat4ProbeSetValue
mov r9, qword [rsp + 0xd8]
mov r11d, dword [rsp + 0xf0]
test eax, eax
mov r10d, eax
jne 0x1402a735d
mov ecx, dword [rsp + 0x120]
test ecx, ecx
je 0x1402a735d
movzx eax, byte [r9]
cmp al, 0xb0
jne 0x1402a6154
movzx eax, byte [r9 + 2]
cmp al, 0xb1
je 0x1402a77b9
mov edx, 1
cmp al, 0x8a
jne 0x1402a616f
mov rax, qword [r9 + 0x20]
mov rax, qword [rax + 0x20]
mov edx, dword [rax]
cmp ecx, edx
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x90]
mov eax, 0xc
lea r9, [rsp + 0x130]
mov r12d, 0x18
mov r8d, 1
mov dword [rsp + 0xe0], r10d
mov dword [rsp + 0xd8], r11d
cmovge r12d, eax
call sym.whereKeyStats.constprop.0
and r12w, word [rdi + 0x14]
mov r11d, dword [rsp + 0xd8]
mov r9d, eax
mov r10d, dword [rsp + 0xe0]
mov rax, qword [rsp + 0x130]
je 0x1402a61dd
add rax, qword [rsp + 0x138]
cmp r14, rax
cmova r14, rax
sub dword [rsp + 0x98], 1
xor edi, edi
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x200]
mov qword [rcx + 0x20], rax
test r10d, r10d
je 0x1402a73f6
movzx r10d, word [rsp + 0x98]
mov r9d, dword [r15 + 0x38]
jmp 0x1402a5c58
movzx ecx, word [rsp + 0x98]
lea r10d, [rax + rcx]
jmp 0x1402a5c7d
add r10d, eax
jmp 0x1402a5c9b
mov edx, dword [rsp + 0xd0]
movzx eax, word [r13 + 0x5e]
add edx, 1
cmp edx, eax
jge 0x1402a5b5f
movzx esi, word [rsp + 0x66]
cmp word [rsp + 0x74], si
jne 0x1402a5b5f
movzx eax, byte [r13 + 0x64]
and eax, 0xffffffc0
cmp al, 0x80
jne 0x1402a5b5f
mov rsi, qword [rsp + 0xa8]
test byte [rsi + 0x61], 0x40
jne 0x1402a5b5f
movzx eax, word [rsp + 0x74]
mov rcx, qword [r13 + 0x10]
lea rbx, [rax + rax + 2]
lea r9, [rcx + rbx]
cmp word [r9], 0x29
jle 0x1402a5b5f
movzx r8d, word [rsp + 0x66]
movzx eax, word [r15 + 0x40]
add r8d, 1
cmp r8d, eax
jle 0x1402a77a2
mov rdx, r15
mov rcx, rsi
call sym.whereLoopResize.part.0
mov r14d, eax
test eax, eax
jne 0x1402a5b5f
movzx esi, word [r15 + 0x3c]
mov rcx, qword [r13 + 0x10]
movzx edx, word [r15 + 0x18]
movzx eax, word [r15 + 0x3e]
mov word [rsp + 0x66], si
mov r8d, dword [r15 + 0x38]
lea r9, [rcx + rbx]
movzx r10d, word [r15 + 0x16]
movzx esi, word [rsp + 0x66]
add edx, 1
add eax, 1
mov r11, qword [r15 + 0x48]
mov word [r15 + 0x18], dx
shl eax, 0x10
or r8d, 0x8000
xor r14d, r14d
lea edx, [rsi + 1]
movzx edx, dx
or eax, edx
mov dword [r15 + 0x3c], eax
movzx eax, si
movzx esi, word [rsp + 0x110]
mov qword [r11 + rax*8], 0
movzx eax, word [rcx + rbx - 2]
movzx ecx, word [r9]
mov dword [r15 + 0x38], r8d
mov r8, r13
lea edx, [r10 + rcx]
sub edx, eax
lea eax, [rax + rsi + 5]
mov word [r15 + 0x16], dx
sub eax, ecx
mov rdx, qword [rsp + 0x208]
mov rcx, rbp
movsx r9d, ax
call sym.whereLoopAddBtreeIndex
movzx eax, word [rsp + 0x64]
mov word [r15 + 0x16], ax
movzx eax, word [rsp + 0x74]
mov word [r15 + 0x18], ax
movzx eax, word [rsp + 0x11c]
mov word [r15 + 0x3e], ax
mov eax, dword [rsp + 0x70]
mov dword [r15 + 0x38], eax
jmp 0x1402a5b5f
movsx rcx, si
call sym.sqlite3LogEst
sub eax, 0x21
mov word [rsp + 0x6c], ax
jmp 0x1402a5479
mov rbx, qword [rsp + 0x80]
mov rax, qword [rbx]
mov edx, dword [rax + 0x198]
test edx, edx
jne 0x1402a66ae
mov r8, qword [rax + 0x210]
test r8, r8
je 0x1402a5a74
cmp dword [rbx + 0x18], 9
je 0x1402a641d
mov ecx, dword [rbx + 0x98]
lea edx, [rcx + 1]
mov dword [rsp + 0x58], ecx
mov dword [rbx + 0x98], edx
cmp edx, dword [rax + 0x220]
jb 0x1402a5a74
mov rcx, qword [rax + 0x218]
call r8
test eax, eax
je 0x1402a641d
add dword [rbx + 0x30], 1
mov dword [rbx + 0x18], 9
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x98], 0
jmp 0x1402a5a74
test byte [r13 + 0x64], 8
jne 0x1402a6478
cmp cx, 1
je 0x1402a6464
or edx, 0x10001
xor r11d, r11d
cmp byte [rsp + 0x169], 1
mov dword [r15 + 0x38], edx
mov r9d, edx
ja 0x1402a5be3
jmp 0x1402a569a
cmp byte [r13 + 0x62], 0
je 0x1402a6441
cmp di, 2
jne 0x1402a6441
nop dword [rax]
or edx, 0x1001
xor r11d, r11d
cmp byte [rsp + 0x169], 1
mov dword [r15 + 0x38], edx
mov r9d, edx
ja 0x1402a5be3
jmp 0x1402a569a
cmp dx, 1
jbe 0x1402a71e4
movzx edx, dx
mov rax, rbp
mov r11d, 0x2e
xor r10d, r10d
sub edx, 2
lea r8, [rbp + rdx*8 + 8]
nop dword [rax]
mov rdx, qword [rax]
test rdx, rdx
je 0x1402a64d7
cmp qword [rdx], rcx
cmove r11d, r10d
add rax, 8
cmp r8, rax
jne 0x1402a64c8
cmp byte [r13 + 0x64], 0
jns 0x1402a64f0
test r9b, r9b
jne 0x1402a6975
mov r9d, dword [r15 + 0x38]
jmp 0x1402a5692
mov r14d, dword [rax + 0x18]
jmp 0x1402a5b5f
movsxd rcx, eax
call sym.sqlite3LogEst
movsx r11d, ax
jmp 0x1402a64e0
mov rax, qword [rsp + 0x208]
mov rdx, qword [rbx]
mov eax, dword [rax + 0x44]
mov rcx, qword [rdx + 0x10]
mov dword [rsp + 0x98], eax
movzx eax, byte [rcx]
cmp al, 0xb0
je 0x1402a66cc
cmp al, 0xb1
je 0x1402a6ed9
mov ebp, 1
cmp al, 0x8a
je 0x1402a66d5
mov eax, dword [r15 + 0x38]
test dil, 0x24
je 0x1402a6670
nop
or eax, 0x22
mov word [r15 + 0x1a], bp
mov dword [r15 + 0x38], eax
mov r9d, eax
test byte [rbx + 0x13], 1
je 0x1402a6ebd
movzx r8d, word [r15 + 0x3c]
lea rax, [rbx + 0x38]
movzx edx, word [r15 + 0x40]
mov qword [rsp + 0xb0], rax
mov rax, r8
add r8d, 1
cmp r8d, edx
jg 0x1402a6f0a
lea ecx, [rax + 1]
mov rdx, qword [r15 + 0x48]
or r9d, 0x10
mov r11d, 1
mov word [r15 + 0x3c], cx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0xb8], rbx
mov qword [rdx + rax*8], rcx
mov word [r15 + 0x1c], r11w
xor r11d, r11d
mov dword [r15 + 0x38], r9d
jmp 0x1402a569a
sub r10d, r9d
lea r9, str._n_n_t_t_b_b_a_a_a
movsxd rdx, r10d
movzx edx, byte [r9 + rdx]
add eax, edx
mov r11d, eax
jmp 0x1402a59f0
sub r9d, r10d
movsxd rdx, r9d
lea r9, str._n_n_t_t_b_b_a_a_a
movzx edx, byte [r9 + rdx]
add eax, edx
mov r11d, eax
jmp 0x1402a59f0
mov rax, qword [r13 + 0x10]
mov rcx, qword [rsp + 0x50]
xor r11d, r11d
xor r9d, r9d
movzx r10d, word [rax + rcx]
xor eax, eax
sub ax, word [rsp + 0x6c]
lea eax, [r10 + rax + 0xa]
cmp ax, r9w
jns 0x1402a64f0
cmp word [rsp + 0x6e], 1
jg 0x1402a5ad8
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x62], 2
jne 0x1402a5ad8
mov r9d, dword [r15 + 0x38]
or r9d, 0x100000
jmp 0x1402a5692
mov r9d, eax
mov word [r15 + 0x1c], bp
or r9d, 0x12
mov dword [r15 + 0x38], r9d
test al, 0x20
je 0x1402a6ea1
movzx edx, word [r15 + 0x3c]
mov rax, qword [r15 + 0x48]
mov qword [rsp + 0xb0], rbx
xor r11d, r11d
mov rax, qword [rax + rdx*8 - 0x10]
mov qword [rsp + 0xb8], rax
jmp 0x1402a569a
add dword [rbx + 0x30], 1
cmp qword [rax + 0x210], 0
mov dword [rbx + 0x18], 9
je 0x1402a5a74
jmp 0x1402a641d
movzx eax, byte [rcx + 2]
jmp 0x1402a653b
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + 0x20]
mov r8d, dword [rax]
movzx eax, word [r13 + 0x60]
sub eax, dword [rsp + 0xd0]
cmp eax, r8d
cmovle r8d, eax
mov dword [rsp + 0xb0], r8d
cmp r8d, 1
jle 0x1402a77ce
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xb8], r15
mov ebp, 1
mov word [rsp + 0xc0], di
mov rdi, r13
mov r13d, ebp
lea r8, [rax + 1]
mov rbp, r8
nop
mov rdx, qword [rdx + 0x18]
movsxd rax, r13d
shl rax, 5
mov r12, qword [rcx + rax + 8]
mov rcx, qword [rdx + 0x20]
test byte [rdx + 5], 0x10
je 0x1402a68f0
add rax, qword [rcx + 0x20]
mov r14, qword [rax + 8]
cmp byte [r12], 0xa7
jne 0x1402a68c0
mov eax, dword [rsp + 0x98]
cmp eax, dword [r12 + 0x2c]
jne 0x1402a68c0
mov rax, qword [rdi + 8]
movzx eax, word [rax + rbp*2]
cmp word [r12 + 0x30], ax
jne 0x1402a68c0
mov rax, qword [rdi + 0x38]
mov rcx, qword [rsp + 0xa0]
movzx ecx, byte [rax + rcx]
cmp byte [rax + rbp], cl
jne 0x1402a68c0
mov rcx, r12
call sym.sqlite3ExprAffinity
mov rcx, r14
mov r15d, eax
call sym.sqlite3ExprAffinity
cmp al, 0x40
jle 0x1402a6900
cmp r15b, 0x40
jle 0x1402a6900
cmp al, 0x42
jg 0x1402a6940
mov eax, 0x41
cmp r15b, 0x42
jg 0x1402a6940
movsx rdx, word [r12 + 0x30]
mov rcx, qword [rdi + 0x18]
test dx, dx
js 0x1402a68c0
cmp word [rcx + 0x36], dx
jle 0x1402a68c0
mov r15, qword [rcx + 8]
lea rdx, [rdx + rdx*2]
lea rdx, [r15 + rdx*8]
movzx r9d, byte [rdx + 0xc]
cmp r9b, al
jne 0x1402a68c0
test byte [r12 + 5], 2
jne 0x1402a68a8
test r14, r14
je 0x1402a682f
test byte [r14 + 5], 2
jne 0x1402a6950
mov rcx, qword [rsp + 0x80]
mov rdx, r12
call sym.sqlite3ExprCollSeq
test rax, rax
je 0x1402a6950
mov rdx, qword [rdi + 0x40]
mov r9, qword [rax]
xor ecx, ecx
mov r10, qword [rdx + rbp*8]
jmp 0x1402a686d
movzx edx, byte [rsi + rdx]
cmp byte [rsi + rax], dl
jne 0x1402a68c0
add rcx, 1
movzx eax, byte [r9 + rcx]
movzx edx, byte [r10 + rcx]
cmp eax, edx
jne 0x1402a6860
test eax, eax
jne 0x1402a6869
add r13d, 1
add rbp, 1
cmp dword [rsp + 0xb0], r13d
je 0x1402a733d
mov rdx, qword [rbx]
mov rax, qword [rdx + 0x10]
mov rcx, qword [rax + 0x20]
jmp 0x1402a6730
mov rcx, qword [rsp + 0x80]
mov rdx, r12
call sym.sqlite3ExprCollSeq
test rax, rax
jne 0x1402a6848
nop dword [rax]
mov r15, qword [rsp + 0xb8]
mov ebp, r13d
mov r13, rdi
movzx edi, word [rsp + 0xc0]
mov eax, dword [r15 + 0x38]
test dil, 0x24
je 0x1402a6670
jmp 0x1402a6560
mov r14, qword [rcx + rax + 8]
jmp 0x1402a6756
movsx r10, word [r12 + 0x30]
mov edx, r15d
mov r9d, 0x44
or edx, 0x40
cmp al, 0x41
cmovl eax, edx
mov rdx, r10
test r10d, r10d
js 0x1402a680a
mov rcx, qword [rdi + 0x18]
movsx r11d, word [rcx + 0x36]
cmp r10d, r11d
jge 0x1402a680a
jmp 0x1402a67f9
mov eax, 0x43
jmp 0x1402a67dc
mov rcx, qword [rsp + 0x80]
mov rdx, r14
call sym.sqlite3ExprCollSeq
jmp 0x1402a68b8
mov rbp, qword [rsp + 0x200]
xor r14d, r14d
jmp 0x1402a5b03
mov rax, qword [r13 + 0x10]
mov rcx, qword [rsp + 0x50]
mov r9d, r11d
movzx r10d, word [rax + rcx]
xor eax, eax
cmp r11d, 0xa
jle 0x1402a6628
movsxd rcx, r11d
call sym.sqlite3LogEst
sub eax, 0x21
jmp 0x1402a6628
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x1402a7543
movzx ebp, byte [rax + rdi]
mov rax, qword [rsp + 0x90]
mov dword [rsp + 0xe0], r10d
mov dword [rsp + 0xc0], r11d
mov qword [rsp + 0x120], 0
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x128], 0
mov rdx, qword [rax + rdi*8]
mov rdi, qword [rsp + 0x80]
mov rcx, rdi
call sym.sqlite3LocateCollSeq
mov r11d, dword [rsp + 0xc0]
mov r10d, dword [rsp + 0xe0]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x1402a6f30
mov rax, qword [rax]
xor r9d, r9d
movzx r8d, bpl
mov rcx, rdi
mov rdx, qword [rax + 0x18]
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
call sym.stat4ValueFromExpr
mov r11d, dword [rsp + 0xc0]
mov dword [rsp + 0x118], 0
test eax, eax
mov r10d, dword [rsp + 0xe0]
sete dl
cmp qword [rsp + 0xb0], 0
setne byte [rsp + 0x11f]
je 0x1402a7191
test dl, dl
je 0x1402a7191
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x80]
xor r9d, r9d
movzx r8d, bpl
mov dword [rsp + 0xe0], r10d
mov rax, qword [rax]
mov dword [rsp + 0xc0], r11d
mov rdx, qword [rax + 0x18]
lea rax, [rsp + 0x128]
mov qword [rsp + 0x20], rax
call sym.stat4ValueFromExpr
mov r11d, dword [rsp + 0xc0]
cmp qword [rsp + 0x128], 0
mov r10d, dword [rsp + 0xe0]
je 0x1402a765c
mov dword [rsp + 0x114], 0
mov r12, qword [rsp + 0x120]
lea rbx, [rsp + 0x130]
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0x100], rbx
test eax, eax
jne 0x1402a6c49
mov dword [rsp + 0xc0], r11d
mov r14d, r10d
mov qword [rsp + 0x210], r13
mov r13, qword [rsp + 0x58]
nop dword [rax]
mov rax, qword [rsp + 0x90]
cmp dword [rax + 0x68], r13d
jle 0x1402a71c4
mov rbx, rax
lea rax, [r13 + r13*4]
mov rdx, qword [rbx + 0x80]
mov ebx, 1
lea rax, [rdx + rax*8]
mov r9, qword [rax]
mov r10d, dword [rax + 8]
movzx r8d, byte [r9]
test r8b, r8b
js 0x1402a70e9
cmp ebx, r8d
jge 0x1402a70c2
cmp r10d, r8d
jl 0x1402a70c2
mov eax, dword [rsp + 0xd8]
xor edi, edi
movsxd rbp, r8d
mov r12, r9
mov qword [rsp + 0xf0], r13
mov r13d, r8d
lea r11d, [rax + 1]
mov dword [rsp + 0xf8], r10d
mov r10, r15
mov r15d, r11d
jmp 0x1402a6bde
mov edx, eax
lea rcx, [0x1403444c0]
movzx ecx, byte [rcx + rdx]
add edi, 1
add ecx, ebp
cmp r15d, edi
je 0x1402a6fba
movsxd rbp, ecx
movsxd rcx, ebx
add rcx, r12
movzx eax, byte [rcx]
test al, al
js 0x1402a6f50
add ebx, 1
cmp r13d, ebx
jge 0x1402a6bc0
mov r15, r10
lea rax, [0x14033123c]
mov r10d, r14d
mov r13, qword [rsp + 0x210]
mov dword [rsp + 0x58], r10d
mov r9d, 0x1477d
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call sym.sqlite3_log
mov r12, qword [rsp + 0x120]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rsp + 0xc0]
mov ebx, dword [rsp + 0x114]
sub ebx, dword [rsp + 0x118]
cmp qword [rsp + 0xb0], 0
sete dl
cmp qword [rsp + 0xb8], 0
sete al
or dl, al
jne 0x1402a7241
xor edi, edi
cmp ebx, 1
jg 0x1402a7241
test r12, r12
je 0x1402a7638
test word [r12 + 0x14], 0x9000
jne 0x1402a6c9f
mov r8d, dword [r12 + 0x20]
test r8d, r8d
je 0x1402a6cc1
mov rcx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.vdbeMemClear
mov r10d, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x58]
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x1402a6cfc
cmp qword [rcx + 0x1f0], r12
jbe 0x1402a6cee
cmp qword [rcx + 0x1e0], r12
jbe 0x1402a7673
cmp qword [rcx + 0x1e8], r12
jbe 0x1402a7626
cmp qword [rcx + 0x308], 0
jne 0x1402a75f7
mov rcx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.sqlite3_free
mov r12, qword [rsp + 0x128]
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x90]
test r12, r12
je 0x1402a6dc1
test word [r12 + 0x14], 0x9000
jne 0x1402a6d42
mov ecx, dword [r12 + 0x20]
test ecx, ecx
je 0x1402a6d64
mov rcx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.vdbeMemClear
mov r10d, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x58]
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x1402a6d9f
cmp qword [rcx + 0x1f0], r12
jbe 0x1402a6d91
cmp qword [rcx + 0x1e0], r12
jbe 0x1402a7645
cmp qword [rcx + 0x1e8], r12
jbe 0x1402a7780
cmp qword [rcx + 0x308], 0
jne 0x1402a75d0
mov rcx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.sqlite3_free
mov r10d, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x58]
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x1402a6e71
test word [rax + 0x14], 0x9000
jne 0x1402a6de1
mov edx, dword [rax + 0x20]
test edx, edx
je 0x1402a6e08
mov rcx, qword [rsp + 0xe0]
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.vdbeMemClear
mov r10d, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x58]
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1402a6e4a
cmp qword [rcx + 0x1f0], rax
jbe 0x1402a6e3c
cmp qword [rcx + 0x1e0], rax
jbe 0x1402a7716
cmp qword [rcx + 0x1e8], rax
jbe 0x1402a775e
cmp qword [rcx + 0x308], 0
jne 0x1402a75a4
mov rcx, qword [rsp + 0xe0]
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.sqlite3_free
mov r10d, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x58]
mov r9d, dword [r15 + 0x38]
test edi, edi
jne 0x1402a73e7
mov rbx, qword [rsp + 0xb8]
movzx ebp, byte [rsp + 0x11f]
mov rdi, qword [rsp + 0xb0]
cmp rbx, 1
sbb ebp, 0xffffffff
jmp 0x1402a5c58
mov qword [rsp + 0xb0], rbx
xor r11d, r11d
mov qword [rsp + 0xb8], 0
jmp 0x1402a569a
mov qword [rsp + 0xb8], rbx
xor r11d, r11d
mov qword [rsp + 0xb0], 0
jmp 0x1402a569a
mov rcx, qword [rcx + 0x20]
mov r8d, dword [rcx]
jmp 0x1402a66e0
mov eax, ebp
mov rdi, qword [rsp + 0xb8]
mov ebp, dword [rsp + 0xd8]
mov rbx, qword [rsp + 0xb0]
mov dword [rsp + 0xd8], eax
jmp 0x1402a5f7f
mov rcx, qword [rsp + 0xa8]
mov rdx, r15
call sym.whereLoopResize.part.0
test eax, eax
jne 0x1402a6965
movzx eax, word [r15 + 0x3c]
mov r9d, dword [r15 + 0x38]
jmp 0x1402a659f
mov dword [rsp + 0x118], 0xffffffff
xor eax, eax
mov edx, 1
jmp 0x1402a6a6f
movzx edx, byte [rcx + 1]
test dl, dl
jns 0x1402a70b1
movzx r11d, byte [rcx + 2]
test r11b, r11b
jns 0x1402a7078
mov rdx, qword [rsp + 0x100]
mov qword [rsp + 0x58], r10
call sym.sqlite3GetVarint
mov r10, qword [rsp + 0x58]
movzx edx, al
mov rax, qword [rsp + 0x130]
mov ecx, eax
cmp rax, rcx
je 0x1402a7093
add ebx, edx
cmp ebx, r13d
jg 0x1402a6bf7
mov ecx, 0x7ffffff9
add edi, 1
mov eax, 0xffffffff
add ecx, ebp
cmp r15d, edi
jne 0x1402a6bdb
mov r15, r10
mov r10d, dword [rsp + 0xf8]
mov r9, r12
mov r13, qword [rsp + 0xf0]
mov r12d, eax
cmp r10d, ecx
jl 0x1402a73c0
cmp qword [rsp + 0xe0], 0
je 0x1402a714c
mov r8, qword [rsp + 0xe0]
lea rcx, [r9 + rbp]
mov edx, r12d
call sym.sqlite3VdbeSerialGet
mov rax, qword [rsp + 0xe8]
mov rdx, r8
movzx eax, byte [rax + 0x64]
mov byte [r8 + 0x16], al
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x1402a7039
mov r8, qword [rsp + 0x108]
call sym.sqlite3MemCompare
cmp eax, 0x80000000
adc dword [rsp + 0x118], 0
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x1402a7068
mov r8, qword [rsp + 0x108]
mov rdx, qword [rsp + 0xe0]
call sym.sqlite3MemCompare
cmp eax, 0x80000000
adc dword [rsp + 0x114], 0
add r13, 1
jmp 0x1402a6b40
shl eax, 0xe
shl edx, 7
and edx, 0x3f80
and eax, 0x1fc000
or eax, edx
mov edx, 3
or eax, r11d
add ebx, edx
cmp ebx, r13d
jg 0x1402a6bf7
cmp eax, 0x7f
jbe 0x1402a6bc0
lea ecx, [rax - 0xc]
shr ecx, 1
jmp 0x1402a6bcd
shl eax, 7
and eax, 0x3f80
or eax, edx
mov edx, 2
jmp 0x1402a7093
mov r10d, r14d
lea rax, [0x14033123c]
mov r13, qword [rsp + 0x210]
mov r9d, 0x14777
mov dword [rsp + 0x58], r10d
mov qword [rsp + 0x20], rax
jmp 0x1402a6c1c
movzx edx, byte [r9 + 1]
test dl, dl
jns 0x1402a7229
movzx ecx, byte [r9 + 2]
test cl, cl
jns 0x1402a7203
mov rdx, qword [rsp + 0x100]
mov rcx, r9
mov qword [rsp + 0x58], r9
mov dword [rsp + 0xf0], r10d
call sym.sqlite3GetVarint
mov r8, qword [rsp + 0x130]
mov r9, qword [rsp + 0x58]
mov r10d, dword [rsp + 0xf0]
movzx ebx, al
mov edx, r8d
cmp r8, rdx
mov edx, 0xffffffff
cmovne r8d, edx
jmp 0x1402a6b7e
mov rcx, qword [rsp + 0xe8]
mov edx, 0x38
mov qword [rsp + 0x58], r9
call sym.sqlite3DbMallocZero
mov r9, qword [rsp + 0x58]
test rax, rax
mov qword [rsp + 0xe0], rax
je 0x1402a71c4
mov rbx, qword [rsp + 0xe8]
mov r10d, 1
mov word [rax + 0x14], r10w
mov qword [rax + 0x18], rbx
jmp 0x1402a6feb
add ebx, 1
mov dword [rsp + 0x114], ebx
mov r12, qword [rsp + 0x120]
test r12, r12
jne 0x1402a6b00
cmp qword [rsp + 0x128], 0
jne 0x1402a6b00
mov r9d, dword [r15 + 0x38]
jmp 0x1402a6e7d
mov r11d, dword [rsp + 0xc0]
mov r13, qword [rsp + 0x210]
mov r10d, r14d
mov r12, qword [rsp + 0x120]
jmp 0x1402a6c49
cmp byte [r13 + 0x64], 0
jns 0x1402a71f4
test r9b, r9b
jne 0x1402a76ce
mov r9d, dword [r15 + 0x38]
mov r11d, 0x2e
jmp 0x1402a5692
shl r8d, 0xe
shl edx, 7
mov ebx, 3
mov eax, r8d
and edx, 0x3f80
and eax, 0x1fc000
or eax, edx
or eax, ecx
mov r8d, eax
jmp 0x1402a6b7e
shl r8d, 7
mov ebx, 2
and r8d, 0x3f80
or r8d, edx
jmp 0x1402a6b7e
mov rax, qword [rsp + 0x90]
movsxd rax, dword [rax + 0x68]
cmp rax, 7
ja 0x1402a7525
cmp rax, 1
jbe 0x1402a7777
mov ecx, 0x1e
add rax, rax
mov edx, ecx
sub ecx, 0xa
cmp rax, 7
jbe 0x1402a7266
and eax, 7
lea rcx, [0x14033e180]
movzx ecx, word [rcx + rax*2]
lea ecx, [rdx + rcx - 0xa]
movsx edx, cx
test ebx, ebx
mov eax, 1
cmovg eax, ebx
cdqe
cmp ebx, 7
jg 0x1402a7504
cmp ebx, 1
jle 0x1402a72cf
mov ecx, 0x1e
add rax, rax
mov r8d, ecx
sub ecx, 0xa
cmp rax, 7
jbe 0x1402a72a8
lea rcx, [0x14033e180]
and eax, 7
movzx eax, word [rcx + rax*2]
mov ecx, edx
lea r8d, [r8 + rax - 0xa]
sub ecx, r8d
sub word [r15 + 0x16], cx
mov edi, 1
jmp 0x1402a6c82
test rdi, rdi
je 0x1402a7455
lea rax, [rsp + 0x128]
xor ebp, ebp
mov dword [rsp + 0xc0], 0xfffffffe
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0xe0], rax
jmp 0x1402a60cc
movzx eax, bx
mov dword [rsp + 0x88], eax
jmp 0x1402a696d
mov dword [rsp + 0xc0], 0xfffffffe
mov ebp, 1
jmp 0x1402a60bd
mov r13, rdi
mov r15, qword [rsp + 0xb8]
movzx edi, word [rsp + 0xc0]
movzx ebp, word [rsp + 0xb0]
jmp 0x1402a6550
add ebp, 1
mov r9d, 0xffffffff
jmp 0x1402a61ee
mov rcx, qword [rsp + 0x90]
lea r9, [rsp + 0x130]
xor r8d, r8d
mov dword [rsp + 0xe0], r10d
mov dword [rsp + 0xc0], r11d
call sym.whereKeyStats.constprop.0
mov rax, qword [rsp + 0x130]
mov r10d, dword [rsp + 0xe0]
mov r11d, dword [rsp + 0xc0]
mov qword [rsp + 0x58], rax
add rax, qword [rsp + 0x138]
mov r14, rax
jmp 0x1402a5f59
mov r10d, r14d
lea rax, [0x14033123c]
mov r13, qword [rsp + 0x210]
mov r9d, 0x14783
mov dword [rsp + 0x58], r10d
mov qword [rsp + 0x20], rax
jmp 0x1402a6c1c
movzx ebx, word [r15 + 0x16]
mov r8d, r11d
mov ecx, ebx
jmp 0x1402a5cdb
mov eax, 0xa
cmp qword [rsp + 0x58], r14
jb 0x1402a76f2
mov ecx, dword [rsp + 0x98]
cmp ecx, eax
cmovle eax, ecx
mov dword [rsp + 0x98], eax
jmp 0x1402a620b
call sym.sqlite3LogEst
mov word [r15 + 0x16], ax
cmp r10d, 1
je 0x1402a7692
movzx ebx, word [rsp + 0x64]
mov r9d, dword [r15 + 0x38]
mov r8d, r11d
cmp bx, ax
cmovle eax, ebx
sub eax, r11d
mov word [r15 + 0x16], ax
mov ecx, eax
mov ebx, eax
jmp 0x1402a5cdb
mov rax, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x200]
mov qword [rbx + 0x20], rax
cmp qword [rsp + 0x58], r14
jb 0x1402a772f
mov ebx, dword [rsp + 0x98]
mov eax, 0xa
mov r9d, dword [r15 + 0x38]
cmp ebx, 0xa
cmovle eax, ebx
cmp r10w, 0xa
mov dword [rsp + 0x98], eax
mov eax, 0xa
cmovg r10d, eax
xor ebp, ebp
jmp 0x1402a5cb2
mov qword [rsp + 0x58], rbp
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x58]
mov r11d, dword [rsp + 0xd8]
mov r15, qword [rsp + 0xe0]
movzx edi, word [rsp + 0xe8]
cmp rcx, rax
mov r10d, dword [rsp + 0xf0]
mov rbx, qword [rsp + 0xf8]
cmovbe rax, rcx
movzx ebp, word [rsp + 0xc0]
mov r13, qword [rsp + 0x210]
mov qword [rsp + 0x128], rax
jmp 0x1402a590f
bsr r8, rax
mov ecx, 0x3c
xor r8, 0x3f
sub ecx, r8d
lea r8d, [rcx + rcx*4]
shr rax, cl
lea r8d, [r8 + r8 + 0x28]
jmp 0x1402a72b7
bsr rdx, rax
mov ecx, 0x3c
xor rdx, 0x3f
sub ecx, edx
lea edx, [rcx + rcx*4]
shr rax, cl
lea edx, [rdx + rdx + 0x28]
jmp 0x1402a7274
mov r14, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xe8]
mov dword [rsp + 0xe0], r10d
mov dword [rsp + 0xc0], r11d
mov rdx, r14
call sym.computeIndexAffStr
mov r11d, dword [rsp + 0xc0]
mov r10d, dword [rsp + 0xe0]
test rax, rax
je 0x1402a77c4
mov rax, qword [r14 + 0x20]
jmp 0x1402a69b7
mov ecx, 3
sub ecx, edx
shr rax, cl
mov qword [rsp + 0x98], rax
jmp 0x1402a57bf
mov rdx, qword [rsp + 0xe0]
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.measureAllocationSize
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x90]
jmp 0x1402a6e71
mov rdx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.measureAllocationSize
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x90]
jmp 0x1402a6dc1
mov rdx, r12
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x58], r11d
call sym.measureAllocationSize
mov r12, qword [rsp + 0x128]
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x90]
jmp 0x1402a6d26
mov rax, qword [rcx + 0x1c8]
mov qword [r12], rax
mov qword [rcx + 0x1c8], r12
mov r12, qword [rsp + 0x128]
jmp 0x1402a6d26
mov rax, qword [rcx + 0x1d8]
mov qword [r12], rax
mov qword [rcx + 0x1d8], r12
jmp 0x1402a6dc1
mov rbx, qword [rsp + 0x90]
mov ebx, dword [rbx + 0x68]
mov dword [rsp + 0x114], ebx
jmp 0x1402a719b
mov rax, qword [rcx + 0x1d8]
mov qword [r12], rax
mov qword [rcx + 0x1d8], r12
mov r12, qword [rsp + 0x128]
jmp 0x1402a6d26
mov rcx, qword [r13 + 0x10]
movsx edx, ax
add edx, 9
movsx ecx, word [rcx]
cmp edx, ecx
jl 0x1402a7432
movzx edx, word [rbx + 0x12]
mov ecx, edx
or ch, 0x40
mov word [rbx + 0x12], cx
and dh, 0x20
je 0x1402a7432
mov rbx, qword [rsp + 0x200]
or byte [rbx + 0x2d], 4
jmp 0x1402a7432
mov rcx, qword [rsp + 0x50]
mov rax, qword [r13 + 0x10]
mov r9d, 0x2e
mov r11d, 0x2e
movzx r10d, word [rax + rcx]
mov ecx, 0x2e
jmp 0x1402a6995
mov rcx, r14
sub rcx, qword [rsp + 0x58]
call sym.sqlite3LogEst
movsx edx, ax
sub eax, 0x14
cmp r9d, dword [rsp + 0xc0]
cwde
cmovne eax, edx
jmp 0x1402a7406
mov rbx, rax
mov rax, qword [rcx + 0x1d8]
mov qword [rbx], rax
mov qword [rcx + 0x1d8], rbx
jmp 0x1402a6e71
mov rcx, r14
sub rcx, qword [rsp + 0x58]
call sym.sqlite3LogEst
mov ebx, dword [rsp + 0x98]
mov r9d, dword [r15 + 0x38]
cwde
cmp ebx, eax
cmovle eax, ebx
xor ebp, ebp
mov dword [rsp + 0x98], eax
mov r10d, eax
jmp 0x1402a5cb2
mov rbx, rax
mov rax, qword [rcx + 0x1c8]
mov qword [rbx], rax
mov qword [rcx + 0x1c8], rbx
jmp 0x1402a6e71
xor edx, edx
xor ecx, ecx
jmp 0x1402a7289
mov rax, qword [rcx + 0x1c8]
mov qword [r12], rax
mov qword [rcx + 0x1c8], r12
jmp 0x1402a6dc1
mov rax, qword [r9 + 0x20]
mov edx, dword [rax]
jmp 0x1402a6034
movzx edx, word [rsp + 0x74]
movzx r10d, word [rsp + 0x64]
mov r8d, dword [rsp + 0x70]
mov eax, edx
jmp 0x1402a62f9
mov rax, qword [r9 + 0x20]
mov edx, dword [rax]
jmp 0x1402a616f
mov ebp, 0x41
jmp 0x1402a69bb
mov ebp, 1
jmp 0x1402a6550