Function at 0x140144780
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0x40
mov r11, qword [rcx + 0x18]
xor r15d, r15d
mov dword [rsp + 0x88], r15d
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
test rdx, rdx
je 0x140144d16
lea r9, str.delete_all
mov r10, rdx
sub r10, r9
lea rbp, [0x140286ff0]
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r9]
movzx eax, byte [r10 + r9]
cmp edx, eax
jne 0x1401447e6
test edx, edx
je 0x1401447fb
inc r9
jmp 0x1401447d0
movzx ecx, byte [rax + rbp]
movzx edx, byte [rdx + rbp]
sub edx, ecx
jne 0x1401447f7
inc r9
jmp 0x1401447d0
test edx, edx
jne 0x140144830
mov ebp, 1
cmp dword [r11 + 0x40], r15d
jne 0x14014481f
lea rdx, str.delete_all_may_only_be_used_with_a_contentless_or_external_content_fts5_table
mov rcx, rdi
call fcn.140141890
mov eax, ebp
mov r15d, ebp
jmp 0x140144d76
mov rcx, qword [rdi + 0x28]
call fcn.1401a3810
mov r15d, ebp
jmp 0x140144d76
lea r8, str.rebuild
mov r9, rbx
sub r9, r8
nop dword [rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x140144856
test edx, edx
je 0x14014486b
inc r8
jmp 0x140144840
movzx ecx, byte [rax + rbp]
movzx edx, byte [rdx + rbp]
sub edx, ecx
jne 0x140144867
inc r8
jmp 0x140144840
test edx, edx
jne 0x1401448a0
mov ebp, 1
cmp dword [r11 + 0x40], ebp
jne 0x14014488f
lea rdx, str.rebuild_may_not_be_used_with_a_contentless_fts5_table
mov rcx, rdi
call fcn.140141890
mov eax, ebp
mov r15d, ebp
jmp 0x140144d76
mov rcx, qword [rdi + 0x28]
call fcn.1401a4580
mov r15d, ebp
jmp 0x140144d76
lea r8, str.optimize
mov r9, rbx
sub r9, r8
nop dword [rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x1401448c6
test edx, edx
je 0x1401448df
inc r8
jmp 0x1401448b0
movzx ecx, byte [rax + rbp]
movzx edx, byte [rdx + rbp]
sub edx, ecx
jne 0x1401448d7
inc r8
jmp 0x1401448b0
test edx, edx
jne 0x1401449ee
mov rax, qword [rdi + 0x28]
mov rdi, r15
mov qword [rsp + 0x20], r15
mov rbx, qword [rax + 8]
mov rcx, rbx
call fcn.1401346f0
cmp qword [rbx + 0xa0], r15
jne 0x140144924
mov rcx, rbx
call fcn.140134220
mov qword [rbx + 0x98], rax
cmp dword [rbx + 0x3c], r15d
jne 0x14014492a
mov rcx, rbx
call fcn.1401475a0
mov qword [rbx + 0xa0], rax
cmp dword [rbx + 0x3c], r15d
je 0x14014492f
mov rsi, r15
jmp 0x14014493f
mov rax, qword [rbx + 0xa0]
inc dword [rax]
mov rsi, qword [rbx + 0xa0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x140144957
call fcn.1401477a0
mov qword [rbx + 0xa0], r15
test rsi, rsi
je 0x14014496f
mov rdx, rsi
mov rcx, rbx
call fcn.1401376e0
mov rdi, rax
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.1401477a0
test rdi, rdi
je 0x140144c68
mov esi, r15d
cmp dword [rdi + 0x24], r15d
jne 0x14014499b
lea rax, [rdi + 0x24]
nop dword [rax]
inc esi
lea rax, [rax + 0x10]
cmp dword [rax], r15d
je 0x140144990
cmp dword [rbx + 0x3c], r15d
jne 0x140144c55
movsxd rbp, esi
add rbp, rbp
nop dword [rax + rax]
cmp dword [rdi + rbp*8 + 0x24], r15d
jle 0x140144c55
lea r9, [rsp + 0x88]
mov dword [rsp + 0x88], 0x3e8
mov r8d, esi
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.140136300
mov rdi, qword [rsp + 0x20]
cmp dword [rbx + 0x3c], r15d
je 0x1401449b0
jmp 0x140144c55
lea r8, str.merge
mov r9, rbx
sub r9, r8
nop dword [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x140144a16
test edx, edx
je 0x140144a2f
inc r8
jmp 0x140144a00
movzx ecx, byte [rax + rbp]
movzx edx, byte [rdx + rbp]
sub edx, ecx
jne 0x140144a27
inc r8
jmp 0x140144a00
test edx, edx
jne 0x140144c79
mov rcx, rsi
call fcn.1400c2210
mov rcx, qword [rdi + 0x28]
mov esi, eax
mov dword [rsp + 0x88], eax
mov rbx, qword [rcx + 8]
mov ecx, dword [rbx + 0x40]
test ecx, ecx
je 0x140144a54
mov dword [rbx + 0x3c], ecx
jmp 0x140144a91
cmp dword [rbx + 0x20], r15d
jne 0x140144a60
cmp dword [rbx + 0x34], r15d
je 0x140144a91
mov rcx, rbx
call fcn.140132510
mov eax, dword [rbx + 0x3c]
test eax, eax
jne 0x140144a82
mov rcx, qword [rbx + 0x18]
call fcn.14019e140
mov dword [rbx + 0x20], r15d
mov qword [rbx + 0x34], r15
jmp 0x140144a91
cmp dword [rbx + 0x20], r15d
jne 0x140144a8e
cmp dword [rbx + 0x34], r15d
je 0x140144a91
mov dword [rbx + 0x40], eax
cmp qword [rbx + 0xa0], r15
jne 0x140144ac2
mov rcx, rbx
call fcn.140134220
mov qword [rbx + 0x98], rax
cmp dword [rbx + 0x3c], r15d
jne 0x140144c68
mov rcx, rbx
call fcn.1401475a0
mov qword [rbx + 0xa0], rax
cmp dword [rbx + 0x3c], r15d
jne 0x140144c68
mov rax, qword [rbx + 0xa0]
inc dword [rax]
mov rdi, qword [rbx + 0xa0]
mov qword [rsp + 0x20], rdi
test rdi, rdi
je 0x140144c68
mov rax, qword [rbx]
mov qword [rsp + 0x38], r13
mov r13, rdi
mov qword [rsp + 0x30], r14
mov ebp, dword [rax + 0x9c]
dec dword [rdi]
cmp dword [rdi], r15d
jg 0x140144bf7
mov rcx, qword [0x1402d3ab0]
mov qword [rsp + 0x78], r12
mov r12d, r15d
cmp dword [rdi + 0x1c], r15d
jle 0x140144b9e
lea r15, [rdi + 0x28]
mov rsi, qword [r15]
test rsi, rsi
je 0x140144b87
cmp dword [0x1402cd290], 0
je 0x140144b77
test rcx, rcx
je 0x140144b40
call qword [0x1402cd310]
mov rcx, rsi
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
mov rcx, rsi
movsxd rdx, eax
sub qword [0x1402d39f0], rdx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140144b87
call qword [0x1402cd320]
jmp 0x140144b80
mov rcx, rsi
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
inc r12d
add r15, 0x10
cmp r12d, dword [rdi + 0x1c]
jl 0x140144b24
mov esi, dword [rsp + 0x88]
xor r15d, r15d
cmp dword [0x1402cd290], 0
mov r12, qword [rsp + 0x78]
je 0x140144bee
test rcx, rcx
je 0x140144bb7
call qword [0x1402cd310]
mov rcx, rdi
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
mov rcx, rdi
movsxd rdx, eax
sub qword [0x1402d39f0], rdx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x140144bf7
call qword [0x1402cd320]
jmp 0x140144bf7
mov rcx, rdi
call qword [0x1402cd2b8]
mov r14, qword [rsp + 0x30]
mov qword [rbx + 0xa0], r15
test esi, esi
jns 0x140144c29
mov rdx, r13
mov rcx, rbx
call fcn.1401376e0
mov rcx, r13
mov rdi, rax
call fcn.1401477a0
neg esi
mov qword [rsp + 0x20], rdi
mov ebp, 1
mov r13, qword [rsp + 0x38]
test rdi, rdi
je 0x140144c60
cmp dword [rdi + 0x1c], 0
je 0x140144c60
mov r9d, ebp
lea rdx, [rsp + 0x20]
mov r8d, esi
mov rcx, rbx
call fcn.1401361c0
mov rdi, qword [rsp + 0x20]
test eax, eax
je 0x140144c60
mov rdx, rdi
mov rcx, rbx
call fcn.1401478d0
mov rcx, rdi
call fcn.1401477a0
mov eax, dword [rbx + 0x3c]
mov rdi, qword [rsp + 0x70]
mov dword [rbx + 0x3c], r15d
jmp 0x140144d76
lea r8, str.integrity_check
mov r9, rbx
sub r9, r8
nop word [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x140144ca6
test edx, edx
je 0x140144cbb
inc r8
jmp 0x140144c90
movzx ecx, byte [rax + rbp]
movzx edx, byte [rdx + rbp]
sub edx, ecx
jne 0x140144cb7
inc r8
jmp 0x140144c90
test edx, edx
jne 0x140144cd3
mov rcx, rsi
call fcn.1400c2210
mov rcx, qword [rdi + 0x28]
mov edx, eax
call fcn.1401a3e10
jmp 0x140144d76
lea rdx, str.flush
mov r9, rbx
sub r9, rdx
movzx ecx, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp ecx, r8d
jne 0x140144cf6
test ecx, ecx
je 0x140144d0c
inc rdx
jmp 0x140144ce0
movzx ecx, byte [rcx + rbp]
movzx eax, byte [r8 + rbp]
sub ecx, eax
jne 0x140144d08
inc rdx
jmp 0x140144ce0
test ecx, ecx
jne 0x140144d16
mov rcx, rdi
call fcn.14019dd30
jmp 0x140144d76
mov rcx, rdi
call fcn.14019dd30
test eax, eax
jne 0x140144d92
mov rcx, qword [rdi + 0x20]
call fcn.1401a00c0
test eax, eax
jne 0x140144d92
mov rcx, qword [rdi + 0x18]
lea r9, [rsp + 0x88]
mov r8, rsi
mov rdx, rbx
call fcn.14019cb90
test eax, eax
jne 0x140144d92
cmp dword [rsp + 0x88], r15d
je 0x140144d64
mov eax, 1
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, qword [rdi + 0x28]
xor r9d, r9d
mov r8, rsi
mov rdx, rbx
call fcn.1401a2f00
test eax, eax
jne 0x140144d92
test r15d, r15d
je 0x140144d92
mov rax, qword [rdi + 0x18]
dec dword [rax + 0x8c]
mov rcx, qword [rdi + 0x20]
call fcn.1401a00c0
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret