Function at 0x1403bf3e0
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 rbx, qword [rcx]
cmp byte [rbx + 0x63], 0
mov ebp, dword [rbx + 0x2c]
mov r12, rcx
mov r13, rdx
mov r15, r8
je 0x1403bf428
mov rdx, r13
mov rcx, rbx
call dbg.sqlite3SrcListDelete
mov dword [rbx + 0x2c], ebp
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [rdx + 8]
xor edx, edx
call dbg.sqlite3LocateTableItem
mov rdi, rax
test rax, rax
je 0x1403bf405
mov rdx, qword [rax + 0x70]
mov rax, qword [r12]
test rdx, rdx
je 0x1403bf66b
mov rcx, qword [rax + 0x20]
cmp rdx, qword [rcx + 0x18]
je 0x1403bf560
mov eax, 0x20
xor esi, esi
nop dword [rax]
mov r8, rax
add rax, 0x20
add esi, 1
cmp rdx, qword [rcx + rax - 8]
jne 0x1403bf468
mov rax, qword [rbx + 0x20]
mov rdx, r15
mov rcx, rbx
mov r14, qword [rax + r8]
or dword [rbx + 0x2c], 2
call dbg.sqlite3NameFromToken
mov r15, rax
test rax, rax
je 0x1403bf405
mov r8, r14
mov rdx, rax
mov rcx, rbx
call dbg.sqlite3FindTable
test rax, rax
je 0x1403bf4e0
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, r13
mov rcx, rbx
call dbg.sqlite3SrcListDelete
mov rdx, r15
mov rcx, rbx
call sym.sqlite3DbFreeNN
jmp 0x1403bf410
mov r8, r14
mov rdx, r15
mov rcx, rbx
call dbg.sqlite3FindIndex
test rax, rax
jne 0x1403bf4af
mov edx, dword [rdi + 0x54]
test edx, edx
je 0x1403bf50c
mov r8, r15
mov rdx, rdi
mov rcx, rbx
call sym.sqlite3IsShadowTableOf.part.0
test eax, eax
jne 0x1403bf4af
mov rdx, rdi
mov rcx, r12
call dbg.isAlterableTable
test eax, eax
jne 0x1403bf4c1
mov r9, r15
lea r8, str.table
mov rdx, r15
mov rcx, r12
call dbg.sqlite3CheckObjectName
test eax, eax
jne 0x1403bf4c1
mov rax, qword [rdi + 0x18]
mov r8, qword [rdi]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1403bf56a
lea rdx, str.view__s_may_not_be_altered
mov rcx, r12
call dbg.sqlite3ErrorMsg
jmp 0x1403bf4c1
xor r8d, r8d
xor esi, esi
jmp 0x1403bf479
mov qword [rsp + 0x20], 0
mov r9, r8
mov edx, 0x1a
mov r8, r14
mov rcx, r12
call dbg.sqlite3AuthCheck
test eax, eax
jne 0x1403bf4c1
mov rdx, rdi
mov rcx, r12
call dbg.sqlite3ViewGetColumnNames
mov r11d, eax
test eax, eax
jne 0x1403bf4c1
mov eax, dword [rdi + 0x54]
test eax, eax
je 0x1403bf5ec
mov rax, qword [rdi + 0x60]
test rax, rax
jne 0x1403bf5cd
jmp 0x1403bf852
mov rax, qword [rax + 0x28]
test rax, rax
je sym.sqlite3AlterRenameTable.cold
cmp rbx, qword [rax]
jne 0x1403bf5c0
mov rdx, qword [rax + 0x10]
mov rdx, qword [rdx]
cmp qword [rdx + 0x98], 0
cmove rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x1403bf826
mov rax, qword [r12 + 0xa0]
test rax, rax
cmove rax, r12
mov byte [rax + 0x21], 1
mov r10, qword [rdi]
movzx edx, byte [r10]
test dl, dl
je 0x1403bf67c
cmp r10, 0xffffffffffffffff
je 0x1403bf67c
mov rax, r10
jmp 0x1403bf639
mov rax, rcx
add r11d, 1
test dl, dl
je 0x1403bf67c
cmp rax, 0xffffffffffffffff
je 0x1403bf67c
lea rcx, [rax + 1]
movzx eax, byte [rax + 1]
cmp dl, 0xbf
mov edx, eax
jbe 0x1403bf628
and edx, 0xffffffc0
cmp dl, 0x80
jne 0x1403bf84b
mov rax, rcx
movzx edx, byte [rax + 1]
add rax, 1
mov ecx, edx
and ecx, 0xffffffc0
cmp cl, 0x80
je 0x1403bf657
jmp 0x1403bf62b
mov r8, 0xfffffffffff00000
mov esi, 0xffff8000
jmp 0x1403bf479
xor eax, eax
cmp esi, 1
mov qword [rsp + 0x38], r10
mov r9, r14
sete al
mov qword [rsp + 0x20], r10
mov r8, r14
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], r11d
mov qword [rsp + 0x50], r10
call dbg.sqlite3NestedParse
mov r10, qword [rsp + 0x50]
mov r9, r15
mov r8, r14
mov r11d, 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], r10
mov dword [rsp + 0x30], r11d
mov qword [rsp + 0x20], r15
call dbg.sqlite3NestedParse
mov r8, r14
lea rdx, str.sqlite_sequence
mov rcx, rbx
call dbg.sqlite3FindTable
mov r10, qword [rsp + 0x50]
test rax, rax
je 0x1403bf72b
mov rax, qword [rdi]
mov r9, r15
mov r8, r14
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 r10, qword [rsp + 0x50]
cmp esi, 1
je 0x1403bf759
mov qword [rsp + 0x38], r15
mov r9, r10
mov r8, r14
mov rcx, r12
mov qword [rsp + 0x30], r14
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], r10
mov qword [rsp + 0x20], r15
call dbg.sqlite3NestedParse
cmp qword [rsp + 0x40], 0
je 0x1403bf7ac
mov edi, dword [r12 + 0x38]
mov rcx, qword [rsp + 0x48]
mov r8, r15
add edi, 1
mov dword [r12 + 0x38], edi
mov edx, edi
call sym.sqlite3VdbeLoadString
mov rax, qword [rsp + 0x40]
xor r9d, r9d
mov r8d, edi
mov dword [rsp + 0x30], 0xfffffff4
mov rcx, qword [rsp + 0x48]
mov edx, 0xab
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call sym.sqlite3VdbeAddOp4
cmp qword [r12 + 0x10], 0
je 0x1403bf7c4
mov r8d, 1
mov edx, esi
mov rcx, r12
call sym.renameReloadSchema.part.0
mov eax, dword [rsp + 0x58]
mov byte [r12 + 0x1c], 1
mov r9, r14
mov r8, r14
lea rdi, 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], rdi
mov dword [rsp + 0x20], eax
call dbg.sqlite3NestedParse
cmp esi, 1
je 0x1403bf4c1
mov r9, rdi
mov r8, r14
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 0x1403bf4c1
mov rcx, r12
mov dword [rsp + 0x58], r11d
call sym.sqlite3GetVdbe.part.0
mov r11d, dword [rsp + 0x58]
test rax, rax
mov qword [rsp + 0x48], rax
jne 0x1403bf5ff
jmp 0x1403bf4c1
mov edx, eax
jmp 0x1403bf628
jmp sym.sqlite3AlterRenameTable.cold