Function at 0x1401755dc
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, 0xa0
xor ebx, ebx
lea r8, [rbp + 0x7f]
xor r9d, r9d
mov qword [rbp - 0x19], rbx
mov r14, rcx
mov qword [rbp - 0x31], rbx
mov r13d, ebx
mov qword [rbp + 0x7f], rbx
lea edx, [rbx + 0x1b]
call fcn.140179e3c
mov dword [rbp + 0x77], eax
mov esi, eax
mov edi, eax
test eax, eax
jne 0x14017573f
mov rdi, qword [rbp + 0x7f]
lea edx, [rbx + 1]
movsxd r8, dword [r14 + 0x208]
mov rcx, rdi
call fcn.1401587f4
movsxd r8, dword [r14 + 0x1e8]
lea edx, [rbx + 2]
mov rcx, rdi
call fcn.1401587f4
mov rcx, rdi
call fcn.140158fcc
cmp eax, 0x64
jne 0x1401756a9
xor edx, edx
mov rcx, rdi
call fcn.14015928c
mov r12d, eax
mov r15d, ebx
cmp dword [r14 + 0x1e8], ebx
jle 0x1401756a5
lea r9, [rbp + 0x77]
mov r8d, r15d
mov edx, r12d
mov rcx, r14
call fcn.14016e1a8
xor r13, rax
inc r15d
cmp r15d, dword [r14 + 0x1e8]
jl 0x14017567d
mov esi, dword [rbp + 0x77]
mov qword [rbp - 0x19], r13
test esi, esi
je 0x140175657
test rdi, rdi
jne 0x1401756b5
mov edi, ebx
jmp 0x140175735
mov r15, qword [rdi]
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x1401756c7
call qword [0x1403341a0]
cmp qword [rdi + 0xb8], rbx
jle 0x1401756db
mov rdx, rdi
mov rcx, r15
call fcn.14018f364
mov rcx, rdi
call fcn.1401e456c
or dword [rdi + 0x30], 0xffffffff
mov byte [rdi + 0xc5], 1
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 0x14017571a
test eax, eax
jne 0x14017571a
mov edi, ebx
jmp 0x140175726
mov edx, eax
mov rcx, r15
call fcn.14015cd40
mov edi, eax
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x140175735
call qword [0x1403341b0]
test esi, esi
jne 0x1401759f5
mov esi, edi
test edi, edi
jne 0x1401759f5
mov rax, qword [r14 + 0x48]
lea rcx, str.SELECT__s
mov rdx, qword [r14 + 0x1b8]
mov rdi, rbx
mov qword [rbp - 0x21], rbx
mov rax, qword [rax]
mov qword [rbp + 0xf], rax
call fcn.14015731c
mov r15, rax
test rax, rax
jne 0x14017577c
lea esi, [rax + 7]
jmp 0x140175978
mov rcx, qword [r14 + 0x18]
lea rax, [rbp - 0x21]
mov qword [rsp + 0x30], rbx
mov r9d, 0x80
mov qword [rsp + 0x28], rax
or r8d, 0xffffffff
mov rdx, r15
mov qword [rsp + 0x20], rbx
call fcn.1401c8940
mov rcx, r15
mov esi, eax
call fcn.140157578
mov rdi, qword [rbp - 0x21]
test esi, esi
jne 0x140175978
lea r12, [r14 + 0x30]
mov rcx, rdi
mov qword [rbp + 0x1f], r12
call fcn.140158fcc
cmp eax, 0x64
jne 0x140175974
xor edx, edx
mov rcx, rdi
call fcn.1401592c0
mov qword [rbp - 1], rax
mov dword [rbp + 0x77], ebx
cmp qword [r14 + 0x58], rbx
je 0x1401757fc
mov edx, dword [r12]
mov rcx, rdi
inc edx
call fcn.14015928c
mov dword [rbp + 0x77], eax
mov qword [rbp + 0x17], rbx
mov r15d, ebx
mov r13, rbx
test esi, esi
jne 0x140175974
cmp r15d, dword [r12]
jge 0x14017596c
mov rax, qword [r14 + 0x40]
cmp byte [rax + r13], bl
jne 0x14017595a
lea edx, [r15 + 1]
mov rcx, rdi
call fcn.1401592f4
mov edx, dword [rbp + 0x77]
lea rcx, [rbp - 0x29]
mov qword [rsp + 0x20], rcx
or r9d, 0xffffffff
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov qword [rbp - 0x29], rbx
call fcn.1401bb804
mov esi, eax
test eax, eax
jne 0x140175943
mov rcx, qword [rbp - 0x29]
lea rax, [rbp - 0x39]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0xd]
lea rax, [rbp - 0x11]
mov dword [rbp + 0x7f], ebx
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x7f]
mov rax, qword [rbp + 0xf]
lea rdx, [rbp + 7]
mov dword [rbp - 0xd], ebx
mov dword [rbp - 0x11], ebx
mov dword [rbp - 0x39], ebx
call qword [rax + 0x28]
mov dword [rbp - 9], eax
mov esi, eax
test eax, eax
jne 0x14017592f
mov rax, qword [rbp - 1]
xor r9d, r9d
mov edi, dword [rbp - 0x39]
mov r8d, dword [rbp + 0x77]
mov edx, dword [rbp + 0x7f]
mov rcx, qword [rbp + 7]
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rax
call fcn.14016e150
xor qword [rbp - 0x31], rax
lea r13d, [rsi + 1]
cmp dword [r14 + 0x1e8], r13d
jle 0x14017592f
mov r12, qword [r14 + 0x1f0]
mov eax, dword [rbp + 0x7f]
add r12, 0x28
mov ebx, dword [rbp + 0x77]
mov rsi, qword [rbp - 1]
cmp dword [r12], eax
jg 0x14017591a
mov edx, dword [r12]
mov r9d, r13d
mov rcx, qword [rbp + 7]
mov r8d, ebx
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rsi
call fcn.14016e150
xor qword [rbp - 0x31], rax
mov eax, dword [rbp + 0x7f]
inc r13d
add r12, 0x28
cmp r13d, dword [r14 + 0x1e8]
jl 0x1401758ec
mov esi, dword [rbp - 9]
xor ebx, ebx
test esi, esi
je 0x14017585c
mov rdi, qword [rbp - 0x21]
mov r12, qword [rbp + 0x1f]
mov r13, qword [rbp + 0x17]
cmp qword [rbp - 0x29], rbx
je 0x140175954
mov rax, qword [rbp + 0xf]
mov rcx, qword [rbp - 0x29]
call qword [rax + 0x20]
cmp esi, 0x65
cmove esi, ebx
inc r13
inc r15d
mov qword [rbp + 0x17], r13
test esi, esi
je 0x14017580e
test esi, esi
je 0x1401757bf
mov r13, qword [rbp - 0x19]
test rdi, rdi
je 0x1401759f5
mov r14, qword [rdi]
test r14, r14
jne 0x1401759a1
lea rdx, str.API_called_with_finalized_prepared_statement
lea ecx, [r14 + 0x15]
call fcn.140145c8c
mov ecx, 0x15732
call fcn.1401c9250
jmp 0x1401759f5
mov rcx, qword [r14 + 0x18]
test rcx, rcx
je 0x1401759b0
call qword [0x1403341a0]
cmp qword [rdi + 0xb8], rbx
jle 0x1401759c4
mov rdx, rdi
mov rcx, r14
call fcn.14018f364
mov rcx, rdi
call fcn.1401e456c
mov rcx, rdi
mov r15d, eax
call fcn.1401da184
cmp byte [r14 + 0x67], bl
jne 0x1401759e2
test r15d, r15d
je 0x1401759ed
mov edx, r15d
mov rcx, r14
call fcn.14015cd40
mov rcx, r14
call fcn.1401c7fe8
mov rax, qword [rbp + 0x6f]
cmp r13, qword [rbp - 0x31]
sete bl
mov dword [rax], ebx
mov eax, esi
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret