Function at 0x1400559c0
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rsi, qword [rcx]
xor r14d, r14d
mov rbx, r8
mov rdi, rcx
mov r13d, r14d
mov ebp, r14d
cmp byte [rsi + 0x67], r14b
jne 0x140055f6d
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x140055a38
mov r9, qword [rsi + 0x20]
mov ecx, r14d
cmp qword [r9 + 0x18], rdx
lea rax, [r9 + 0x18]
je 0x140055a2b
nop word [rax + rax]
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x140055a20
movsxd rax, ecx
shl rax, 5
mov r9, qword [rax + r9]
jmp 0x140055a3c
mov r9, qword [rcx + 0x10]
mov r8, qword [rsp + 0x98]
mov eax, 0x20
mov rcx, rsi
xor edx, edx
mov r8, qword [r8 + 0x18]
lea r15, [rax + rcx]
mov rcx, rdi
call fcn.14005fd60
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140055f6d
mov rdx, qword [rax + 0x60]
mov r12d, 0xffff8000
test rdx, rdx
je 0x140055aa1
mov rax, qword [rdi]
mov r12d, r14d
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x140055aa1
inc r12d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x140055a91
lea r15, [rsi + 0x20]
mov rax, qword [r15]
mov rdx, rbx
movsxd rcx, r12d
shl rcx, 5
mov qword [rsp + 0x48], rcx
mov r14, qword [rcx + rax]
mov rcx, rsi
mov qword [rsp + 0x40], r14
call fcn.1400609f0
mov qword [rsp + 0x90], rax
mov r13, rax
test rax, rax
je 0x140055f6d
mov r8, r14
mov rdx, rax
mov rcx, rsi
call fcn.14005f970
test rax, rax
jne 0x140055f5b
mov ebx, eax
cmp dword [rsi + 0x28], eax
jle 0x140055b6a
mov r14, qword [r15]
nop dword [rax]
mov edx, ebx
xor edx, 1
cmp ebx, 2
cmovge edx, ebx
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r14 + 0x18]
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140055b30
mov r8, rax
mov rcx, rsi
call fcn.14005db50
test eax, eax
je 0x140055b56
lea rcx, [r13 + 0x20]
xor r8d, r8d
mov r13, qword [rsp + 0x90]
mov rdx, r13
call fcn.14000ba80
cmp qword [rax + 0x10], rbp
jne 0x140055f5b
mov r14, qword [r15]
jmp 0x140055b5e
mov r13, qword [rsp + 0x90]
inc ebx
cmp ebx, dword [rsi + 0x28]
jl 0x140055b00
mov r14, qword [rsp + 0x40]
mov rbx, qword [rsp + 0xa8]
mov r8, r13
mov rdx, rbx
mov rcx, rsi
call fcn.140063d10
test eax, eax
jne 0x140055f5b
mov rdx, rbx
mov rcx, rdi
call fcn.1400558d0
test eax, eax
jne 0x140055f6d
mov r9, r13
lea r8, str.table
mov rdx, r13
mov rcx, rdi
call fcn.140060cb0
test eax, eax
jne 0x140055f6d
cmp byte [rbx + 0x3f], 2
mov rcx, rdi
mov r9, qword [rbx]
jne 0x140055be8
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
call fcn.14000a390
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140068be0
jmp 0x140055f82
xor r15d, r15d
mov r8, r14
mov qword [rsp + 0x20], r15
lea edx, [r15 + 0x1a]
call fcn.14005edc0
test eax, eax
jne 0x140055f6d
mov rdx, rbx
mov rcx, rdi
call fcn.140064eb0
test eax, eax
jne 0x140055f6d
cmp byte [rbx + 0x3f], 1
jne 0x140055c47
mov rbp, qword [rbx + 0x50]
test rbp, rbp
je 0x140055c35
cmp qword [rbp], rsi
je 0x140055c35
mov rbp, qword [rbp + 0x28]
test rbp, rbp
jne 0x140055c26
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
cmp qword [rcx + 0x98], r15
cmove rbp, r15
mov r15, qword [rdi + 0x10]
lea rbx, [rdi + 0xa0]
test r15, r15
jne 0x140055c7d
cmp qword [rbx], r15
jne 0x140055c69
mov rax, qword [rdi]
test byte [rax + 0x60], 8
jne 0x140055c69
mov byte [rdi + 0x23], 1
mov rcx, rdi
call fcn.140031470
mov r15, rax
test rax, rax
je 0x140055f6d
mov rax, qword [rbx]
mov rcx, rdi
test rax, rax
cmovne rcx, rax
mov rax, qword [rsp + 0xa8]
xor edx, edx
mov ebx, edx
mov byte [rcx + 0x21], 1
mov rcx, qword [rax]
mov qword [rsp + 0x40], rcx
mov rax, rcx
cmp byte [rcx], dl
je 0x140055cea
nop dword [rax]
cmp rax, 0xffffffffffffffff
jae 0x140055ce5
movzx ecx, byte [rax]
inc rax
cmp cl, 0xc0
jb 0x140055cdf
movzx ecx, byte [rax]
and cl, 0xc0
cmp cl, 0x80
jne 0x140055cdf
nop dword [rax]
movzx ecx, byte [rax + 1]
inc rax
and cl, 0xc0
cmp cl, 0x80
je 0x140055cd0
inc ebx
cmp byte [rax], dl
jne 0x140055cb0
mov rcx, qword [rsp + 0x40]
mov eax, edx
mov qword [rsp + 0x38], rcx
cmp r12d, 1
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 r9, r14
mov r8, r14
sete al
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rcx
mov rcx, rdi
mov dword [rsp + 0x90], eax
call fcn.14005f7b0
mov rax, qword [rsp + 0x40]
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], rax
mov r9, r13
mov dword [rsp + 0x30], ebx
mov r8, r14
mov qword [rsp + 0x28], r13
mov rcx, rdi
mov qword [rsp + 0x20], r13
call fcn.14005f7b0
mov r8, r14
lea rdx, str.sqlite_sequence
mov rcx, rsi
call fcn.14005f970
test rax, rax
je 0x140055d8b
mov rax, qword [rsp + 0xa8]
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov r9, r13
mov r8, r14
mov rcx, rdi
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14005f7b0
cmp r12d, 1
je 0x140055dbf
mov rax, qword [rsp + 0x40]
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 + 0x38], r13
mov r9, rax
mov qword [rsp + 0x30], r14
mov r8, r14
mov qword [rsp + 0x28], rax
mov rcx, rdi
mov qword [rsp + 0x20], r13
call fcn.14005f7b0
test rbp, rbp
je 0x140055e42
inc dword [rdi + 0x38]
mov r8, r13
mov ebx, dword [rdi + 0x38]
mov rcx, r15
mov edx, ebx
call fcn.140031830
movsxd rdx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edx
jg 0x140055e04
xor eax, eax
xor r9d, r9d
mov r8d, ebx
mov dword [rsp + 0x20], eax
mov edx, 0xb0
mov rcx, r15
call fcn.140031760
mov edx, eax
jmp 0x140055e31
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0xb0
mov dword [rax + rcx*8 + 4], ebx
mov qword [rax + rcx*8 + 8], r8
mov qword [rax + rcx*8 + 0x10], r8
mov r9d, 0xfffffff5
mov r8, rbp
mov rcx, r15
call fcn.140032480
mov r10, qword [rdi + 0x10]
test r10, r10
je 0x140055ef4
mov rax, qword [rdi]
mov rcx, qword [rax + 0x20]
mov rax, qword [rsp + 0x48]
mov rax, qword [rcx + rax + 0x18]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rax]
inc edx
cmp dword [r10 + 0x94], ecx
jg 0x140055e8f
mov r9d, 1
mov dword [rsp + 0x20], edx
mov r8d, r12d
mov rcx, r10
lea edx, [r9 + 0x63]
call fcn.140031760
jmp 0x140055ec4
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8], 0x64
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rdi + 0x10]
mov r9d, 1
xor r8d, r8d
mov edx, r12d
call fcn.140031e10
cmp r12d, 1
je 0x140055ef4
mov rcx, qword [rdi + 0x10]
mov r9d, 1
mov edx, r9d
xor r8d, r8d
call fcn.140031e10
mov eax, dword [rsp + 0x90]
lea rbx, str.after_rename
xor ebp, ebp
mov byte [rdi + 0x1c], 1
mov dword [rsp + 0x30], ebp
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 qword [rsp + 0x28], rbx
mov r9, r14
mov r8, r14
mov dword [rsp + 0x20], eax
mov rcx, rdi
call fcn.14005f7b0
cmp r12d, 1
je 0x140055f6d
mov r9, rbx
mov dword [rsp + 0x20], ebp
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, rdi
call fcn.14005f7b0
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140068be0
jmp 0x140055f82
mov r8, r13
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, rdi
jmp 0x140055bce
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140068be0
test r13, r13
je 0x140055f8d
mov rdx, r13
mov rcx, rsi
call fcn.140006940
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret