Function at 0x14004cb90
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
sub rsp, 0x1c8
mov rax, qword [0x1401a1e90]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov ecx, dword [0x1401a9d80]
mov r9d, 1
xor r10d, r10d
lea eax, [rcx + 1]
lea r8d, [rcx + 2]
imul r8d, eax
mov eax, 0x92492493
imul r8d, ecx
imul r8d
add edx, r8d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xe
sub r8d, edx
cmp r8d, r9d
jne 0x14004cccf
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov qword [r11 - 8], rdi
mov qword [r11 - 0x10], r12
mov eax, ecx
cdq
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
sub eax, edx
mov qword [r11 - 0x28], r15
mov edi, r10d
sar eax, 1
mov dword [rsp], r10d
lea rbx, [rsp + 0x41]
mov dword [rsp + 0xc], eax
mov eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [rsp + 4], eax
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [rsp + 0x10], eax
mov eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [rsp + 8], eax
nop word [rax + rax]
movzx r11d, cl
mov esi, r9d
mov ebp, 4
sub r11b, dil
nop
inc esi
add rbx, 9
dec rbp
jne 0x14004cc70
mov edi, dword [rsp]
lea r9d, [rbp + 1]
inc edi
mov dword [rsp], edi
cmp edi, 9
jl 0x14004cc60
mov r15, qword [rsp + 0x1a0]
mov r14, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov r12, qword [rsp + 0x1b8]
mov rdi, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1e0]
mov rbp, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x1d0]
xor r10d, r10d
mov r8d, ecx
mov eax, 0x2aaaaaab
imul r8d, ecx
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
cmp r8d, 0xa
jne 0x14004cd94
mov r8d, r10d
nop
mov edx, r8d
mov eax, r8d
inc r8d
sar eax, 1
and edx, 1
dec edx
not edx
and edx, ecx
xor edx, eax
mov eax, edx
sar edx, 1
and eax, 1
dec eax
not eax
and eax, ecx
xor eax, edx
mov edx, eax
sar eax, 1
and edx, 1
dec edx
not edx
and edx, ecx
xor edx, eax
mov eax, edx
sar edx, 1
and eax, 1
dec eax
not eax
and eax, ecx
xor eax, edx
mov edx, eax
sar eax, 1
and edx, 1
dec edx
not edx
and edx, ecx
xor edx, eax
mov eax, edx
sar edx, 1
and eax, 1
dec eax
not eax
and eax, ecx
xor eax, edx
mov edx, eax
sar eax, 1
and edx, 1
dec edx
not edx
and edx, ecx
xor edx, eax
mov eax, edx
sar edx, 1
and eax, 1
dec eax
not eax
and eax, ecx
xor eax, edx
add ecx, eax
cmp r8d, 0x100
jl 0x14004cd00
mov dword [0x1401a9d80], ecx
cmp byte [0x1401aa994], 0
je 0x14004cdbc
lea rax, [0x1401a54f8]
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.1400c2810
add rsp, 0x1c8
ret
mov dword [rsp + 0x18], 0x19003b
mov dword [rsp + 0x1c], 0x80000
mov dword [rsp + 0x20], 0x2003d
mov dword [rsp + 0x24], 0xd
mov dword [rsp + 0x28], 0x10000c
mov dword [rsp + 0x2c], 0x430001
mov dword [rsp + 0x30], 0x10014
mov dword [rsp + 0x34], 0x17001e
mov word [rsp + 0x38], r10w
lea rdx, [0x1401a54f8]
lea r8, [0x1401a4d91]
movzx eax, byte [r10 + r8 - 1]
movzx ecx, word [rsp + r10*2 + 0x1a]
add r10, 4
xor ax, word [rsp + r10*2 + 0x10]
mov word [rdx + r10*2 - 8], ax
movzx eax, byte [r10 + r8 - 4]
xor cx, ax
mov word [rdx + r10*2 - 6], cx
movzx ecx, byte [r10 + r8 - 3]
xor cx, word [rsp + r10*2 + 0x14]
mov word [rdx + r10*2 - 4], cx
movzx ecx, byte [r10 + r8 - 2]
xor cx, word [rsp + r10*2 + 0x16]
mov word [rdx + r10*2 - 2], cx
cmp r10, 0x10
jl 0x14004ce10
mov byte [0x1401aa994], 1
mov rax, rdx
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.1400c2810
add rsp, 0x1c8
ret