Function at 0x14022ded0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r15
mov eax, 0xb8
call fcn.1402563f0
sub rsp, rax
mov rax, qword [0x1403bb2d8]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rbx, qword [rsp + 0x118]
mov r12, qword [rsp + 0x120]
xor eax, eax
mov rdi, rcx
mov rcx, rbx
mov r15d, r9d
mov dword [rsp + 0x3c], r9d
mov qword [rsp + 0x48], r8
mov rsi, rdx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x34], 1
mov ebp, eax
call fcn.1400c6d30
mov dword [rsp + 0x38], eax
test eax, eax
jg 0x14022df43
xor eax, eax
jmp 0x14022e21a
movsxd rcx, eax
xor edx, edx
mov qword [rsp + 0xa8], r14
mov r14, qword [rsp + 0x128]
mov rax, r14
div rcx
mov ecx, 0xffffffff
cmp rax, rcx
jb 0x14022df9b
call fcn.1400baf40
lea r8, str.pbkdf2_derive
lea rcx, str.providersimplementationskdfspbkdf2.c
mov edx, 0x127
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x69]
lea ecx, [rdx - 0x30]
call fcn.1400bb200
xor eax, eax
jmp 0x14022e212
mov qword [rsp + 0xb0], r13
mov r13, qword [rsp + 0x110]
cmp dword [rsp + 0x130], ebp
je 0x14022e06f
lea rax, [r14*8]
cmp rax, 0x70
jae 0x14022dffa
call fcn.1400baf40
lea r8, str.pbkdf2_derive
lea rcx, str.providersimplementationskdfspbkdf2.c
mov edx, 0x12d
call fcn.1400bafb0
mov edx, 0xab
xor r8d, r8d
lea ecx, [rdx - 0x72]
call fcn.1400bb200
xor eax, eax
jmp 0x14022e20a
cmp r15d, 0x10
jge 0x14022e033
call fcn.1400baf40
lea r8, str.pbkdf2_derive
lea rcx, str.providersimplementationskdfspbkdf2.c
mov edx, 0x131
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x70]
lea ecx, [rdx - 0x37]
call fcn.1400bb200
xor eax, eax
jmp 0x14022e20a
cmp r13, 0x3e8
jae 0x14022e06f
call fcn.1400baf40
lea r8, str.pbkdf2_derive
lea rcx, str.providersimplementationskdfspbkdf2.c
mov edx, 0x135
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x7b]
lea ecx, [rdx - 0x42]
call fcn.1400bb200
xor eax, eax
jmp 0x14022e20a
call fcn.140152d40
mov r15, rax
test rax, rax
je 0x14022e068
mov r9, rbx
mov r8d, esi
mov rdx, rdi
mov rcx, rax
mov qword [rsp + 0x20], rbp
call fcn.140152770
test eax, eax
je 0x14022e1f6
call fcn.140152d40
mov rbp, rax
test rax, rax
je 0x14022e1f6
test r14d, r14d
je 0x14022e1ee
mov ecx, dword [rsp + 0x34]
nop dword [rax + rax]
mov eax, dword [rsp + 0x38]
mov byte [rsp + 0x33], cl
mov esi, r14d
cmp r14d, eax
mov rdx, r15
cmovg esi, eax
mov eax, ecx
shr eax, 0x18
mov byte [rsp + 0x30], al
mov eax, ecx
shr eax, 0x10
mov byte [rsp + 0x31], al
mov eax, ecx
mov rcx, rbp
shr eax, 8
mov byte [rsp + 0x32], al
call fcn.140152c50
test eax, eax
je 0x14022e1f6
movsxd r8, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x48]
mov rcx, rbp
call fcn.1401529e0
test eax, eax
je 0x14022e1f6
lea rdx, [rsp + 0x30]
mov r8d, 4
mov rcx, rbp
call fcn.1401529e0
test eax, eax
je 0x14022e1f6
lea rdx, [rsp + 0x50]
xor r8d, r8d
mov rcx, rbp
call fcn.140152a10
test eax, eax
je 0x14022e1f6
movsxd rdi, esi
lea rdx, [rsp + 0x50]
mov rcx, r12
mov r8, rdi
call fcn.140255100
mov ebx, 1
cmp rbx, r13
jae 0x14022e1d8
nop dword [rax]
mov rdx, r15
mov rcx, rbp
call fcn.140152c50
test eax, eax
je 0x14022e1f6
movsxd r8, dword [rsp + 0x38]
lea rdx, [rsp + 0x50]
mov rcx, rbp
call fcn.1401529e0
test eax, eax
je 0x14022e1f6
lea rdx, [rsp + 0x50]
xor r8d, r8d
mov rcx, rbp
call fcn.140152a10
test eax, eax
je 0x14022e1f6
test esi, esi
jle 0x14022e1d0
lea r8, [rsp + 0x50]
mov rcx, r12
mov rdx, rdi
sub r8, r12
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
xor byte [rcx - 1], al
dec rdx
jne 0x14022e1c0
inc rbx
cmp rbx, r13
jb 0x14022e170
mov ecx, dword [rsp + 0x34]
add r12, rdi
inc ecx
sub r14d, esi
mov dword [rsp + 0x34], ecx
jne 0x14022e0c0
mov dword [rsp + 0x40], 1
mov rcx, rbp
call fcn.140152af0
mov rcx, r15
call fcn.140152af0
mov eax, dword [rsp + 0x40]
mov r13, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140254fb0
add rsp, 0xb8
pop r15
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret