Function at 0x1400e1afb
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, r8
mov qword [rsp + 0x10], r8
xchg rbx, r8
nop
sub rsp, 8
mov qword [rsp], rdi
add rsp, 0xffffffffffffffe0
mov dword [rsp - 0x10], 0x52b3c3db
xchg rdx, r10
mov rdi, r10
xchg rdx, r10
xchg rbx, rcx
mov rcx, rbx
xchg rcx, rbx
test rcx, rcx
mov rbx, rbx
je 0x1400e1f40
test rdx, rdx
je 0x1400e1f40
mov rcx, rcx
mov rcx, qword [rcx + 0x48]
cmp rcx, 0x80
jae 0x1400e1f40
lea rax, [rcx*8]
mov r10, r10
xchg r9, rsi
mov qword [rsp + 0x30], r9
xchg r9, rsi
add qword [rbx], rax
mov dword [rsp - 0x38], 0x24df0119
mov byte [rcx + rbx + 0x50], 0x37
xor byte [rcx + rbx + 0x50], 0x77
xor byte [rcx + rbx + 0x50], 0x6e
add byte [rcx + rbx + 0x50], 0x52
xchg r10, rax
mov r10, qword [rbx + 0x48]
xchg r10, rax
inc rax
xchg rsi, rsi
xchg rbp, rax
mov qword [rbx + 0x48], rbp
xchg rbp, rax
cmp rax, 0x70
jbe 0x1400e1bf0
cmp rax, 0x80
xchg r15, r15
jae 0x1400e1bc5
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0x38], edx
mov byte [rax + rbx + 0x50], 0x35
xor byte [rax + rbx + 0x50], 0x54
sub byte [rax + rbx + 0x50], 0x1e
xor byte [rax + rbx + 0x50], 0x43
xchg r8, rax
mov r8, qword [rbx + 0x48]
xchg r8, rax
inc rax
mov qword [rbx + 0x48], rax
mov dword [rsp - 0x2c], edx
cmp rax, 0x80
jb 0x1400e1b92
lea rsi, [rbx + 0x50]
mov rsp, rsp
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
mov rdx, rsi
mov dword [rsp - 0x14], 0x41fec03d
call fcn.1400e0600
xor eax, eax
mov qword [rbx + 0x48], rax
jmp 0x1400e1c04
lea rsi, [rbx + 0x50]
nop dword [rax]
mov rcx, rcx
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 3
xor byte [rax + rbx + 0x50], 6
add byte [rax + rbx + 0x50], 0x30
sub byte [rax + rbx + 0x50], 0x35
mov rax, qword [rbx + 0x48]
mov dword [rsp - 0x20], 0x421d8ca9
inc rax
xchg rsi, rax
mov qword [rbx + 0x48], rsi
xchg rsi, rax
cmp rax, 0x78
jb 0x1400e1c04
movzx eax, byte [rbx + 7]
xchg r14, r14
xchg rsi, rdx
mov rsi, rdx
xchg rdx, rsi
mov byte [rbx + 0xc8], al
mov dword [rsp - 0x14], ecx
mov rcx, rbx
movzx eax, byte [rbx + 6]
mov byte [rbx + 0xc9], al
mov r9, r9
movzx eax, byte [rbx + 5]
mov byte [rbx + 0xca], al
movzx eax, byte [rbx + 4]
xchg rsi, rsi
mov byte [rbx + 0xcb], al
movzx eax, byte [rbx + 3]
mov byte [rbx + 0xcc], al
mov dword [rsp - 0xc], 0x5681628c
movzx eax, byte [rbx + 2]
mov byte [rbx + 0xcd], al
movzx eax, byte [rbx + 1]
mov byte [rbx + 0xce], al
mov dword [rsp - 0x20], ecx
movzx eax, byte [rbx]
mov byte [rbx + 0xcf], al
call fcn.1400e0600
mov dword [rsp - 0x18], 0x34878e01
movzx eax, byte [rbx + 0xf]
mov byte [rdi], al
movzx eax, byte [rbx + 0xe]
mov dword [rsp - 0x20], ebx
mov byte [rdi + 1], al
movzx eax, byte [rbx + 0xd]
mov byte [rdi + 2], al
movzx eax, byte [rbx + 0xc]
xchg rdi, rdi
mov byte [rdi + 3], al
movzx eax, byte [rbx + 0xb]
mov byte [rdi + 4], al
mov r14, r14
movzx eax, byte [rbx + 0xa]
mov byte [rdi + 5], al
movzx eax, byte [rbx + 9]
mov dword [rsp - 0x44], 0x603d13c6
mov byte [rdi + 6], al
movzx eax, byte [rbx + 8]
mov byte [rdi + 7], al
xchg rbp, rbp
movzx eax, byte [rbx + 0x17]
mov byte [rdi + 8], al
movzx eax, byte [rbx + 0x16]
mov dword [rsp - 0x44], edi
mov byte [rdi + 9], al
movzx eax, byte [rbx + 0x15]
mov byte [rdi + 0xa], al
movzx eax, byte [rbx + 0x14]
mov r15, r15
mov byte [rdi + 0xb], al
movzx eax, byte [rbx + 0x13]
mov byte [rdi + 0xc], al
mov dword [rsp - 0x3c], esi
movzx eax, byte [rbx + 0x12]
mov byte [rdi + 0xd], al
movzx eax, byte [rbx + 0x11]
mov dword [rsp - 0x38], 0xbb8b11b
mov byte [rdi + 0xe], al
movzx eax, byte [rbx + 0x10]
mov byte [rdi + 0xf], al
xchg r14, r14
movzx eax, byte [rbx + 0x1f]
mov byte [rdi + 0x10], al
movzx eax, byte [rbx + 0x1e]
mov byte [rdi + 0x11], al
xchg r9, r9
movzx eax, byte [rbx + 0x1d]
mov byte [rdi + 0x12], al
movzx eax, byte [rbx + 0x1c]
mov byte [rdi + 0x13], al
mov dword [rsp - 0xc], esi
movzx eax, byte [rbx + 0x1b]
mov byte [rdi + 0x14], al
movzx eax, byte [rbx + 0x1a]
mov byte [rdi + 0x15], al
mov rsi, rsi
movzx eax, byte [rbx + 0x19]
mov byte [rdi + 0x16], al
movzx eax, byte [rbx + 0x18]
mov rcx, rcx
mov byte [rdi + 0x17], al
movzx eax, byte [rbx + 0x27]
mov byte [rdi + 0x18], al
mov r9, r9
movzx eax, byte [rbx + 0x26]
mov byte [rdi + 0x19], al
movzx eax, byte [rbx + 0x25]
mov dword [rsp - 0x30], 0x6eb8178d
mov byte [rdi + 0x1a], al
movzx eax, byte [rbx + 0x24]
mov byte [rdi + 0x1b], al
movzx eax, byte [rbx + 0x23]
mov r11, r11
mov byte [rdi + 0x1c], al
movzx eax, byte [rbx + 0x22]
mov byte [rdi + 0x1d], al
movzx eax, byte [rbx + 0x21]
xchg r11, r11
mov byte [rdi + 0x1e], al
movzx eax, byte [rbx + 0x20]
mov byte [rdi + 0x1f], al
mov dword [rsp - 0x3c], ebx
movzx eax, byte [rbx + 0x2f]
mov byte [rdi + 0x20], al
movzx eax, byte [rbx + 0x2e]
mov dword [rsp - 0x14], 0x87ddf93
mov byte [rdi + 0x21], al
movzx eax, byte [rbx + 0x2d]
mov byte [rdi + 0x22], al
movzx eax, byte [rbx + 0x2c]
mov dword [rsp - 0x3c], 0x40d3db08
mov byte [rdi + 0x23], al
movzx eax, byte [rbx + 0x2b]
mov byte [rdi + 0x24], al
xchg rsp, rsp
movzx eax, byte [rbx + 0x2a]
mov byte [rdi + 0x25], al
movzx eax, byte [rbx + 0x29]
mov byte [rdi + 0x26], al
mov dword [rsp - 0x14], esi
movzx eax, byte [rbx + 0x28]
mov byte [rdi + 0x27], al
movzx eax, byte [rbx + 0x37]
mov byte [rdi + 0x28], al
mov dword [rsp - 0xc], edx
movzx eax, byte [rbx + 0x36]
mov byte [rdi + 0x29], al
movzx eax, byte [rbx + 0x35]
mov dword [rsp - 0x3c], 0x6ea0d38
mov byte [rdi + 0x2a], al
movzx eax, byte [rbx + 0x34]
mov byte [rdi + 0x2b], al
movzx eax, byte [rbx + 0x33]
xchg rbp, rbp
mov byte [rdi + 0x2c], al
movzx eax, byte [rbx + 0x32]
mov byte [rdi + 0x2d], al
movzx eax, byte [rbx + 0x31]
xchg rbx, rbx
mov byte [rdi + 0x2e], al
movzx eax, byte [rbx + 0x30]
mov byte [rdi + 0x2f], al
mov rdi, rdi
movzx eax, byte [rbx + 0x3f]
mov rsi, qword [rsp + 0x30]
mov byte [rdi + 0x30], al
mov rsp, rsp
movzx eax, byte [rbx + 0x3e]
mov byte [rdi + 0x31], al
movzx eax, byte [rbx + 0x3d]
mov rsi, rsi
mov byte [rdi + 0x32], al
movzx eax, byte [rbx + 0x3c]
mov byte [rdi + 0x33], al
movzx eax, byte [rbx + 0x3b]
mov dword [rsp - 0x44], 0x4c156e84
mov byte [rdi + 0x34], al
movzx eax, byte [rbx + 0x3a]
mov byte [rdi + 0x35], al
mov dword [rsp - 0x24], edx
movzx eax, byte [rbx + 0x39]
mov byte [rdi + 0x36], al
movzx eax, byte [rbx + 0x38]
mov dword [rsp - 0x14], 0x2f18985a
mov byte [rdi + 0x37], al
movzx eax, byte [rbx + 0x47]
mov byte [rdi + 0x38], al
movzx eax, byte [rbx + 0x46]
xchg rdi, rdi
mov byte [rdi + 0x39], al
movzx eax, byte [rbx + 0x45]
mov byte [rdi + 0x3a], al
movzx eax, byte [rbx + 0x44]
mov dword [rsp - 0x40], ecx
mov byte [rdi + 0x3b], al
movzx eax, byte [rbx + 0x43]
mov byte [rdi + 0x3c], al
mov dword [rsp - 0x2c], 0x2f208d37
movzx eax, byte [rbx + 0x42]
mov byte [rdi + 0x3d], al
movzx eax, byte [rbx + 0x41]
mov byte [rdi + 0x3e], al
mov rdx, rdx
movzx eax, byte [rbx + 0x40]
mov byte [rdi + 0x3f], al
xor eax, eax
mov dword [rsp - 0x20], 0x500e3c76
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
nop
mov rdi, qword [rsp]
add rsp, 8
ret
xchg rbx, r10
mov r10, qword [rsp + 0x38]
xchg rbx, r10
mov eax, 0x4ee3ea6
add eax, 0x42f5daa3
xor eax, 0x7ca1b8da
sub eax, 0x3b45a192
add rsp, 0x20
pop rdi
xchg r15, r15
ret