Function at 0x2025cac0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov qword [rbp - 8], 0xfffffffffffffffe
mov rdi, rdx
mov rsi, rcx
xor eax, eax
test al, al
jne 0x2025cb00
mov eax, dword [0x205b4bf0]
mov ecx, dword [0x205684d0]
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
je 0x2025cb0d
nop dword [rax + rax]
mov eax, dword [0x205b4bf4]
cmp eax, 0x48
jge 0x2025cb00
jmp 0x2025cae3
test rdi, rdi
je 0x2025cb5c
lea rbx, [rbp - 0x28]
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], 0
mov rcx, rdi
mov edx, 0xc4b92a84
mov r8d, 0x90c49c0b
call fcn.2008e090
mov r14, rax
cmp rax, 7
jbe 0x2025cb73
mov eax, dword [0x205b4bf4]
cmp eax, 0xe
jg 0x2025cc50
jmp 0x2025cc2c
mov rax, qword [0x205b4c08]
add rax, qword [rsi + 0x20]
cmp rax, 0x10
jb 0x2025cb86
mov rax, qword [rsi + 8]
jmp 0x2025cb8a
mov eax, dword [0x205b4bf0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x2025cbe3
jmp 0x2025cbb0
lea rax, [rsi + 8]
movabs rcx, 0xb30d86c2e49c205d
add rcx, qword [0x205684c8]
mov qword [rsi + 0x18], rcx
movzx ecx, byte [0x205684d4]
add cl, 0xe2
mov byte [rax], cl
jmp 0x2025cd90
mov qword [rbp - 0x18], r14
lea r8, [r14 + r14]
mov rcx, rbx
mov rdx, rdi
call fcn.2044f800
mov eax, 0xffff9d86
add eax, dword [0x205684d8]
mov word [rbp + r14*2 - 0x28], ax
mov eax, dword [0x205b4bf4]
cmp eax, 0x2f
jl 0x2025cc7d
mov qword [rbp - 0x18], r14
lea eax, [r14 + r14]
neg eax
mov ecx, r14d
xor ecx, eax
and eax, r14d
lea ecx, [rcx + rax*2]
neg cl
mov rax, r14
shl rax, cl
mov ecx, r14d
sub ecx, eax
imul ecx, eax
mov r8, r14
shl r8, cl
mov rcx, rbx
mov rdx, rdi
call fcn.2044f800
mov eax, 0xffff9d86
add eax, dword [0x205684d8]
mov word [rbp + r14*2 - 0x28], ax
jmp 0x2025cbb0
mov rcx, rbx
mov rdx, r14
mov r9, rdi
call fcn.20073c50
mov eax, dword [0x205b4bf4]
cmp eax, 0x28
jl 0x2025cc7d
nop word cs:[rax + rax]
mov rcx, rbx
mov rdx, r14
mov r9, rdi
call fcn.20073c50
mov eax, dword [0x205b4bf0]
mov ecx, dword [0x205684d0]
add ecx, eax
mov edx, 0x2518bf39
sub edx, ecx
imul edx, eax
test dl, 1
jne 0x2025cc50
jmp 0x2025cc2c
mov eax, 0x84b2eeca
add eax, dword [0x205684d0]
lea rcx, [fcn.2025cac0]
lea edx, [rcx + rcx]
add edx, 0x1e0
mov r8d, edx
not r8d
and edx, r8d
add ecx, ecx
add ecx, 0x1e1
and r8d, 0xfffffffe
xor r8d, ecx
or r8d, edx
not r8d
cmp r8d, eax
jne 0x2025ccd1
lea rax, [0x2046c6b0]
mov qword [rbp - 0x30], rax
mov eax, dword [0x205b4bf4]
cmp eax, 0x41
jl 0x2025ccf1
lea rax, [0x2046c6b0]
nop dword [rax + rax]
mov qword [rbp - 0x30], rax
mov ecx, dword [0x205b4bf4]
cmp ecx, 0x3e
jge 0x2025cce0
jmp 0x2025ccbb
lea rdx, [rbp - 0x30]
mov rcx, rsi
call fcn.2025b580
mov rsi, rax
mov rax, qword [rbp - 0x10]
cmp rax, 8
jb 0x2025cd90
movzx ecx, byte [0x205684c8]
add cl, 0x5e
shl rax, cl
mov r8, qword [rbp - 0x28]
lea r9, [rax + 2]
cmp r9, 0x1000
jb 0x2025cd66
mov ecx, dword [0x205b4bf0]
lea edx, [rcx + 1]
imul edx, ecx
test dl, 1
nop dword [rax + rax]
mov rcx, qword [r8 - 8]
mov edx, dword [0x205b4bf4]
cmp edx, 0x24
jg 0x2025cd40
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x20
jae 0x2025cdbf
add rax, 0x29
mov r9, rax
mov r8, rcx
mov dword [rsp + 0x28], 0x486192a8
mov dword [rsp + 0x20], 0x7ebd8384
xor ecx, ecx
mov edx, 1
call fcn.20100da0
nop word cs:[rax + rax]
mov eax, dword [0x205b4bf4]
mov ecx, dword [0x205684d0]
mov edx, ecx
xor edx, 0x84b2eef8
and ecx, 0x4b2eef8
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jge 0x2025cd90
mov rax, rsi
add rsp, 0x60
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
call fcn.20407a4c
int3