Function at 0x1401a97a4
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
xor ebx, ebx
lea r8, [rbp + 0x7f]
xor r9d, r9d
mov qword [rbp + 0x1f], rbx
mov r14, rcx
mov qword [rbp - 0x21], rbx
mov r13d, ebx
mov qword [rbp + 0x7f], rbx
lea edx, [rbx + 0x1b]
call fcn.1401ae0a4
mov dword [rbp + 0x77], eax
mov esi, eax
test eax, eax
jne 0x1401a9b9b
mov rdi, qword [rbp + 0x7f]
lea edx, [rbx + 1]
movsxd r8, dword [r14 + 0x208]
mov rcx, rdi
call fcn.140187c84
movsxd r8, dword [r14 + 0x1e8]
lea edx, [rbx + 2]
mov rcx, rdi
call fcn.140187c84
mov rcx, rdi
call fcn.140188220
cmp eax, 0x64
jne 0x1401a986f
xor edx, edx
mov rcx, rdi
call fcn.1401885bc
mov r12d, eax
mov r15d, ebx
cmp dword [r14 + 0x1e8], ebx
jle 0x1401a986b
lea r9, [rbp + 0x77]
mov r8d, r15d
mov edx, r12d
mov rcx, r14
call fcn.1401a2490
xor r13, rax
inc r15d
cmp r15d, dword [r14 + 0x1e8]
jl 0x1401a9843
mov esi, dword [rbp + 0x77]
mov qword [rbp + 0x1f], r13
test esi, esi
je 0x1401a981d
or r12d, 0xffffffff
test rdi, rdi
jne 0x1401a987f
mov edi, ebx
jmp 0x1401a98ff
mov r15, qword [rdi]
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x1401a9891
call qword [0x1402f9800]
cmp qword [rdi + 0xb8], rbx
jle 0x1401a98a5
mov rdx, rdi
mov rcx, r15
call fcn.1401c336c
mov rcx, rdi
call fcn.1402172e0
mov byte [rdi + 0xc5], 1
mov dword [rdi + 0x30], r12d
mov dword [rdi + 0x34], ebx
mov word [rdi + 0xc2], 0xff02
mov qword [rdi + 0x38], rbx
mov dword [rdi + 0x2c], 1
mov dword [rdi + 0x40], ebx
mov qword [rdi + 0x50], rbx
cmp byte [r15 + 0x67], bl
jne 0x1401a98e4
test eax, eax
jne 0x1401a98e4
mov edi, ebx
jmp 0x1401a98f0
mov edx, eax
mov rcx, r15
call fcn.140191a4c
mov edi, eax
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x1401a98ff
call qword [0x1402f9810]
test esi, esi
jne 0x1401a9b9b
mov esi, edi
test edi, edi
jne 0x1401a9b9b
mov rax, qword [r14 + 0x48]
lea rcx, str.SELECT__s
mov rdx, qword [r14 + 0x1b8]
mov qword [rbp - 9], rbx
mov rax, qword [rax]
mov qword [rbp + 0xf], rax
call fcn.1401868a4
mov rdi, rax
test rax, rax
jne 0x1401a9943
lea esi, [rax + 7]
jmp 0x1401a9b9b
mov rcx, qword [r14 + 0x18]
lea rax, [rbp - 9]
mov qword [rsp + 0x30], rbx
mov r9d, 0x80
mov qword [rsp + 0x28], rax
mov r8d, r12d
mov rdx, rdi
mov qword [rsp + 0x20], rbx
call fcn.1401fc468
mov rcx, rdi
mov esi, eax
call fcn.140186c1c
mov r15, qword [rbp - 9]
test esi, esi
jne 0x1401a9b2d
mov rcx, r15
call fcn.140188220
cmp eax, 0x64
jne 0x1401a9b29
xor edx, edx
mov rcx, r15
call fcn.1401885f0
mov r12d, ebx
mov qword [rbp - 1], rax
mov dword [rbp + 0x7f], ebx
cmp qword [r14 + 0x58], rbx
je 0x1401a99c0
mov edx, dword [r14 + 0x30]
mov rcx, r15
inc edx
call fcn.1401885bc
mov r12d, eax
mov dword [rbp + 0x7f], eax
mov qword [rbp + 0x17], rbx
mov edi, ebx
mov r13, rbx
test esi, esi
jne 0x1401a9b29
cmp edi, dword [r14 + 0x30]
jge 0x1401a9b21
mov rax, qword [r14 + 0x40]
cmp byte [rax + r13], bl
jne 0x1401a9b10
lea edx, [rdi + 1]
mov rcx, r15
call fcn.140188624
lea rcx, [rbp - 0x19]
mov qword [rbp - 0x19], rbx
mov qword [rsp + 0x20], rcx
or r9d, 0xffffffff
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov edx, r12d
call fcn.1401ef564
mov esi, eax
test eax, eax
jne 0x1401a9af9
mov r13d, dword [rbp + 0x7f]
mov rcx, qword [rbp - 0x19]
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0xd]
lea rax, [rbp - 0x11]
mov dword [rbp + 0x77], ebx
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x77]
mov rax, qword [rbp + 0xf]
lea rdx, [rbp + 7]
mov dword [rbp - 0xd], ebx
mov dword [rbp - 0x11], ebx
mov dword [rbp - 0x29], ebx
call qword [rax + 0x28]
mov esi, eax
test eax, eax
jne 0x1401a9aed
mov rax, qword [rbp - 1]
xor r9d, r9d
mov r15d, dword [rbp - 0x29]
mov r8d, r13d
mov edx, dword [rbp + 0x77]
mov rcx, qword [rbp + 7]
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
call fcn.1401a2438
xor qword [rbp - 0x21], rax
lea r12d, [rsi + 1]
cmp dword [r14 + 0x1e8], r12d
jle 0x1401a9a22
mov rsi, qword [r14 + 0x1f0]
mov eax, dword [rbp + 0x77]
add rsi, 0x28
mov rbx, qword [rbp - 1]
cmp dword [rsi], eax
jg 0x1401a9ad6
mov edx, dword [rsi]
mov r9d, r12d
mov rcx, qword [rbp + 7]
mov r8d, r13d
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rbx
call fcn.1401a2438
xor qword [rbp - 0x21], rax
mov eax, dword [rbp + 0x77]
inc r12d
add rsi, 0x28
cmp r12d, dword [r14 + 0x1e8]
jl 0x1401a9aac
xor ebx, ebx
jmp 0x1401a9a22
mov r15, qword [rbp - 9]
mov r13, qword [rbp + 0x17]
mov r12d, dword [rbp + 0x7f]
cmp qword [rbp - 0x19], rbx
je 0x1401a9b0a
mov rax, qword [rbp + 0xf]
mov rcx, qword [rbp - 0x19]
call qword [rax + 0x20]
cmp esi, 0x65
cmove esi, ebx
inc r13
inc edi
mov qword [rbp + 0x17], r13
test esi, esi
je 0x1401a99d1
test esi, esi
je 0x1401a9981
mov r13, qword [rbp + 0x1f]
test r15, r15
je 0x1401a9b9b
mov rdi, qword [r15]
test rdi, rdi
jne 0x1401a9b55
lea rdx, str.API_called_with_finalized_prepared_statement
lea ecx, [rdi + 0x15]
call fcn.14018dbdc
mov ecx, 0x15022
call fcn.1401fcd64
jmp 0x1401a9b9b
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1401a9b64
call qword [0x1402f9800]
cmp qword [r15 + 0xb8], rbx
jle 0x1401a9b78
mov rdx, r15
mov rcx, rdi
call fcn.1401c336c
mov rcx, r15
call fcn.1402148bc
cmp byte [rdi + 0x67], bl
jne 0x1401a9b89
test eax, eax
je 0x1401a9b93
mov edx, eax
mov rcx, rdi
call fcn.140191a4c
mov rcx, rdi
call fcn.1401fbb14
mov rax, qword [rbp + 0x6f]
cmp r13, qword [rbp - 0x21]
sete bl
mov dword [rax], ebx
mov eax, esi
mov rbx, qword [rsp + 0xd0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret