Function at 0x1802203d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x100
call fcn.18014c9d0
sub rsp, rax
mov rax, qword [0x1803b0b00]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x168]
movsxd r14, dword [rsp + 0x160]
mov rbx, qword [rsp + 0x180]
xor esi, esi
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x178]
or edi, 0xffffffff
movsxd r13, r9d
mov qword [rsp + 0x48], r8
mov ebp, edx
mov dword [rsp + 0x40], edx
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x44], r14d
mov qword [rsp + 0x58], rax
mov r15d, esi
mov r12d, esi
mov qword [rsp + 0x38], rsi
test rax, rax
jne 0x180220460
call fcn.1801bb390
mov qword [rsp + 0x58], rax
test rbx, rbx
mov rcx, rax
cmove rbx, rax
mov qword [rsp + 0x50], rbx
call fcn.180194c30
movsxd rbx, eax
test ebp, ebp
jle 0x18022074f
test r13d, r13d
jle 0x18022074f
cmp r14d, r13d
jl 0x1802206ce
lea ecx, [rbx + rbx + 2]
cmp r14d, ecx
jl 0x1802206ce
mov r15d, r14d
lea rdx, str.crypto_rsa_rsa_oaep.c
mov r8d, 0x9d
sub r15d, ebx
dec r15d
movsxd rbp, r15d
mov rcx, rbp
call fcn.1801a04c0
lea rdx, str.crypto_rsa_rsa_oaep.c
mov r8d, 0x9e
mov rcx, r14
mov r12, rax
call fcn.1801a04c0
mov qword [rsp + 0x38], rax
test r12, r12
je 0x18022073f
test rax, rax
je 0x18022073f
mov r8, r14
xor edx, edx
mov rcx, rax
call fcn.18014af80
mov rdx, qword [rsp + 0x48]
sub r14, r13
add r14, qword [rsp + 0x38]
mov r8, r13
mov rcx, r14
call fcn.180147850
mov rcx, qword [rsp + 0x38]
mov r9d, r15d
movzx r11d, byte [rcx]
lea r14, [rbx + rcx + 1]
lea r13, [rcx + 1]
lea eax, [r11 - 1]
not r11d
lea rcx, [rsp + 0x70]
shr eax, 0x1f
shr r11d, 0x1f
mov r8, r14
and eax, r11d
mov edx, ebx
neg eax
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.18021ffa0
test eax, eax
jne 0x1802206f2
mov rdx, rsi
test rbx, rbx
jle 0x180220585
lea rax, [rsp + 0x70]
sub r13, rax
lea rcx, [rsp + rdx + 0x70]
inc rdx
movzx eax, byte [r13 + rcx]
xor byte [rcx], al
cmp rdx, rbx
jl 0x180220570
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0x70]
mov r9d, ebx
mov edx, r15d
mov rcx, r12
mov r13d, ebx
mov qword [rsp + 0x20], rax
call fcn.18021ffa0
test eax, eax
jne 0x1802206f2
test r15d, r15d
jle 0x1802205d0
mov rcx, r12
sub r14, r12
mov rdx, rbp
nop dword [rax + rax]
movzx eax, byte [r14 + rcx]
inc rcx
xor byte [rcx - 1], al
dec rdx
jne 0x1802205c0
mov rax, qword [rsp + 0x58]
movsxd rdx, dword [rsp + 0x170]
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0xb0]
xor r9d, r9d
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.1801bb090
test eax, eax
je 0x1802206f2
lea rdx, [rsp + 0xb0]
mov r8, rbx
mov rcx, r12
call fcn.18019f360
mov r11d, dword [rsp + 0x48]
mov r9d, esi
lea ecx, [rax - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
neg ecx
and r11d, ecx
cmp rbx, rbp
jge 0x180220692
lea r10, [rbx + r12]
sub rbp, rbx
nop dword [rax]
movzx r8d, byte [r10]
mov ecx, r9d
inc r10
mov eax, r8d
not ecx
xor eax, 1
lea edx, [rax - 1]
not eax
shr eax, 0x1f
shr edx, 0x1f
and edx, eax
neg edx
and ecx, edx
or r9d, edx
mov eax, ecx
and ecx, r13d
inc r13d
not eax
and esi, eax
lea eax, [r8 - 1]
not r8d
shr eax, 0x1f
shr r8d, 0x1f
or esi, ecx
and eax, r8d
neg eax
or eax, r9d
and r11d, eax
dec rbp
jne 0x180220640
test r11d, r9d
je 0x1802206ce
lea eax, [rsi + 1]
mov edi, r15d
sub edi, eax
cmp dword [rsp + 0x40], edi
jge 0x18022072a
mov edx, 0x99
lea r9, str.crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x2c]
mov dword [rsp + 0x20], 0xe3
call fcn.18018f910
or edi, 0xffffffff
mov dword [rsp + 0x20], 0xf0
mov r8d, 0x79
lea r9, str.crypto_rsa_rsa_oaep.c
mov edx, 0x99
mov ecx, 4
call fcn.18018f910
lea r8, str.crypto_rsa_rsa_oaep.c
movsxd rdx, r15d
mov r9d, 0xf2
mov rcx, r12
call fcn.1801a05d0
movsxd rdx, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x38]
lea r8, str.crypto_rsa_rsa_oaep.c
mov r9d, 0xf3
call fcn.1801a05d0
mov eax, edi
jmp 0x180220752
mov rcx, qword [rsp + 0x60]
movsxd rdx, eax
movsxd r8, edi
add rdx, r12
call fcn.180147850
jmp 0x1802206f2
mov dword [rsp + 0x20], 0xa0
mov r8d, 0x41
jmp 0x1802206dc
or eax, 0xffffffff
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.180146c80
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret