Function at 0x14014db90
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 ebx, ebx
mov r13, r8
mov r14, rcx
mov edi, ebx
mov ebp, ebx
cmp byte [rsi + 0x67], bl
jne 0x14014e14b
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x14014dbfa
mov r9, qword [rsi + 0x20]
mov ecx, ebx
cmp qword [r9 + 0x18], rdx
lea rax, [r9 + 0x18]
je 0x14014dbed
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x14014dbe2
movsxd rax, ecx
shl rax, 5
mov r9, qword [rax + r9]
jmp 0x14014dbfe
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 r12, [rcx + rax]
mov rcx, r14
call fcn.140158110
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14014e14b
mov rdx, qword [rax + 0x60]
mov r15d, 0xffff8000
test rdx, rdx
je 0x14014dc60
mov rax, qword [r14]
mov r15d, ebx
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x14014dc60
inc r15d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x14014dc50
lea r12, [rsi + 0x20]
mov rax, qword [r12]
mov rdx, r13
movsxd rcx, r15d
shl rcx, 5
mov qword [rsp + 0x48], rcx
mov rbx, qword [rcx + rax]
mov rcx, rsi
mov qword [rsp + 0xa8], rbx
call fcn.140158c60
mov qword [rsp + 0x90], rax
mov rdi, rax
test rax, rax
je 0x14014e14b
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140157d20
test rax, rax
jne 0x14014dd19
mov r13, rax
mov ebx, eax
cmp dword [rsi + 0x28], eax
jle 0x14014dd3c
nop dword [rax]
mov rax, qword [rsp + 0xa8]
mov edi, ebx
xor edi, 1
cmp ebx, 2
cmovge edi, ebx
test rax, rax
je 0x14014dce9
mov r8, rax
mov edx, edi
mov rcx, rsi
call fcn.140155e00
test eax, eax
je 0x14014dd28
mov rax, qword [r12]
xor r8d, r8d
movsxd rcx, edi
mov rdi, qword [rsp + 0x90]
shl rcx, 5
mov rdx, rdi
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x20
call fcn.140102c70
mov r13, qword [rax + 0x10]
test r13, r13
je 0x14014dd30
mov r8, rdi
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, r14
jmp 0x14014dd9b
mov rdi, qword [rsp + 0x90]
inc ebx
cmp ebx, dword [rsi + 0x28]
jl 0x14014dcc0
test r13, r13
jne 0x14014dd19
mov r13, qword [rsp + 0x40]
mov r8, rdi
mov rdx, r13
mov rcx, rsi
call fcn.14015bfd0
test eax, eax
jne 0x14014dd19
mov rdx, r13
mov rcx, r14
call fcn.14014daa0
test eax, eax
jne 0x14014e14b
mov r9, rdi
lea r8, str.table
mov rdx, rdi
mov rcx, r14
call fcn.140158f20
test eax, eax
jne 0x14014e14b
cmp byte [r13 + 0x3f], 2
mov rcx, r14
mov r9, qword [r13]
jne 0x14014ddb5
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
call fcn.1401000b0
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140160c80
jmp 0x14014e160
mov r12, qword [rsp + 0xa8]
xor ebx, ebx
mov r8, r12
mov qword [rsp + 0x20], rbx
lea edx, [rbx + 0x1a]
call fcn.140157190
test eax, eax
jne 0x14014e14b
cmp byte [r13 + 0x3f], 1
je 0x14014dde5
cmp word [r13 + 0x36], bx
jg 0x14014ddf8
mov rdx, r13
mov rcx, r14
call fcn.14015d160
test eax, eax
jne 0x14014e14b
cmp byte [r13 + 0x3f], 1
jne 0x14014de29
mov rbp, qword [r13 + 0x50]
test rbp, rbp
je 0x14014de17
cmp qword [rbp], rsi
je 0x14014de17
mov rbp, qword [rbp + 0x28]
test rbp, rbp
jne 0x14014de08
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
cmp qword [rcx + 0x98], rbx
cmove rbp, rbx
mov rax, qword [r14 + 0x10]
lea rbx, [r14 + 0xa8]
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x14014de67
cmp qword [rbx], rax
jne 0x14014de51
mov rax, qword [r14]
test byte [rax + 0x60], 8
jne 0x14014de51
mov byte [r14 + 0x23], 1
mov rcx, r14
call fcn.140128690
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14014e14b
mov rax, qword [rbx]
mov rcx, r14
test rax, rax
cmovne rcx, rax
xor edx, edx
mov ebx, edx
mov byte [rcx + 0x21], 1
mov rcx, qword [r13]
mov qword [rsp + 0xa8], rcx
mov rax, rcx
cmp byte [rcx], dl
je 0x14014decd
nop
cmp rax, 0xffffffffffffffff
jae 0x14014dec5
movzx ecx, byte [rax]
inc rax
cmp cl, 0xc0
jb 0x14014debf
movzx ecx, byte [rax]
and cl, 0xc0
cmp cl, 0x80
jne 0x14014debf
nop dword [rax]
movzx ecx, byte [rax + 1]
inc rax
and cl, 0xc0
cmp cl, 0x80
je 0x14014deb0
inc ebx
cmp byte [rax], dl
jne 0x14014de90
mov rcx, qword [rsp + 0xa8]
mov eax, edx
mov qword [rsp + 0x38], rcx
cmp r15d, 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, r12
mov r8, r12
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.140157b50
mov rax, qword [rsp + 0xa8]
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], ebx
mov r8, r12
mov qword [rsp + 0x28], rdi
mov rcx, r14
mov qword [rsp + 0x20], rdi
call fcn.140157b50
mov r8, r12
lea rdx, str.sqlite_sequence
mov rcx, rsi
call fcn.140157d20
test rax, rax
je 0x14014df6a
mov rax, qword [r13]
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov r9, rdi
mov qword [rsp + 0x20], rax
mov r8, r12
mov rcx, r14
call fcn.140157b50
cmp r15d, 1
je 0x14014dfa1
mov rax, qword [rsp + 0xa8]
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], rdi
mov r9, rax
mov qword [rsp + 0x30], r12
mov r8, r12
mov qword [rsp + 0x28], rax
mov rcx, r14
mov qword [rsp + 0x20], rdi
call fcn.140157b50
test rbp, rbp
je 0x14014e031
inc dword [r14 + 0x38]
mov r8, rdi
mov ebx, dword [r14 + 0x38]
mov edx, ebx
mov r13, qword [rsp + 0x40]
mov rcx, r13
call fcn.140128af0
movsxd rdx, dword [r13 + 0x90]
cmp dword [r13 + 0x94], edx
jg 0x14014dff3
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov r8d, ebx
mov edx, 0xb0
mov rcx, r13
call fcn.140128980
mov edx, eax
jmp 0x14014e020
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [r13 + 0x90], eax
mov rax, qword [r13 + 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, r13
call fcn.140129760
mov r10, qword [r14 + 0x10]
test r10, r10
je 0x14014e0e3
mov rax, qword [r14]
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 0x14014e07e
mov r9d, 1
mov dword [rsp + 0x20], edx
mov r8d, r15d
mov rcx, r10
lea edx, [r9 + 0x63]
call fcn.140128980
jmp 0x14014e0b3
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], r15d
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [r14 + 0x10]
mov r9d, 1
xor r8d, r8d
mov edx, r15d
call fcn.1401290e0
cmp r15d, 1
je 0x14014e0e3
mov rcx, qword [r14 + 0x10]
mov r9d, 1
mov edx, r9d
xor r8d, r8d
call fcn.1401290e0
mov eax, dword [rsp + 0x90]
lea rbx, str.after_rename
xor ebp, ebp
mov byte [r14 + 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, r12
mov r8, r12
mov dword [rsp + 0x20], eax
mov rcx, r14
call fcn.140157b50
cmp r15d, 1
je 0x14014e14b
mov r9, rbx
mov dword [rsp + 0x20], ebp
mov r8, r12
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.140157b50
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140160c80
jmp 0x14014e160
mov rdx, qword [rsp + 0x98]
mov rcx, rsi
call fcn.140160c80
test rdi, rdi
je 0x14014e16b
mov rdx, rdi
mov rcx, rsi
call fcn.1400fc1f0
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret