Function at 0x14002aaae
Capabilities:
Encode data using xor

Disassembly:
xchg rsp, rdi
mov rax, rdi
xchg rdi, rsp
xchg rsi, r8
mov qword [rax + 0x18], rsi
xchg rsi, r8
mov qword [rax + 8], rcx
mov dword [rsp - 0x24], 0x6b7ee276
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
mov qword [rsp - 8], r13
sub rsp, 8
lea rbp, [rax - 0x1e8]
mov rsi, rsi
sub rsp, 0x2c0
mov qword [rax + 0x20], rbx
xchg rsi, r13
mov r13, rdx
xchg r13, rsi
xchg r14, r13
mov qword [rax - 0x30], r13
xchg r13, r14
xchg r15, rcx
mov rbx, r15
xchg rcx, r15
lea rax, [rbp + 0x28]
xor edx, edx
mov dword [rsp - 0x30], 0x27ced321
mov r8d, 0x4b773527
sub r8d, 0x10d985f2
xor r8d, 0x9cd894d
add r8d, 0x2421e5d4
sub r8d, 0x57720b4c
xchg r15, rax
mov qword [rbp + 0x20], r15
xchg r15, rax
lea rcx, [rbp + 0x28]
xchg r11, r11
mov rdi, r9
call fcn.14004d990
nop
movabs r8, 0xffffffff1410eb5c
add r8, 0x420c7ed5
sub r8, 0x4918a364
add r8, 0x7fffffff
add r8, 0x72fb3933
inc r8
xchg r12, r12
cmp byte [rdi + r8], 0
jne 0x14002aa8e
xchg rdi, rdx
mov rdi, rdx
xchg rdx, rdi
lea rcx, [rbp + 0x20]
xchg r9, r9
call fcn.14003e6e0
mov rcx, qword [rsi + 0x78]
lea rax, [rbp + 0x20]
mov r14, qword [rbx]
mov dword [rsp - 0x38], esi
xor r13d, r13d
xchg r8, rax
mov qword [rsp + 0x28], r8
xchg r8, rax
lea rax, [0x140001508]
mov qword [rsp + 0x20], rsi
mov r12d, r13d
xchg r13, r13
mov qword [rbp + 0x1a8], 0x2300e164
xor qword [rbp + 0x1a8], 0x3e6f679e
sub qword [rbp + 0x1a8], 0xb0b6aad
xor qword [rbp + 0x1a8], 0x12641c55
xchg r12, rax
mov qword [rbp + 0x130], r12
xchg r12, rax
xchg rdx, rcx
mov qword [rbp + 0x18], rdx
xchg rcx, rdx
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rbp + 0x138], xmm0
mov dword [rsp - 0x10], esi
cmp rcx, 0x78
jbe 0x14002ab80
xchg rbx, r15
mov r15, qword [rsi]
xchg r15, rbx
mov rax, qword [rbx]
mov rdi, rdi
mov rdi, qword [rax + 0x10]
call fcn.14004d6a0
xchg rsp, rax
mov rdx, rsp
xchg rsp, rax
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
call rdi
xchg rbx, rsp
mov rsp, qword [rbp + 0x1f0]
xchg rbx, rsp
mov qword [rbp - 0x60], rax
mov dword [rsp - 0x28], ecx
jmp 0x14002aba2
test rcx, rcx
xchg r14, r14
je 0x14002aba2
mov rax, qword [rsi]
lea rdx, [rbp - 0x60]
mov r9, r9
xchg r10, rsi
mov rcx, r10
xchg r10, rsi
call qword [rax + 0x10]
lea r8, [rbp + 0x130]
xchg rbp, r14
mov rdx, rbp
xchg r14, rbp
lea rcx, [rbp - 0x60]
call fcn.140023a20
mov dword [rsp - 0x44], ebp
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
test rax, rax
jne 0x14002b121
xchg r8, r8
xchg rdx, rcx
mov rdx, qword [rsi + 0x78]
xchg rcx, rdx
mov r14, qword [rbp + 0x20]
mov qword [rsp + 0x2b0], r15
mov r11, r11
xchg r14, r15
mov r14, qword [rbx]
xchg r14, r15
mov qword [rbp + 0x18], rcx
mov rcx, rcx
cmp rcx, 0x78
jbe 0x14002ac51
xchg rbx, rdx
mov rdx, qword [rsi]
xchg rdx, rbx
mov rax, qword [rbx]
xchg r15, rdi
mov r15, qword [rax + 0x10]
xchg r15, rdi
call fcn.14004d6a0
xchg rdx, r13
mov r13, rax
xchg r13, rdx
xchg rbx, r11
mov rcx, r11
xchg r11, rbx
call rdi
mov r12, r12
xchg rcx, rbx
mov rcx, qword [rbp + 0x1f0]
xchg rcx, rbx
xchg r12, rax
mov qword [rbp - 0x60], r12
xchg r12, rax
jmp 0x14002ac77
test rcx, rcx
je 0x14002ac77
xchg rcx, rax
mov rcx, qword [rsi]
xchg rcx, rax
lea rdx, [rbp - 0x60]
mov r11, r11
xchg r12, rcx
mov r12, rsi
xchg rcx, r12
call qword [rax + 0x10]
mov rcx, rcx
mov r9, r14
lea rdx, [rbp - 0x60]
mov r8, r15
lea rcx, [rbp - 0x80]
xchg r9, r9
call fcn.1400290d0
xchg r15, rdx
mov rdx, qword [rbp - 0x78]
xchg r15, rdx
mov rax, qword [rbp - 0x80]
test r15, r15
xchg r10, r10
cmovne r13, rax
je 0x14002acbd
shl r15, 6
add r15, rax
xchg r13, r13
xor r14d, r14d
jmp 0x14002acc6
xor r14d, r14d
mov r15d, r14d
xchg r10, r10
xchg r15, r13
mov qword [rbp + 0x1f8], r13
xchg r13, r15
cmp r13, r15
mov r11, r11
je 0x14002b0fc
nop
xchg rsi, rax
mov rsi, qword [r13 + 0x38]
xchg rsi, rax
xchg rcx, rbx
mov rbx, qword [rbp + 0x20]
xchg rcx, rbx
xchg r11, rax
mov qword [rbp + 0x128], r11
xchg r11, rax
lea rdi, [rax + 1]
mov dword [rsp - 0x20], 0x3492f221
lea rax, [rbp + 0x28]
cmp rcx, rax
je 0x14002ad23
mov dword [rsp - 0x18], 0x2f3dccef
call fcn.14004d3c0
cmp rdi, 0x80
jbe 0x14002ad63
mov dword [rsp - 0x18], ecx
lea rcx, [rdi + rdi]
call fcn.14004d6a0
mov qword [rbp + 0x20], rax
test rax, rax
mov dword [rsp - 0x44], 0x7f8e0d00
jne 0x14002ad6e
lea rax, [rbp + 0x28]
xchg rbx, rax
mov qword [rbp + 0x20], rbx
xchg rbx, rax
jmp 0x14002ada6
lea rax, [rbp + 0x28]
mov r10, r10
mov qword [rbp + 0x20], rax
xor edx, edx
mov r8d, 0x764bd96e
sub r8d, 0xa402561
xor r8d, 0x3f52eb59
xor r8d, 0x53595e54
xchg rbp, rcx
mov rbp, rax
xchg rcx, rbp
call fcn.14004d990
xchg r8, r8
xchg r8, r14
mov r8, qword [rbp + 0x20]
xchg r14, r8
test r14, r14
mov dword [rsp - 0x44], edx
je 0x14002af36
mov r15, qword [r13 + 0x38]
lea rax, [rsp + 0x38]
mov rbx, qword [r13]
mov dword [rsp - 0xc], 0x74ff5064
lea rcx, [rsp + 0x30]
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
xchg r12, rsp
movups xmmword [r12 + 0x38], xmm0
xchg rsp, r12
lea rdx, [r15 + 1]
xchg rsp, rsi
movups xmmword [rsi + 0x48], xmm0
xchg rsi, rsp
xchg rsp, r9
movups xmmword [r9 + 0x58], xmm0
xchg r9, rsp
call fcn.14002ecb0
xchg rsp, rsp
mov edx, 0x49f8f639
add edx, 0x20ae67cd
sub edx, 0x2e22f414
xor edx, 0x64eec099
xor edx, 0x55ba9136
test r15, r15
je 0x14002ae93
xchg rbp, rax
mov rdi, rbp
xchg rbp, rax
sub rbx, rax
xchg r15, r8
mov r15, r8
xchg r8, r15
mov r9d, 0x7ff11fa2
sub r9d, 0x88086bb
xor r9d, 0x2315572c
xor r9d, 0x556dfdac
sub r9d, 0x1083168
nop word [rax + rax]
mov dword [rsp - 0x44], ebp
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
mov r11, r11
ror edx, 8
xor cx, word [rbx + rdi - 2]
mov word [rdi - 2], cx
mov dword [rsp - 0x28], ebp
sub r8, 1
jne 0x14002ae6b
xor ecx, ecx
mov dword [rsp - 0x30], 0x39d760f4
mov word [rax + r15*2], cx
xchg rcx, r14
mov r14, rcx
xchg rcx, r14
xchg rdx, r12
mov r12, qword [rbp + 0x128]
xchg r12, rdx
xchg r14, r8
mov r14, qword [rsp + 0x30]
xchg r14, r8
inc rdx
mov r15, r15
call fcn.140053980
xchg rcx, r10
mov r10, qword [rsp + 0x30]
xchg r10, rcx
lea rax, [rsp + 0x38]
mov rbp, rbp
cmp rcx, rax
jne 0x14002af1d
lea rdi, [rsp + 0x38]
xor eax, eax
mov dword [rsp - 0x30], esi
mov ecx, 0xa14183b
xor ecx, 0x79aa9a5f
sub ecx, 0x4a6383af
add ecx, 0x3211a418
sub ecx, 0x5b6ca29d
rep stosb byte [rdi], al
mov dword [rsp - 0x38], edi
jmp 0x14002af22
call fcn.14004d3c0
mov rbx, qword [rbp + 0x1f0]
xchg rdi, r15
mov rdi, qword [rbp + 0x1f8]
xchg rdi, r15
mov rcx, qword [rsi + 0x78]
lea rax, [0x140001508]
mov dword [rsp - 0x24], 0x3ae1cd03
xchg r14, r15
mov r15, qword [rbx]
xchg r15, r14
mov qword [rbp + 0x18], 0x1a596469
add qword [rbp + 0x18], 0x103dde4c
add qword [rbp + 0x18], 0x1806ac71
xor qword [rbp + 0x18], 0xbf283e0
xor qword [rbp + 0x18], 0x496f6cde
mov qword [rbp - 0x60], rax
mov rcx, rcx
mov qword [rbp + 0x1a8], rcx
xchg rsp, rbx
movups xmm0, xmmword [rbx + 0x20]
xchg rbx, rsp
xchg rbp, r11
movups xmmword [r11 - 0x58], xmm0
xchg r11, rbp
cmp rcx, 0x78
mov r12, r12
jbe 0x14002afea
mov rbx, qword [rsi]
mov rax, qword [rbx]
xchg r12, r12
xchg r11, rdi
mov r11, qword [rax + 0x10]
xchg r11, rdi
call fcn.14004d6a0
mov rsp, rsp
mov rdx, rax
xchg rbx, rdx
mov rcx, rdx
xchg rdx, rbx
call rdi
mov dword [rsp - 0x20], ebp
mov rbx, qword [rbp + 0x1f0]
mov qword [rbp + 0x130], rax
jmp 0x14002b018
test rcx, rcx
mov dword [rsp - 0x14], 0x3f0ab5f9
je 0x14002b018
xchg rcx, rax
mov rcx, qword [rsi]
xchg rcx, rax
lea rdx, [rbp + 0x130]
xchg rcx, rdx
mov rdx, rsi
xchg rdx, rcx
call qword [rax + 0x10]
xchg r15, r15
lea r8, [rbp - 0x60]
mov rdx, r14
lea rcx, [rbp + 0x130]
call fcn.140023a20
xchg r9, r9
mov rdi, rax
test rax, rax
je 0x14002b0c2
mov rdx, qword [rsi + 0x78]
xchg r13, r13
xor r14d, r14d
cmp rdx, 0x78
jbe 0x14002b05e
mov dword [rsp - 0x34], 0x4a908095
mov rcx, qword [rsi]
jmp 0x14002b075
test rdx, rdx
mov r11, r11
xchg rsp, r14
mov rcx, rsp
xchg r14, rsp
cmovne rcx, rsi
mov dword [rsp - 0x20], esp
mov rax, qword [rcx]
lea r8, [rsp + 0x30]
mov r9d, 0x6e97aa9
add r9d, 0x2ea843cc
add r9d, 0xeb803b8
xor r9d, 0x4449c261
mov rdx, rdi
call qword [rax + 8]
mov r12d, dword [rsp + 0x48]
mov dword [rsp - 0x20], ebx
test al, al
jne 0x14002b0b5
mov r12, r14
xchg r15, r15
cmp r12, qword [rbp + 0x200]
jne 0x14002b0fc
nop
sub r13, 0x2a0ec1dc
add r13, 0x2a0ec21c
mov r14d, 0x782e6043
xor r14d, 0x39b14ac7
sub r14d, 0x285b39e
add r14d, 0x24c2a9f1
xor r14d, 0x63dc20d7
cmp r13, r15
jne 0x14002ace0
lea rcx, [rbp - 0x80]
mov dword [rsp - 0x20], edi
call fcn.1400301c0
mov r15, qword [rsp + 0x2b0]
xor r13d, r13d
mov dword [rsp - 0x2c], 0x491f49d5
jmp 0x14002b194
mov rax, qword [rsi + 0x78]
cmp rax, 0x78
mov r8, r8
jbe 0x14002b140
xchg rcx, r12
mov r12, qword [rsi]
xchg rcx, r12
jmp 0x14002b158
test rax, rax
mov dword [rsp - 0x18], 0x380b59c8
xchg rcx, rbx
mov rbx, r13
xchg rbx, rcx
cmovne rcx, rsi
mov rax, qword [rcx]
lea r8, [rsp + 0x30]
mov r14, r14
mov r9d, 0x51c76181
xor r9d, 0x3414d044
sub r9d, 0x35a0dac
sub r9d, 0x6279a3cd
call qword [rax + 8]
xchg r15, r15
test al, al
je 0x14002b194
mov r12d, dword [rsp + 0x48]
xchg r9, r9
mov rcx, qword [rbp + 0x20]
lea rax, [rbp + 0x28]
xchg r15, r14
mov r15, qword [rsp + 0x2b8]
xchg r15, r14
mov rbx, qword [rsp + 0x308]
mov r9, r9
cmp rcx, rax
jne 0x14002b1eb
lea rdi, [rbp + 0x28]
xor eax, eax
mov rbp, rbp
mov ecx, 0x51a35403
xor ecx, 0x769f9747
add ecx, 0x5f024fc
add ecx, 0x3cd9630a
sub ecx, 0x6a064a4a
rep stosb byte [rdi], al
jmp 0x14002b1f0
call fcn.14004d3c0
xchg rcx, r14
mov r14, qword [rsi + 0x78]
xchg r14, rcx
cmp rcx, 0x78
jbe 0x14002b227
xchg r13, r13
mov rcx, qword [rsi]
xor edx, edx
mov rdi, qword [rcx]
xchg rdx, rdx
call qword [rdi]
xchg rdi, rcx
mov rdi, qword [rsi]
xchg rdi, rcx
call fcn.14004d3c0
jmp 0x14002b243
test rcx, rcx
je 0x14002b243
mov r15, r15
mov rax, qword [rsi]
xor edx, edx
xchg rsi, rcx
mov rsi, rcx
xchg rsi, rcx
call qword [rax]
mov qword [rsi + 0x78], r13
mov dword [rsp - 0x30], 0x1d329708
xchg rdx, r12
mov rax, rdx
xchg rdx, r12
sub rsp, 0xfffffffffffffd40
mov r10, r10
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
pop rsi
mov dword [rsp - 0x2c], esi
pop rbp
ret