Function at 0x1402ef7a0
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, 0x58
movaps xmmword [rsp + 0x40], xmm6
cmp byte [rcx + 0x1e], 0
mov rdi, rcx
jne 0x1402efd0d
mov r12d, dword [rcx + 0x30]
mov rbp, qword [rcx]
test r12d, r12d
jne 0x1402efd23
mov rsi, qword [rcx + 0x10]
test rsi, rsi
je 0x1402f00e9
cmp byte [rdi + 0xe1], 0
jne 0x1402f0016
movsxd rax, dword [rsi + 0x90]
cmp dword [rsi + 0x94], eax
jle 0x1402f0126
lea edx, [rax + 1]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov dword [rsi + 0x90], edx
lea rax, [rax + rcx*8]
mov qword [rax], 0x46
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov rcx, qword [rsi]
lea rax, [0x140394c00]
cmp byte [rcx + 0x67], 0
je 0x1402f000a
mov dword [rax + 8], edx
xor ebx, ebx
mov r13d, 1
jmp 0x1402ef8ed
lea edx, [rax + 1]
mov dword [rsi + 0x90], edx
movsxd rdx, eax
lea r8, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + r8*8]
movq qword [rdx + 4], xmm1
mov dword [rdx + 0xc], ecx
mov qword [rdx + 0x10], 0
mov dword [rdx], 2
mov rdx, qword [rsi]
cmp byte [rdx + 0x67], 0
jne 0x1402ef8ab
cdqe
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], r14d
cmp byte [rbp + 0xc5], 0
jne 0x1402ef8e0
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x1402ef8e0
mov rdx, qword [rsi + 0x88]
lea rax, [rax + rax*2]
mov ecx, 1
lea rax, [rdx + rax*8]
mov word [rax - 0x16], cx
nop word [rax + rax]
add rbx, 1
cmp dword [rbp + 0x28], ebx
jle 0x1402efd38
mov eax, r13d
mov ecx, ebx
movd xmm0, ebx
shl eax, cl
mov edx, eax
and edx, dword [rdi + 0x7c]
je 0x1402ef8e0
or dword [rsi + 0xcc], eax
mov rdx, rbx
shl rdx, 5
cmp rbx, 1
je 0x1402ef92a
mov rcx, qword [rsi]
mov rcx, qword [rcx + 0x20]
mov rcx, qword [rcx + rdx + 8]
cmp byte [rcx + 0x11], 0
je 0x1402ef92a
or dword [rsi + 0xd0], eax
mov rcx, qword [rbp + 0x20]
xor r9d, r9d
movdqa xmm1, xmm0
and eax, dword [rdi + 0x78]
mov eax, dword [rsi + 0x90]
mov rdx, qword [rcx + rdx + 0x18]
setne r9b
cmp eax, dword [rsi + 0x94]
movd xmm3, r9d
punpckldq xmm1, xmm3
mov r14d, dword [rdx + 4]
mov ecx, dword [rdx]
jl 0x1402ef858
mov dword [rsp + 0x20], ecx
movd r8d, xmm0
mov edx, 2
mov rcx, rsi
call sym.growOp3
jmp 0x1402ef889
mov rbx, qword [rdi + 0x10]
movabs r13, 0x5e00000000
mov rax, qword [rdi]
mov r15, qword [rdi + 0xa0]
movq xmm6, qword [0x140478600]
mov qword [rsp + 0x30], rax
test r15, r15
je 0x1402efc64
nop
movsxd rax, dword [r15 + 0x10]
xor edx, edx
mov rcx, qword [rsp + 0x30]
mov ebp, dword [r15 + 0x14]
mov r8, rax
shl rax, 5
add rax, qword [rcx + 0x20]
mov rcx, rdi
lea r14d, [rbp - 1]
mov rax, qword [rax + 0x18]
mov r9, qword [rax + 0x68]
mov dword [rsp + 0x20], 0x70
call sym.sqlite3OpenTable
mov rax, qword [r15 + 8]
mov r11, qword [rax]
mov eax, dword [rbx + 0x90]
cmp eax, dword [rbx + 0x94]
jge 0x1402effb0
lea edx, [rax + 1]
mov dword [rbx + 0x90], edx
movsxd rdx, eax
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbx + 0x88]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], r14d
mov dword [rdx + 0xc], 0
mov qword [rdx + 0x10], 0
mov qword [rdx], 0x75
mov rdx, qword [rbx]
cmp byte [rdx + 0x67], 0
jne 0x1402efa69
test eax, eax
jns 0x1402efa4a
mov eax, dword [rbx + 0x90]
sub eax, 1
cdqe
xor r9d, r9d
mov r8, r11
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov rcx, rbx
lea rdx, [rax + rdx*8]
call sym.vdbeChangeP4Full
mov edx, dword [rbx + 0x90]
lea ecx, [rdx + 0xc]
cmp ecx, dword [rbx + 0x94]
jg 0x1402eff88
movsxd rax, edx
xor r10d, r10d
movd xmm0, ebp
lea r8, [rax + rax*2]
mov r9d, 0x7a
mov r11d, 0x10
mov rax, qword [rbx + 0x88]
lea rax, [rax + r8*8]
lea r8d, [rdx + 0xa]
mov qword [rax], 0x4b
mov dword [rax + 0x20], r8d
lea r8d, [rdx + 9]
mov dword [rax + 0x50], r8d
mov r8d, 0x34
mov word [rax + 0x48], r8w
lea r8d, [rdx + 0xb]
add edx, 2
mov dword [rax + 0xe0], edx
lea edx, [rbp + 2]
movd xmm2, edx
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0x24
punpckldq xmm0, xmm2
mov qword [rax + 0x24], 0
mov qword [rax + 0x2c], r13
mov qword [rax + 0x34], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x58], 0
mov qword [rax + 0x60], 0x87
mov qword [rax + 0x6c], 0
mov qword [rax + 0x74], r13
movq qword [rax + 0x7c], xmm6
mov qword [rax + 0x88], 0
mov dword [rax + 0x90], 0x56
mov qword [rax + 0x98], 0
mov qword [rax + 0xa0], 0
mov dword [rax + 0xa8], 0x50
mov dword [rax + 0xc8], r8d
mov dword [rax + 0xb4], 0
mov qword [rax + 0xb8], 0
mov qword [rax + 0xc0], 9
mov dword [rax + 0xcc], 0
mov qword [rax + 0xd0], 0
mov qword [rax + 0xd8], 0x27
mov dword [rax + 0xe4], 0
mov qword [rax + 0xe8], 0
mov qword [rax + 0xf0], 0x47
mov qword [rax + 0x10c], 0
mov word [rax + 0x108], r9w
mov dword [rax + 0x114], 0
mov dword [rax + 0xfc], 0
mov qword [rax + 0x100], 0
mov qword [rax + 0x118], 0
mov word [rax + 0x10a], r10w
mov dword [rbx + 0x90], ecx
lea ecx, [rbp + 1]
mov dword [rax + 8], ebp
mov dword [rax + 0x3c], ebp
mov dword [rax + 0x54], ebp
mov dword [rax + 0x84], ebp
mov dword [rax + 0x94], ebp
movq qword [rax + 0xac], xmm0
mov dword [rax + 0xf8], ebp
mov ebp, dword [rdi + 0x34]
mov dword [rax + 0xc], edx
mov dword [rax + 0x4c], r14d
mov word [rax + 0x4a], r11w
test ebp, ebp
mov dword [rax + 0x68], ecx
jne 0x1402eff70
mov r15, qword [r15]
mov dword [rdi + 0x34], 1
test r15, r15
jne 0x1402ef9b0
mov rbp, qword [rdi + 0x58]
test rbp, rbp
je 0x1402efcac
mov byte [rdi + 0x23], 0
mov edx, dword [rbp]
test edx, edx
jle 0x1402efcac
cmp qword [rdi + 0x10], 0
lea rbx, [rbp + 8]
je 0x1402efcac
nop dword [rax + rax]
mov rdx, qword [rbx]
mov rcx, rdi
add r12d, 1
mov r8d, dword [rbx + 0x18]
call sym.sqlite3ExprCode.part.0
cmp r12d, dword [rbp]
jge 0x1402efcac
add rbx, 0x20
cmp qword [rdi + 0x10], 0
jne 0x1402efc88
cmp byte [rdi + 0xe1], 0
jne 0x1402effda
movsxd rax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x1402f014c
lea edx, [rax + 1]
mov dword [rsi + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 9
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov eax, dword [rdi + 0x30]
test eax, eax
je 0x1402f010f
mov dword [rdi + 0x18], 1
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [rbp + 0x67], 0
je 0x1402efd0d
mov dword [rcx + 0x18], 7
jmp 0x1402efd0d
mov r15d, dword [rdi + 0x138]
xor r13d, r13d
test r15d, r15d
jle 0x1402efe15
nop dword [rax + rax]
mov rax, qword [rdi + 0x190]
mov rax, qword [rax + r13*8]
mov rbx, qword [rax + 0x50]
test rbx, rbx
jne 0x1402efd79
jmp 0x1402efd7e
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x1402efd7e
cmp rbp, qword [rbx]
jne 0x1402efd70
mov eax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x1402eff30
lea edx, [rax + 1]
mov dword [rsi + 0x90], edx
movsxd rdx, eax
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8]
mov qword [rdx], 0xaa
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov rdx, qword [rsi]
cmp byte [rdx + 0x67], 0
jne 0x1402efe04
test eax, eax
jns 0x1402efdd8
mov eax, dword [rsi + 0x90]
sub eax, 1
cdqe
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rdx, [rax + rdx*8]
cmp byte [rdx + 1], 0
jne 0x1402eff10
test rbx, rbx
je 0x1402efe04
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf5
add dword [rbx + 0x18], 1
add r13, 1
cmp dword [rdi + 0x138], r13d
jg 0x1402efd50
mov r14d, dword [rdi + 0x90]
xor r13d, r13d
xor ebp, ebp
mov dword [rdi + 0x138], 0
mov rbx, qword [rdi + 0x10]
test r14d, r14d
jg 0x1402efe62
jmp 0x1402ef984
test r14, r14
je 0x1402efe4d
mov qword [rdx + 0x10], r14
mov byte [rdx + 1], 0xff
add r13d, 1
add rbp, 0x18
cmp r13d, dword [rdi + 0x90]
jge 0x1402ef980
mov rax, qword [rdi + 0x98]
add rax, rbp
mov r10, qword [rax]
mov r8d, dword [rax]
mov r14, qword [rax + 0x10]
movzx ecx, byte [rax + 8]
mov r9d, dword [rax + 4]
mov eax, dword [rbx + 0x90]
cmp eax, dword [rbx + 0x94]
jge 0x1402eff50
lea edx, [rax + 1]
mov dword [rbx + 0x90], edx
movsxd rdx, eax
lea r8, [rdx + rdx*2]
mov rdx, qword [rbx + 0x88]
lea rdx, [rdx + r8*8]
mov qword [rdx + 4], r10
mov dword [rdx + 0xc], ecx
mov qword [rdx + 0x10], 0
mov dword [rdx], 0xa9
mov rdx, qword [rbx]
cmp byte [rdx + 0x67], 0
jne 0x1402efe4d
test eax, eax
jns 0x1402efed6
mov eax, dword [rbx + 0x90]
sub eax, 1
cdqe
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rdx, [rax + rdx*8]
cmp byte [rdx + 1], 0
je 0x1402efe40
mov r9d, 0xffffffff
mov r8, r14
mov rcx, rbx
call sym.vdbeChangeP4Full
jmp 0x1402efe4d
mov r9d, 0xfffffff5
mov r8, rbx
mov rcx, rsi
call sym.vdbeChangeP4Full
jmp 0x1402efe04
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xaa
mov rcx, rsi
call sym.growOp3
jmp 0x1402efdc2
mov dword [rsp + 0x20], ecx
mov edx, 0xa9
mov rcx, rbx
call sym.growOp3
jmp 0x1402efec0
mov r15, qword [r15]
test r15, r15
jne 0x1402ef9b0
jmp 0x1402efc64
mov rcx, rbx
call sym.growOpArray.isra.0
test eax, eax
jne 0x1402efc64
mov edx, dword [rbx + 0x90]
lea ecx, [rdx + 0xc]
jmp 0x1402efa7e
mov r9d, r14d
xor r8d, r8d
mov edx, 0x75
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x20], 0
mov rcx, rbx
call sym.growOp3
mov r11, qword [rsp + 0x38]
jmp 0x1402efa34
mov rax, qword [rdi + 0xc8]
mov r9d, dword [rax + 0xbc]
test r9d, r9d
je 0x1402efcb9
mov r8d, dword [rax + 0xb8]
mov edx, 0x76
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x1402efcb9
mov rax, qword [rsi + 0x88]
jmp 0x1402ef842
mov r13, qword [rdi + 0xc8]
mov r9d, dword [r13 + 0xbc]
test r9d, r9d
je 0x1402ef7ec
xor r9d, r9d
xor r8d, r8d
mov edx, 0x53
mov rcx, rsi
xor ebx, ebx
call sym.sqlite3VdbeAddOp3.constprop.0
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
mov r8d, dword [r13 + 0xb8]
call sym.sqlite3VdbeAddOp3.constprop.0
mov r8d, dword [r13 + 0xbc]
mov r15d, dword [r13 + 0xc0]
movsxd r14, eax
test r8d, r8d
jle 0x1402f009b
nop
mov r8d, dword [r13 + 0xb8]
lea eax, [r15 + rbx]
mov r9d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], eax
mov edx, 0x5e
add ebx, 1
call sym.sqlite3VdbeAddOp3
cmp dword [r13 + 0xbc], ebx
jg 0x1402f0070
mov r9d, ebx
mov r8d, r15d
mov edx, 0x54
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
mov r8d, dword [r13 + 0xb8]
lea r9d, [r14 + 1]
mov rcx, rsi
mov edx, 0x27
call sym.sqlite3VdbeAddOp3.constprop.0
mov rcx, qword [rsi]
lea rdx, [0x140394c00]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
je 0x1402f016f
mov dword [rdx + 8], eax
jmp 0x1402ef7f3
cmp byte [rbp + 0xc5], 0
jne 0x1402f011a
call sym.sqlite3GetVdbe.part.0
test rax, rax
mov rsi, rax
jne 0x1402ef7df
mov dword [rdi + 0x18], 1
jmp 0x1402efcfb
mov rdx, rdi
mov rcx, rsi
call sym.sqlite3VdbeMakeReady
mov dword [rdi + 0x18], 0x65
jmp 0x1402efd0d
mov edx, 0x46
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
call sym.growOp3
mov edx, dword [rsi + 0x90]
jmp 0x1402ef82e
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 9
mov rcx, rsi
mov r9d, 1
call sym.growOp3
jmp 0x1402efcfb
mov rdx, qword [rsi + 0x88]
lea rcx, [r14 + r14*2]
lea rdx, [rdx + rcx*8]
jmp 0x1402f00e1