Function at 0x180078c60
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 rbx, qword [rcx]
xor r13d, r13d
mov r12, r8
mov r14, rcx
mov edi, r13d
mov esi, r13d
cmp byte [rbx + 0x67], r13b
jne 0x1800791d5
mov rcx, qword [rsp + 0x98]
mov r8, qword [rcx + 8]
test r8, r8
je 0x180078ce0
mov r9, qword [rbx + 0x20]
mov ecx, r13d
cmp qword [r9 + 0x18], r8
lea rax, [r9 + 0x18]
je 0x180078ccb
nop word [rax + rax]
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], r8
jne 0x180078cc0
movsxd rax, ecx
mov rcx, qword [rsp + 0x98]
shl rax, 5
mov r9, qword [rax + r9]
jmp 0x180078ce4
mov r9, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
xor edx, edx
mov rcx, r14
call fcn.180082cb0
mov r15, rax
test rax, rax
je 0x1800791cd
mov r8, qword [rax + 0x60]
mov ebp, 0xffff8000
test r8, r8
je 0x180078d2b
mov rcx, qword [r14]
mov ebp, r13d
mov rdx, qword [rcx + 0x20]
add rdx, 0x18
cmp qword [rdx], r8
je 0x180078d2b
nop
inc ebp
lea rdx, [rdx + 0x20]
cmp qword [rdx], r8
jne 0x180078d20
mov rax, qword [rbx + 0x20]
movsxd rcx, ebp
shl rcx, 5
mov r8, qword [rcx + rax]
mov qword [rsp + 0xa8], r8
test r12, r12
je 0x1800791bb
mov r13d, dword [r12 + 8]
mov r12, qword [r12]
test r12, r12
je 0x180078d7f
lea rdx, [r13 + 1]
mov rcx, rbx
call fcn.18002a8b0
mov rdi, rax
test rax, rax
je 0x180078d7f
mov r8d, r13d
mov rdx, r12
mov rcx, rax
call fcn.18013fe80
mov byte [rdi + r13], sil
mov rcx, rdi
xor r13d, r13d
call fcn.18002e3d0
test rdi, rdi
je 0x1800791cd
mov r12, qword [rsp + 0xa8]
mov rdx, rdi
mov r8, r12
mov rcx, rbx
call fcn.1800828c0
test rax, rax
jne 0x1800791a9
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.180082e90
test rax, rax
jne 0x1800791a9
mov r8, rdi
mov rdx, r15
mov rcx, rbx
call fcn.1800872d0
test eax, eax
jne 0x1800791a9
mov rdx, r15
mov rcx, r14
call fcn.180078b70
test eax, eax
jne 0x1800791cd
mov r9, rdi
lea r8, str.table
mov rdx, rdi
mov rcx, r14
call fcn.180084130
test eax, eax
jne 0x1800791cd
cmp byte [r15 + 0x3f], 2
mov rcx, r14
mov r9, qword [r15]
jne 0x180078e40
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
call fcn.18002e270
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.18008c580
jmp 0x1800791e2
mov r8, r12
mov qword [rsp + 0x20], r13
mov edx, 0x1a
call fcn.180081cf0
test eax, eax
jne 0x1800791cd
cmp byte [r15 + 0x3f], 1
je 0x180078e68
cmp word [r15 + 0x36], si
jg 0x180078e7b
mov rdx, r15
mov rcx, r14
call fcn.180088580
test eax, eax
jne 0x1800791cd
cmp byte [r15 + 0x3f], 1
jne 0x180078eb1
mov rsi, qword [r15 + 0x50]
test rsi, rsi
je 0x180078e9e
nop dword [rax + rax]
cmp qword [rsi], rbx
je 0x180078e9e
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x180078e90
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax]
cmp qword [rcx + 0x98], 0
cmove rsi, r13
mov r12, qword [r14 + 0x10]
test r12, r12
jne 0x180078ee5
cmp qword [r14 + 0xb0], r12
jne 0x180078ed1
mov rax, qword [r14]
test byte [rax + 0x60], 8
jne 0x180078ed1
mov byte [r14 + 0x23], 1
mov rcx, r14
call fcn.180053c20
mov r12, rax
test rax, rax
je 0x1800791cd
mov rax, qword [r14 + 0xb0]
mov rcx, r14
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov rcx, qword [r15]
mov qword [rsp + 0x40], rcx
mov rax, rcx
cmp byte [rcx], 0
je 0x180078f4c
nop word [rax + rax]
cmp rax, 0xffffffffffffffff
jae 0x180078f47
movzx ecx, byte [rax]
inc rax
cmp cl, 0xc0
jb 0x180078f3f
movzx ecx, byte [rax]
and cl, 0xc0
cmp cl, 0x80
jne 0x180078f3f
nop dword [rax]
movzx ecx, byte [rax + 1]
inc rax
and cl, 0xc0
cmp cl, 0x80
je 0x180078f30
inc r13d
cmp byte [rax], 0
jne 0x180078f10
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0xa8]
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
xor eax, eax
mov qword [rsp + 0x38], rcx
cmp ebp, 1
mov r9, r8
sete al
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rcx
mov rcx, r14
mov dword [rsp + 0x90], eax
call fcn.1800826a0
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, rdi
mov dword [rsp + 0x30], r13d
mov rax, rdi
mov r13, qword [rsp + 0xa8]
mov rcx, r14
mov qword [rsp + 0x28], rax
mov r8, r13
mov qword [rsp + 0x20], rax
call fcn.1800826a0
mov r8, r13
lea rdx, str.sqlite_sequence
mov rcx, rbx
call fcn.1800828c0
test rax, rax
je 0x180078ffa
mov rax, qword [r15]
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov r9, rdi
mov qword [rsp + 0x20], rax
mov r8, r13
mov rcx, r14
mov r15, rdi
call fcn.1800826a0
jmp 0x180078ffd
mov r15, rdi
cmp ebp, 1
je 0x180079030
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], r15
mov r9, rax
mov qword [rsp + 0x30], r13
mov r8, r13
mov qword [rsp + 0x28], rax
mov rcx, r14
mov qword [rsp + 0x20], r15
call fcn.1800826a0
test rsi, rsi
je 0x180079103
inc dword [r14 + 0x38]
mov r8, rdi
mov r15d, dword [r14 + 0x38]
mov rcx, r12
mov edx, r15d
call fcn.1800540f0
movsxd rdx, dword [r12 + 0x90]
cmp dword [r12 + 0x94], edx
jg 0x180079080
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov r8d, r15d
mov edx, 0xb1
mov rcx, r12
call fcn.180053f80
mov edx, eax
jmp 0x1800790b0
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [r12 + 0x90], eax
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0xb1
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], r8
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [r12]
cmp byte [rax + 0x67], 0
jne 0x180079103
test edx, edx
jns 0x1800790c8
mov edx, dword [r12 + 0x90]
dec edx
movsxd rax, edx
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
cmp byte [rax + rdx*8 + 1], 0
lea rcx, [rax + rdx*8]
je 0x1800790f8
mov rdx, rcx
mov r9d, 0xfffffff5
mov rcx, r12
mov r8, rsi
call fcn.180055060
jmp 0x180079103
mov qword [rcx + 0x10], rsi
mov byte [rcx + 1], 0xf5
inc dword [rsi + 0x18]
cmp qword [r14 + 0x10], 0
je 0x180079142
mov edx, ebp
mov rcx, r14
call fcn.180086740
mov rcx, qword [r14 + 0x10]
mov r9d, 1
xor r8d, r8d
mov edx, ebp
call fcn.180054860
cmp ebp, 1
je 0x180079142
mov rcx, qword [r14 + 0x10]
mov r9d, 1
mov edx, r9d
xor r8d, r8d
call fcn.180054860
mov eax, dword [rsp + 0x90]
lea r15, str.after_rename
xor esi, esi
mov byte [r14 + 0x1c], 1
mov dword [rsp + 0x30], esi
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], r15
mov r9, r13
mov r8, r13
mov dword [rsp + 0x20], eax
mov rcx, r14
call fcn.1800826a0
cmp ebp, 1
je 0x1800791cd
mov r9, r15
mov dword [rsp + 0x20], esi
mov r8, r13
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, r14
call fcn.1800826a0
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.18008c580
jmp 0x1800791e2
mov r8, rdi
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, r14
jmp 0x180078e26
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.18008c580
jmp 0x180079242
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.18008c580
test rdi, rdi
je 0x180079242
cmp rdi, qword [rbx + 0x1f0]
jae 0x180079223
cmp rdi, qword [rbx + 0x1e0]
jb 0x180079207
mov rax, qword [rbx + 0x1d8]
mov qword [rdi], rax
mov qword [rbx + 0x1d8], rdi
jmp 0x180079242
cmp rdi, qword [rbx + 0x1e8]
jb 0x180079223
mov rax, qword [rbx + 0x1c8]
mov qword [rdi], rax
mov qword [rbx + 0x1c8], rdi
jmp 0x180079242
cmp qword [rbx + 0x308], 0
je 0x18007923a
mov rdx, rdi
mov rcx, rbx
call fcn.18002a490
jmp 0x180079242
mov rcx, rdi
call fcn.18002a420
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret