Function at 0x14020cf00
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 0x14020d46d
mov r12d, dword [rcx + 0x30]
mov rbp, qword [rcx]
test r12d, r12d
jne 0x14020d483
mov rsi, qword [rcx + 0x10]
test rsi, rsi
je 0x14020d849
cmp byte [rdi + 0xe1], 0
jne 0x14020d776
movsxd rax, dword [rsi + 0x90]
cmp dword [rsi + 0x94], eax
jle 0x14020d886
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, [0x1402b1b40]
cmp byte [rcx + 0x67], 0
je 0x14020d76a
mov dword [rax + 8], edx
xor ebx, ebx
mov r13d, 1
jmp 0x14020d04d
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 0x14020d00b
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 0x14020d040
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x14020d040
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 0x14020d498
mov eax, r13d
mov ecx, ebx
movd xmm0, ebx
shl eax, cl
mov edx, eax
and edx, dword [rdi + 0x7c]
je 0x14020d040
or dword [rsi + 0xcc], eax
mov rdx, rbx
shl rdx, 5
cmp rbx, 1
je 0x14020d08a
mov rcx, qword [rsi]
mov rcx, qword [rcx + 0x20]
mov rcx, qword [rcx + rdx + 8]
cmp byte [rcx + 0x11], 0
je 0x14020d08a
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 0x14020cfb8
mov dword [rsp + 0x20], ecx
movd r8d, xmm0
mov edx, 2
mov rcx, rsi
call sym.growOp3
jmp 0x14020cfe9
mov rbx, qword [rdi + 0x10]
movabs r13, 0x5e00000000
mov rax, qword [rdi]
mov r15, qword [rdi + 0xa0]
movq xmm6, qword [0x140336210]
mov qword [rsp + 0x30], rax
test r15, r15
je 0x14020d3c4
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 0x14020d710
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 0x14020d1c9
test eax, eax
jns 0x14020d1aa
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 0x14020d6e8
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 0x14020d6d0
mov r15, qword [r15]
mov dword [rdi + 0x34], 1
test r15, r15
jne 0x14020d110
mov rbp, qword [rdi + 0x58]
test rbp, rbp
je 0x14020d40c
mov byte [rdi + 0x23], 0
mov edx, dword [rbp]
test edx, edx
jle 0x14020d40c
cmp qword [rdi + 0x10], 0
lea rbx, [rbp + 8]
je 0x14020d40c
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 0x14020d40c
add rbx, 0x20
cmp qword [rdi + 0x10], 0
jne 0x14020d3e8
cmp byte [rdi + 0xe1], 0
jne 0x14020d73a
movsxd rax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x14020d8ac
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 0x14020d86f
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 0x14020d46d
mov dword [rcx + 0x18], 7
jmp 0x14020d46d
mov r15d, dword [rdi + 0x138]
xor r13d, r13d
test r15d, r15d
jle 0x14020d575
nop dword [rax + rax]
mov rax, qword [rdi + 0x190]
mov rax, qword [rax + r13*8]
mov rbx, qword [rax + 0x50]
test rbx, rbx
jne 0x14020d4d9
jmp 0x14020d4de
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x14020d4de
cmp rbp, qword [rbx]
jne 0x14020d4d0
mov eax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x14020d690
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 0x14020d564
test eax, eax
jns 0x14020d538
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 0x14020d670
test rbx, rbx
je 0x14020d564
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf5
add dword [rbx + 0x18], 1
add r13, 1
cmp dword [rdi + 0x138], r13d
jg 0x14020d4b0
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 0x14020d5c2
jmp 0x14020d0e4
test r14, r14
je 0x14020d5ad
mov qword [rdx + 0x10], r14
mov byte [rdx + 1], 0xff
add r13d, 1
add rbp, 0x18
cmp r13d, dword [rdi + 0x90]
jge 0x14020d0e0
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 0x14020d6b0
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 0x14020d5ad
test eax, eax
jns 0x14020d636
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 0x14020d5a0
mov r9d, 0xffffffff
mov r8, r14
mov rcx, rbx
call sym.vdbeChangeP4Full
jmp 0x14020d5ad
mov r9d, 0xfffffff5
mov r8, rbx
mov rcx, rsi
call sym.vdbeChangeP4Full
jmp 0x14020d564
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xaa
mov rcx, rsi
call sym.growOp3
jmp 0x14020d522
mov dword [rsp + 0x20], ecx
mov edx, 0xa9
mov rcx, rbx
call sym.growOp3
jmp 0x14020d620
mov r15, qword [r15]
test r15, r15
jne 0x14020d110
jmp 0x14020d3c4
mov rcx, rbx
call sym.growOpArray.isra.0
test eax, eax
jne 0x14020d3c4
mov edx, dword [rbx + 0x90]
lea ecx, [rdx + 0xc]
jmp 0x14020d1de
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 0x14020d194
mov rax, qword [rdi + 0xc8]
mov r9d, dword [rax + 0xbc]
test r9d, r9d
je 0x14020d419
mov r8d, dword [rax + 0xb8]
mov edx, 0x76
mov rcx, rsi
call sym.sqlite3VdbeAddOp3.constprop.0
jmp 0x14020d419
mov rax, qword [rsi + 0x88]
jmp 0x14020cfa2
mov r13, qword [rdi + 0xc8]
mov r9d, dword [r13 + 0xbc]
test r9d, r9d
je 0x14020cf4c
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 0x14020d7fb
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 0x14020d7d0
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, [0x1402b1b40]
movsxd rax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
je 0x14020d8cf
mov dword [rdx + 8], eax
jmp 0x14020cf53
cmp byte [rbp + 0xc5], 0
jne 0x14020d87a
call sym.sqlite3GetVdbe.part.0
test rax, rax
mov rsi, rax
jne 0x14020cf3f
mov dword [rdi + 0x18], 1
jmp 0x14020d45b
mov rdx, rdi
mov rcx, rsi
call sym.sqlite3VdbeMakeReady
mov dword [rdi + 0x18], 0x65
jmp 0x14020d46d
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 0x14020cf8e
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 9
mov rcx, rsi
mov r9d, 1
call sym.growOp3
jmp 0x14020d45b
mov rdx, qword [rsi + 0x88]
lea rcx, [r14 + r14*2]
lea rdx, [rdx + rcx*8]
jmp 0x14020d841