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

Disassembly:
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push r15
sub rsp, 0xb0
mov rbp, qword [rcx]
mov rsi, rcx
mov r15, qword [rsp + 0xf0]
test r8, r8
jne 0x1401b2206
test r15, r15
je 0x1401b293e
mov qword [rsp + 0xa8], rbx
mov rbx, qword [rcx + 0x148]
test rbx, rbx
je 0x1401b2936
test r15, r15
jne 0x1401b2242
mov rdx, qword [rbx]
mov rcx, rbp
call fcn.1401d59d0
movzx r9d, byte [rsp + 0xe8]
test eax, eax
je 0x1401b2242
or dword [rbx + 0x40], 0x1000
cmp byte [rbp + 0xb5], 0
je 0x1401b2275
test r15, r15
je 0x1401b2264
lea rdx, [0x140225e26]
mov rcx, rsi
call fcn.1401b29d0
jmp 0x1401b2936
mov eax, dword [rbp + 0xb0]
mov dword [rbx + 0x38], eax
cmp eax, 1
jne 0x1401b2275
or dword [rbx + 0x40], eax
test r9b, r9b
jns 0x1401b22bd
mov eax, dword [rbx + 0x40]
mov rcx, rsi
test al, 8
je 0x1401b2295
lea rdx, str.AUTOINCREMENT_not_allowed_on_WITHOUT_ROWID_tables
call fcn.1401b29d0
jmp 0x1401b2936
test al, 4
jne 0x1401b22ad
mov r8, qword [rbx]
lea rdx, str.PRIMARY_KEY_missing_on_table__s
call fcn.1401b29d0
jmp 0x1401b2936
or eax, 0x280
mov rdx, rbx
mov dword [rbx + 0x40], eax
call fcn.14017ffe0
mov rcx, qword [rbx + 0x70]
mov qword [rsp + 0x98], r12
mov r12d, 0xffff8000
mov qword [rsp + 0x90], r13
xor r13d, r13d
mov dword [rsp + 0xd0], r12d
test rcx, rcx
je 0x1401b2314
mov rax, qword [rbp + 0x20]
mov r12d, r13d
add rax, 0x18
mov dword [rsp + 0xd0], r13d
cmp qword [rax], rcx
je 0x1401b2314
nop
inc r12d
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x1401b2300
mov dword [rsp + 0xd0], r12d
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x1401b234f
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, rsi
lea r8d, [r9 + 4]
call fcn.1401d0010
cmp dword [rsi + 0x30], r13d
je 0x1401b234f
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x1401b234b
mov rcx, rbp
call fcn.140185b10
mov qword [rbx + 0x30], r13
test byte [rbx + 0x40], 0x60
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x88], r14
je 0x1401b2448
xor eax, eax
mov r15d, eax
cmp ax, word [rbx + 0x46]
jge 0x1401b2429
xor r12d, r12d
mov edi, r12d
nop
mov rax, qword [rbx + 8]
test byte [rdi + rax + 0x1c], 0x60
je 0x1401b2405
mov r14, qword [rdi + rax + 8]
mov r8d, 8
mov r9, r14
mov qword [rsp + 0x20], r12
mov rdx, rbx
mov rcx, rsi
call fcn.1401d0010
test eax, eax
je 0x1401b2408
test r14, r14
je 0x1401b23bd
mov rdx, r14
mov rcx, rbp
call fcn.1401b7260
mov edx, 0x48
mov rcx, rbp
call fcn.1401b03f0
mov rcx, rax
test rax, rax
je 0x1401b23fa
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov byte [rcx], 0x77
mov word [rcx + 0x32], 0xffff
mov dword [rcx + 0x28], 1
mov rax, qword [rbx + 8]
mov qword [rdi + rax + 8], rcx
jmp 0x1401b2408
inc r13d
movsx eax, word [rbx + 0x46]
inc r15d
add rdi, 0x20
cmp r15d, eax
jl 0x1401b2380
mov r12d, dword [rsp + 0xd0]
test r13d, r13d
jne 0x1401b243d
lea rdx, str.must_have_at_least_one_non_generated_column
mov rcx, rsi
call fcn.1401b29d0
jmp 0x1401b2916
mov r15, qword [rsp + 0xf0]
xor r13d, r13d
movsx r10d, word [rbx + 0x46]
mov edx, r13d
mov rcx, qword [rbx + 8]
mov r8d, r13d
mov r11d, r13d
cmp r10d, 2
jl 0x1401b2488
lea eax, [r10 - 2]
shr eax, 1
inc eax
mov r9d, eax
neg eax
lea r10d, [r10 + rax*2]
movzx eax, byte [rcx + 0x1a]
add edx, eax
movzx eax, byte [rcx + 0x3a]
add r8d, eax
add rcx, 0x40
sub r9, 1
jne 0x1401b2471
test r10d, r10d
jle 0x1401b2492
movzx r11d, byte [rcx + 0x1a]
lea ecx, [rdx + r11]
add ecx, r8d
cmp word [rbx + 0x44], 0
lea eax, [rcx + 1]
cmovge eax, ecx
shl eax, 2
mov ecx, eax
call fcn.1401c5150
mov rdi, qword [rbx + 0x10]
mov word [rbx + 0x4c], ax
test rdi, rdi
je 0x1401b24d1
nop dword [rax + rax]
mov rcx, rdi
call fcn.1401821f0
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1401b24c0
cmp byte [rbp + 0xb5], 0
jne 0x1401b2874
mov r14, qword [rsi + 0x10]
test r14, r14
jne 0x1401b2511
cmp qword [rsi + 0xa0], r14
jne 0x1401b24fd
mov rax, qword [rsi]
test byte [rax + 0x5c], 8
jne 0x1401b24fd
mov byte [rsi + 0x23], 1
mov rcx, rsi
call fcn.1401dc9e0
mov r14, rax
test rax, rax
je 0x1401b2916
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1401b253a
xor r9d, r9d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
mov rcx, r14
lea edx, [r9 + 0x74]
call fcn.14018dca0
jmp 0x1401b2565
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0x74
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rbx + 0x18]
lea rcx, str.VIEW
test rax, rax
lea r8, str.TABLE
lea r13, str.table
cmovne r8, rcx
lea rcx, str.view
cmovne r13, rcx
test r15, r15
je 0x1401b2772
mov edi, dword [rsi + 0x38]
mov edx, 0x61
inc edi
mov dword [rsp + 0x20], r12d
mov rcx, rsi
lea r8d, [rdx - 0x60]
lea eax, [rdi + 1]
mov dword [rsp + 0x50], eax
inc eax
mov dword [rsi + 0x38], eax
mov rax, qword [rsi + 0xa0]
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov rcx, r14
mov r9d, dword [rsi + 0x7c]
call fcn.1401dc1d0
movsxd rax, dword [r14 + 0x90]
test eax, eax
jle 0x1401b25f6
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
mov word [rax + rcx*8 - 0x16], 0x10
xor r9d, r9d
mov dword [rsi + 0x34], 2
mov eax, dword [r14 + 0x90]
mov r8d, edi
mov dword [rsp + 0xd0], eax
mov rcx, r14
inc eax
lea edx, [r9 + 0xd]
mov dword [rsp + 0x20], eax
call fcn.1401dc1d0
cmp dword [rsi + 0x30], 0
jne 0x1401b2916
mov r8b, 0x41
mov rdx, r15
mov rcx, rsi
call fcn.1401d0110
test rax, rax
je 0x1401b2916
movzx ecx, word [rax + 0x46]
mov word [rbx + 0x48], cx
mov word [rbx + 0x46], cx
mov rcx, qword [rax + 8]
mov qword [rbx + 8], rcx
xor ecx, ecx
mov word [rax + 0x46], cx
mov qword [rax + 8], rcx
cmp qword [rbp + 0x2d8], rcx
jne 0x1401b2671
add dword [rax + 0x3c], 0xffffffff
jne 0x1401b267e
mov rdx, rax
mov rcx, rbp
call fcn.140181850
xor ecx, ecx
mov qword [rsp + 0x70], rcx
lea r8, [rsp + 0x58]
mov dword [rsp + 0x68], ecx
mov rdx, r15
mov rcx, rsi
mov byte [rsp + 0x58], 0xd
mov dword [rsp + 0x5c], edi
mov qword [rsp + 0x60], 0
call fcn.1401d1ab0
cmp dword [rsi + 0x30], 0
jne 0x1401b2916
mov edx, edi
mov rcx, r14
call fcn.1401dcfd0
mov edx, dword [rsp + 0xd0]
mov rcx, r14
call fcn.1401e68a0
mov r8d, dword [rsp + 0x5c]
mov edx, 0xe
mov rcx, r14
call fcn.1401dc0f0
mov r9d, dword [rsp + 0x68]
mov edx, 0x5b
mov r8d, dword [rsp + 0x64]
mov rcx, r14
mov r15d, dword [rsp + 0x50]
mov edi, eax
mov dword [rsp + 0x20], r15d
call fcn.1401dc1d0
xor r8d, r8d
mov rdx, rbx
mov rcx, r14
call fcn.1401d7310
mov edx, 0x79
lea r9d, [r15 + 1]
mov rcx, r14
lea r8d, [rdx - 0x78]
call fcn.1401dc160
mov edx, 0x7a
lea eax, [r15 + 1]
mov r9d, r15d
mov dword [rsp + 0x20], eax
mov rcx, r14
lea r8d, [rdx - 0x79]
call fcn.1401dc1d0
mov edx, edi
mov rcx, r14
call fcn.1401e6230
mov edx, edi
mov rcx, r14
call fcn.1401e68a0
mov edx, 0x74
mov rcx, r14
lea r8d, [rdx - 0x73]
call fcn.1401dc0f0
mov rdx, rbx
mov rcx, rbp
call fcn.140180d60
jmp 0x1401b27bc
cmp byte [rsp + 0xe8], 0
lea rcx, [rsi + 0x108]
jne 0x1401b278b
mov rcx, qword [rsp + 0xe0]
mov rax, qword [rcx]
mov r9d, dword [rcx]
sub r9d, dword [rsi + 0xf8]
cmp byte [rax], 0x3b
je 0x1401b27a1
add r9d, dword [rcx + 8]
mov rax, qword [rsi + 0xf8]
lea rdx, str.CREATE__s__.s
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.1401c5320
mov rcx, qword [rbx]
lea rdx, str.UPDATE__Q.sqlite_master_SET_type_s__name_Q__tbl_name_Q__rootpage_d__sql_Q_WHERE_rowid_d
mov r8, qword [rbp + 0x20]
mov r15, rax
mov eax, dword [rsi + 0x78]
mov r9, r13
mov dword [rsp + 0x40], eax
mov eax, dword [rsi + 0x7c]
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movsxd rdi, r12d
shl rdi, 5
mov r8, qword [rdi + r8]
call fcn.1401c5c70
test r15, r15
je 0x1401b2810
mov rdx, r15
mov rcx, rbp
call fcn.1401b0260
mov edx, r12d
mov rcx, rsi
call fcn.1401ab7e0
test byte [rbx + 0x40], 8
je 0x1401b2844
mov r8, qword [rbp + 0x20]
mov rax, qword [r8 + rdi + 0x18]
cmp qword [rax + 0x68], 0
jne 0x1401b2844
mov r8, qword [r8 + rdi]
lea rdx, str.CREATE_TABLE__Q.sqlite_sequence_name_seq_
mov rcx, rsi
call fcn.1401c5c70
mov r8, qword [rbx]
lea rdx, str.tbl_name_q_AND_type_trigger
mov rcx, rbp
call fcn.1401c5320
mov r8, rax
mov edx, r12d
mov rcx, r14
call fcn.1401dc520
xor r13d, r13d
cmp byte [rbp + 0xb5], r13b
je 0x1401b2916
mov rcx, qword [rbx + 0x70]
mov r8, rbx
mov rdx, qword [rbx]
add rcx, 8
call fcn.1401c0320
test rax, rax
je 0x1401b28d6
cmp byte [rbp + 0x61], 0
jne 0x1401b2916
cmp byte [rbp + 0x62], 0
jne 0x1401b2916
cmp dword [rbp + 0xd4], 0
mov byte [rbp + 0x61], 1
jle 0x1401b28b3
mov dword [rbp + 0x170], 1
inc dword [rbp + 0x178]
mov rax, qword [rbp + 0x138]
mov word [rbp + 0x17c], r13w
test rax, rax
je 0x1401b2916
mov dword [rax + 0x18], 7
jmp 0x1401b2916
mov qword [rsi + 0x148], r13
or dword [rbp + 0x2c], 1
cmp qword [rbx + 0x18], 0
jne 0x1401b2916
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsi + 0xf8]
mov rdx, qword [rdx]
test rdx, rdx
jne 0x1401b2909
mov rax, qword [rsp + 0xe0]
mov edx, dword [rax]
sub edx, ecx
call fcn.1401dbab0
add eax, 0xd
mov dword [rbx + 0x50], eax
mov rdi, qword [rsp + 0xa0]
mov r14, qword [rsp + 0x88]
mov r12, qword [rsp + 0x98]
mov r13, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xa8]
add rsp, 0xb0
pop r15
pop rsi
pop rbp
ret