Function at 0x14037b710
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 rax, qword [rcx]
mov rax, qword [rax]
mov qword [rsp + 0x240], rcx
mov ebp, r9d
mov qword [rsp + 0x248], rdx
mov qword [rsp + 0x250], r8
mov word [rsp + 0x64], r9w
mov r15d, dword [rax + 0x30]
mov qword [rsp + 0x68], rax
test r15d, r15d
jne 0x14037c720
mov rdi, qword [rcx + 0x10]
lea rcx, [rsp + 0x160]
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0x48], rcx
mov eax, dword [rdi + 0x38]
mov r14, rdi
mov qword [rsp + 0x98], rdi
mov rsi, qword [r14]
mov rbx, qword [rbx]
movd xmm6, dword [rdi + 0x18]
mov dword [rsp + 0x78], eax
and eax, 0x20
movd xmm7, dword [rdi + 0x3c]
cmp eax, 1
mov qword [rsp + 0x70], rsi
movzx esi, word [r14 + 0x16]
pextrw r9d, xmm6, 0
sbb edx, edx
mov dword [rsp + 0x7c], r9d
pextrw r12d, xmm7, 0
and edx, 0x1a7
mov qword [rsp + 0xd0], rbx
movzx ebx, word [rdi + 0x1c]
add edx, 0x18
cmp eax, 1
mov word [rsp + 0x66], r12w
sbb eax, eax
mov word [rsp + 0x5e], si
mov rsi, qword [rsp + 0x240]
and eax, 0x183
test byte [r8 + 0x64], 4
mov word [rsp + 0x86], bx
mov rbx, qword [rdi + 0x16]
pextrw edi, xmm7, 1
cmove eax, edx
mov rdx, qword [rsi + 8]
xor r13d, r13d
mov rsi, qword [rsp + 0x250]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x28], rsi
mov r8d, dword [rax + 0x44]
call sym.whereScanInit
mov word [r14 + 0x12], r13w
xor r14d, r14d
mov rsi, rax
mov rax, qword [rsp + 0x250]
mov word [rsp + 0x5c], r14w
mov rax, qword [rax + 0x10]
movzx eax, word [rax]
cmp ax, 0xa
mov word [rsp + 0x84], ax
jg 0x14037c580
test rsi, rsi
je 0x14037cbe1
mov eax, dword [rsp + 0x7c]
mov qword [rsp + 0xd8], rbx
mov dword [rsp + 0xe8], edi
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x250]
mov dword [rsp + 0xe4], ebp
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0x90], rax
add rax, rax
mov qword [rsp + 0x50], rax
movsx eax, word [rsp + 0x5c]
mov qword [rsp + 0xa0], 0
mov dword [rsp + 0xec], r12d
mov dword [rsp + 0x80], eax
add eax, 0x31
mov dword [rsp + 0xe0], eax
nop word cs:[rax + rax]
movzx ebp, word [rsi + 0x14]
cmp bp, 0x100
je 0x14037b901
test byte [rsi + 0x12], 0x80
je 0x14037b923
mov rax, qword [rdi + 8]
mov rcx, qword [rsp + 0x50]
movsx rdx, word [rax + rcx]
test edx, edx
mov rax, rdx
jns 0x14037bcf0
cmp edx, 0xffffffff
je 0x14037bd10
mov rax, qword [rsi + 0x28]
mov rcx, qword [rbx + 8]
mov r11, rax
and r11, rcx
jne 0x14037bd10
test byte [rsi + 0x13], 1
je 0x14037b947
cmp bp, 0x10
je 0x14037bd10
mov rdx, qword [rsp + 0x248]
movzx edx, byte [rdx + 0x3c]
test dl, 0x58
je 0x14037b990
mov r8, qword [rsi]
mov r9d, dword [r8 + 4]
test r9b, 3
je 0x14037bd10
mov r14, qword [rsp + 0x248]
mov r10d, dword [r14 + 0x44]
cmp dword [r8 + 0x34], r10d
jne 0x14037bd10
and edx, 0x18
jne 0x14037bf90
nop dword [rax + rax]
mov rdx, qword [rsp + 0x240]
cmp byte [rdi + 0x62], 0
movzx edx, byte [rdx + 0x2c]
je 0x14037b9b6
movzx r8d, word [rdi + 0x5e]
sub r8d, 1
cmp dword [rsp + 0x7c], r8d
je 0x14037bf48
or edx, 1
mov r10, qword [rsp + 0x240]
mov r15, qword [rsp + 0x240]
movzx r8d, word [rsp + 0x66]
mov r10d, dword [r10 + 0x28]
mov byte [r15 + 0x2c], dl
mov edx, dword [rsp + 0x78]
movd dword [rbx + 0x18], xmm6
mov word [rbx + 0x3c], r8w
mov dword [rsp + 0x60], r10d
mov dword [rbx + 0x38], edx
movzx edx, word [rsp + 0x86]
mov word [rbx + 0x1c], dx
movzx edx, word [rbx + 0x40]
cmp r8w, dx
jae 0x14037beb8
mov r13, qword [rbx + 0x48]
mov r10, qword [rsp + 0x70]
lea edx, [r8 + 1]
not rcx
mov r14d, ebp
mov word [rbx + 0x3c], dx
mov qword [r13 + r8*8], rsi
or rax, r10
and rax, rcx
and r14w, 1
mov qword [rbx], rax
je 0x14037bd20
cmp word [rsp + 0x5c], 9
mov rcx, qword [rsi]
setg r8b
test byte [rcx + 5], 0x10
jne 0x14037c6c0
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x14037ba61
mov eax, dword [rax]
test eax, eax
jne 0x14037c75e
cmp byte [rdi + 0x64], 0
jns 0x14037ba70
test r8b, r8b
jne 0x14037c821
mov r8d, dword [rbx + 0x38]
xor r12d, r12d
or r8d, 4
mov dword [rbx + 0x38], r8d
test r8b, 2
movzx eax, word [rbx + 0x18]
jne 0x14037bda8
movzx ecx, word [rsi + 0x10]
lea r10d, [rax + 1]
mov word [rbx + 0x18], r10w
test cx, cx
jle 0x14037bed8
cmp word [rsp + 0x64], 0
mov qword [rsp + 0x148], 0
jne 0x14037bac4
mov r8d, dword [rdi + 0x68]
test r8d, r8d
jne 0x14037bfb0
mov rax, qword [rdi + 0x10]
movzx r10d, r10w
mov esi, r12d
movzx ecx, word [rbx + 0x16]
add cx, word [rax + r10*2]
sub cx, word [rax + r10*2 - 2]
test bp, 0x100
je 0x14037bae8
add ecx, 0xa
mov ebp, ecx
mov r8d, dword [rbx + 0x38]
movzx eax, byte [rdi + 0x64]
not eax
test al, 3
je 0x14037be72
movsx edx, word [rdi + 0x5c]
movzx r14d, word [rsp + 0x5c]
mov eax, edx
shl eax, 4
sub eax, edx
mov rdx, qword [rsp + 0x248]
mov rdx, qword [rdx + 0x20]
movsx r9d, word [rdx + 0x3c]
cdq
idiv r9d
lea eax, [rcx + rax + 1]
cmp ax, r14w
mov edx, eax
movsx r9d, ax
jg 0x14037be8b
mov r11d, dword [rsp + 0x80]
lea eax, [r9 + 0x31]
mov edx, r14d
cmp eax, r11d
jl 0x14037bb60
lea eax, [r9 + 0x1f]
lea edx, [r14 + 1]
cmp eax, r11d
jge 0x14037bf50
nop dword [rax + rax]
and r8d, 0x4000140
mov eax, edx
jne 0x14037bba0
lea eax, [rcx + 0x10]
movsx r9d, dx
cmp ax, dx
movsx r8d, ax
jg 0x14037bf20
mov eax, edx
lea edx, [r8 + 0x31]
cmp edx, r9d
jl 0x14037bba0
lea edx, [r8 + 0x1f]
cmp edx, r9d
jge 0x14037c7f5
add eax, 1
nop word [rax + rax]
add si, word [rsp + 0x64]
movzx eax, ax
shl ecx, 0x10
mov rdx, rbx
movsx r8d, word [rsp + 0x84]
or ecx, eax
mov rax, qword [rsp + 0x240]
movd xmm2, ecx
movd xmm3, esi
pshuflw xmm0, xmm3, 0
paddw xmm2, xmm0
mov rcx, qword [rax + 8]
movd dword [rbx + 0x14], xmm2
call sym.whereLoopOutputAdjust
mov rcx, qword [rsp + 0x240]
mov rdx, rbx
call sym.whereLoopInsert
mov r15d, eax
mov eax, dword [rbx + 0x38]
test al, 2
cmovne bp, word [rsp + 0x5e]
test al, 0x10
mov word [rbx + 0x16], bp
jne 0x14037bc40
movzx eax, word [rbx + 0x18]
cmp ax, word [rdi + 0x60]
jae 0x14037bc40
cmp ax, word [rdi + 0x5e]
jae 0x14037c080
cmp ax, 3
ja 0x14037c596
mov rdx, qword [rsp + 0x248]
movsx r9d, si
mov r8, rdi
mov rcx, qword [rsp + 0x240]
call sym.whereLoopAddBtreeIndex
movzx eax, word [rsp + 0x5e]
test r15d, r15d
mov esi, dword [rsp + 0x60]
sete bpl
mov word [rbx + 0x16], ax
mov rax, qword [rsp + 0x240]
mov dword [rax + 0x28], esi
mov rcx, qword [rsp + 0x48]
call sym.whereScanNext
test rax, rax
mov rsi, rax
je 0x14037bc7a
test bpl, bpl
jne 0x14037b8f0
mov rbx, qword [rsp + 0xd8]
mov ebp, dword [rsp + 0xe4]
mov edi, dword [rsp + 0xe8]
mov r12d, dword [rsp + 0xec]
mov rax, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x70]
cmp di, word [rsp + 0x7c]
mov qword [rax + 0x16], rbx
mov qword [rax], rsi
mov esi, dword [rsp + 0x78]
movd dword [rax + 0x3c], xmm7
mov dword [rax + 0x38], esi
je 0x14037c448
movaps xmm6, xmmword [rsp + 0x1d0]
mov eax, r15d
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
mov rdx, qword [rdi + 0x18]
lea rax, [rax + rax*2]
mov r12, qword [rdx + 8]
lea rax, [r12 + rax*8]
test byte [rax + 8], 0xf
je 0x14037b923
nop word [rax + rax]
xor r15d, r15d
mov ebp, 1
jmp 0x14037bc5f
test bpl, 0x82
je 0x14037bf00
mov rax, qword [rdi + 8]
mov rcx, qword [rsp + 0x50]
movsx edx, word [rax + rcx]
mov eax, dword [rbx + 0x38]
mov r8d, eax
or r8d, 1
cmp edx, 0xffffffff
mov dword [rbx + 0x38], r8d
je 0x14037bd70
test edx, edx
js 0x14037bd7b
cmp word [rsp + 0x64], 0
jne 0x14037bd7b
movzx edx, word [rdi + 0x5e]
mov ecx, edx
sub edx, 1
cmp dword [rsp + 0x7c], edx
jne 0x14037bd7b
test byte [rdi + 0x64], 8
je 0x14037cf58
nop
or eax, 0x1001
mov r8d, eax
mov dword [rbx + 0x38], eax
xor r12d, r12d
cmp byte [rsp + 0x189], 1
jbe 0x14037ba7f
or r8d, 0x200000
movzx eax, word [rbx + 0x18]
test r8b, 2
mov dword [rbx + 0x38], r8d
je 0x14037ba8d
nop dword [rax]
movsx esi, word [rbx + 0x16]
mov r15, qword [rbx + 0x20]
mov r13d, esi
mov dword [rsp + 0x88], esi
mov esi, dword [r15 + 0x68]
test esi, esi
jle 0x14037bdd0
movzx r10d, ax
cmp r10d, dword [r15 + 0x6c]
jl 0x14037c0a0
mov rsi, qword [rsp + 0xa8]
xor eax, eax
mov rbp, qword [rsp + 0xa0]
test rsi, rsi
setne al
cmp rbp, 1
sbb eax, 0xffffffff
mov r14d, eax
test rsi, rsi
je 0x14037c730
movzx eax, word [rsi + 0x10]
test ax, ax
jle 0x14037c408
test byte [rsi + 0x12], 0x80
je 0x14037c80e
test rbp, rbp
je 0x14037be40
movzx eax, word [rbp + 0x10]
test ax, ax
jle 0x14037cbb2
test byte [rbp + 0x12], 0x80
jne 0x14037ca87
sub r13d, 0x14
sub r13d, 0x14
nop word cs:[rax + rax]
mov eax, dword [rsp + 0x88]
mov ecx, 0xa
mov esi, r12d
sub eax, r14d
cmp r13w, cx
cmovge ecx, r13d
movsx ecx, cx
cmp eax, ecx
cmovle ecx, eax
movzx eax, byte [rdi + 0x64]
mov ebp, ecx
not eax
test al, 3
jne 0x14037bafc
movzx r14d, word [rsp + 0x5c]
lea eax, [rcx + 0x10]
mov edx, eax
movsx r9d, ax
cmp ax, r14w
jle 0x14037bb36
cmp dword [rsp + 0xe0], r9d
jl 0x14037bb60
mov edx, dword [rsp + 0x80]
add edx, 0x1f
cmp edx, r9d
jge 0x14037bf70
lea edx, [rax + 1]
jmp 0x14037bb60
movzx r8d, r8w
cmp dx, r8w
jbe 0x14037c620
mov r13, qword [rbx + 0x48]
movzx r8d, r8w
jmp 0x14037ba0b
mov rax, qword [rdi + 8]
mov rdx, qword [rsp + 0x50]
cmp word [rax + rdx], 0
js 0x14037baa3
add cx, word [rbx + 0x16]
mov esi, r12d
sub ecx, r12d
mov ebp, ecx
jmp 0x14037baee
test bp, 0x100
je 0x14037c76c
mov r8d, dword [rbx + 0x38]
xor r12d, r12d
or r8d, 8
mov dword [rbx + 0x38], r8d
jmp 0x14037ba7f
lea edx, [r9 + 0x31]
cmp edx, r8d
jl 0x14037bba0
lea edx, [r9 + 0x1f]
cmp edx, r8d
jge 0x14037c7dc
lea eax, [rcx + 0x11]
jmp 0x14037bba0
or edx, 2
jmp 0x14037b9b9
lea rdx, str._n_n_t_t_b_b_a_a_a
mov eax, r11d
sub eax, r9d
cdqe
movzx edx, byte [rdx + rax]
add dx, word [rsp + 0x5c]
jmp 0x14037bb60
mov edx, dword [rsp + 0x80]
sub r9d, edx
lea rdx, str._n_n_t_t_b_b_a_a_a
movsxd r9, r9d
movzx edx, byte [rdx + r9]
add edx, eax
jmp 0x14037bb60
and r9d, 2
je 0x14037b990
xor r15d, r15d
mov ebp, 1
jmp 0x14037bc5f
movzx eax, r10w
cmp dword [rdi + 0x6c], eax
mov dword [rsp + 0x88], eax
jl 0x14037bac4
test r14w, r14w
je 0x14037bfd7
mov rax, qword [rsi]
test byte [rax + 5], 0x10
jne 0x14037bac4
mov rax, qword [rsp + 0xd0]
test byte [rax + 0x61], 8
jne 0x14037bac4
test bp, 0x182
mov rax, qword [rsi]
je 0x14037cf72
mov r8, qword [rax + 0x18]
lea r9, [rsp + 0x148]
mov dword [rsp + 0xb0], r10d
mov rdx, qword [rsp + 0x240]
mov rcx, qword [rsp + 0x68]
call sym.whereEqualScanEst
mov r10d, dword [rsp + 0xb0]
cmp eax, 0xc
mov r15d, eax
je 0x14037c035
test eax, eax
jne 0x14037bc7a
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x14037bac4
call sym.sqlite3LogEst
cmp dword [rsp + 0x88], 1
mov edx, eax
mov word [rbx + 0x16], ax
je 0x14037d74e
movzx eax, word [rsp + 0x5e]
cmp dx, ax
mov ecx, eax
jg 0x14037c06f
movzx ecx, word [rbx + 0x16]
mov word [rbx + 0x16], cx
sub ecx, r12d
mov esi, r12d
mov ebp, ecx
jmp 0x14037baea
movzx edx, byte [rdi + 0x64]
and edx, 3
cmp dl, 2
je 0x14037bc40
cmp ax, 3
jbe 0x14037bc24
jmp 0x14037c596
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
test byte [rcx + 0x61], 8
mov qword [rsp + 0x108], rcx
jne 0x14037bdd0
mov rcx, qword [rsp + 0x240]
movzx ebp, ax
mov ecx, dword [rcx + 0x28]
cmp r10d, ecx
mov dword [rsp + 0xb0], ecx
jne 0x14037cc18
mov rsi, qword [rsp + 0x240]
movzx r14d, word [rbx + 0x1c]
mov rdx, qword [rsi + 0x20]
movzx esi, word [rbx + 0x1a]
test rdx, rdx
mov qword [rsp + 0x148], rdx
mov dword [rsp + 0xc0], esi
je 0x14037c105
mov word [rdx + 0x1c], cx
mov r10d, dword [rsp + 0xb0]
test r10d, r10d
jne 0x14037d191
mov rax, qword [r15 + 0x88]
mov qword [rsp + 0xb8], rax
mov rax, qword [r15 + 0x38]
cmp byte [rax + rbp], 0
jne 0x14037d43b
mov rbp, qword [rsp + 0xa0]
mov eax, r14d
mov rsi, qword [rsp + 0xa8]
mov r14d, dword [rsp + 0xc0]
mov dword [rsp + 0xc0], eax
test rsi, rsi
je 0x14037d450
mov rax, qword [rsi]
lea r8, [rsp + 0x148]
mov rdx, r15
mov qword [rsp + 0xf8], r11
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xf0], r8
mov r13, qword [rax + 0x18]
lea rax, [rsp + 0x144]
mov dword [rsp + 0x20], r14d
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0xb0]
mov r9, r13
mov dword [rsp + 0x28], eax
call sym.sqlite3Stat4ProbeSetValue
mov r11, qword [rsp + 0xf8]
test eax, eax
mov r10d, eax
jne 0x14037d4ea
mov ecx, dword [rsp + 0x144]
test ecx, ecx
je 0x14037d4ea
movzx eax, byte [r13]
cmp al, 0xb0
jne 0x14037c1e2
movzx eax, byte [r13 + 2]
cmp al, 0xb1
je 0x14037d7bf
cmp al, 0x8a
mov edx, 1
jne 0x14037c1fd
mov rax, qword [r13 + 0x20]
mov rax, qword [rax + 0x20]
mov edx, dword [rax]
cmp ecx, edx
mov eax, 0xc
mov edx, 0x18
mov qword [rsp + 0x100], r11
cmovl eax, edx
mov rcx, r15
mov rdx, qword [rsp + 0x148]
xor r8d, r8d
mov dword [rsp + 0xf8], r10d
lea r9, [rsp + 0x150]
mov r14d, eax
call sym.whereKeyStats.isra.0
mov edx, r14d
and dx, word [rsi + 0x14]
mov r13d, eax
mov r10d, dword [rsp + 0xf8]
mov rax, qword [rsp + 0x150]
mov r11, qword [rsp + 0x100]
je 0x14037c266
add rax, qword [rsp + 0x158]
cmp r11, rax
cmovb r11, rax
xor r14d, r14d
xor esi, esi
sub dword [rsp + 0x88], 1
test rbp, rbp
je 0x14037d5a9
mov rax, qword [rbp]
mov rdx, r15
mov qword [rsp + 0xf8], r11
mov r8, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x68]
mov r9, qword [rax + 0x18]
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0xb0]
mov qword [rsp + 0xb0], r9
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x20], eax
call sym.sqlite3Stat4ProbeSetValue
test eax, eax
jne 0x14037d58c
mov r8d, dword [rsp + 0x144]
mov rcx, qword [rsp + 0x148]
mov r11, qword [rsp + 0xf8]
test r8d, r8d
je 0x14037d6f1
mov r9, qword [rsp + 0xb0]
movzx eax, byte [r9]
cmp al, 0xb0
jne 0x14037c311
movzx eax, byte [r9 + 2]
cmp al, 0xb1
je 0x14037d7ca
cmp al, 0x8a
mov edx, 1
jne 0x14037c32c
mov rax, qword [r9 + 0x20]
mov rax, qword [rax + 0x20]
mov edx, dword [rax]
cmp r8d, edx
mov eax, 0xc
mov edx, 0x18
mov qword [rsp + 0xc0], r11
cmovl eax, edx
mov r8d, 1
mov rdx, rcx
mov rcx, r15
lea r9, [rsp + 0x150]
mov r10d, eax
mov dword [rsp + 0xb0], r10d
call sym.whereKeyStats.isra.0
mov r10d, dword [rsp + 0xb0]
and r10w, word [rbp + 0x14]
mov r8d, eax
mov r11, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x150]
je 0x14037c392
add rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0xb8]
cmp rcx, rax
cmovbe rax, rcx
mov rcx, qword [rsp + 0x240]
xor ebp, ebp
sub dword [rsp + 0x88], 1
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x148]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0xb8]
mov edx, 0xa
cmp r11, rax
jb 0x14037d70c
mov eax, dword [rsp + 0x88]
cmp eax, edx
cmovle edx, eax
mov dword [rsp + 0x88], edx
movzx r13d, word [rsp + 0x88]
mov r8d, dword [rbx + 0x38]
jmp 0x14037bdf2
movzx ecx, word [rsp + 0x88]
lea edx, [rax + rcx]
mov r13d, edx
test rbp, rbp
je 0x14037be40
movzx ecx, word [rbp + 0x10]
test cx, cx
jle 0x14037c879
test byte [rbp + 0x12], 0x80
jne 0x14037ca87
lea r13d, [rdx - 0x14]
test ax, ax
jle 0x14037be40
jmp 0x14037be32
mov rbx, qword [rsp + 0x250]
mov eax, dword [rsp + 0x7c]
movzx edx, word [rbx + 0x5e]
add eax, 1
cmp eax, edx
jge 0x14037bcc3
cmp r12d, edi
jne 0x14037bcc3
movzx eax, byte [rbx + 0x64]
mov byte [rsp + 0x48], al
and eax, 0xffffffc0
cmp al, 0x80
jne 0x14037bcc3
mov rax, qword [rsp + 0xd0]
test byte [rax + 0x61], 0x40
jne 0x14037bcc3
mov eax, edi
lea rbx, [rax + 1]
mov rax, qword [rsp + 0x250]
lea rsi, [rbx + rbx]
mov rax, qword [rax + 0x10]
cmp word [rax + rbx*2], 0x29
jle 0x14037bcc3
mov rdx, qword [rsp + 0x98]
lea r8d, [r12 + 1]
mov rcx, qword [rsp + 0xd0]
call sym.whereLoopResize
test eax, eax
mov r15d, eax
jne 0x14037bcc3
mov r11, qword [rsp + 0x98]
xor ecx, ecx
movd xmm0, dword [0x1404783e0]
mov r8, qword [rsp + 0x250]
movd xmm1, dword [r11 + 0x3c]
mov rax, qword [r11 + 0x48]
add word [r11 + 0x18], 1
paddw xmm0, xmm1
pextrw edx, xmm1, 0
movd dword [r11 + 0x3c], xmm0
mov qword [rax + rdx*8], rcx
mov rax, qword [rsp + 0x250]
or dword [r11 + 0x38], 0x8000
mov rdx, qword [rax + 0x10]
movzx eax, word [rdx + rsi - 2]
movzx edx, word [rdx + rbx*2]
mov rbx, r11
mov ecx, edx
sub ecx, eax
add word [r11 + 0x16], cx
lea eax, [rax + rbp + 5]
sub eax, edx
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x248]
movsx r9d, ax
call sym.whereLoopAddBtreeIndex
movzx eax, word [rsp + 0x5e]
mov word [rbx + 0x18], di
mov word [rbx + 0x3e], di
mov word [rbx + 0x16], ax
mov eax, dword [rsp + 0x78]
mov dword [rbx + 0x38], eax
jmp 0x14037bcc3
movsx rcx, ax
call sym.sqlite3LogEst
sub eax, 0x21
mov word [rsp + 0x5c], ax
jmp 0x14037b86d
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
mov edx, dword [rax + 0x198]
test edx, edx
je 0x14037c5b3
add dword [rcx + 0x30], 1
mov dword [rcx + 0x18], 9
mov r8, qword [rax + 0x210]
test r8, r8
je 0x14037bc24
mov r14, qword [rsp + 0x68]
mov edx, dword [r14 + 0xdc]
mov dword [rsp + 0x88], edx
add edx, 1
cmp edx, dword [rax + 0x220]
mov dword [r14 + 0xdc], edx
jb 0x14037bc24
mov rcx, qword [rax + 0x218]
call r8
test eax, eax
je 0x14037c607
add dword [r14 + 0x30], 1
mov dword [r14 + 0x18], 9
mov rax, qword [rsp + 0x68]
mov dword [rax + 0xdc], 0
jmp 0x14037bc24
mov r15, qword [rsp + 0xd0]
add r8d, 8
mov qword [rsp + 0x88], r11
mov r12d, r8d
and r8d, 0x1fff8
lea rdx, [r8*8]
and r12d, 0xfffffff8
mov rcx, r15
call sym.sqlite3DbMallocRawNN
test rax, rax
mov r13, rax
je 0x14037cbc3
movzx eax, word [rbx + 0x40]
mov rcx, r13
mov rdx, qword [rbx + 0x48]
lea r8, [rax*8]
call sym.memcpy
mov rdx, qword [rbx + 0x48]
lea rax, [rbx + 0x58]
mov r11, qword [rsp + 0x88]
cmp rdx, rax
je 0x14037c69b
mov rcx, r15
call sym.sqlite3DbFreeNN
mov r11, qword [rsp + 0x88]
movzx r8d, word [rbx + 0x3c]
mov qword [rbx + 0x48], r13
mov rax, qword [rsi + 0x28]
mov word [rbx + 0x40], r12w
mov rcx, qword [rbx + 8]
jmp 0x14037ba0b
cmp dx, 1
jbe 0x14037d3a6
movzx edx, dx
mov rax, r13
mov r12d, 0x2e
sub edx, 2
xor r10d, r10d
lea r9, [r13 + rdx*8 + 8]
nop dword [rax]
mov rdx, qword [rax]
test rdx, rdx
je 0x14037c6f7
cmp qword [rdx], rcx
cmove r12d, r10d
add rax, 8
cmp rax, r9
jne 0x14037c6e8
cmp byte [rdi + 0x64], 0
jns 0x14037c70f
test r8b, r8b
jne 0x14037cbe9
mov r8d, dword [rbx + 0x38]
jmp 0x14037ba77
mov r15d, dword [rax + 0x18]
jmp 0x14037bcc3
test rbp, rbp
je 0x14037be40
movzx eax, word [rbp + 0x10]
test ax, ax
jle 0x14037cbb2
movzx eax, word [rsp + 0x88]
sub eax, 0x14
test byte [rbp + 0x12], 0x80
cmove r13d, eax
jmp 0x14037be40
movsxd rcx, eax
call sym.sqlite3LogEst
movsx r12d, ax
jmp 0x14037c700
mov rdx, qword [rsi]
mov rcx, qword [rdx + 0x10]
movzx eax, byte [rcx]
cmp al, 0xb0
je 0x14037c882
cmp al, 0xb1
je 0x14037c88b
cmp al, 0x8a
mov r12d, 1
je 0x14037cf2c
test bpl, 0x24
mov eax, dword [rbx + 0x38]
je 0x14037caf6
nop dword [rax]
or eax, 0x22
test byte [rsi + 0x13], 1
mov word [rbx + 0x1a], r12w
mov r8d, eax
mov dword [rbx + 0x38], eax
jne 0x14037d3c4
xor r12d, r12d
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0xa0], 0
jmp 0x14037ba7f
sub r8d, r9d
movsxd rdx, r8d
lea r8, str._n_n_t_t_b_b_a_a_a
movzx edx, byte [r8 + rdx]
add eax, edx
jmp 0x14037bba0
sub r9d, r8d
lea r8, str._n_n_t_t_b_b_a_a_a
movsxd rdx, r9d
movzx edx, byte [r8 + rdx]
add eax, edx
jmp 0x14037bba0
movzx ecx, word [rsp + 0x88]
lea edx, [rcx - 0x14]
mov r13d, edx
jmp 0x14037c416
mov rax, qword [rdi + 0x10]
xor r12d, r12d
xor r8d, r8d
mov rcx, qword [rsp + 0x50]
movzx r9d, word [rax + rcx]
xor eax, eax
sub ax, word [rsp + 0x5c]
lea eax, [r9 + rax + 0xa]
cmp ax, r8w
jns 0x14037c70f
cmp word [rsp + 0x64], 1
jg 0x14037bd10
mov rax, qword [rsp + 0xd0]
test byte [rax + 0x62], 2
jne 0x14037bd10
mov r8d, dword [rbx + 0x38]
or r8d, 0x100000
jmp 0x14037ba77
lea r13d, [rcx + rdx]
jmp 0x14037be40
movzx eax, byte [rcx + 2]
jmp 0x14037c77e
mov rcx, qword [rcx + 0x20]
mov r8d, dword [rcx]
mov r10d, dword [rsp + 0x7c]
movzx eax, word [rdi + 0x60]
sub eax, r10d
mov r10d, r8d
cmp eax, r8d
cmovle r10d, eax
cmp r10d, 1
jle 0x14037d7d5
lea r15, [0x14047eee0]
mov rax, qword [rsp + 0x248]
mov r12d, 1
mov qword [rsp + 0xa8], rbx
mov word [rsp + 0xb0], r14w
mov r9, rdx
mov word [rsp + 0xb8], bp
mov qword [rsp + 0x88], rsi
mov eax, dword [rax + 0x44]
mov dword [rsp + 0xc8], r10d
mov qword [rsp + 0xc0], r11
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x90]
lea r13, [rax + 1]
nop dword [rax]
movsxd rax, r12d
shl rax, 5
mov rbp, qword [rcx + rax + 8]
mov rcx, qword [r9 + 0x18]
test byte [rcx + 5], 0x10
mov r9, qword [rcx + 0x20]
je 0x14037cb38
add rax, qword [r9 + 0x20]
mov rbx, qword [rax + 8]
cmp byte [rbp], 0xa7
jne 0x14037cac0
mov eax, dword [rsp + 0xa0]
cmp eax, dword [rbp + 0x2c]
jne 0x14037cac0
mov rax, qword [rdi + 8]
movzx r14d, word [rbp + 0x30]
cmp r14w, word [rax + r13*2]
jne 0x14037cac0
mov rax, qword [rdi + 0x38]
mov rsi, qword [rsp + 0x90]
movzx esi, byte [rax + rsi]
cmp byte [rax + r13], sil
jne 0x14037cac0
mov rcx, rbp
call sym.sqlite3ExprAffinity
mov rcx, rbx
mov esi, eax
call sym.sqlite3ExprAffinity
cmp al, 0x40
jle 0x14037cb48
cmp sil, 0x40
jle 0x14037cb48
cmp al, 0x42
mov r11, qword [rdi + 0x18]
jg 0x14037cb80
cmp sil, 0x42
jg 0x14037cb80
test r14w, r14w
js 0x14037cac0
cmp r14w, word [r11 + 0x36]
jge 0x14037cac0
mov eax, 0x41
mov rsi, qword [r11 + 8]
movsx r9, r14w
lea rcx, [r9 + r9*2]
lea rcx, [rsi + rcx*8]
movzx ecx, byte [rcx + 0xc]
cmp cl, al
jne 0x14037cac0
test byte [rbp + 5], 2
jne 0x14037caa0
test rbx, rbx
je 0x14037ca0f
test byte [rbx + 5], 2
jne 0x14037cba0
mov rcx, qword [rsp + 0x68]
mov rdx, rbp
call sym.sqlite3ExprCollSeq
test rax, rax
je 0x14037cba0
mov rdx, qword [rdi + 0x40]
xor ecx, ecx
mov r9, qword [rax]
mov r10, qword [rdx + r13*8]
jmp 0x14037ca47
movzx esi, byte [r15 + rdx]
cmp byte [r15 + rax], sil
jne 0x14037cac0
add rcx, 1
movzx eax, byte [r9 + rcx]
movzx edx, byte [r10 + rcx]
cmp eax, edx
jne 0x14037ca38
test eax, eax
jne 0x14037ca43
add r12d, 1
add r13, 1
cmp dword [rsp + 0xc8], r12d
je 0x14037d4fb
mov rax, qword [rsp + 0x88]
mov r9, qword [rax]
mov rax, qword [r9 + 0x10]
mov rcx, qword [rax + 0x20]
jmp 0x14037c918
cmp word [rsi + 0x10], 0
jg 0x14037be32
jmp 0x14037be40
mov rcx, qword [rsp + 0x68]
mov rdx, rbp
call sym.sqlite3ExprCollSeq
test rax, rax
jne 0x14037ca25
nop word cs:[rax + rax]
movzx ebp, word [rsp + 0xb8]
mov rbx, qword [rsp + 0xa8]
movzx r14d, word [rsp + 0xb0]
mov rsi, qword [rsp + 0x88]
test bpl, 0x24
mov r11, qword [rsp + 0xc0]
mov eax, dword [rbx + 0x38]
jne 0x14037c7a8
mov r8d, eax
mov word [rbx + 0x1c], r12w
or r8d, 0x12
test al, 0x20
mov dword [rbx + 0x38], r8d
je 0x14037cf3c
movzx edx, word [rbx + 0x3c]
xor r12d, r12d
mov qword [rsp + 0xa0], rsi
mov rax, qword [rbx + 0x48]
mov rax, qword [rax + rdx*8 - 0x10]
mov qword [rsp + 0xa8], rax
jmp 0x14037ba7f
mov rbx, qword [r9 + rax + 8]
jmp 0x14037c93e
or esi, 0x40
cmp al, 0x41
mov r11, qword [rdi + 0x18]
mov ecx, 0x44
mov r10d, esi
cmovl eax, r10d
test r14w, r14w
js 0x14037c9ee
cmp r14w, word [r11 + 0x36]
jl 0x14037c9da
jmp 0x14037c9ee
test r14w, r14w
js 0x14037cac0
cmp r14w, word [r11 + 0x36]
jge 0x14037cac0
mov eax, 0x43
jmp 0x14037c9da
mov rcx, qword [rsp + 0x68]
mov rdx, rbx
call sym.sqlite3ExprCollSeq
jmp 0x14037caad
movzx esi, word [rsp + 0x88]
lea r13d, [rax + rsi]
jmp 0x14037be40
mov rbx, qword [rsp + 0xd8]
mov ebp, dword [rsp + 0xe4]
mov edi, dword [rsp + 0xe8]
mov r12d, dword [rsp + 0xec]
xor r15d, r15d
jmp 0x14037bc98
mov rax, qword [rdi + 0x10]
mov r8d, r12d
mov rcx, qword [rsp + 0x50]
movzx r9d, word [rax + rcx]
xor eax, eax
cmp r12w, 0xa
jle 0x14037c837
movsx rcx, r12w
call sym.sqlite3LogEst
sub eax, 0x21
jmp 0x14037c837
mov rax, qword [r15 + 0x20]
test rax, rax
je 0x14037d687
movzx r14d, byte [rax + rbp]
mov rax, qword [r15 + 0x40]
mov dword [rsp + 0xb8], r10d
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], 0
mov rdx, qword [rax + rbp*8]
call sym.sqlite3LocateCollSeq
mov r11, qword [rsp + 0xb0]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], 0
mov r10d, dword [rsp + 0xb8]
setne bpl
test rax, rax
je 0x14037d0eb
mov rax, qword [rax]
xor r9d, r9d
mov r8d, r14d
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rax + 0x18]
lea rax, [rsp + 0x148]
mov qword [rsp + 0x20], rax
call sym.stat4ValueFromExpr.constprop.0
mov r11, qword [rsp + 0xb0]
test eax, eax
mov r10d, dword [rsp + 0xb8]
jne 0x14037ccdb
test bpl, bpl
jne 0x14037d72e
mov dword [rsp + 0x130], 0
add esi, 1
mov dword [rsp + 0x134], esi
mov rsi, qword [rsp + 0x148]
mov qword [rsp + 0x110], rsi
cmp qword [rsp + 0x110], 0
je 0x14037d65e
mov qword [rsp + 0x118], 0
lea rsi, [rsp + 0x144]
test eax, eax
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x138], rsi
jne 0x14037cea2
mov dword [rsp + 0xc0], r12d
mov qword [rsp + 0xc8], rbx
mov word [rsp + 0xf0], r13w
mov qword [rsp + 0xb0], r11
mov byte [rsp + 0xf8], bpl
mov qword [rsp + 0x250], rdi
mov dword [rsp + 0x124], r10d
mov eax, dword [rsp + 0xb0]
cmp dword [r15 + 0x68], eax
jle 0x14037d378
mov dword [rsp + 0x140], 0
mov rdx, qword [r15 + 0x78]
mov rax, qword [rsp + 0xb0]
lea rax, [rax + rax*4]
lea rax, [rdx + rax*8]
mov r13, qword [rax]
mov r8d, dword [rax + 8]
movzx r9d, byte [r13]
test r9b, r9b
js 0x14037d313
movzx ebp, r9b
mov esi, 1
mov dword [rsp + 0x144], ebp
cmp esi, ebp
jge 0x14037d2bb
cmp r8d, ebp
jl 0x14037d2bb
mov eax, dword [rsp + 0x124]
xor r12d, r12d
mov r14d, ebp
mov dword [rsp + 0x120], r8d
lea edi, [rax + 1]
lea rax, [rsp + 0x140]
mov qword [rsp + 0xb8], rax
jmp 0x14037ce30
lea rcx, [0x14047ee40]
mov eax, ebx
add r12d, 1
movzx eax, byte [rcx + rax]
add eax, r14d
cmp r12d, edi
je 0x14037d207
mov r14d, eax
movsxd rcx, esi
add rcx, r13
movzx ebx, byte [rcx]
test bl, bl
js 0x14037d1c8
add esi, 1
mov dword [rsp + 0x140], ebx
cmp esi, ebp
jle 0x14037ce10
lea rax, [0x14046bfcc]
mov r9d, 0x14168
mov ecx, 0xb
mov r12d, dword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
mov rbx, qword [rsp + 0xc8]
lea rdx, str._s_at_line__d_of___.10s_
movzx ebp, byte [rsp + 0xf8]
movzx r13d, word [rsp + 0xf0]
mov rdi, qword [rsp + 0x250]
call sym.sqlite3_log
mov eax, dword [rsp + 0x130]
mov r9d, dword [rsp + 0x134]
sub r9d, eax
cmp qword [rsp + 0xa0], 0
sete al
cmp qword [rsp + 0xa8], 0
sete dl
or al, dl
jne 0x14037d487
cmp r9d, 1
jg 0x14037d487
mov rcx, qword [rsp + 0x110]
call sym.sqlite3ValueFree
mov rcx, qword [rsp + 0x118]
call sym.sqlite3ValueFree
mov rcx, qword [rsp + 0x100]
call sym.sqlite3ValueFree
movzx eax, bpl
mov r8d, dword [rbx + 0x38]
mov rsi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xa0]
cmp rsi, 1
sbb eax, 0xffffffff
mov r14d, eax
jmp 0x14037bdf2
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + 0x20]
mov r8d, dword [rax]
jmp 0x14037c892
xor r12d, r12d
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], 0
jmp 0x14037ba7f
cmp cx, 1
je 0x14037d6c9
or eax, 0x10001
mov r8d, eax
mov dword [rbx + 0x38], eax
jmp 0x14037bd7b
mov r15, qword [rax + 0x20]
mov r8d, 0xa
mov rax, qword [rsp + 0x240]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x10]
movzx ecx, word [rax]
mov edx, ecx
mov eax, ecx
sar dx, 0xf
idiv r8w
movsx eax, cx
mov r8d, ecx
imul eax, eax, 0x6667
sar r8w, 0xf
sar eax, 0x12
sub eax, r8d
movsx rdx, dx
lea r8, [rdx - 2]
cmp rdx, 1
mov r9, rdx
adc r9, 0xffffffffffffffff
cmp rdx, 5
mov rdx, r8
cmovb rdx, r9
cmp cx, 0x261
movabs r8, 0x7fffffffffffffff
jg 0x14037cffb
lea r8, [rdx + 8]
cmp cx, 0x1d
jle 0x14037d6e2
sub eax, 3
mov ecx, eax
shl r8, cl
mov rax, qword [rsp + 0x240]
mov dword [rsp + 0xb8], r12d
xor r13d, r13d
mov qword [rsp + 0xc0], rbx
mov r12, qword [rsp + 0x240]
mov rbx, r15
mov r15, r11
mov word [rsp + 0xc8], bp
lea r14, [rsp + 0x150]
mov rbp, qword [rsp + 0x68]
mov qword [rsp + 0xf0], rsi
mov eax, dword [rax + 0x28]
mov qword [rsp + 0x250], rdi
mov rdi, r8
mov word [rsp + 0xb0], r10w
mov esi, eax
jmp 0x14037d09b
mov rax, r15
mov r9, r14
mov rdx, r12
mov qword [rsp + 0x150], rdi
shl rax, 5
mov rcx, rbp
add r15, 1
mov r8, qword [rbx + rax + 8]
call sym.whereEqualScanEst
add r13, qword [rsp + 0x150]
mov dword [r12 + 0x28], esi
test eax, eax
jne 0x14037d5d1
cmp dword [rbx], r15d
jg 0x14037d060
mov r8, rdi
mov r12d, dword [rsp + 0xb8]
cmp r13, r8
mov rcx, r8
movzx r10d, word [rsp + 0xb0]
cmovbe rcx, r13
mov rbx, qword [rsp + 0xc0]
movzx ebp, word [rsp + 0xc8]
mov rsi, qword [rsp + 0xf0]
mov qword [rsp + 0x148], rcx
mov rdi, qword [rsp + 0x250]
jmp 0x14037c03d
cmp qword [rsp + 0xa0], 0
je 0x14037d65e
mov qword [rsp + 0x110], 0
mov dword [rsp + 0x130], 0xffffffff
mov rax, qword [rsp + 0xa0]
xor r9d, r9d
mov r8d, r14d
mov dword [rsp + 0xb8], r10d
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xb0], r11
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
lea rax, [rsp + 0x150]
mov qword [rsp + 0x20], rax
call sym.stat4ValueFromExpr.constprop.0
mov rsi, qword [rsp + 0x150]
mov dword [rsp + 0x134], 0
mov r11, qword [rsp + 0xb0]
mov r10d, dword [rsp + 0xb8]
test rsi, rsi
mov qword [rsp + 0x118], rsi
jne 0x14037cd1b
mov esi, dword [r15 + 0x68]
mov dword [rsp + 0x134], esi
jmp 0x14037cd00
lea r9, [rsp + 0x150]
xor r8d, r8d
mov rcx, r15
call sym.whereKeyStats.isra.0
mov r11, qword [rsp + 0x150]
mov rax, qword [rsp + 0x158]
add rax, r11
mov qword [rsp + 0xb8], rax
jmp 0x14037c125
mov rdx, qword [rsp + 0xb8]
call sym.sqlite3GetVarint32
movzx eax, al
add esi, eax
cmp esi, ebp
jg 0x14037ce4f
mov ebx, dword [rsp + 0x140]
cmp ebx, 0x7f
jbe 0x14037ce10
lea eax, [rbx - 0xc]
add r12d, 1
shr eax, 1
add eax, r14d
cmp r12d, edi
jne 0x14037ce2d
mov r8d, dword [rsp + 0x120]
cmp r8d, eax
jl 0x14037d534
cmp qword [rsp + 0x100], 0
je 0x14037d342
movsxd r8, r14d
mov edx, ebx
lea rcx, [r13 + r8]
mov r8, qword [rsp + 0x100]
call sym.sqlite3VdbeSerialGet
mov rax, qword [rsp + 0x108]
mov rdx, r8
movzx eax, byte [rax + 0x64]
mov byte [r8 + 0x16], al
mov rax, qword [rsp + 0x110]
test rax, rax
je 0x14037d27b
mov r8, qword [rsp + 0x128]
mov rcx, rax
call sym.sqlite3MemCompare
cmp eax, 0x80000000
adc dword [rsp + 0x130], 0
mov rax, qword [rsp + 0x118]
test rax, rax
je 0x14037d2ad
mov r8, qword [rsp + 0x128]
mov rcx, rax
mov rdx, qword [rsp + 0x100]
call sym.sqlite3MemCompare
cmp eax, 0x80000000
adc dword [rsp + 0x134], 0
add qword [rsp + 0xb0], 1
jmp 0x14037cd78
lea rax, [0x14046bfcc]
mov r9d, 0x14162
mov ecx, 0xb
mov r12d, dword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
mov rbx, qword [rsp + 0xc8]
lea rdx, str._s_at_line__d_of___.10s_
movzx ebp, byte [rsp + 0xf8]
movzx r13d, word [rsp + 0xf0]
mov rdi, qword [rsp + 0x250]
call sym.sqlite3_log
jmp 0x14037cea2
mov rdx, qword [rsp + 0x138]
mov rcx, r13
mov dword [rsp + 0xb8], r8d
call sym.sqlite3GetVarint32
mov ebp, dword [rsp + 0x144]
mov r8d, dword [rsp + 0xb8]
movzx esi, al
jmp 0x14037cdcd
mov rdi, qword [rsp + 0x108]
mov edx, 0x38
mov rcx, rdi
call sym.sqlite3DbMallocZero
test rax, rax
mov qword [rsp + 0x100], rax
je 0x14037d378
mov r9d, 1
mov qword [rax + 0x18], rdi
mov word [rax + 0x14], r9w
jmp 0x14037d227
mov r12d, dword [rsp + 0xc0]
mov rbx, qword [rsp + 0xc8]
movzx r13d, word [rsp + 0xf0]
movzx ebp, byte [rsp + 0xf8]
mov rdi, qword [rsp + 0x250]
jmp 0x14037cea2
cmp byte [rdi + 0x64], 0
jns 0x14037d3b5
test r8b, r8b
jne 0x14037d788
mov r8d, dword [rbx + 0x38]
mov r12d, 0x2e
jmp 0x14037ba77
movzx r8d, word [rbx + 0x3c]
lea r15, [rsi + 0x38]
mov rdx, rbx
mov qword [rsp + 0x88], r11
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0xa0], r15
add r8d, 1
call sym.whereLoopResize
test eax, eax
mov r12d, eax
jne 0x14037cbc3
movzx eax, word [rbx + 0x3c]
mov r11d, 1
mov qword [rsp + 0xa8], rsi
mov r8d, dword [rbx + 0x38]
mov rdx, qword [rbx + 0x48]
lea ecx, [rax + 1]
or r8d, 0x10
mov word [rbx + 0x3c], cx
mov qword [rdx + rax*8], r15
mov word [rbx + 0x1c], r11w
mov r11, qword [rsp + 0x88]
mov dword [rbx + 0x38], r8d
jmp 0x14037ba7f
mov rbp, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xa0]
jmp 0x14037c155
test rbp, rbp
je 0x14037d60b
lea rax, [rsp + 0x148]
xor r14d, r14d
mov r13d, 0xfffffffe
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0x144]
mov qword [rsp + 0xc8], rax
jmp 0x14037c283
movsxd rcx, dword [r15 + 0x68]
mov esi, r12d
call sym.sqlite3LogEst
test r9d, r9d
movsx r8d, ax
mov eax, 1
cmovg eax, r9d
movsxd rcx, eax
call sym.sqlite3LogEst
mov rcx, qword [rsp + 0x110]
cwde
sub r8d, eax
sub word [rbx + 0x16], r8w
call sym.sqlite3ValueFree
mov rcx, qword [rsp + 0x118]
call sym.sqlite3ValueFree
mov rcx, qword [rsp + 0x100]
call sym.sqlite3ValueFree
movzx ebp, word [rbx + 0x16]
mov r8d, dword [rbx + 0x38]
mov ecx, ebp
jmp 0x14037baee
mov r14d, 1
mov r13d, 0xfffffffe
jmp 0x14037c27a
mov r10d, dword [rsp + 0xc8]
mov rbx, qword [rsp + 0xa8]
movzx r14d, word [rsp + 0xb0]
movzx ebp, word [rsp + 0xb8]
mov rsi, qword [rsp + 0x88]
mov r12d, r10d
mov r11, qword [rsp + 0xc0]
jmp 0x14037c794
lea rax, [0x14046bfcc]
mov r9d, 0x1416e
mov ecx, 0xb
mov r12d, dword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
mov rbx, qword [rsp + 0xc8]
lea rdx, str._s_at_line__d_of___.10s_
movzx ebp, byte [rsp + 0xf8]
movzx r13d, word [rsp + 0xf0]
mov rdi, qword [rsp + 0x250]
call sym.sqlite3_log
jmp 0x14037cea2
mov rax, qword [rsp + 0x148]
add r14d, 1
mov rcx, qword [rsp + 0x240]
mov qword [rcx + 0x20], rax
jmp 0x14037c3f0
mov rax, qword [rsp + 0x148]
test r10d, r10d
mov rcx, qword [rsp + 0x240]
mov qword [rcx + 0x20], rax
jne 0x14037c3f0
mov r8d, 0xffffffff
jmp 0x14037c3c7
cmp eax, 0xc
mov r12d, dword [rsp + 0xb8]
mov r15d, eax
movzx r10d, word [rsp + 0xb0]
mov rbx, qword [rsp + 0xc0]
movzx ebp, word [rsp + 0xc8]
mov rdi, qword [rsp + 0x250]
jne 0x14037bc7a
jmp 0x14037bac4
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x240]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0xb8]
cmp r11, rax
jb 0x14037d7ac
movsx esi, r13w
mov eax, 0xa
mov r8d, dword [rbx + 0x38]
cmp esi, eax
cmovle eax, esi
mov dword [rsp + 0x88], eax
mov eax, 0xa
cmp r13w, ax
cmovg r13d, eax
xor r14d, r14d
jmp 0x14037be40
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x100], 0
jmp 0x14037cede
mov rcx, qword [rsp + 0x108]
mov rdx, r15
mov dword [rsp + 0xb8], r10d
mov qword [rsp + 0xb0], r11
call sym.sqlite3IndexAffinityStr
mov r11, qword [rsp + 0xb0]
test rax, rax
mov r10d, dword [rsp + 0xb8]
je 0x14037d7e0
mov rax, qword [r15 + 0x20]
jmp 0x14037cc25
cmp byte [rdi + 0x62], 0
je 0x14037cf62
cmp bp, 2
jne 0x14037cf62
jmp 0x14037bd70
mov ecx, 3
sub ecx, eax
shr r8, cl
jmp 0x14037cffb
mov rax, qword [rsp + 0x240]
add r14d, 1
mov r8d, 0xffffffff
mov qword [rax + 0x20], rcx
jmp 0x14037c3c7
mov rcx, rax
sub rcx, r11
call sym.sqlite3LogEst
cmp r8d, r13d
lea edx, [rax - 0x14]
movsx edx, dx
je 0x14037c3dd
movsx edx, ax
jmp 0x14037c3dd
mov rax, qword [rsp + 0x148]
mov dword [rsp + 0x130], 0
mov qword [rsp + 0x110], rax
jmp 0x14037d111
cwde
lea ecx, [rax + 9]
mov rax, qword [rdi + 0x10]
movsx eax, word [rax]
cmp ecx, eax
jl 0x14037c05f
movzx eax, word [rsi + 0x12]
mov ecx, eax
or ch, 0x40
test ah, 0x20
mov word [rsi + 0x12], cx
je 0x14037c05f
mov rax, qword [rsp + 0x240]
or byte [rax + 0x2d], 4
jmp 0x14037c05f
mov rax, qword [rdi + 0x10]
mov r8d, 0x2e
mov r12d, 0x2e
mov rcx, qword [rsp + 0x50]
movzx r9d, word [rax + rcx]
mov ecx, 0x2e
jmp 0x14037cc0b
mov rcx, rax
xor r14d, r14d
sub rcx, r11
call sym.sqlite3LogEst
jmp 0x14037d726
mov rax, qword [r13 + 0x20]
mov edx, dword [rax]
jmp 0x14037c1fd
mov rax, qword [r9 + 0x20]
mov edx, dword [rax]
jmp 0x14037c32c
mov r12d, 1
jmp 0x14037c794
mov r14d, 0x41
jmp 0x14037cc2a