Function at 0x140217580
Capabilities:
Reference sql statements

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov rdi, qword [rcx]
cmp byte [rdi + 0x67], 0
mov rbx, rcx
mov rsi, rdx
mov r12, r8
je 0x1402175c8
mov rdx, rsi
mov rcx, rdi
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.14015e030
lea r8, [rdx + 8]
xor edx, edx
call fcn.1401f7ba0
test rax, rax
mov r15, rax
je 0x1402175a5
mov rdx, rax
mov rcx, rbx
call fcn.140181780
test eax, eax
mov r14d, eax
jne 0x1402175a5
movzx eax, byte [r15 + 0x3f]
mov rdx, qword [r15]
cmp al, 2
je 0x140217a10
lea r9, str.virtual_table
cmp al, 1
je 0x140217a17
mov rdx, r12
mov rcx, rdi
call fcn.14016a350
test rax, rax
mov rbp, rax
je 0x1402175a5
mov rdx, rax
mov rcx, r15
call fcn.14015afb0
test eax, eax
mov dword [rsp + 0x48], eax
js 0x140217a37
movsxd rax, dword [rsp + 0x48]
lea r12, [rax + rax*2]
mov rax, qword [r15 + 8]
shl r12, 3
movzx eax, word [rax + r12 + 0x12]
test al, 9
jne 0x140217a60
cmp word [r15 + 0x36], 1
jle 0x140217a88
mov rdx, qword [r15 + 0x60]
mov rax, qword [rdi + 0x20]
test rdx, rdx
je 0x140217a9c
cmp rdx, qword [rax + 0x18]
je 0x140217aa8
add rax, 0x20
mov rcx, rax
add rax, 0x20
add r14d, 1
cmp rdx, qword [rax - 8]
jne 0x140217680
mov r13, qword [rcx]
mov edx, 0x1a
mov rcx, rbx
mov r9, qword [r15]
mov qword [rsp + 0x20], rbp
mov r8, r13
call fcn.14017d870
test eax, eax
jne 0x140217a50
mov byte [rbx + 0x1c], 1
mov r9, r13
mov r8, r13
mov rcx, rbx
lea rax, [0x1403a3634]
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor eax, eax
cmp r14d, 1
sete al
mov dword [rsp + 0x20], eax
lea rax, 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 rdx, rax
mov qword [rsp + 0x50], rax
call fcn.140210f90
cmp r14d, 1
jne 0x140217b04
mov r9, r13
mov r8, r13
mov rcx, rbx
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_rename_quotefix__Q__sql_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual__
call fcn.140210f90
mov rax, qword [r15]
mov r8, r13
mov rcx, rbx
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_drop_column__d__sql___d__WHERE__typetable_AND_tbl_name_Q_COLLATE_nocase_
mov r9d, 1
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
call fcn.140210f90
cmp qword [rbx + 0x10], 0
je 0x140217757
mov r8d, 2
mov edx, 1
mov rcx, rbx
call fcn.140179120
mov rdx, qword [rsp + 0x50]
mov byte [rbx + 0x1c], 1
mov r9, r13
mov r8, r13
lea rax, str.after_drop_column
mov dword [rsp + 0x30], 1
mov rcx, rbx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
call fcn.140210f90
mov r13d, dword [rbx + 0x30]
test r13d, r13d
jne 0x140217a50
mov rax, qword [r15 + 8]
test byte [rax + r12 + 0x12], 0x20
jne 0x140217a50
mov r12, qword [rbx + 0x10]
test r12, r12
je 0x140217d07
mov edx, dword [rbx + 0x34]
mov r9, r15
mov r8d, r14d
mov rcx, rbx
lea eax, [rdx + 1]
mov dword [rsp + 0x5c], edx
mov dword [rbx + 0x34], eax
mov dword [rsp + 0x20], 0x71
call fcn.140182220
mov eax, dword [r12 + 0x90]
cmp eax, dword [r12 + 0x94]
mov dword [rsp + 0x68], eax
jge 0x140217dce
mov ecx, dword [rsp + 0x68]
lea eax, [rcx + 1]
mov dword [r12 + 0x90], eax
movsxd rax, ecx
mov ecx, dword [rsp + 0x5c]
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], ecx
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x24
mov r11d, dword [rbx + 0x38]
test byte [r15 + 0x30], 0x80
lea eax, [r11 + 1]
mov dword [rsp + 0x6c], eax
mov dword [rbx + 0x38], eax
je 0x140217d25
mov r10, qword [r15 + 0x10]
test r10, r10
jne 0x14021786d
jmp 0x140217e62
mov r10, qword [r10 + 0x28]
test r10, r10
je 0x14023b66a
movzx eax, byte [r10 + 0x64]
and eax, 3
cmp al, 2
jne 0x140217860
movzx eax, word [r10 + 0x60]
mov ecx, dword [rsp + 0x6c]
add eax, ecx
cmp word [r10 + 0x5e], 0
mov dword [rbx + 0x38], eax
je 0x140217e3f
mov qword [rsp + 0x60], rdi
mov edi, dword [rsp + 0x5c]
xor r14d, r14d
mov r13, rbx
lea eax, [r11 + 2]
mov qword [rsp + 0x70], rbp
mov rbx, r10
mov ebp, r14d
mov dword [rsp + 0x50], eax
mov r14, rsi
mov esi, eax
nop word [rax + rax]
lea eax, [rsi + rbp]
mov r9d, ebp
mov r8d, edi
mov dword [rsp + 0x20], eax
mov edx, 0x5e
mov rcx, r12
add ebp, 1
call fcn.140177290
movzx eax, word [rbx + 0x5e]
cmp eax, ebp
jg 0x1402178c0
mov r10, rbx
mov rbx, r13
mov r13d, eax
mov rdi, qword [rsp + 0x60]
mov eax, dword [rbx + 0x38]
mov rsi, r14
mov rbp, qword [rsp + 0x70]
add eax, 1
cmp word [r15 + 0x36], 0
mov dword [rsp + 0x60], eax
mov dword [rbx + 0x38], eax
jle 0x140217e0a
mov eax, dword [rsp + 0x48]
mov qword [rsp + 0x78], rbx
xor r14d, r14d
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x70], rbp
mov rbp, r10
mov r11d, eax
mov ebx, eax
mov rax, rsi
mov edi, r11d
mov esi, r13d
mov r13, rax
jmp 0x14021797b
movsx eax, word [r15 + 0x34]
cmp eax, r8d
je 0x140217cd6
mov r8d, dword [rsp + 0x5c]
mov dword [rsp + 0x20], r9d
mov rdx, r15
mov r9d, r14d
mov rcx, r12
call fcn.1401de510
add esi, 1
movsx eax, word [r15 + 0x36]
add r14, 1
cmp eax, r14d
jle 0x140217bdf
cmp ebx, r14d
mov r8d, r14d
je 0x140217969
mov r9, qword [r15 + 8]
lea rax, [r14 + r14*2]
lea rax, [r9 + rax*8]
test byte [rax + 0x12], 0x20
jne 0x140217969
mov eax, dword [rsp + 0x50]
test rbp, rbp
lea r9d, [rsi + rax]
je 0x140217940
movzx ecx, word [rbp + 0x60]
test ecx, ecx
je 0x140217969
mov r9, qword [rbp + 8]
xor eax, eax
jmp 0x1402179c4
add rax, 1
cmp ecx, eax
jle 0x140217cf3
cmp word [r9 + rax*2], r14w
jne 0x1402179b8
cwde
xor edx, edx
jmp 0x1402179dc
add rdx, 1
cmp ecx, edx
jle 0x140217cfd
cmp di, word [r9 + rdx*2]
jne 0x1402179d0
movsx edx, dx
movzx ecx, word [rbp + 0x5e]
cmp ecx, eax
jg 0x140217969
mov ecx, dword [rsp + 0x50]
cmp eax, edx
lea r9d, [rax + rcx]
setg al
movzx eax, al
sub r9d, eax
jmp 0x140217940
lea r9, str.view
mov qword [rsp + 0x20], rdx
lea r8, str.drop_column_from
mov rcx, rbx
lea rdx, str.cannot__s__s___s_
call fcn.140168320
jmp 0x1402175a5
lea rdx, str.no_such_column:___T_
mov r8, r12
mov rcx, rbx
call fcn.140168320
nop dword [rax]
mov rdx, rbp
mov rcx, rdi
call fcn.1401584a0
jmp 0x1402175a5
test al, 1
mov r9, rbp
mov rcx, rbx
lea rax, [0x1403a3f4d]
lea r8, str.UNIQUE
cmovne r8, rax
lea rdx, str.cannot_drop__s_column:___s_
call fcn.140168320
jmp 0x140217a50
lea rdx, str.cannot_drop_column___s_:_no_other_columns_exist
mov r8, rbp
mov rcx, rbx
call fcn.140168320
jmp 0x140217a50
sub rax, 0x100000
mov r14d, 0xffff8000
mov r13, qword [rax]
mov edx, 0x1a
mov rcx, rbx
mov r9, qword [r15]
mov qword [rsp + 0x20], rbp
mov r8, r13
call fcn.14017d870
test eax, eax
jne 0x140217a50
mov byte [rbx + 0x1c], 1
mov r9, r13
mov r8, r13
mov rcx, rbx
lea rax, [0x1403a3634]
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
lea rax, 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 dword [rsp + 0x20], 0
mov rdx, rax
mov qword [rsp + 0x50], rax
call fcn.140210f90
lea r9, [0x1403a3634]
mov r8, r13
mov rcx, rbx
mov dword [rsp + 0x20], 0
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
call fcn.140210f90
mov r9, r13
mov r8, r13
mov rcx, rbx
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_rename_quotefix__Q__sql_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual__
call fcn.140210f90
lea rdx, str.UPDATE_temp.sqlite_master_SET_sql__sqlite_rename_quotefix_temp__sql_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual__
mov rcx, rbx
call fcn.140210f90
mov rax, qword [r15]
mov r9d, r14d
mov r8, r13
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__sqlite_drop_column__d__sql___d__WHERE__typetable_AND_tbl_name_Q_COLLATE_nocase_
mov rcx, rbx
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
call fcn.140210f90
cmp qword [rbx + 0x10], 0
je 0x140217b86
mov r8d, 2
mov edx, r14d
mov rcx, rbx
call fcn.140179120
mov rdx, qword [rsp + 0x50]
mov byte [rbx + 0x1c], 1
mov r9, r13
mov r8, r13
lea rax, str.after_drop_column
mov rcx, rbx
mov dword [rsp + 0x30], 1
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call fcn.140210f90
mov dword [rsp + 0x20], 1
mov r8, r13
mov rcx, rbx
lea r9, str.after_drop_column
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
call fcn.140210f90
jmp 0x14021778a
mov rax, r13
mov r13d, esi
mov r10, rbp
mov rdi, qword [rsp + 0x48]
test r13d, r13d
mov rbp, qword [rsp + 0x70]
mov rsi, rax
mov rbx, qword [rsp + 0x78]
je 0x140217d74
mov eax, dword [rsp + 0x60]
mov r9d, r13d
mov edx, 0x61
mov rcx, r12
mov r8d, dword [rsp + 0x50]
mov qword [rsp + 0x48], r10
mov dword [rsp + 0x20], eax
call fcn.140177290
mov r10, qword [rsp + 0x48]
test r10, r10
je 0x140217daa
movzx eax, word [r10 + 0x5e]
mov edx, 0x8a
mov rcx, r12
mov r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x5c]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.140178290
movsxd rax, dword [r12 + 0x90]
test eax, eax
jle 0x140217c80
mov rdx, qword [r12 + 0x88]
lea rax, [rax + rax*2]
mov ecx, 2
lea rax, [rdx + rax*8]
mov word [rax - 0x16], cx
mov ebx, dword [rsp + 0x68]
mov edx, 0x27
mov rcx, r12
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x5c]
lea r9d, [rbx + 1]
call fcn.140177290
mov rcx, qword [r12]
lea rax, [0x14041e460]
mov edx, dword [r12 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140217cce
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x140217a50
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x4b
mov rcx, r12
call fcn.140177290
jmp 0x140217966
mov eax, 0xffffffff
jmp 0x1402179cc
mov edx, 0xffffffff
jmp 0x1402179e6
cmp qword [rbx + 0xb0], 0
je 0x140217df4
mov rcx, rbx
call fcn.140177310
mov r12, rax
jmp 0x1402177b4
mov r8d, dword [rsp + 0x5c]
mov edx, 0x87
mov r9d, eax
mov rcx, r12
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x50], r11d
call fcn.140177290
movsx eax, word [r15 + 0x36]
xor r10d, r10d
mov r11d, dword [rsp + 0x50]
mov edx, eax
add eax, dword [rbx + 0x38]
add eax, 1
test dx, dx
mov dword [rsp + 0x60], eax
mov dword [rbx + 0x38], eax
lea eax, [r11 + 2]
mov dword [rsp + 0x50], eax
jg 0x140217914
add dword [rbx + 0x38], 1
xor r8d, r8d
mov edx, 0x4b
mov rcx, r12
mov r9d, dword [rsp + 0x50]
mov dword [rsp + 0x20], 0
mov r13d, 1
mov qword [rsp + 0x48], r10
call fcn.140177290
mov r10, qword [rsp + 0x48]
jmp 0x140217c03
mov eax, dword [rsp + 0x6c]
mov edx, pe_nt_image_headers64
mov rcx, r12
mov r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x5c]
mov dword [rsp + 0x20], eax
call fcn.140177290
jmp 0x140217c5b
mov r8d, dword [rsp + 0x5c]
xor r10d, r10d
xor r9d, r9d
mov edx, 0x24
mov dword [rsp + 0x20], r10d
mov rcx, r12
call fcn.1401771f0
mov dword [rsp + 0x68], eax
jmp 0x140217830
mov rax, qword [rbx]
test byte [rax + 0x60], 8
jne 0x140217d15
mov byte [rbx + 0x23], 1
jmp 0x140217d15
test r13d, r13d
je 0x140217d74
mov eax, dword [rsp + 0x60]
mov r9d, r13d
mov edx, 0x61
mov rcx, r12
mov r8d, dword [rsp + 0x50]
mov qword [rsp + 0x48], r10
mov dword [rsp + 0x20], eax
call fcn.140177290
mov r10, qword [rsp + 0x48]
jmp 0x140217c33
add eax, 1
cmp word [r15 + 0x36], 0
mov dword [rsp + 0x60], eax
mov dword [rbx + 0x38], eax
lea eax, [r11 + 2]
mov dword [rsp + 0x50], eax
jg 0x140217914
jmp 0x140217d74
jmp 0x14023b66a
movzx eax, word [0x60]
ud2