Function at 0x1401ae060
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x38
mov qword [rsp + 0x28], rcx
call fcn.1401ad2c2
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x30], rax
call fcn.1401ad2e0
test al, 1
jne 0x1401ae08a
jmp 0x1401ae233
mov rcx, qword [rsp + 0x28]
call fcn.1401ad030
mov rax, qword [rsp + 0x30]
cmp byte [rax], 0
jne 0x1401ae233
mov eax, dword [0x1401fd458]
mov ecx, dword [0x1401fd45c]
mov edx, 0xd7e8c6a
xor edx, 0x17648a87
add eax, edx
sub eax, ecx
mov ecx, 0xa98d2d8a
xor ecx, 0xb3972b67
sub eax, ecx
mov ecx, 0xd735422c
xor ecx, 0xd735422c
mov edx, 0x9960f7f1
xor edx, 0x9be4a19b
sub ecx, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xb70a5a88
add eax, ecx
mov ecx, 0x14da93e1
xor ecx, 0x14da93e0
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x683b5b8c
add eax, ecx
add eax, 1
mov ecx, 0x6c7d209
xor ecx, 0xf3546c73
cmp eax, ecx
ja 0x1401ae335
mov rcx, qword [rsp + 0x28]
mov edx, dword [0x1401fd460]
xor edx, 0x837a5b37
mov r9d, dword [0x1401fd464]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, edx
and eax, eax
xor eax, 0xffffffff
mov r8d, 0x4b4373fe
xor r8d, 0xb4bc8c01
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x45341fe5
or eax, r8d
mov r8d, 0x45341fe5
and r8d, 0x45341fe5
xor r8d, 0xffffffff
and edx, r8d
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
mov r8d, 0x9c3a7d26
xor r8d, 0x6a62d263
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
or eax, 0xf658af45
and eax, edx
mov r9d, 0xffffffff
xor r9d, 0x3200fe54
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x3200fe54
mov r9d, 0x680e47b9
xor r9d, 0x5a0eb9ed
or eax, r9d
imul eax, r8d
add eax, edx
mov dword [rsp + 0x24], eax
movabs rdx, 0xe095852b9fce636b
movabs rax, 0xe095852b9fce6363
xor rdx, rax
call fcn.140011370
mov eax, dword [rsp + 0x24]
cmp eax, 0x1b6d6ccb
jbe 0x1401ae335
jmp 0x1401ae233
mov eax, dword [0x1401fd468]
imul eax, dword [0x1401fd46c]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xd2cb9133
xor edx, 0xb16af7ac
mov r8d, 0x3e6f9566
xor r8d, 0x5dcef3f9
or edx, r8d
mov r8d, 0x174d04d4
xor r8d, 0xe8b2fb2b
xor edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, 0x63a1669f
mov edx, 0x838c6d50
xor edx, 0x7c7392af
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0xf026edd3
xor edx, 0xfd9122c
xor eax, edx
and ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x3577977f
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xeb7b6a32
mov edx, 0x8841cefa
xor edx, 0x633aa4c8
mov r8d, 0xb6b63f36
xor r8d, 0x4949c0c9
xor edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0xa5b7f94f
jbe 0x1401ae33e
mov ecx, dword [0x1401fd470]
xor ecx, 0x95e6e6c3
mov edx, dword [0x1401fd474]
mov eax, 0x50ea3253
xor eax, 0xaf15cdac
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x526c8ee
xor ecx, 0x8796f3ee
sub eax, ecx
sub eax, 0xa5b6b0c
mov ecx, 0xd1b52a96
xor ecx, 0x8302ca9a
or eax, ecx
cmp eax, 0x6f010fa1
je 0x1401ae2e2
add rsp, 0x38
ret
mov eax, edi
adc edi, dword [rcx - 0x17]
jrcxz 0x1401ae339
jmp 0x1401ae121
invalid
insb byte [rdi], dx
pop rdx
rcl ebp, 1
jmp 0x1401ae2e2