Function at 0x1400caf40
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov rbp, qword [rcx]
xor r13d, r13d
mov edi, r13d
mov qword [rsp + 0x68], rbp
mov rbx, r8
mov rsi, rcx
mov r14d, r13d
mov r15d, dword [rbp + 0x2c]
mov dword [rsp + 0xd8], r15d
cmp byte [rbp + 0x51], dil
jne 0x1400cb70c
mov r8, rdx
xor edx, edx
add r8, 8
call fcn.1400f0d40
mov qword [rsp + 0x60], rax
mov r15, rax
test rax, rax
je 0x1400cb704
mov rdx, qword [rax + 0x68]
mov r12d, 0xfff0bdc0
test rdx, rdx
je 0x1400cafec
mov rax, qword [rsi]
mov r12d, r13d
movsxd rcx, dword [rax + 0x28]
test ecx, ecx
jle 0x1400cafec
mov rax, qword [rax + 0x20]
mov r8, rcx
add rax, 0x18
mov ecx, r13d
cmp qword [rax], rdx
je 0x1400cafec
inc r12d
inc rcx
add rax, 0x20
cmp rcx, r8
jl 0x1400cafd8
mov rax, qword [rbp + 0x20]
mov rdx, rbx
movsxd rcx, r12d
shl rcx, 5
mov r13, qword [rcx + rax]
mov rcx, rbp
or dword [rbp + 0x2c], 0x200000
mov qword [rsp + 0x78], r13
call fcn.1400f1b60
mov qword [rsp + 0x70], rax
mov r14, rax
test rax, rax
je 0x1400cb704
mov r8, r13
mov rdx, rax
mov rcx, rbp
call fcn.1400df360
test rax, rax
jne 0x1400cb6f2
mov r8, r13
mov rdx, r14
mov rcx, rbp
call fcn.1400df190
test rax, rax
jne 0x1400cb6f2
mov rdx, qword [r15]
mov rcx, rsi
call fcn.1400ac5a0
test eax, eax
jne 0x1400cb704
mov rdx, r14
mov rcx, rsi
call fcn.1400d1f10
test eax, eax
jne 0x1400cb704
mov rcx, rsi
mov r9, qword [r15]
cmp qword [r15 + 0x18], rdi
je 0x1400cb0a7
mov r8, r9
lea rdx, str.view__s_may_not_be_altered
call fcn.1400d9350
mov rdx, qword [rsp + 0xc8]
mov rcx, rbp
call fcn.140101fa0
jmp 0x1400cb725
xor edx, edx
mov r8, r13
mov qword [rsp + 0x20], rdx
mov edx, 0x1a
call fcn.1400cc6a0
test eax, eax
jne 0x1400cb704
mov rdx, r15
mov rcx, rsi
call fcn.140115430
test eax, eax
jne 0x1400cb704
test byte [r15 + 0x46], 0x10
je 0x1400cb10f
mov rdi, qword [r15 + 0x58]
test rdi, rdi
je 0x1400cb0f4
cmp qword [rdi], rbp
je 0x1400cb0f4
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1400cb0e6
mov rax, qword [rdi + 0x10]
mov r13d, 0
mov rcx, qword [rax]
cmp qword [rcx + 0x98], 0
cmove rdi, r13
jmp 0x1400cb112
xor r13d, r13d
mov rcx, rsi
call fcn.1400ec180
mov rbx, rax
test rax, rax
je 0x1400cb704
mov edx, r13d
test rdi, rdi
mov r8d, r12d
mov rcx, rsi
setne dl
call fcn.1400cd950
mov edx, r12d
mov rcx, rsi
call fcn.1400d1e40
test rdi, rdi
je 0x1400cb25a
inc dword [rsi + 0x54]
xor r8d, r8d
mov ebp, dword [rsi + 0x54]
mov rcx, rbx
mov r9d, ebp
mov dword [rsp + 0x20], r13d
lea edx, [r8 + 0x61]
call fcn.1401089e0
mov r8, qword [rbx + 8]
mov rcx, qword [rbx]
test r8, r8
je 0x1400cb1de
cmp byte [rcx + 0x51], 0
jne 0x1400cb1de
test eax, eax
jns 0x1400cb186
mov eax, dword [rbx + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rsi, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rsi + 0x10]
call fcn.140087680
mov qword [rsi + 0x10], r13
mov rax, r14
cmp byte [r14], 0
je 0x1400cb1b8
nop dword [rax]
inc rax
cmp byte [rax], 0
jne 0x1400cb1b0
mov rcx, qword [rbx]
sub eax, r14d
and eax, 0x3fffffff
mov rdx, r14
mov r8d, eax
call fcn.1400d6690
mov qword [rsi + 0x10], rax
mov byte [rsi + 1], 0xff
mov rsi, qword [rsp + 0xc0]
xor r9d, r9d
mov dword [rsp + 0x20], r13d
mov r8d, ebp
mov edx, 0x98
mov rcx, rbx
call fcn.1401089e0
mov r8, qword [rbx + 8]
mov rcx, qword [rbx]
test r8, r8
je 0x1400cb240
cmp byte [rcx + 0x51], 0
jne 0x1400cb240
test eax, eax
jns 0x1400cb211
mov eax, dword [rbx + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rbx, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rbx + 0x10]
call fcn.140087680
mov qword [rbx + 0x10], rdi
mov byte [rbx + 1], 0xf6
inc dword [rdi + 0x18]
nop word [rax + rax]
mov rax, qword [rsi + 0x1c0]
mov rcx, rsi
mov rbp, qword [rsp + 0x68]
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov r13, qword [r15]
xor edx, edx
mov r14d, edx
mov rcx, r13
cmp byte [r13], dl
je 0x1400cb2a4
nop dword [rax + rax]
cmp rcx, 0xffffffffffffffff
jae 0x1400cb2a4
movzx eax, byte [rcx]
inc rcx
cmp al, 0xc0
jb 0x1400cb29d
movzx eax, byte [rcx]
and al, 0xc0
cmp al, 0x80
jne 0x1400cb29d
nop dword [rax]
movzx eax, byte [rcx + 1]
inc rcx
and al, 0xc0
cmp al, 0x80
je 0x1400cb290
inc r14d
cmp byte [rcx], dl
jne 0x1400cb270
test dword [rbp + 0x2c], 0x80000
lea r15, str.sqlite_temp_master
je 0x1400cb44e
mov rcx, qword [rsp + 0x60]
mov rdi, rdx
mov rdx, r13
mov rcx, qword [rcx + 0x68]
add rcx, 0x50
call fcn.1400ec320
mov rsi, rax
test rax, rax
je 0x1400cb446
mov r15, qword [rsp + 0xc0]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsi]
mov rbx, qword [r15]
mov r9, qword [rcx]
mov rcx, rbx
test rdi, rdi
jne 0x1400cb318
mov r8, r9
lea rdx, str.name_Q
call fcn.1400f1330
mov rbp, rax
jmp 0x1400cb3cf
mov r8, rdi
lea rdx, str._s_OR_name_Q
call fcn.1400f1330
mov rbp, rax
test rbx, rbx
je 0x1400cb374
cmp qword [rbx + 0x328], 0
je 0x1400cb349
mov rdx, rdi
mov rcx, rbx
call fcn.1400ae450
jmp 0x1400cb3cf
cmp rdi, qword [rbx + 0x170]
jb 0x1400cb374
cmp rdi, qword [rbx + 0x178]
jae 0x1400cb374
mov rax, qword [rbx + 0x168]
mov qword [rdi], rax
dec dword [rbx + 0x154]
mov qword [rbx + 0x168], rdi
jmp 0x1400cb3cf
cmp dword [0x1402fd010], 0
je 0x1400cb3c6
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400cb38f
call qword [0x1402fd098]
mov rcx, rdi
call qword [0x1402fd050]
dec qword [0x140303428]
movsxd rcx, eax
sub qword [0x1403033e0], rcx
mov rcx, rdi
call qword [0x1402fd040]
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400cb3cf
call qword [0x1402fd0a8]
jmp 0x1400cb3cf
mov rcx, rdi
call qword [0x1402fd040]
mov rsi, qword [rsi + 0x18]
mov rdi, rbp
test rsi, rsi
jne 0x1400cb2f0
mov rsi, qword [rsp + 0xc0]
lea r15, str.sqlite_temp_master
lea rbx, str.sqlite_master
test rbp, rbp
je 0x1400cb43f
mov rax, qword [rsp + 0x70]
lea rdx, str.UPDATE___w_._s_SET_sql__sqlite_rename_parent_sql___Q___Q__WHERE__s_
mov r8, qword [rsp + 0x78]
cmp r12d, 1
mov qword [rsp + 0x30], rbp
mov r9, r15
mov qword [rsp + 0x28], rax
cmovne r9, rbx
mov rcx, rsi
mov qword [rsp + 0x20], r13
call fcn.1400f1cc0
mov rdx, rbp
mov rbp, qword [rsp + 0x68]
mov rcx, rbp
call fcn.1400d6010
jmp 0x1400cb455
mov rbp, qword [rsp + 0x68]
jmp 0x1400cb455
mov rsi, qword [rsp + 0xc0]
lea rbx, str.sqlite_master
mov qword [rsp + 0x50], r13
lea rdx, str.UPDATE__Q._s_SET_sql__CASE_WHEN_type__trigger_THEN_sqlite_rename_trigger_sql___Q_ELSE_sqlite_rename_table_sql___Q__END__tbl_name___Q__name__CASE_WHEN_typetable_THEN__Q_WHEN_name_LIKE_sqlite_autoindex___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 dword [rsp + 0x48], r14d
cmp r12d, 1
mov r14, qword [rsp + 0x70]
mov rcx, rsi
mov qword [rsp + 0x40], r14
cmovne r15, rbx
mov qword [rsp + 0x38], r14
mov r9, r15
mov r15, qword [rsp + 0x78]
mov qword [rsp + 0x30], r14
mov r8, r15
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
call fcn.1400f1cc0
mov edi, dword [rbp + 0x28]
xor edx, edx
mov r11d, edx
mov ebx, edx
test edi, edi
jle 0x1400cb658
lea r12, [0x14024c050]
lea r13, str.sqlite_sequence
nop
mov r10d, ebx
xor r10d, 1
cmp ebx, 2
cmovae r10d, ebx
test r15, r15
je 0x1400cb541
mov rax, qword [rbp + 0x20]
mov ecx, r10d
shl rcx, 5
mov rdx, qword [rcx + rax]
test rdx, rdx
je 0x1400cb623
movzx r8d, byte [r15]
test r8b, r8b
je 0x1400cb526
mov r9, r15
movzx ecx, r8b
sub r9, rdx
nop
movzx eax, byte [rdx]
movzx r8d, cl
movzx ecx, cl
movzx eax, byte [rax + r12]
cmp byte [rcx + r12], al
jne 0x1400cb526
movzx ecx, byte [r9 + rdx + 1]
inc rdx
movzx r8d, cl
test cl, cl
jne 0x1400cb500
movzx eax, byte [rdx]
movzx edx, byte [rax + r12]
movzx eax, r8b
movzx ecx, byte [rax + r12]
cmp ecx, edx
jne 0x1400cb623
xor edx, edx
mov rax, qword [rbp + 0x20]
mov ecx, r10d
shl rcx, 5
mov r9, qword [rcx + rax + 0x18]
cmp qword [r9 + 0x18], 0
je 0x1400cb598
mov r8, r13
mov eax, edx
mov cl, WSACleanup
nop
movzx ecx, cl
lea r8, [r8 + 1]
movzx edx, byte [rcx + r12]
lea ecx, [rax*8]
xor edx, ecx
movzx ecx, byte [r8]
xor eax, edx
test cl, cl
jne 0x1400cb560
xor edx, edx
div dword [r9 + 8]
mov ecx, edx
shl rcx, 4
add rcx, qword [r9 + 0x18]
mov r10, qword [rcx + 8]
mov r11d, dword [rcx]
jmp 0x1400cb5a0
mov r10, qword [r9 + 0x10]
mov r11d, dword [r9 + 0xc]
test r11d, r11d
je 0x1400cb613
nop word [rax + rax]
mov r9, qword [r10 + 0x18]
dec r11d
test r9, r9
je 0x1400cb60b
movzx r8d, byte [r9]
mov rdx, r13
test r8b, r8b
je 0x1400cb5f6
movzx eax, r8b
sub r9, r13
nop
movzx ecx, al
movzx r8d, al
movzx eax, byte [rdx]
movzx eax, byte [rax + r12]
cmp byte [rcx + r12], al
jne 0x1400cb5f6
movzx eax, byte [rdx + r9 + 1]
inc rdx
movzx r8d, al
test al, al
jne 0x1400cb5d0
movzx eax, r8b
movzx ecx, byte [rax + r12]
movzx eax, byte [rdx]
movzx eax, byte [rax + r12]
cmp ecx, eax
je 0x1400cb61a
mov r10, qword [r10]
test r11d, r11d
jne 0x1400cb5b0
xor edx, edx
mov r11d, edx
jmp 0x1400cb625
mov r11, qword [r10 + 0x10]
test r11, r11
jne 0x1400cb634
xor edx, edx
inc ebx
cmp ebx, edi
jl 0x1400cb4c0
test r11, r11
je 0x1400cb658
mov rdi, qword [rsp + 0x60]
lea rdx, str.UPDATE___w_.sqlite_sequence_set_name___Q_WHERE_name___Q
mov r9, r14
mov r8, r15
mov rcx, rsi
mov rax, qword [rdi]
mov qword [rsp + 0x20], rax
call fcn.1400f1cc0
jmp 0x1400cb65d
mov rdi, qword [rsp + 0x60]
mov rdx, rdi
mov rcx, rsi
call fcn.140128aa0
mov rbx, rax
test rax, rax
je 0x1400cb695
mov r9, r14
mov qword [rsp + 0x20], rax
mov r8, r14
lea rdx, str.UPDATE_sqlite_temp_master_SET_sql__sqlite_rename_trigger_sql___Q___tbl_name___Q_WHERE__s_
mov rcx, rsi
call fcn.1400f1cc0
mov rdx, rbx
mov rcx, rbp
call fcn.1400d6010
test dword [rbp + 0x2c], 0x80000
je 0x1400cb6d2
mov rcx, qword [rdi + 0x68]
mov rdx, qword [rdi]
add rcx, 0x50
call fcn.1400ec320
mov rbx, rax
test rax, rax
je 0x1400cb6d2
mov rdx, qword [rbx]
cmp rdx, rdi
je 0x1400cb6c9
mov r8, qword [rdx]
mov rcx, rsi
call fcn.1400bc320
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x1400cb6b6
mov r8, r14
mov rdx, rdi
mov rcx, rsi
call fcn.1400bc320
mov rdx, qword [rsp + 0xc8]
mov rcx, rbp
call fcn.140101fa0
jmp 0x1400cb725
mov r8, r14
lea rdx, str.there_is_already_another_table_or_index_with_this_name:__s
mov rcx, rsi
jmp 0x1400cb08d
mov r15d, dword [rsp + 0xd8]
mov rdx, qword [rsp + 0xc8]
mov rcx, rbp
call fcn.140101fa0
test r14, r14
je 0x1400cb7ef
cmp qword [rbp + 0x328], 0
je 0x1400cb749
mov rdx, r14
mov rcx, rbp
call fcn.1400ae450
mov eax, dword [rsp + 0xd8]
mov dword [rbp + 0x2c], eax
jmp 0x1400cb7f3
cmp r14, qword [rbp + 0x170]
jb 0x1400cb77e
cmp r14, qword [rbp + 0x178]
jae 0x1400cb77e
mov rax, qword [rbp + 0x168]
mov qword [r14], rax
mov eax, dword [rsp + 0xd8]
dec dword [rbp + 0x154]
mov dword [rbp + 0x2c], eax
mov qword [rbp + 0x168], r14
jmp 0x1400cb7f3
cmp dword [0x1402fd010], 0
je 0x1400cb7da
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400cb799
call qword [0x1402fd098]
mov rcx, r14
call qword [0x1402fd050]
dec qword [0x140303428]
movsxd rcx, eax
sub qword [0x1403033e0], rcx
mov rcx, r14
call qword [0x1402fd040]
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400cb7ce
call qword [0x1402fd0a8]
mov eax, dword [rsp + 0xd8]
mov dword [rbp + 0x2c], eax
jmp 0x1400cb7f3
mov rcx, r14
call qword [0x1402fd040]
mov eax, dword [rsp + 0xd8]
mov dword [rbp + 0x2c], eax
jmp 0x1400cb7f3
mov dword [rbp + 0x2c], r15d
mov rbx, qword [rsp + 0xd0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret