Function at 0x14012be00
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov r13, qword [rsp + 0x100]
lea ebp, [rdx - 1]
xor edi, edi
mov dword [rsp + 0xd8], ebp
mov rbx, rcx
mov r12d, edi
mov r15d, edi
test r13, r13
jne 0x14012be4c
call fcn.1400b3be0
mov r13, rax
mov rax, qword [rsp + 0x108]
mov rcx, r13
test rax, rax
cmove rax, r13
mov qword [rsp + 0x108], rax
call fcn.140061840
movsxd r14, eax
mov esi, ebp
lea ecx, [r14 + r14]
sub esi, ecx
lea eax, [rsi - 1]
cmp dword [rsp + 0xe8], eax
jle 0x14012beab
mov edx, 0x9a
mov dword [rsp + 0x20], 0x3e
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x2c]
call fcn.14006c2b0
xor eax, eax
jmp 0x14012c28e
lea eax, [rcx + 1]
cmp ebp, eax
jge 0x14012bedb
mov edx, 0x9a
mov dword [rsp + 0x20], 0x44
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x22]
call fcn.14006c2b0
xor eax, eax
jmp 0x14012c28e
mov rcx, qword [rsp + 0xd0]
lea rbp, [rbx + 1]
movsxd rdx, dword [rsp + 0xf8]
add rcx, r14
mov byte [rbx], dil
xor r9d, r9d
mov qword [rsp + 0x100], rcx
mov rbx, r14
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r13
lea r13, [rcx + 1]
mov rcx, qword [rsp + 0xf0]
mov r8, r13
mov qword [rsp + 0x30], rbx
call fcn.140079180
test eax, eax
je 0x14012c265
sub esi, dword [rsp + 0xe8]
xor edx, edx
dec esi
movsxd r8, esi
mov rsi, qword [rsp + 0x100]
lea rcx, [rsi + 1]
add rcx, rbx
call fcn.140174b20
movsxd rdx, dword [rsp + 0xe8]
movsxd rcx, dword [rsp + 0xd8]
mov eax, ecx
mov r8d, edx
sub rcx, rdx
sub eax, r14d
mov dword [rsp + 0xd8], eax
sub rcx, rbx
sub eax, edx
inc rcx
mov rdx, qword [rsp + 0xe0]
add rcx, rsi
cdqe
mov byte [rax + rsi], 1
call fcn.140174ce0
mov edx, r14d
mov rcx, rbp
call fcn.14005f6f0
test eax, eax
jle 0x14012c265
movsxd r15, dword [rsp + 0xd8]
lea rdx, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_rsa_rsa_oaep.c
mov rcx, r15
mov r8d, 0x55
mov rsi, r15
call fcn.14006c900
mov r12, rax
test rax, rax
jne 0x14012bff0
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_rsa_rsa_oaep.c
mov dword [rsp + 0x20], 0x57
mov edx, 0x9a
lea ecx, [rax + 4]
lea r8d, [rax + 0x41]
call fcn.14006c2b0
jmp 0x14012c265
mov rax, qword [rsp + 0x108]
mov r9d, r14d
mov r8, rbp
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, r12
call fcn.14012bc50
test eax, eax
js 0x14012c265
mov r9d, edi
test r15d, r15d
jle 0x14012c0e1
cmp r15d, 0x40
jb 0x14012c0e1
lea eax, [r15 - 1]
movsxd rcx, eax
lea rax, [rcx + r12]
lea rdx, [rcx + r13]
cmp r13, rax
ja 0x14012c049
cmp rdx, r12
jae 0x14012c0e1
mov ecx, r15d
and ecx, 0x8000003f
jge 0x14012c05b
dec ecx
or ecx, 0xffffffc0
inc ecx
mov r8, qword [rsp + 0x100]
mov eax, r15d
sub eax, ecx
mov r10, r8
mov rdx, r12
movsxd r11, eax
sub rdx, r13
not r10
mov rcx, r13
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
add r9d, 0x40
movdqu xmm1, xmmword [rdx + rcx]
lea rcx, [rcx + 0x40]
lea rax, [rcx + r10]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x40], xmm1
movdqu xmm0, xmmword [rcx - 0x30]
movdqu xmm1, xmmword [rdx + rcx - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm1, xmmword [rdx + rcx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
movdqu xmm0, xmmword [rcx - 0x10]
movdqu xmm1, xmmword [rdx + rcx - 0x10]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
cmp rax, r11
jl 0x14012c080
jmp 0x14012c0e9
mov r8, qword [rsp + 0x100]
movsxd rax, r9d
cmp rax, rsi
jge 0x14012c120
lea rcx, [r8 + 1]
mov rdx, r12
add rcx, rax
sub rdx, r13
sub rsi, rax
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rsi, 1
jne 0x14012c110
mov rax, qword [rsp + 0x108]
lea rcx, [rsp + 0x40]
mov r9d, r15d
mov qword [rsp + 0x20], rax
mov r8, r13
mov edx, r14d
call fcn.14012bc50
test eax, eax
js 0x14012c265
test r14d, r14d
jle 0x14012c236
cmp r14d, 0x40
jb 0x14012c236
lea eax, [r14 - 1]
movsxd rcx, eax
lea rax, [rsp + 0x40]
add rax, rcx
lea rdx, [rcx + rbp]
cmp rbp, rax
ja 0x14012c181
lea rax, [rsp + 0x40]
cmp rdx, rax
jae 0x14012c236
mov eax, r14d
and eax, 0x8000003f
jge 0x14012c192
dec eax
or eax, 0xffffffc0
inc eax
mov rbx, qword [rsp + 0xd0]
lea rdx, [rsp + 0x40]
sub r14d, eax
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x60]
movsxd r11, r14d
sub rdx, rbp
lea r10, [rsp + 0x70]
sub r8, rbp
sub r9, rbp
sub r10, rbp
mov rcx, rbp
not rbx
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
add edi, 0x40
movdqu xmm1, xmmword [rdx + rcx]
lea rcx, [rcx + 0x40]
lea rax, [rbx + rcx]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x40], xmm1
movdqu xmm0, xmmword [rcx - 0x30]
movdqu xmm1, xmmword [r8 + rcx - 0x40]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm1, xmmword [r9 + rcx - 0x40]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
movdqu xmm0, xmmword [rcx - 0x10]
movdqu xmm1, xmmword [r10 + rcx - 0x40]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
cmp rax, r11
jl 0x14012c1d0
mov rbx, qword [rsp + 0x30]
movsxd rcx, edi
cmp rcx, rbx
jge 0x14012c260
lea rdx, [rsp + 0x40]
sub rdx, rbp
lea rax, [rcx + rbp]
sub rbx, rcx
nop dword [rax]
movzx ecx, byte [rax + rdx]
xor byte [rax], cl
lea rax, [rax + 1]
sub rbx, 1
jne 0x14012c250
mov edi, 1
mov edx, 0x40
lea rcx, [rsp + 0x40]
call fcn.14006c690
movsxd rdx, r15d
lea r8, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_rsa_rsa_oaep.c
mov r9d, 0x68
mov rcx, r12
call fcn.14006ca20
mov eax, edi
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret