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

Disassembly:
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rsi, qword [rcx]
mov r13, qword [rsp + 0xf0]
xor r12d, r12d
mov r15b, r9b
mov rbp, rcx
test r8, r8
jne 0x1400428f4
test r13, r13
je 0x140042f10
mov rbx, qword [rcx + 0x140]
test rbx, rbx
je 0x140042f10
test r13, r13
jne 0x14004291d
mov rdx, qword [rbx]
mov rcx, rsi
call fcn.140042844
test eax, eax
je 0x14004291d
bts dword [rbx + 0x40], 0xc
cmp byte [rsi + 0xbd], r12b
je 0x140042950
test r13, r13
je 0x14004293f
lea rdx, [0x1400c4580]
mov rcx, rbp
call fcn.1400064c8
jmp 0x140042f10
mov eax, dword [rsi + 0xb8]
mov dword [rbx + 0x38], eax
cmp eax, 1
jne 0x140042950
or dword [rbx + 0x40], eax
test r15b, r15b
jns 0x140042990
mov eax, dword [rbx + 0x40]
test al, 8
je 0x140042965
lea rdx, str.AUTOINCREMENT_not_allowed_on_WITHOUT_ROWID_tables
jmp 0x140042932
mov rcx, rbp
test al, 4
jne 0x140042980
mov r8, qword [rbx]
lea rdx, str.PRIMARY_KEY_missing_on_table__s
call fcn.1400064c8
jmp 0x140042f10
or eax, 0x280
mov rdx, rbx
mov dword [rbx + 0x40], eax
call fcn.140042390
mov rcx, qword [rbx + 0x70]
mov r14d, 0xffff8000
test rcx, rcx
je 0x1400429bc
mov rax, qword [rsi + 0x20]
mov r14d, r12d
cmp qword [rax + 0x18], rcx
je 0x1400429bc
add rax, 0x18
add rax, 0x20
inc r14d
cmp qword [rax], rcx
jne 0x1400429b0
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x1400429f7
xor r9d, r9d
mov rdx, rbx
mov rcx, rbp
lea r8d, [r9 + 4]
mov qword [rsp + 0x20], rax
call fcn.140033414
cmp dword [rbp + 0x30], r12d
je 0x1400429f7
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x1400429f3
mov rcx, rsi
call fcn.1400354e4
mov qword [rbx + 0x30], r12
test byte [rbx + 0x40], 0x60
je 0x140042ac1
mov ecx, r12d
mov r15d, r12d
mov dword [rsp + 0xd0], ecx
cmp r12w, word [rbx + 0x46]
jge 0x140042aa8
mov rdi, r12
xor r13d, r13d
mov r12, qword [rbx + 8]
test byte [r12 + rdi + 0x1c], 0x60
je 0x140042ab4
mov r12, qword [r12 + rdi + 8]
mov r8d, 8
mov rdx, rbx
mov rcx, rbp
mov r9, r12
mov qword [rsp + 0x20], r13
call fcn.140033414
test eax, eax
je 0x140042a7c
test r12, r12
je 0x140042a61
mov rdx, r12
mov rcx, rsi
call fcn.14003464c
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x78]
call fcn.140034078
mov rcx, qword [rbx + 8]
mov qword [rcx + rdi + 8], rax
mov ecx, dword [rsp + 0xd0]
movsx eax, word [rbx + 0x46]
inc ecx
add rdi, 0x20
mov dword [rsp + 0xd0], ecx
cmp ecx, eax
jl 0x140042a1f
mov r13, qword [rsp + 0xf0]
xor r12d, r12d
test r15d, r15d
jne 0x140042ab9
lea rdx, str.must_have_at_least_one_non_generated_column
jmp 0x140042932
inc r15d
jmp 0x140042a83
mov r15b, byte [rsp + 0xe8]
movsx edx, word [rbx + 0x46]
mov rdi, qword [rbx + 8]
mov ecx, r12d
test edx, edx
jle 0x140042ae3
add rdi, 0x1a
movzx eax, byte [rdi]
dec edx
add rdi, 0x20
add ecx, eax
test edx, edx
jg 0x140042ad4
cmp word [rbx + 0x44], r12w
jge 0x140042aec
inc ecx
shl ecx, 2
call fcn.1400074f8
mov rdi, qword [rbx + 0x10]
mov word [rbx + 0x4c], ax
jmp 0x140042b0a
mov rcx, rdi
call fcn.140042244
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140042afe
cmp byte [rsi + 0xbd], r12b
jne 0x140042e9b
mov rcx, rbp
call fcn.14005896c
mov r12, rax
test rax, rax
je 0x140042f10
lea edx, [rdi + 0x76]
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
mov dword [rsp + 0x20], edi
call fcn.140020f34
cmp qword [rbx + 0x18], rdi
jne 0x140042b5b
lea rax, str.table
lea r8, str.TABLE
jmp 0x140042b69
lea rax, str.view
lea r8, str.VIEW
mov qword [rsp + 0x50], rax
test r13, r13
je 0x140042d8f
inc dword [rbp + 0x38]
mov r15d, dword [rbp + 0x38]
mov edx, 0x63
lea eax, [r15 + 1]
mov rcx, rbp
lea r8d, [rdx - 0x62]
mov dword [rsp + 0xd0], eax
inc eax
mov dword [rsp + 0x20], r14d
mov dword [rbp + 0x38], eax
mov rax, qword [rbp + 0xa0]
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov r9d, dword [rbp + 0x7c]
mov rcx, r12
call fcn.140020f34
movsxd rax, dword [r12 + 0x90]
test eax, eax
jle 0x140042bdf
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov edx, 0x10
mov word [rax + rcx*8 - 0x16], dx
mov dword [rbp + 0x34], 2
mov edi, dword [r12 + 0x90]
xor r9d, r9d
lea edx, [r9 + 0xd]
inc edi
mov r8d, r15d
mov rcx, r12
mov dword [rsp + 0x20], edi
call fcn.140020f34
xor eax, eax
cmp dword [rbp + 0x30], eax
jne 0x140042f10
mov r8b, 0x41
mov rdx, r13
mov rcx, rbp
call fcn.1400587c8
xor edx, edx
test rax, rax
je 0x140042f10
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
mov word [rax + 0x46], dx
mov qword [rax + 8], rdx
cmp qword [rsi + 0x2e0], rdx
jne 0x140042c54
dec dword [rax + 0x3c]
jne 0x140042c61
mov rdx, rax
mov rcx, rsi
call fcn.14004087c
xor edx, edx
mov qword [rsp + 0x70], rdx
mov dword [rsp + 0x68], edx
lea r8, [rsp + 0x58]
mov rdx, r13
mov rcx, rbp
mov byte [rsp + 0x58], 0xd
mov dword [rsp + 0x5c], r15d
mov qword [rsp + 0x60], 0
call fcn.14005cec4
xor eax, eax
cmp dword [rbp + 0x30], eax
jne 0x140042f10
mov edx, r15d
mov rcx, r12
call fcn.1400213fc
lea edx, [rdi - 1]
mov rcx, r12
call fcn.140021a4c
mov ecx, dword [r12 + 0x90]
mov r8d, dword [rsp + 0x5c]
mov dword [rax + 8], ecx
xor eax, eax
xor r9d, r9d
lea edx, [rax + 0xe]
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.140020f34
mov r15d, dword [rsp + 0xd0]
mov r9d, dword [rsp + 0x68]
mov r8d, dword [rsp + 0x64]
mov edx, 0x5d
mov rcx, r12
mov dword [rsp + 0x20], r15d
mov edi, eax
call fcn.140020f34
xor r8d, r8d
mov rdx, rbx
mov rcx, r12
call fcn.14004caec
xor eax, eax
lea r9d, [r15 + 1]
lea edx, [rax + 0x7b]
lea r8d, [rax + 1]
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.140020f34
mov edx, 0x7c
lea eax, [r15 + 1]
lea r8d, [rdx - 0x7b]
mov r9d, r15d
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.140020f34
xor r15d, r15d
mov r9d, edi
lea edx, [r15 + 0xb]
xor r8d, r8d
mov rcx, r12
mov dword [rsp + 0x20], r15d
call fcn.140020f34
mov edx, edi
mov rcx, r12
call fcn.140021a4c
mov ecx, dword [r12 + 0x90]
lea edx, [r15 + 0x76]
mov dword [rax + 8], ecx
lea r8d, [r15 + 1]
xor r9d, r9d
mov rcx, r12
mov dword [rsp + 0x20], r15d
call fcn.140020f34
mov rdx, rbx
mov rcx, rsi
call fcn.140041f64
jmp 0x140042dd6
mov rcx, qword [rsp + 0xe0]
lea rax, [rbp + 0x100]
test r15b, r15b
cmovne rcx, rax
mov r9d, dword [rcx]
mov rax, qword [rcx]
sub r9d, dword [rbp + 0xf0]
cmp byte [rax], 0x3b
je 0x140042dbb
add r9d, dword [rcx + 8]
mov rax, qword [rbp + 0xf0]
lea rdx, str.CREATE__s__.s
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400058e0
mov rcx, qword [rbx]
mov r8, qword [rsi + 0x20]
mov r9, qword [rsp + 0x50]
mov r15, rax
mov eax, dword [rbp + 0x78]
movsxd rdi, r14d
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0x7c]
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
shl rdi, 5
lea rdx, str.UPDATE__Q.sqlite_master_SET_type_s__name_Q__tbl_name_Q__rootpage_d__sql_Q_WHERE_rowid_d
mov rcx, rbp
mov r8, qword [rdi + r8]
call fcn.140040000
test r15, r15
je 0x140042e2c
mov rdx, r15
mov rcx, rsi
call fcn.140003a4c
mov edx, r14d
mov rcx, rbp
call fcn.140041e38
test byte [rbx + 0x40], 8
je 0x140042e69
xor ecx, ecx
cmp byte [rbp + 0x114], cl
jne 0x140042e69
mov r8, qword [rsi + 0x20]
mov rax, qword [rdi + r8 + 0x18]
cmp qword [rax + 0x68], rcx
jne 0x140042e69
mov r8, qword [rdi + r8]
lea rdx, str.CREATE_TABLE__Q.sqlite_sequence_name_seq_
mov rcx, rbp
call fcn.140040000
mov r8, qword [rbx]
lea rdx, str.tbl_name_q_AND_type_trigger
mov rcx, rsi
call fcn.1400058e0
mov edx, r14d
mov rcx, r12
mov r8, rax
xor eax, eax
movzx r9d, ax
call fcn.140021310
xor r12d, r12d
cmp byte [rsi + 0xbd], r12b
je 0x140042ee3
mov rcx, qword [rbx + 0x70]
mov rdx, qword [rbx]
mov r8, rbx
add rcx, 8
call fcn.140007910
test rax, rax
je 0x140042ebd
mov rcx, rsi
call fcn.1400040d8
jmp 0x140042f10
mov qword [rbp + 0x140], r12
or dword [rsi + 0x2c], 1
mov rsi, qword [rbx]
lea rdi, str.sqlite_sequence
mov ecx, 0x10
repe cmpsb byte [rsi], byte [rdi]
jne 0x140042ee3
mov rax, qword [rbx + 0x70]
mov qword [rax + 0x68], rbx
test r13, r13
jne 0x140042f10
cmp qword [rbx + 0x18], r12
jne 0x140042f10
mov rax, qword [rsp + 0xd8]
cmp qword [rax], r12
cmove rax, qword [rsp + 0xe0]
mov eax, dword [rax]
sub eax, dword [rbp + 0xf0]
add eax, 0xd
mov dword [rbx + 0x50], eax
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret