Function at 0x14025f930
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1403ceac0]
xor rax, rsp
mov qword [rbp - 8], rax
mov r15, rcx
mov qword [rbp - 0x28], rcx
call fcn.1400d06ec
nop
lea rdi, [r15 + 0x80]
xor r12d, r12d
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r12
lea rbx, [r15 + 0x98]
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x10]
xor edx, edx
lea r14, [0x1403e1420]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x14025fc2d
cmp dword [rbp - 0x10], r12d
je 0x14025f9ea
mov qword [rbp - 0x38], r14
mov dword [rbp - 0x30], 4
call fcn.14002ad80
mov esi, eax
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x14025fc2d
test esi, esi
jne 0x14025fc0c
mov byte [rsp + 0x20], 1
lea r9, [rbp - 0x20]
lea r8, [rbp - 0x18]
mov edx, 1
mov rcx, r15
call fcn.1400d0770
test eax, eax
jne 0x14025fc0c
mov r14, qword [rdi + 8]
mov rdx, qword [rdi]
mov rcx, r14
sub rcx, rdx
mov rsi, qword [rbp - 0x18]
cmp rsi, rcx
jae 0x14025fa2c
lea rax, [rdx + rsi]
mov qword [rdi + 8], rax
jmp 0x14025fa64
jbe 0x14025fa64
mov rax, qword [rdi + 0x10]
sub rax, rdx
cmp rsi, rax
jbe 0x14025fa4b
lea r8, [rbp - 0x40]
mov rdx, rsi
mov rcx, rdi
call fcn.14009f980
jmp 0x14025fa64
sub rsi, rcx
je 0x14025fa60
mov r8, rsi
xor edx, edx
mov rcx, r14
call fcn.1402b60e0
add r14, rsi
mov qword [rdi + 8], r14
mov r14, qword [rbx + 8]
mov rdx, qword [rbx]
mov rcx, r14
sub rcx, rdx
mov rsi, qword [rbp - 0x20]
cmp rsi, rcx
jae 0x14025fa84
lea rax, [rdx + rsi]
mov qword [rbx + 8], rax
jmp 0x14025fabc
jbe 0x14025fabc
mov rax, qword [rbx + 0x10]
sub rax, rdx
cmp rsi, rax
jbe 0x14025faa3
lea r8, [rbp - 0x40]
mov rdx, rsi
mov rcx, rbx
call fcn.14009f980
jmp 0x14025fabc
sub rsi, rcx
je 0x14025fab8
mov r8, rsi
xor edx, edx
mov rcx, r14
call fcn.1402b60e0
add r14, rsi
mov qword [rbx + 8], r14
mov rcx, qword [rdi + 8]
mov rdx, qword [rdi]
mov r9, rcx
sub r9, rdx
cmp r9, 0x80
ja 0x14025fc33
mov rax, rcx
sub rax, rdx
cmp r9, rax
jae 0x14025fae5
mov qword [rdi + 8], rcx
mov r10, r12
test r9, r9
je 0x14025fb23
lea rsi, [0x140334260]
mov r11d, 6
sub r11, rsi
nop dword [rax]
lea r8, [r10 + rsi]
lea rax, [r8 + r11]
xor edx, edx
div r9
movzx ecx, byte [rdx + rsi]
xor cl, byte [r8]
mov rax, qword [rdi]
mov byte [r10 + rax], cl
inc r10
cmp r10, r9
jb 0x14025fb00
mov rcx, qword [rbx + 8]
mov rdx, qword [rbx]
mov r9, rcx
sub r9, rdx
cmp r9, 0x80
ja 0x14025fc54
mov rax, rcx
sub rax, rdx
cmp r9, rax
jae 0x14025fb4c
mov qword [rbx + 8], rcx
mov r10, r12
test r9, r9
je 0x14025fb93
lea rsi, [0x140334300]
mov r11d, 0x63
sub r11, rsi
nop dword [rax]
nop dword [rax + rax]
lea r8, [r10 + rsi]
lea rax, [r8 + r11]
xor edx, edx
div r9
movzx ecx, byte [rdx + rsi]
xor cl, byte [r8]
mov rax, qword [rbx]
mov byte [r10 + rax], cl
inc r10
cmp r10, r9
jb 0x14025fb70
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], r12
lea rdx, [rbp - 0x20]
mov rcx, r15
call fcn.1400d0c9c
test eax, eax
jne 0x14025fbe4
lea rdx, [rbp - 0x18]
mov rcx, r15
call fcn.1400d0d00
test eax, eax
jne 0x14025fbe4
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rdx
cmp qword [rbp - 0x20], rax
jne 0x14025fbe4
mov r8, qword [rbx]
mov rcx, qword [rbx + 8]
sub rcx, r8
cmp qword [rbp - 0x18], rcx
jne 0x14025fbe4
mov rcx, r15
call fcn.1400d0e48
nop
mov rax, r15
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140296f70
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
lea rdx, str.Failed_to_initialize_McCryptoLib
lea rcx, [rbp - 0x38]
call fcn.140091510
lea rdx, [0x1403c6868]
lea rcx, [rbp - 0x38]
call fcn.1402b5304
int3
call fcn.1402c7950
int3
lea rdx, str.Requested_key_is_too_big
lea rcx, [rbp - 0x38]
call fcn.140091510
lea rdx, [0x1403c6868]
lea rcx, [rbp - 0x38]
call fcn.1402b5304
int3
lea rdx, str.Requested_initialization_vector_is_too_big
lea rcx, [rbp - 0x38]
call fcn.140091510
lea rdx, [0x1403c6868]
lea rcx, [rbp - 0x38]
call fcn.1402b5304
int3