Function at 0x1404aa7af
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, rbp
mov qword [rsp + 0x10], rbp
xchg rbx, rbp
mov qword [rsp + 0x18], rdi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x30]
add rsp, 0xfffffffffffffed0
mov ecx, 0x6459551e
sub ecx, 0xa818302
xor ecx, 0x580bcfb7
add ecx, 0x5c5dc47a
sub ecx, 0x5e39e16d
mov dword [rsp + 0x68], 0x4a45b315
sub dword [rsp + 0x68], 0x28f89eb2
xor dword [rsp + 0x68], 0x60b04437
sub dword [rsp + 0x68], 0x41984f9a
xor r15d, r15d
mov dword [rsp - 0x18], 0xcf28e56
mov word [rsp + 0x78], cx
mov dword [rsp + 0x6c], 0x441fcd1b
sub dword [rsp + 0x6c], 0x3e894bf6
add dword [rsp + 0x6c], 0x71cb3644
xor dword [rsp + 0x6c], 0x584c64fb
xor dword [rsp + 0x6c], 0x2f48d3f2
xchg r14, r8
mov r8, r14
xchg r8, r14
mov dword [rsp + 0x70], 0x76dcca5d
xor dword [rsp + 0x70], 0x16af9ce1
sub dword [rsp + 0x70], 0x1064f230
add dword [rsp + 0x70], 0x105f848
sub dword [rsp + 0x70], 0x50d55c1c
mov rbx, rdx
mov dword [rsp + 0x74], 0x497e12d4
sub dword [rsp + 0x74], 0x2d68ef2b
xor dword [rsp + 0x74], 0x35980a12
sub dword [rsp + 0x74], 0xbc077ab
sub dword [rsp + 0x74], 0x1d67b1b0
xchg r15, rsi
mov qword [rsp + 0x30], rsi
xchg r15, rsi
mov rax, qword [rsp + 0x30]
xchg r13, r13
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
mov dword [rsp - 0x34], 0x5186d25f
and cl, 3
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x68]
mov dword [rsp - 0x10], 0x2408bf8e
mov eax, 0x40d9bda6
xor eax, 0x6f74ed31
xor eax, 0x65a55662
sub eax, 0x2810d1d4
xor eax, 0x28f324f5
shr eax, cl
movzx ecx, al
xchg r13, rax
mov r13, qword [rsp + 0x30]
xchg r13, rax
xor cx, dx
xchg rdx, rdx
mov word [rbp + rax*2 - 0x40], cx
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov dword [rsp - 0x2c], esi
mov rax, qword [rsp + 0x30]
cmp rax, 9
jb 0x1404aa5c5
mov r12, r12
lea r9, [rbp - 0x60]
mov word [rbp - 0x2e], r15w
lea r8, [rbp - 0x50]
xchg rcx, r10
mov r10, rbx
xchg r10, rcx
lea rdx, [rbp - 0x40]
call fcn.1404ae0b0
mov dword [rsp - 0x38], 0x677b4b6e
mov edx, eax
lea rdi, [rbp - 0x40]
xor eax, eax
mov ecx, 0x1d1b8492
add ecx, 0x36c41baa
xor ecx, 0x1b2aa886
add ecx, 0x1fbe635a
sub ecx, 0x68b36c0b
rep stosb byte [rdi], al
test edx, edx
mov rcx, rcx
jns 0x1404aa6a1
mov eax, edx
jmp 0x1404aaca6
movdqa xmm0, xmmword [0x14000c7d0]
mov dword [rsp - 0x2c], 0x29407904
xchg rbp, rdx
movdqu xmmword [rdx - 0x78], xmm0
xchg rbp, rdx
mov dword [rbp - 0x68], 0x42b55960
xor dword [rbp - 0x68], 0xd8b4daf
xor dword [rbp - 0x68], 0x17c4f1b8
add dword [rbp - 0x68], 0xf59983e
mov word [rbp - 0x64], 0x6531
sub word [rbp - 0x64], 0x4967
sub word [rbp - 0x64], 0xba
xor word [rbp - 0x64], 0x20e9
xor word [rbp - 0x64], 0x4f4a
mov byte [rbp - 0x62], 0x30
add byte [rbp - 0x62], 9
add byte [rbp - 0x62], 0x38
sub byte [rbp - 0x62], 0x26
add byte [rbp - 0x62], 0x2c
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov dword [rsp - 0x24], ebp
xchg r13, rsi
mov qword [rsp + 0x150], r13
xchg rsi, r13
nop word [rax + rax]
mov dword [rsp - 0x30], 0x5036317b
xchg rcx, r10
mov r10, qword [rsp + 0x30]
xchg r10, rcx
mov edx, 0x4aaf314f
sub edx, 0x38d6382c
sub edx, 0xda17e47
add edx, 0x5b8f3adc
sub edx, 0x56c2a3e4
mov rax, qword [rsp + 0x30]
and cl, 3
mov r11, r11
shl cl, 2
shl cl, 1
shr edx, cl
xor dl, byte [rbp + rax - 0x78]
mov rsp, rsp
mov rax, qword [rsp + 0x30]
mov byte [rbp + rax - 0x2c], dl
mov rax, qword [rsp + 0x30]
mov dword [rsp - 0x30], 0xd4ecc9e
inc rax
xchg r13, rax
mov qword [rsp + 0x30], r13
xchg r13, rax
xchg r11, rax
mov r11, qword [rsp + 0x30]
xchg r11, rax
cmp rax, 0x17
mov dword [rsp - 0x44], 0x69444d9c
jb 0x1404aa737
mov rdx, qword [rbp - 0x60]
lea r8, [rbp - 0x2c]
xchg rcx, rcx
xchg r12, rbx
mov rcx, r12
xchg r12, rbx
mov byte [rbp - 0x15], r15b
mov rbx, rbx
call fcn.140096d70
xchg rsi, r15
mov r15, rax
xchg r15, rsi
lea rdi, [rbp - 0x2c]
xor eax, eax
mov dword [rsp - 0x2c], edi
mov ecx, 0x2f1b3199
sub ecx, 0x5e7c01b
xor ecx, 0x3bdcbe2e
add ecx, 0x2a47c2d1
sub ecx, 0x3d37920a
rep stosb byte [rdi], al
xchg r14, r14
test rsi, rsi
jne 0x1404aa831
mov eax, 0x11b2d28c
add eax, 0x63367c04
xor eax, 0x5ff2c1dc
sub eax, 0x204db76a
add eax, 0xb5322898
jmp 0x1404aac9e
mov dword [rsp + 0x28], 0x6299c443
sub dword [rsp + 0x28], 0x58fc7a98
add dword [rsp + 0x28], 0xb72f47c
sub dword [rsp + 0x28], 0x15103de7
lea r9, [rbp - 0x80]
xor r8d, r8d
mov rbp, rbp
mov dword [rsp + 0x20], 0x6949a781
sub dword [rsp + 0x20], 0x5fc701f3
xor dword [rsp + 0x20], 0x2ea0cfb
xor dword [rsp + 0x20], 0x2c436e86
xor dword [rsp + 0x20], 0x272bf7f3
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x60], r15
mov dword [rsp - 0x2c], ebp
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
mov qword [rbp - 0x80], 0x6f77289
xor qword [rbp - 0x80], 0x47cb4f32
xor qword [rbp - 0x80], 0x3a43c2eb
sub qword [rbp - 0x80], 0x25fce8c
xor qword [rbp - 0x80], 0x792030d4
call fcn.140090d20
mov rcx, rcx
mov dword [rbp + 0x68], eax
test eax, eax
js 0x1404aac9e
shr r14, 5
shr r14, 1
shr r14, 6
xchg r14, r15
mov rdx, r14
xchg r14, r15
mov qword [rbp - 0x48], r14
xchg r11, rsi
mov qword [rbp - 0x50], r11
xchg rsi, r11
mov dword [rsp + 0x38], 0x7eb399a8
sub dword [rsp + 0x38], 0x6d1ded25
add dword [rsp + 0x38], 0x122e1e60
xor dword [rsp + 0x38], 0x7b175525
mov dword [rsp + 0x3c], 0x11da539a
sub dword [rsp + 0x3c], 0xf347c78
add dword [rsp + 0x3c], 0x32b8f7d2
add dword [rsp + 0x3c], 0x1a217cb4
mov dword [rsp + 0x40], 0x54c19572
sub dword [rsp + 0x40], 0x459d358c
add dword [rsp + 0x40], 0x14871ddf
add dword [rsp + 0x40], 0x4ec65a08
sub dword [rsp + 0x40], 0x25d8843
mov dword [rsp + 0x44], 0x18206c3
add dword [rsp + 0x44], 0x1b9b4d4f
add dword [rsp + 0x44], 0x3f1797d
add dword [rsp + 0x44], 0xa5295d63
mov dword [rsp + 0x48], 0x6e5368f2
xor dword [rsp + 0x48], 0x1a924563
xor dword [rsp + 0x48], 0x27b9afd4
xor dword [rsp + 0x48], 0x518ae7c9
xor dword [rsp + 0x48], 0xd2a61957
mov dword [rsp + 0x4c], 0x2c8a78f7
add dword [rsp + 0x4c], 0x4ea29653
sub dword [rsp + 0x4c], 0x5154e767
add dword [rsp + 0x4c], 0x1d85d183
sub dword [rsp + 0x4c], 0x3f5976a6
mov dword [rsp + 0x50], 0x1f031ac6
add dword [rsp + 0x50], 0x4e53bba
add dword [rsp + 0x50], 0xb550083
add dword [rsp + 0x50], 0x78d55756
mov dword [rsp + 0x54], 0x2c56ac71
sub dword [rsp + 0x54], 0x244c4966
sub dword [rsp + 0x54], 0x163ec3a
add dword [rsp + 0x54], 0x48ea1298
xor dword [rsp + 0x54], 0xc0234741
mov dword [rsp + 0x58], 0x1e507fd4
xor dword [rsp + 0x58], 0x5ecddeb6
xor dword [rsp + 0x58], 0x1b54828e
add dword [rsp + 0x58], 0x5747b421
mov ecx, edx
mov eax, 0x5eddbb7c
xor eax, 0x53a279bf
add eax, 0x4062c4d4
add eax, 0xeb16515
sub eax, 0x5577db1e
rol eax, cl
xchg rdx, rdx
xor al, byte [rsp + rdx + 0x38]
mov byte [rbp + rdx - 0x10], al
inc rdx
mov dword [rsp - 0x44], esp
cmp rdx, 0x24
jb 0x1404aaa37
xchg rbp, rsp
movups xmm0, xmmword [rsp - 0x50]
xchg rsp, rbp
xchg r10, rdx
mov r10, qword [rsp + 0x60]
xchg r10, rdx
lea r8, [rbp - 0x10]
mov r9d, 0x386ee621
add r9d, 0x248b096c
sub r9d, 0x4e5de003
add r9d, 0xacd6d
sub r9d, 0xea6dcb7
xchg r15, r9
mov qword [rsp + 0x20], r9
xchg r9, r15
xchg rsi, rbx
mov rcx, rsi
xchg rbx, rsi
xchg rbp, r15
movaps xmmword [r15 + 0x20], xmm0
xchg rbp, r15
call fcn.140090fa0
mov dword [rbp + 0x68], eax
xchg r12, r12
test eax, eax
js 0x1404aac4b
mov rdx, qword [rsp + 0x60]
mov rdi, rdi
mov rcx, rbx
lea r8, [rdx + 0x30]
call fcn.14009ce40
xchg rdx, rsi
mov rdx, rax
xchg rsi, rdx
test rax, rax
mov rdx, rdx
je 0x1404aac28
xor r8d, r8d
xor edx, edx
mov dword [rsp - 0x20], 0x212b728a
xchg rsp, rax
mov rcx, rsp
xchg rsp, rax
call fcn.140090f80
mov dword [rbp + 0x68], eax
test eax, eax
mov dword [rsp - 0x1c], 0x57b41c01
js 0x1404aac4b
mov rdi, qword [0x1404e2560]
lea rdx, [rbp + 0x68]
not rdi
mov dword [rsp - 0x44], 0x68398d0f
movabs rax, 0x5b50fadc3363b558
xor rax, 0x6a7afd5f
sub rax, 0x53618a9c
xor rax, 0x751b8f0d
add rax, 0x7fffffff
sub rax, 0x6ecdaec5
xor rdi, rax
mov dword [rsp - 0x34], 0x78b43a5e
xchg rsi, rcx
mov rsi, rcx
xchg rsi, rcx
rol rdi, 1
rol rdi, 7
rol rdi, 3
rol rdi, 2
rol rdi, 4
rol rdi, 1
rol rdi, 1
movabs rax, 0x22bb37b19aa0a55
xor rax, 0x1b636c00
add rax, 0x5b62dc81
sub rax, 0x39480829
xor rdi, rax
movabs rax, 0x20e98bd4777c40a7
xor rax, 0x44c6b2d2
add rax, 0x29ce7433
sub rax, 0x3c3fd9b3
sub rax, 0x1a79e1c1
add rdi, rax
not rdi
ror rdi, 0x2a
ror rdi, 4
ror rdi, 1
ror rdi, 1
call rdi
test eax, eax
jne 0x1404aac4b
mov r10, r10
mov dword [rbp + 0x68], 0x775a143
sub dword [rbp + 0x68], 0x1fdf296
add dword [rbp + 0x68], 0x1cfe5177
sub dword [rbp + 0x68], 0x1b4fa4ce
add dword [rbp + 0x68], 0xb8d9a4ab
jmp 0x1404aac4b
mov dword [rbp + 0x68], 0x3918253f
xor dword [rbp + 0x68], 0x232471b7
xor dword [rbp + 0x68], 0x423223f7
sub dword [rbp + 0x68], 0x4455449e
xor dword [rbp + 0x68], 0xd3b935fd
xchg r11, rax
mov r11, qword [rsp + 0x60]
xchg r11, rax
lea r8, [rbp - 0x80]
mov r9d, 0x51915e2
xor r9d, 0xdac63ff
add r9d, 0x1a3779a
add r9d, 0x34f9ff7
xor r9d, 0xda80dae
mov qword [rbp - 0x58], rax
lea rdx, [rbp - 0x58]
mov qword [rbp - 0x80], r15
mov dword [rsp - 0x2c], ecx
xchg rbp, rcx
mov rbp, rbx
xchg rcx, rbp
call fcn.140090dd0
mov r12, r12
mov eax, dword [rbp + 0x68]
mov rsi, qword [rsp + 0x150]
lea r11, [rsp + 0x130]
xchg r8, rbx
mov r8, qword [r11 + 0x28]
xchg rbx, r8
xchg rdx, rdi
mov rdx, qword [r11 + 0x30]
xchg rdx, rdi
xchg r11, rcx
mov rsp, rcx
xchg r11, rcx
nop
add rsp, 8
mov r15, qword [rsp - 8]
pop r14
pop rbp
mov r15, r15
ret