Function at 0x1006fe40
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
mov eax, dword [ebp + 0xc]
mov ebx, dword [ecx]
mov edi, edx
mov esi, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], eax
lea eax, [edx + 8]
xor edx, edx
push eax
call fcn.100805e0
add esp, 4
test eax, eax
jne 0x1006fe7d
mov ecx, ebx
mov edx, edi
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
jmp fcn.1004c130
mov dword [ebp - 0x20], eax
mov ecx, esi
mov edx, dword [ebp - 0x20]
call fcn.100a6ae0
mov edx, dword [ebp - 0x20]
test eax, eax
jne 0x1006fe6d
mov eax, dword [edx + 0xc]
mov ecx, 0x101aca2f
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x24], ebx
test eax, eax
cmove ecx, eax
cmp dword [edx + 0x38], 0
mov eax, str.virtual_table
cmove eax, ecx
test eax, eax
je 0x1006fed2
push dword [edx]
push eax
push str.cannot_rename_columns_of__s___s_
push dword [ebp - 0x1c]
call fcn.1000f470
add esp, 0x10
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x30]
jmp 0x1006fe6d
mov eax, dword [ebp - 0x24]
mov ecx, dword [edx + 0x48]
mov edi, dword [ebp - 0x1c]
mov eax, dword [eax + 0x10]
test ecx, ecx
je 0x1006fef5
mov ebx, dword [ebp - 0x28]
xor esi, esi
lea edx, [eax + 0xc]
dec esi
inc esi
cmp dword [edx], ecx
lea edx, [edx + 0x10]
jne 0x1006feeb
jmp 0x1006fefd
mov ebx, dword [ebp - 0x28]
mov esi, 0xffff8000
mov ecx, esi
mov dword [ebp - 0x28], esi
mov edx, 0x1a
shl ecx, 4
mov esi, dword [eax + ecx]
mov ecx, edi
push 0
mov eax, dword [ebp - 0x20]
push dword [eax]
mov dword [ebp - 0x34], esi
push esi
call fcn.1007a8c0
add esp, 0xc
test ebx, ebx
mov ecx, ebx
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x30]
je 0x1006fe6d
test eax, eax
jne 0x1006fe6d
mov eax, dword [ecx]
test eax, eax
je 0x1006fe6d
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x10], eax
xor eax, eax
mov edx, ecx
mov dword [ebp - 0x18], ecx
mov ecx, ebx
inc edx
sete al
push eax
call fcn.10019ed0
add esp, 4
mov esi, eax
mov eax, dword [ebp - 0x10]
test esi, esi
je 0x1006fe6d
mov ebx, dword [ebp - 0x18]
push ebx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + ebx], 0
movzx eax, byte [esi]
cmp byte [eax + 0x101944e0], 0
js 0x100700d5
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + 0x2a]
test ecx, ecx
jle 0x100700ff
mov dword [ebp - 0x10], ecx
mov ecx, dword [eax + 4]
xor eax, eax
mov dword [ebp - 0x18], ecx
mov ebx, eax
lea eax, [eax + eax*4]
mov edi, esi
xor esi, esi
mov edx, dword [ecx + eax*4]
movzx ecx, byte [edx + esi]
movzx eax, byte [edi + esi]
cmp cl, al
jne 0x1006ffc7
test cl, cl
jne 0x1006ffd5
jmp 0x1006ffe7
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [eax + 0x10194380]
jne 0x1006ffd8
inc esi
jmp 0x1006ffb5
mov eax, ebx
mov ecx, dword [ebp - 0x18]
mov esi, edi
inc eax
cmp eax, dword [ebp - 0x10]
jne 0x1006ffa9
jmp 0x1006fff0
mov ecx, dword [ebp - 0x10]
mov esi, edi
cmp ebx, ecx
jne 0x10070033
push esi
push str.no_such_column:___s_
push dword [ebp - 0x1c]
call fcn.1000f470
add esp, 0xc
xor edi, edi
mov ebx, esi
mov esi, dword [ebp - 0x24]
mov edx, dword [ebp - 0x30]
mov ecx, esi
call fcn.1004c130
mov ecx, esi
mov edx, ebx
call fcn.10019c40
test edi, edi
je 0x10070106
mov ecx, esi
mov edx, edi
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
jmp fcn.10019c40
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx + 0x74]
test eax, eax
cmove eax, ecx
mov byte [eax + 0x15], 1
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x10070116
mov esi, dword [eax]
test esi, esi
je 0x10070116
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], ebx
xor eax, eax
mov dword [ebp - 0x14], edx
inc edx
mov ecx, dword [ebp - 0x24]
sete al
push eax
call fcn.10019ed0
add esp, 4
mov ebx, dword [ebp - 0x10]
test eax, eax
mov edi, 0
je 0x10070005
mov edi, dword [ebp - 0x14]
push edi
push esi
push eax
mov esi, eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
mov dword [ebp - 0x14], esi
movzx eax, byte [esi]
cmp byte [eax + 0x101944e0], 0
jns 0x10070123
mov ecx, dword [ebp - 0x14]
cmp al, 0x5b
movzx eax, al
mov ebx, 0x5d
cmovne ebx, eax
xor edx, edx
inc edx
mov eax, dword [ebp - 0x14]
mov al, byte [eax + edx]
cmp al, bl
jne 0x100700cf
mov eax, dword [ebp - 0x14]
cmp byte [eax + edx + 1], bl
jne 0x10070120
inc edx
mov byte [ecx], bl
jmp 0x100700d1
mov byte [ecx], al
inc edx
inc ecx
jmp 0x100700b7
cmp al, 0x5b
movzx eax, al
mov ebx, 0x5d
mov ecx, esi
cmovne ebx, eax
xor edx, edx
inc edx
mov al, byte [esi + edx]
cmp al, bl
jne 0x100700f9
cmp byte [esi + edx + 1], bl
jne 0x1007010e
inc edx
mov byte [ecx], bl
jmp 0x100700fb
mov byte [ecx], al
inc edx
inc ecx
jmp 0x100700e7
xor ebx, ebx
jmp 0x1006ffec
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
ret
mov byte [ecx], 0
jmp 0x1006ff8f
mov ebx, dword [ebp - 0x10]
xor edi, edi
jmp 0x10070005
mov byte [ecx], 0
mov eax, dword [ebp - 0x2c]
mov ecx, 0
mov eax, dword [eax]
movzx eax, byte [eax]
movzx esi, byte [eax + 0x101944e0]
mov eax, dword [ebp - 0x20]
and esi, 0xffffff80
cmp dword [ebp - 0x28], 1
mov eax, dword [eax]
sete cl
mov dword [ebp - 0x2c], ecx
push eax
push ecx
push esi
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 0x34]
push ebx
push ebx
push str.UPDATE___w_.sqlite_master_SET_sql__sqlite_rename_column_sql__type__name___Q___Q___d___Q___d___d__WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X__AND__type___index_OR_tbl_name___Q__AND_sql_NOT_LIKE_create_virtual__
mov edi, dword [ebp - 0x1c]
push edi
call fcn.1007b6b0
add esp, 0x28
push esi
push dword [ebp - 0x14]
push dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
push dword [eax]
push ebx
push str.UPDATE_temp.sqlite_master_SET_sql__sqlite_rename_column_sql__type__name___Q___Q___d___Q___d__1__WHERE_type_IN__trigger__view_
push edi
call fcn.1007b6b0
add esp, 0x1c
mov esi, dword [ebp - 0x28]
mov ecx, edi
mov edx, esi
call fcn.100a6be0
push dword [ebp - 0x2c]
push ebx
push ebx
push 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_NULL
push edi
call fcn.1007b6b0
add esp, 0x14
cmp esi, 1
je 0x100701bb
push dword [ebp - 0x34]
push 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_NULL
push dword [ebp - 0x1c]
call fcn.1007b6b0
add esp, 0xc
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x10]
jmp 0x10070005