Function at 0x1400dcd20
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push r13
sub rsp, 0x78
cmp dword [rcx + 0x34], 0
mov rbx, rcx
mov r13, qword [rcx]
jne 0x1400dd254
mov qword [rsp + 0x70], rbp
xor edx, edx
mov qword [rsp + 0x68], rsi
mov esi, 0xffff8000
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], r14
mov r14, qword [rcx + 0x160]
mov qword [rsp + 0x48], r15
mov rcx, qword [r14 + 0x60]
test rcx, rcx
je 0x1400dcd8b
mov rax, qword [r13 + 0x20]
mov esi, edx
add rax, 0x18
cmp qword [rax], rcx
je 0x1400dcd8b
nop dword [rax + rax]
inc esi
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x1400dcd80
mov rax, qword [r13 + 0x20]
mov rbp, qword [r14]
movsxd rcx, esi
add rbp, 0x10
shl rcx, 5
mov qword [rsp + 0x60], rdi
mov r12, qword [rcx + rax]
movsx rax, word [r14 + 0x36]
lea r15, [rax + rax*2]
mov rax, qword [r14 + 8]
lea r15, [r15 - 3]
lea r15, [rax + r15*8]
movzx eax, word [r15 + 0x10]
mov qword [rsp + 0xa0], r15
test ax, ax
jne 0x1400dcdd2
mov rdi, rdx
jmp 0x1400dcdfd
cmp byte [r14 + 0x3f], dl
je 0x1400dcddd
mov rdi, rdx
jmp 0x1400dcdfd
mov rdi, qword [r14 + 0x50]
test rdi, rdi
jne 0x1400dcdeb
mov rdi, rdx
jmp 0x1400dcdfd
cmp dword [rdi], eax
jge 0x1400dcdf4
mov rdi, rdx
jmp 0x1400dcdfd
shl rax, 5
mov rdi, qword [rax + rdi - 0x18]
mov r8, r12
mov rdx, rbp
mov rcx, r13
call fcn.1400f4a50
mov r8, r12
mov qword [rsp + 0xa8], rax
mov edx, 0x1a
mov qword [rsp + 0x20], 0
mov rcx, rbx
mov r9, qword [rax]
call fcn.1400dec20
test eax, eax
jne 0x1400dd236
movzx ecx, word [r15 + 0x12]
test cl, 1
je 0x1400dce55
lea rdx, str.Cannot_add_a_PRIMARY_KEY_column
mov rcx, rbx
call fcn.1400ed030
jmp 0x1400dd236
cmp qword [r14 + 0x10], 0
je 0x1400dce70
lea rdx, str.Cannot_add_a_UNIQUE_column
mov rcx, rbx
call fcn.1400ed030
jmp 0x1400dd236
test cl, 0x60
jne 0x1400dd032
test rdi, rdi
je 0x1400dce8e
mov rax, qword [rdi + 0x10]
cmp byte [rax], 0x7a
mov eax, 0
cmove rdi, rax
mov eax, dword [r13 + 0x30]
bt rax, 0xe
jae 0x1400dcec3
cmp qword [r14 + 0x48], 0
je 0x1400dcec3
test rdi, rdi
je 0x1400dcec3
mov r9, r12
mov qword [rsp + 0x20], rbp
lea r8, str.Cannot_add_a_REFERENCES_column_with_non_NULL_default_value
mov rcx, rbx
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
call fcn.140101680
test byte [r15 + 8], 0xf
je 0x1400dcedb
test rdi, rdi
jne 0x1400dcee4
lea r8, str.Cannot_add_a_NOT_NULL_column_with_default_value_NULL
jmp 0x1400dd03e
test rdi, rdi
je 0x1400dd055
xor eax, eax
mov r9b, 0x41
mov qword [rsp + 0x28], rax
mov r8b, 1
mov qword [rsp + 0x90], rax
mov rdx, rdi
lea rax, [rsp + 0x90]
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.140139af0
test eax, eax
jne 0x1400dd236
mov rdi, qword [rsp + 0x90]
test rdi, rdi
jne 0x1400dcf55
mov r9, r12
mov qword [rsp + 0x20], rbp
lea r8, str.Cannot_add_a_column_with_non_constant_default
mov rcx, rbx
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
call fcn.140101680
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x1400dd055
mov eax, 0x9000
test word [rdi + 0x14], ax
jne 0x1400dcf66
cmp dword [rdi + 0x20], 0
je 0x1400dcf6e
mov rcx, rdi
call fcn.14013b960
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400dcfd5
cmp rdi, qword [rcx + 0x1f0]
jae 0x1400dcfbe
cmp rdi, qword [rcx + 0x1e0]
jb 0x1400dcf9f
mov rax, qword [rcx + 0x1d8]
mov qword [rdi], rax
mov qword [rcx + 0x1d8], rdi
jmp 0x1400dd055
cmp rdi, qword [rcx + 0x1e8]
jb 0x1400dcfbe
mov rax, qword [rcx + 0x1c8]
mov qword [rdi], rax
mov qword [rcx + 0x1c8], rdi
jmp 0x1400dd055
cmp qword [rcx + 0x308], 0
je 0x1400dcfd5
mov rdx, rdi
call fcn.1400c7340
jmp 0x1400dd055
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x1400dd027
mov rcx, qword [0x14019de10]
test rcx, rcx
je 0x1400dcff0
call qword [0x140199b10]
mov rcx, rdi
call qword [0x140199ac8]
dec qword [0x14019dd98]
movsxd rcx, eax
sub qword [0x14019dd50], rcx
mov rcx, rdi
call qword [0x140199ab8]
mov rcx, qword [0x14019de10]
test rcx, rcx
je 0x1400dd055
call qword [0x140199b20]
jmp 0x1400dd055
mov rcx, rdi
call qword [0x140199ab8]
jmp 0x1400dd055
test cl, 0x40
je 0x1400dd055
lea r8, str.cannot_add_a_STORED_column
mov r9, r12
mov qword [rsp + 0x20], rbp
lea rdx, str.SELECT_raise_ABORT__Q__FROM___w_.__w_
mov rcx, rbx
call fcn.140101680
mov rax, qword [rsp + 0x98]
mov r15d, dword [rax + 8]
mov rax, qword [rax]
mov qword [rsp + 0x90], rax
test rax, rax
je 0x1400dd108
lea rdx, [r15 + 1]
mov rcx, r13
call fcn.1400ea610
mov rdi, rax
test rax, rax
je 0x1400dd108
mov rdx, qword [rsp + 0x90]
mov r8d, r15d
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x98]
mov byte [rdi + r15], 0
mov ecx, dword [rdx + 8]
dec ecx
add rcx, rdi
cmp rcx, rdi
jbe 0x1400dd0d8
lea rdx, [0x140171d90]
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x3b
je 0x1400dd0cd
test byte [rax + rdx], 1
je 0x1400dd0d8
mov byte [rcx], 0
dec rcx
cmp rcx, rdi
ja 0x1400dd0c0
mov r9d, dword [r14 + 0x40]
lea rdx, str.UPDATE___w_.sqlite_master_SET_sql__printf___._ds___sql____Q__substr_sql_1length_printf___._ds_sql____WHERE_type__table_AND_name___Q
mov qword [rsp + 0x30], rbp
mov r8, r12
mov dword [rsp + 0x28], r9d
mov rcx, rbx
mov qword [rsp + 0x20], rdi
call fcn.140101680
mov rdx, rdi
mov rcx, r13
call fcn.1400ea480
mov rdi, qword [rbx + 0x10]
test rdi, rdi
jne 0x1400dd13b
cmp qword [rbx + 0xb0], rdi
jne 0x1400dd127
mov rax, qword [rbx]
test byte [rax + 0x60], 8
jne 0x1400dd127
mov byte [rbx + 0x23], 1
mov rcx, rbx
call fcn.14011aea0
mov rdi, rax
test rax, rax
je 0x1400dd236
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x1400dd14c
inc dword [rbx + 0x3c]
mov r15d, dword [rbx + 0x3c]
jmp 0x1400dd15c
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r15d, dword [rbx + rax*4 + 0xe8]
mov r9d, r15d
mov dword [rsp + 0x20], 2
mov r8d, esi
mov edx, 0x63
mov rcx, rdi
call fcn.14011a5f0
mov edx, esi
mov rcx, rdi
call fcn.140128eb0
mov r9d, 0xfffffffe
mov r8d, r15d
mov edx, 0x56
call fcn.14011a580
mov r9d, dword [rdi + 0x90]
mov r8d, r15d
add r9d, 2
mov edx, 0x32
mov rcx, rdi
call fcn.14011a580
mov r9d, 2
mov dword [rsp + 0x20], 3
mov r8d, esi
mov edx, 0x64
mov rcx, rdi
call fcn.14011a5f0
test r15d, r15d
je 0x1400dd1e5
movzx eax, byte [rbx + 0x1f]
cmp al, 8
jae 0x1400dd1e5
mov dword [rbx + rax*4 + 0xe8], r15d
inc byte [rbx + 0x1f]
mov r8d, 3
mov edx, esi
mov rcx, rbx
call fcn.1400d3fb0
cmp qword [r14 + 0x20], 0
jne 0x1400dd221
mov rax, qword [rsp + 0xa0]
test byte [rax + 8], 0xf
je 0x1400dd210
test byte [rax + 0x12], 0x60
jne 0x1400dd221
mov rax, qword [rsp + 0xa8]
test dword [rax + 0x30], 0x10000
je 0x1400dd236
mov r9, r12
lea rdx, str.SELECT_CASE_WHEN_quick_check_GLOB_CHECK_THEN_raise_ABORT_CHECK_constraint_failed__WHEN_quick_check_GLOB_non__value_in_THEN_raise_ABORT_type_mismatch_on_DEFAULT__ELSE_raise_ABORT_NOT_NULL_constraint_failed__END__FROM_pragma_quick_check__Q__Q__WHERE_quick_check_GLOB_CHECK_OR_quick_check_GLOB_NULL_OR_quick_check_GLOB_non__value_in
mov r8, rbp
mov rcx, rbx
call fcn.140101680
mov rdi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
add rsp, 0x78
pop r13
pop rbx
ret