Function at 0x14012d5a0
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 0x14012d5ec
call fcn.1400b4690
mov r13, rax
mov rax, qword [rsp + 0x108]
mov rcx, r13
test rax, rax
cmove rax, r13
mov qword [rsp + 0x108], rax
call fcn.140060870
movsxd r14, eax
mov esi, ebp
lea ecx, [r14 + r14]
sub esi, ecx
lea eax, [rsi - 1]
cmp dword [rsp + 0xe8], eax
jle 0x14012d64b
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.14006b9e0
xor eax, eax
jmp 0x14012da2e
lea eax, [rcx + 1]
cmp ebp, eax
jge 0x14012d67b
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.14006b9e0
xor eax, eax
jmp 0x14012da2e
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.1400756b0
test eax, eax
je 0x14012da05
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.140175020
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.1401757c0
mov edx, r14d
mov rcx, rbp
call fcn.14006d140
test eax, eax
jle 0x14012da05
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.14006c030
mov r12, rax
test rax, rax
jne 0x14012d790
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.14006b9e0
jmp 0x14012da05
mov rax, qword [rsp + 0x108]
mov r9d, r14d
mov r8, rbp
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, r12
call fcn.14012d3f0
test eax, eax
js 0x14012da05
mov r9d, edi
test r15d, r15d
jle 0x14012d881
cmp r15d, 0x40
jb 0x14012d881
lea eax, [r15 - 1]
movsxd rcx, eax
lea rax, [rcx + r12]
lea rdx, [rcx + r13]
cmp r13, rax
ja 0x14012d7e9
cmp rdx, r12
jae 0x14012d881
mov ecx, r15d
and ecx, 0x8000003f
jge 0x14012d7fb
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 0x14012d820
jmp 0x14012d889
mov r8, qword [rsp + 0x100]
movsxd rax, r9d
cmp rax, rsi
jge 0x14012d8c0
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 0x14012d8b0
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.14012d3f0
test eax, eax
js 0x14012da05
test r14d, r14d
jle 0x14012d9d6
cmp r14d, 0x40
jb 0x14012d9d6
lea eax, [r14 - 1]
movsxd rcx, eax
lea rax, [rsp + 0x40]
add rax, rcx
lea rdx, [rcx + rbp]
cmp rbp, rax
ja 0x14012d921
lea rax, [rsp + 0x40]
cmp rdx, rax
jae 0x14012d9d6
mov eax, r14d
and eax, 0x8000003f
jge 0x14012d932
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 0x14012d970
mov rbx, qword [rsp + 0x30]
movsxd rcx, edi
cmp rcx, rbx
jge 0x14012da00
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 0x14012d9f0
mov edi, 1
mov edx, 0x40
lea rcx, [rsp + 0x40]
call fcn.14006bdc0
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.14006c150
mov eax, edi
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret