Function at 0x1401ff6a0
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov r13d, dword [rcx + 0x30]
mov r12, rcx
mov rsi, rdx
test r13d, r13d
jne 0x1401ffa9b
mov r15, qword [rcx]
cmp byte [r15 + 0x63], 0
jne 0x1401ffa9b
mov rdi, qword [rcx + 0x138]
mov rcx, qword [r15 + 0x20]
mov r8, qword [rdi + 0x60]
test r8, r8
je 0x1401ffbd0
cmp r8, qword [rcx + 0x18]
je 0x1401ffb80
lea rdx, [rcx + 0x20]
mov eax, 1
nop dword [rax]
mov rbx, rax
mov rcx, rdx
mov r13d, eax
add rdx, 0x20
shl rbx, 5
add rax, 1
cmp r8, qword [rcx + 0x18]
jne 0x1401ff700
mov rax, qword [rdi]
mov r14, qword [rcx]
lea rbp, [rax + 0x10]
movsx rax, word [rdi + 0x36]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rax, [rax + rdx*8 - 0x18]
mov qword [rsp + 0x48], rax
movzx eax, word [rax + 0x10]
test ax, ax
je 0x1401ffad0
cmp byte [rdi + 0x3f], 0
jne 0x1401ffad0
mov r11, qword [rdi + 0x50]
test r11, r11
je 0x1401ff773
cmp dword [r11], eax
jl 0x1401ffad0
sub eax, 1
cdqe
shl rax, 5
mov r11, qword [r11 + rax + 8]
mov r8, r14
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x50], r11
call fcn.14018aab0
mov r8, r14
mov edx, 0x1a
mov rcx, r12
mov qword [rsp + 0x20], 0
mov r9, qword [rax]
call fcn.140177430
test eax, eax
jne 0x1401ffa9b
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
lea rdx, str.Cannot_add_a_PRIMARY_KEY_column
movzx eax, word [rax + 0x12]
test al, 1
jne 0x1401ffab7
cmp qword [rdi + 0x10], 0
jne 0x1401ffab0
test al, 0x60
jne 0x1401ffae0
test r11, r11
je 0x1401ffb47
mov rax, qword [r11 + 0x10]
cmp byte [rax], 0x78
je 0x1401ffb47
test byte [r15 + 0x31], 0x40
je 0x1401ff826
cmp qword [rdi + 0x48], 0
je 0x1401ff826
mov qword [rsp + 0x20], rbp
mov r9, r14
mov rcx, r12
lea r8, str.Cannot_add_a_REFERENCES_column_with_non_NULL_default_value
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
mov qword [rsp + 0x50], r11
call fcn.1401fad50
mov r11, qword [rsp + 0x50]
lea rax, [rsp + 0x68]
mov r9d, 0x41
mov rdx, r11
mov rcx, r15
mov qword [rsp + 0x20], rax
mov r8d, 1
mov qword [rsp + 0x68], 0
call fcn.140181f70
test eax, eax
jne 0x1401ffa9b
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1401ffb9a
call fcn.14015c730
nop dword [rax + rax]
mov r9, qword [rsi]
test r9, r9
mov qword [rsp + 0x50], r9
je 0x1401ff935
mov r8d, dword [rsi + 8]
mov rcx, r15
lea rdx, [r8 + 1]
mov qword [rsp + 0x58], r8
call fcn.14014e3d0
test rax, rax
je 0x1401ff935
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rcx, rax
mov rdx, r9
call sub.msvcrt.dll_memcpy
mov r8, qword [rsp + 0x58]
lea rcx, [0x14037cea0]
mov r11, rax
mov byte [rax + r8], 0
mov eax, dword [rsi + 8]
sub eax, 1
add rax, r11
cmp rax, r11
jbe 0x1401ff8fb
nop word cs:[rax + rax]
movzx edx, byte [rax]
cmp dl, 0x3b
je 0x1401ff8ee
test byte [rcx + rdx], 1
je 0x1401ff8fb
sub rax, 1
mov byte [rax + 1], 0
cmp rax, r11
jne 0x1401ff8e0
mov r9d, dword [rdi + 0x40]
mov qword [rsp + 0x20], r11
mov rcx, r12
mov r8, r14
mov qword [rsp + 0x30], rbp
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__printf___._ds___sql____Q__substr_sql_1length_printf___._ds_sql____WHERE_type__table_AND_name___Q
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x50], r11
call fcn.1401fad50
mov r11, qword [rsp + 0x50]
mov rcx, r15
mov rdx, r11
call fcn.140153ba0
mov rsi, qword [r12 + 0x10]
test rsi, rsi
je 0x1401ffa78
movzx eax, byte [r12 + 0x1f]
test al, al
je 0x1401ffb87
sub eax, 1
mov byte [r12 + 0x1f], al
movzx eax, al
mov r15d, dword [r12 + rax*4 + 0xc8]
mov rcx, rsi
mov r9d, r15d
mov r8d, r13d
mov edx, 0x61
mov dword [rsp + 0x20], 2
call fcn.140162270
mov eax, 1
mov ecx, r13d
shl eax, cl
or dword [rsi + 0xd4], eax
cmp r13d, 1
je 0x1401ff9ad
mov rdx, qword [rsi]
mov rdx, qword [rdx + 0x20]
mov rdx, qword [rdx + rbx + 8]
cmp byte [rdx + 0x11], 0
je 0x1401ff9ad
or dword [rsi + 0xd8], eax
mov dword [rsp + 0x20], 0
mov r8d, r15d
mov edx, 0x54
mov rcx, rsi
mov r9d, 0xfffffffe
call fcn.140162270
mov r8d, r15d
mov edx, 0x31
mov rcx, rsi
mov eax, dword [rsi + 0x98]
mov dword [rsp + 0x20], 0
lea r9d, [rax + 2]
call fcn.140162270
mov r8d, r13d
mov edx, 0x62
mov rcx, rsi
mov dword [rsp + 0x20], 3
mov r9d, 2
call fcn.140162270
test r15d, r15d
je 0x1401ffa2a
movzx eax, byte [r12 + 0x1f]
cmp al, 7
ja 0x1401ffa2a
lea edx, [rax + 1]
mov byte [r12 + 0x1f], dl
mov dword [r12 + rax*4 + 0xc8], r15d
cmp qword [r12 + 0x10], 0
je 0x1401ffa43
mov r8d, 3
mov edx, r13d
mov rcx, r12
call fcn.140163b50
cmp qword [rdi + 0x20], 0
je 0x1401ffb10
mov r9, r14
mov r8, rbp
lea rdx, str.SELECT_CASE_WHEN_quick_check_GLOB_CHECK_THEN_raise_ABORT_CHECK_constraint_failed__ELSE_raise_ABORT_NOT_NULL_constraint_failed__END__FROM_pragma_quick_check___w____w___WHERE_quick_check_GLOB_CHECK_OR_quick_check_GLOB_NULL
mov rcx, r12
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.1401fad50
cmp qword [r12 + 0xa0], 0
je 0x1401ffb2e
mov rcx, r12
call fcn.1401622e0
mov rsi, rax
test rax, rax
jne 0x1401ff943
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, str.Cannot_add_a_UNIQUE_column
mov rcx, r12
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140177210
xor r11d, r11d
jmp 0x1401ff773
test al, 0x40
je 0x1401ff870
mov qword [rsp + 0x20], rbp
mov r9, r14
mov rcx, r12
lea r8, str.cannot_add_a_STORED_column
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
call fcn.1401fad50
jmp 0x1401ff870
mov rax, qword [rsp + 0x48]
test byte [rax + 8], 0xf
je 0x1401ffa9b
test byte [rax + 0x12], 0x60
je 0x1401ffa9b
jmp 0x1401ffa4e
mov rax, qword [r12]
test byte [rax + 0x5c], 8
jne 0x1401ffa87
mov byte [r12 + 0x23], 1
jmp 0x1401ffa87
mov rax, qword [rsp + 0x48]
test byte [rax + 8], 0xf
je 0x1401ff870
mov qword [rsp + 0x20], rbp
mov r9, r14
mov rcx, r12
lea r8, str.Cannot_add_a_NOT_NULL_column_with_default_value_NULL
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
call fcn.1401fad50
jmp 0x1401ff870
xor ebx, ebx
jmp 0x1401ff71b
mov eax, dword [r12 + 0x38]
lea r15d, [rax + 1]
mov dword [r12 + 0x38], r15d
jmp 0x1401ff964
mov qword [rsp + 0x20], rbp
mov rcx, r12
mov r9, r14
lea r8, str.Cannot_add_a_column_with_non_constant_default
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
call fcn.1401fad50
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1401ff870
jmp 0x1401ff866
sub rcx, 0x100000
mov rbx, 0xfffffffffff00000
mov r13d, 0xffff8000
jmp 0x1401ff71b