Function at 0x140201af0
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov r13, qword [rcx]
cmp byte [r13 + 0x67], 0
mov r12, rcx
mov r14, rdx
mov r15, r8
je 0x140201b30
mov rdx, r14
mov rcx, r13
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp dbg.sqlite3SrcListDelete
lea r8, [rdx + 8]
xor edx, edx
call dbg.sqlite3LocateTableItem
mov rsi, rax
test rax, rax
je 0x140201b13
mov rdx, qword [rax + 0x60]
mov rax, qword [r12]
test rdx, rdx
je 0x140201d8a
mov rcx, qword [rax + 0x20]
cmp rdx, qword [rcx + 0x18]
je 0x140201d80
mov eax, 0x20
xor ebx, ebx
nop dword [rax]
mov r9, rax
add rax, 0x20
add ebx, 1
cmp rdx, qword [rcx + rax - 8]
jne 0x140201b70
mov rax, qword [r13 + 0x20]
mov rdx, r15
mov rcx, r13
mov rdi, qword [rax + r9]
call dbg.sqlite3NameFromToken
mov r15, rax
test rax, rax
je 0x140201b13
mov r8, rdi
mov rdx, rax
mov rcx, r13
call dbg.sqlite3FindTable
test rax, rax
je 0x140201bf0
mov r8, r15
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, r12
call dbg.sqlite3ErrorMsg
mov rdx, r14
mov rcx, r13
call dbg.sqlite3SrcListDelete
mov rdx, r15
mov rcx, r13
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.sqlite3DbFreeNN
mov r8, rdi
mov rdx, r15
mov rcx, r13
call dbg.sqlite3FindIndex
mov rbp, rax
test rax, rax
jne 0x140201bb3
cmp byte [rsi + 0x3f], 1
je 0x140201d64
mov rdx, rsi
mov rcx, r12
call dbg.isAlterableTable
test eax, eax
jne 0x140201bc5
mov r9, r15
lea r8, str.table
mov rdx, r15
mov rcx, r12
call dbg.sqlite3CheckObjectName
test eax, eax
jne 0x140201bc5
cmp byte [rsi + 0x3f], 2
mov r9, qword [rsi]
je 0x140201f3d
mov qword [rsp + 0x20], 0
mov r8, rdi
mov edx, 0x1a
mov rcx, r12
call dbg.sqlite3AuthCheck
mov r10d, eax
test eax, eax
jne 0x140201bc5
cmp byte [rsi + 0x3f], 1
je 0x140201c76
cmp word [rsi + 0x36], 0
jg 0x140201cd5
mov rdx, rsi
mov rcx, r12
mov dword [rsp + 0x48], r10d
call dbg.viewGetColumnNames
mov r10d, dword [rsp + 0x48]
test eax, eax
jne 0x140201bc5
cmp byte [rsi + 0x3f], 1
jne 0x140201cd5
mov rax, qword [rsi + 0x50]
test rax, rax
jne 0x140201cbd
jmp 0x140201f9d
mov rax, qword [rax + 0x28]
test rax, rax
je sym.sqlite3AlterRenameTable.cold
cmp r13, qword [rax]
jne 0x140201cb0
mov rdx, qword [rax + 0x10]
mov rdx, qword [rdx]
cmp qword [rdx + 0x98], 0
cmovne rbp, rax
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x140201f54
mov rax, qword [r12 + 0xb0]
test rax, rax
cmove rax, r12
mov byte [rax + 0x21], 1
mov r11, qword [rsi]
movzx edx, byte [r11]
cmp r11, 0xffffffffffffffff
je 0x140201d9b
test dl, dl
je 0x140201d9b
mov rax, r11
jmp 0x140201d2a
mov rax, rcx
add r10d, 1
test dl, dl
je 0x140201d9b
cmp rax, 0xffffffffffffffff
je 0x140201d9b
lea rcx, [rax + 1]
movzx eax, byte [rax + 1]
cmp dl, 0xbf
mov edx, eax
jbe 0x140201d19
and edx, 0xffffffc0
cmp dl, 0x80
jne 0x140201f84
mov rax, rcx
nop dword [rax + rax]
movzx edx, byte [rax + 1]
add rax, 1
mov ecx, edx
and ecx, 0xffffffc0
cmp cl, 0x80
je 0x140201d50
jmp 0x140201d1c
mov r8, r15
mov rdx, rsi
mov rcx, r13
call sym.sqlite3IsShadowTableOf.part.0
test eax, eax
je 0x140201c10
jmp 0x140201bb3
xor r9d, r9d
xor ebx, ebx
jmp 0x140201b81
mov r9, 0xfffffffffff00000
mov ebx, 0xffff8000
jmp 0x140201b81
xor eax, eax
cmp ebx, 1
mov qword [rsp + 0x38], r11
mov r9, rdi
sete al
mov qword [rsp + 0x20], r11
mov r8, rdi
mov rcx, r12
mov dword [rsp + 0x30], eax
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_rename_table__Q__type__name__sql___Q___Q___d__WHERE__type_index_OR_tbl_name_Q_COLLATE_nocase_AND___name_NOT_LIKE_sqliteX____ESCAPE_X
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x5c], r10d
mov qword [rsp + 0x50], r11
call dbg.sqlite3NestedParse
mov r11, qword [rsp + 0x50]
mov r9, r15
mov r8, rdi
mov r10d, dword [rsp + 0x5c]
mov qword [rsp + 0x28], r15
mov rcx, r12
lea rdx, str.UPDATE__Q.sqlite_master_SET_tbl_name___Q__name__CASE_WHEN_typetable_THEN__Q_WHEN_name_LIKE_sqliteX_autoindex___ESCAPE_X______AND_typeindex_THEN_sqlite_autoindex____Q__substr_name__d18__ELSE_name_END_WHERE_tbl_name_Q_COLLATE_nocase_AND__typetable_OR_typeindex_OR_typetrigger__
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x20], r15
call dbg.sqlite3NestedParse
mov r8, rdi
lea rdx, str.sqlite_sequence
mov rcx, r13
call dbg.sqlite3FindTable
mov r11, qword [rsp + 0x50]
test rax, rax
je 0x140201e4a
mov rax, qword [rsi]
mov r9, r15
mov r8, rdi
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov rcx, r12
mov qword [rsp + 0x20], rax
call dbg.sqlite3NestedParse
mov r11, qword [rsp + 0x50]
cmp ebx, 1
je 0x140201e78
mov qword [rsp + 0x38], r15
mov r9, r11
mov r8, rdi
mov rcx, r12
mov qword [rsp + 0x30], rdi
lea rdx, str.UPDATE_sqlite_temp_schema_SET_sql__sqlite_rename_table__Q__type__name__sql___Q___Q__1___tbl_name__CASE_WHEN_tbl_name_Q_COLLATE_nocase_AND___sqlite_rename_test__Q__sql__type__name__1__after_rename__0__THEN__Q_ELSE_tbl_name_END_WHERE_type_IN__view__trigger_
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r15
call dbg.sqlite3NestedParse
test rbp, rbp
je 0x140201ec3
mov eax, dword [r12 + 0x38]
mov rcx, qword [rsp + 0x48]
mov r8, r15
lea esi, [rax + 1]
mov dword [r12 + 0x38], esi
mov edx, esi
call sym.sqlite3VdbeLoadString
mov qword [rsp + 0x28], rbp
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x30], 0xfffffff5
mov rcx, qword [rsp + 0x48]
mov edx, 0xb1
mov dword [rsp + 0x20], 0
call sym.sqlite3VdbeAddOp4
cmp qword [r12 + 0x10], 0
je 0x140201edb
mov r8d, 1
mov edx, ebx
mov rcx, r12
call sym.renameReloadSchema.part.0
mov eax, dword [rsp + 0x58]
mov byte [r12 + 0x1c], 1
mov r9, rdi
mov r8, rdi
lea rsi, str.after_rename
mov dword [rsp + 0x30], 0
lea rdx, str.SELECT_1_FROM___w_.sqlite_master_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual___AND_sqlite_rename_test__Q__sql__type__name___d___Q___d_NULL
mov rcx, r12
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], eax
call dbg.sqlite3NestedParse
cmp ebx, 1
je 0x140201bc5
mov r9, rsi
mov r8, rdi
lea rdx, str.SELECT_1_FROM_temp.sqlite_master_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual___AND_sqlite_rename_test__Q__sql__type__name__1___Q___d_NULL
mov rcx, r12
mov dword [rsp + 0x20], 0
call dbg.sqlite3NestedParse
jmp 0x140201bc5
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
mov rcx, r12
call dbg.sqlite3ErrorMsg
jmp 0x140201bc5
cmp qword [r12 + 0xb0], 0
je 0x140201f8b
mov rcx, r12
mov dword [rsp + 0x58], r10d
call dbg.sqlite3VdbeCreate
mov r10d, dword [rsp + 0x58]
test rax, rax
mov qword [rsp + 0x48], rax
jne 0x140201ce8
jmp 0x140201bc5
mov edx, eax
jmp 0x140201d19
mov rax, qword [r12]
test byte [rax + 0x60], 8
jne 0x140201f5f
mov byte [r12 + 0x23], 1
jmp 0x140201f5f
jmp sym.sqlite3AlterRenameTable.cold