Function at 0x1400ae730
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 rbp, qword [rcx]
xor ebx, ebx
mov r12, r8
mov rdi, rcx
mov r13d, ebx
mov esi, ebx
cmp byte [rbp + 0x67], bl
jne 0x1400aecf3
mov rcx, qword [rsp + 0x98]
lea r15, [rbp + 0x20]
mov r8, qword [rcx + 8]
test r8, r8
je 0x1400ae7b0
mov r9, qword [r15]
mov ecx, ebx
cmp qword [r9 + 0x18], r8
lea rax, [r9 + 0x18]
je 0x1400ae79b
nop word [rax + rax]
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], r8
jne 0x1400ae790
movsxd rax, ecx
mov rcx, qword [rsp + 0x98]
shl rax, 5
mov r9, qword [rax + r9]
jmp 0x1400ae7b4
mov r9, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
xor edx, edx
mov rcx, rdi
call fcn.1400b8eb0
mov qword [rsp + 0x90], rax
test rax, rax
je 0x1400aeceb
mov rdx, qword [rax + 0x60]
mov r14d, 0xffff8000
test rdx, rdx
je 0x1400ae810
mov rax, qword [rdi]
mov r14d, ebx
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1400ae810
nop word [rax + rax]
inc r14d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1400ae800
lea r15, [rbp + 0x20]
mov rax, qword [r15]
mov rdx, r12
movsxd rcx, r14d
shl rcx, 5
mov rbx, qword [rcx + rax]
mov rcx, rbp
mov qword [rsp + 0xa8], rbx
call fcn.1400b9a10
mov r13, rax
test rax, rax
je 0x1400aeceb
mov r8, rbx
mov rdx, rax
mov rcx, rbp
call fcn.1400b8ac0
test rax, rax
jne 0x1400aecd9
mov r12, rax
mov ebx, eax
cmp dword [rbp + 0x28], eax
jle 0x1400ae8cc
nop
mov rax, qword [r15]
mov edx, ebx
xor edx, 1
cmp ebx, 2
cmovge edx, ebx
movsxd rcx, edx
shl rcx, 5
mov rax, qword [rcx + rax + 0x18]
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x40], rax
test rcx, rcx
je 0x1400ae8a0
mov r8, rcx
mov rcx, rbp
call fcn.1400b6c20
test eax, eax
je 0x1400ae8bc
mov rax, qword [rsp + 0x40]
lea rcx, [rax + 0x20]
xor r8d, r8d
mov rdx, r13
call fcn.140060e90
mov r12, qword [rax + 0x10]
test r12, r12
jne 0x1400aecd9
inc ebx
cmp ebx, dword [rbp + 0x28]
jl 0x1400ae860
test r12, r12
jne 0x1400aecd9
mov rbx, qword [rsp + 0x90]
mov r8, r13
mov rdx, rbx
mov rcx, rbp
call fcn.1400bcda0
test eax, eax
jne 0x1400aecd9
mov rdx, rbx
mov rcx, rdi
call fcn.1400ae640
test eax, eax
jne 0x1400aeceb
mov r9, r13
lea r8, str.table
mov rdx, r13
mov rcx, rdi
call fcn.1400b9cd0
test eax, eax
jne 0x1400aeceb
cmp byte [rbx + 0x3f], 2
mov rcx, rdi
mov r9, qword [rbx]
jne 0x1400ae94a
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
call fcn.14005e1d0
mov rdx, qword [rsp + 0x98]
mov rcx, rbp
call fcn.1400c1b40
jmp 0x1400aed00
mov r12, qword [rsp + 0xa8]
xor r15d, r15d
mov r8, r12
mov qword [rsp + 0x20], r15
mov edx, reloc.WLDAP32.dll_Ordinal_26
call fcn.1400b7f40
test eax, eax
jne 0x1400aeceb
cmp byte [rbx + 0x3f], 1
je 0x1400ae97b
cmp word [rbx + 0x36], si
jg 0x1400ae98e
mov rdx, rbx
mov rcx, rdi
call fcn.1400bdfb0
test eax, eax
jne 0x1400aeceb
cmp byte [rbx + 0x3f], 1
jne 0x1400ae9c0
mov rsi, qword [rbx + 0x50]
test rsi, rsi
je 0x1400ae9ae
nop dword [rax]
cmp qword [rsi], rbp
je 0x1400ae9ae
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x1400ae9a0
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax]
cmp qword [rcx + 0x98], r15
cmove rsi, r15
mov r15, qword [rdi + 0x10]
lea rbx, [rdi + 0xb0]
test r15, r15
jne 0x1400ae9f6
cmp qword [rbx], r15
jne 0x1400ae9e2
mov rax, qword [rdi]
test byte [rax + 0x60], 8
jne 0x1400ae9e2
mov byte [rdi + 0x23], 1
mov rcx, rdi
call fcn.1400882e0
mov r15, rax
test rax, rax
je 0x1400aeceb
mov rax, qword [rbx]
mov rcx, rdi
test rax, rax
cmovne rcx, rax
mov rax, qword [rsp + 0x90]
xor edx, edx
mov ebx, edx
mov byte [rcx + 0x21], 1
mov rcx, qword [rax]
mov qword [rsp + 0xa8], rcx
mov rax, rcx
cmp byte [rcx], dl
je 0x1400aea5e
cmp rax, 0xffffffffffffffff
jae 0x1400aea56
movzx ecx, byte [rax]
inc rax
cmp cl, 0xc0
jb 0x1400aea50
movzx ecx, byte [rax]
and cl, 0xc0
cmp cl, 0x80
jne 0x1400aea50
movzx ecx, byte [rax + 1]
inc rax
and cl, 0xc0
cmp cl, 0x80
je 0x1400aea41
inc ebx
cmp byte [rax], dl
jne 0x1400aea25
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x38], rcx
mov eax, edx
cmp r14d, 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], r13
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call fcn.1400b88f0
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, r13
mov dword [rsp + 0x30], ebx
mov r8, r12
mov qword [rsp + 0x28], r13
mov rcx, rdi
mov qword [rsp + 0x20], r13
call fcn.1400b88f0
mov r8, r12
lea rdx, str.sqlite_sequence
mov rcx, rbp
call fcn.1400b8ac0
test rax, rax
je 0x1400aeafb
mov rax, qword [rsp + 0x90]
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov r9, r13
mov r8, r12
mov rcx, rdi
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.1400b88f0
cmp r14d, 1
je 0x1400aeb32
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], r13
mov r9, rax
mov qword [rsp + 0x30], r12
mov r8, r12
mov qword [rsp + 0x28], rax
mov rcx, rdi
mov qword [rsp + 0x20], r13
call fcn.1400b88f0
test rsi, rsi
je 0x1400aebbb
inc dword [rdi + 0x38]
mov r8, r13
mov ebx, dword [rdi + 0x38]
mov rcx, r15
mov edx, ebx
call fcn.140088740
movsxd rdx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edx
jg 0x1400aeb7d
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov r8d, ebx
mov edx, 0xb1
mov rcx, r15
call fcn.1400885d0
mov edx, eax
jmp 0x1400aebaa
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], 0xb1
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, rsi
mov rcx, r15
call fcn.140089650
mov r10, qword [rdi + 0x10]
test r10, r10
je 0x1400aec70
mov rax, qword [rdi]
movsxd rdx, r14d
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 0x18]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rax]
inc edx
cmp dword [r10 + 0x94], ecx
jg 0x1400aec0b
mov dword [rsp + 0x20], edx
mov r9d, 1
mov edx, 0x64
mov r8d, r14d
mov rcx, r10
call fcn.1400885d0
jmp 0x1400aec40
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], r14d
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, r14d
call fcn.140088cf0
cmp r14d, 1
je 0x1400aec70
mov rcx, qword [rdi + 0x10]
mov r9d, 1
mov edx, r9d
xor r8d, r8d
call fcn.140088cf0
xor esi, esi
mov byte [rdi + 0x1c], 1
mov eax, esi
mov dword [rsp + 0x30], esi
cmp r14d, 1
lea rbx, str.after_rename
mov qword [rsp + 0x28], rbx
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
sete al
mov r9, r12
mov r8, r12
mov dword [rsp + 0x20], eax
mov rcx, rdi
call fcn.1400b88f0
cmp r14d, 1
je 0x1400aeceb
mov r9, rbx
mov dword [rsp + 0x20], esi
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, rdi
call fcn.1400b88f0
mov rdx, qword [rsp + 0x98]
mov rcx, rbp
call fcn.1400c1b40
jmp 0x1400aed00
mov r8, r13
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, rdi
jmp 0x1400ae930
mov rdx, qword [rsp + 0x98]
mov rcx, rbp
call fcn.1400c1b40
test r13, r13
je 0x1400aed0b
mov rdx, r13
mov rcx, rbp
call fcn.14005a1a0
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret