Function at 0x1400e03cb
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp - 0x38], 0x684da76f
push rdi
mov qword [rsp], rdi
sub rsp, 0x20
mov dword [rsp - 0x18], 0x18f551da
xchg r15, rdi
mov r15, rdx
xchg rdi, r15
xchg rbp, rbx
mov rbp, rcx
xchg rbx, rbp
test rcx, rcx
je 0x1400e0816
test rdx, rdx
mov rdi, rdi
je 0x1400e0816
mov rcx, qword [rcx + 0x48]
cmp rcx, 0x80
jae 0x1400e0816
mov r11, r11
lea rax, [rcx*8]
xchg r11, rsi
mov qword [rsp + 0x30], r11
xchg rsi, r11
add qword [rbx], rax
mov r12, r12
mov byte [rcx + rbx + 0x50], 0x24
sub byte [rcx + rbx + 0x50], 0x16
xor byte [rcx + rbx + 0x50], 4
xor byte [rcx + rbx + 0x50], 0x8a
xchg rsi, rax
mov rsi, qword [rbx + 0x48]
xchg rsi, rax
inc rax
xchg r8, rax
mov qword [rbx + 0x48], r8
xchg r8, rax
cmp rax, 0x70
mov dword [rsp - 0x28], edx
jbe 0x1400e04b8
cmp rax, 0x80
jae 0x1400e0494
xchg r13, r13
nop dword [rax]
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 0x39
add byte [rax + rbx + 0x50], 0x21
sub byte [rax + rbx + 0x50], 8
xor byte [rax + rbx + 0x50], 0x52
mov rax, qword [rbx + 0x48]
mov dword [rsp - 0x20], 0x78133ca7
inc rax
xchg r9, rax
mov qword [rbx + 0x48], r9
xchg r9, rax
cmp rax, 0x80
jb 0x1400e0455
mov dword [rsp - 0x20], 0x65c545da
lea rsi, [rbx + 0x50]
mov rcx, rbx
xchg rbx, rsi
mov rdx, rbx
xchg rbx, rsi
call fcn.1400def20
mov dword [rsp - 0xc], edx
xor eax, eax
mov qword [rbx + 0x48], rax
jmp 0x1400e04cc
lea rsi, [rbx + 0x50]
mov r8, r8
nop dword [rax]
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 0x17
add byte [rax + rbx + 0x50], 0x50
xor byte [rax + rbx + 0x50], 0x41
add byte [rax + rbx + 0x50], 0x35
sub byte [rax + rbx + 0x50], 0x5b
xchg r9, rax
mov r9, qword [rbx + 0x48]
xchg r9, rax
inc rax
mov qword [rbx + 0x48], rax
mov dword [rsp - 0x30], ebx
cmp rax, 0x78
jb 0x1400e04cc
movzx eax, byte [rbx + 7]
mov dword [rsp - 0xc], 0x6cc0444c
xchg r14, rdx
mov r14, rsi
xchg r14, rdx
mov byte [rbx + 0xc8], al
mov r9, r9
xchg r15, rbx
mov rcx, r15
xchg rbx, r15
movzx eax, byte [rbx + 6]
xchg r9, r9
mov byte [rbx + 0xc9], al
movzx eax, byte [rbx + 5]
mov byte [rbx + 0xca], al
mov rsp, rsp
movzx eax, byte [rbx + 4]
mov byte [rbx + 0xcb], al
movzx eax, byte [rbx + 3]
mov byte [rbx + 0xcc], al
xchg r10, r10
movzx eax, byte [rbx + 2]
mov byte [rbx + 0xcd], al
movzx eax, byte [rbx + 1]
mov dword [rsp - 0x10], edi
mov byte [rbx + 0xce], al
movzx eax, byte [rbx]
mov byte [rbx + 0xcf], al
call fcn.1400def20
xchg r12, r12
movzx eax, byte [rbx + 0xf]
mov byte [rdi], al
movzx eax, byte [rbx + 0xe]
mov byte [rdi + 1], al
mov r11, r11
movzx eax, byte [rbx + 0xd]
mov byte [rdi + 2], al
movzx eax, byte [rbx + 0xc]
xchg rbp, rbp
mov byte [rdi + 3], al
movzx eax, byte [rbx + 0xb]
mov byte [rdi + 4], al
movzx eax, byte [rbx + 0xa]
mov dword [rsp - 0xc], 0x472bd158
mov byte [rdi + 5], al
movzx eax, byte [rbx + 9]
mov byte [rdi + 6], al
movzx eax, byte [rbx + 8]
mov dword [rsp - 0x38], edi
mov byte [rdi + 7], al
movzx eax, byte [rbx + 0x17]
mov byte [rdi + 8], al
movzx eax, byte [rbx + 0x16]
mov dword [rsp - 0x40], 0x2034b5
mov byte [rdi + 9], al
movzx eax, byte [rbx + 0x15]
mov byte [rdi + 0xa], al
mov rsi, rsi
movzx eax, byte [rbx + 0x14]
mov byte [rdi + 0xb], al
movzx eax, byte [rbx + 0x13]
xchg r8, r8
mov byte [rdi + 0xc], al
movzx eax, byte [rbx + 0x12]
mov byte [rdi + 0xd], al
mov dword [rsp - 0x28], edx
movzx eax, byte [rbx + 0x11]
mov byte [rdi + 0xe], al
movzx eax, byte [rbx + 0x10]
mov byte [rdi + 0xf], al
mov dword [rsp - 0x1c], 0x2948c0ac
movzx eax, byte [rbx + 0x1f]
mov byte [rdi + 0x10], al
movzx eax, byte [rbx + 0x1e]
mov byte [rdi + 0x11], al
xchg rbp, rbp
movzx eax, byte [rbx + 0x1d]
mov byte [rdi + 0x12], al
movzx eax, byte [rbx + 0x1c]
mov byte [rdi + 0x13], al
mov dword [rsp - 0x38], 0x18499c72
movzx eax, byte [rbx + 0x1b]
mov byte [rdi + 0x14], al
movzx eax, byte [rbx + 0x1a]
mov byte [rdi + 0x15], al
mov dword [rsp - 0x24], esi
movzx eax, byte [rbx + 0x19]
mov byte [rdi + 0x16], al
movzx eax, byte [rbx + 0x18]
mov dword [rsp - 0x3c], edx
mov byte [rdi + 0x17], al
movzx eax, byte [rbx + 0x27]
mov byte [rdi + 0x18], al
mov dword [rsp - 0x40], 0x450e17b3
movzx eax, byte [rbx + 0x26]
mov byte [rdi + 0x19], al
movzx eax, byte [rbx + 0x25]
mov byte [rdi + 0x1a], al
mov dword [rsp - 0x3c], edx
movzx eax, byte [rbx + 0x24]
mov byte [rdi + 0x1b], al
movzx eax, byte [rbx + 0x23]
mov byte [rdi + 0x1c], al
mov rdx, rdx
movzx eax, byte [rbx + 0x22]
mov byte [rdi + 0x1d], al
movzx eax, byte [rbx + 0x21]
mov rsp, rsp
mov byte [rdi + 0x1e], al
movzx eax, byte [rbx + 0x20]
mov byte [rdi + 0x1f], al
xchg rdi, rdi
movzx eax, byte [rbx + 0x2f]
mov byte [rdi + 0x20], al
movzx eax, byte [rbx + 0x2e]
mov r15, r15
mov byte [rdi + 0x21], al
movzx eax, byte [rbx + 0x2d]
mov byte [rdi + 0x22], al
movzx eax, byte [rbx + 0x2c]
mov dword [rsp - 0x20], esi
mov byte [rdi + 0x23], al
movzx eax, byte [rbx + 0x2b]
mov byte [rdi + 0x24], al
movzx eax, byte [rbx + 0x2a]
xchg r14, r14
mov byte [rdi + 0x25], al
movzx eax, byte [rbx + 0x29]
mov byte [rdi + 0x26], al
xchg rbp, rbp
movzx eax, byte [rbx + 0x28]
mov byte [rdi + 0x27], al
movzx eax, byte [rbx + 0x37]
mov rbp, rbp
mov byte [rdi + 0x28], al
movzx eax, byte [rbx + 0x36]
mov byte [rdi + 0x29], al
movzx eax, byte [rbx + 0x35]
mov dword [rsp - 0x2c], esp
mov byte [rdi + 0x2a], al
movzx eax, byte [rbx + 0x34]
mov byte [rdi + 0x2b], al
movzx eax, byte [rbx + 0x33]
xchg rsi, rsi
mov byte [rdi + 0x2c], al
movzx eax, byte [rbx + 0x32]
mov byte [rdi + 0x2d], al
mov dword [rsp - 0x44], ebx
movzx eax, byte [rbx + 0x31]
mov byte [rdi + 0x2e], al
movzx eax, byte [rbx + 0x30]
mov dword [rsp - 0x40], 0x3024056a
mov byte [rdi + 0x2f], al
movzx eax, byte [rbx + 0x3f]
xchg rsi, rbp
mov rbp, qword [rsp + 0x30]
xchg rbp, rsi
mov byte [rdi + 0x30], al
xchg r14, r14
movzx eax, byte [rbx + 0x3e]
mov byte [rdi + 0x31], al
movzx eax, byte [rbx + 0x3d]
mov dword [rsp - 0x28], 0x41618686
mov byte [rdi + 0x32], al
movzx eax, byte [rbx + 0x3c]
mov byte [rdi + 0x33], al
movzx eax, byte [rbx + 0x3b]
xchg r11, r11
mov byte [rdi + 0x34], al
movzx eax, byte [rbx + 0x3a]
mov byte [rdi + 0x35], al
movzx eax, byte [rbx + 0x39]
mov dword [rsp - 0x14], 0x61ce2e83
mov byte [rdi + 0x36], al
movzx eax, byte [rbx + 0x38]
mov byte [rdi + 0x37], al
movzx eax, byte [rbx + 0x47]
mov dword [rsp - 0x20], 0x1e80d8ce
mov byte [rdi + 0x38], al
movzx eax, byte [rbx + 0x46]
mov byte [rdi + 0x39], al
movzx eax, byte [rbx + 0x45]
mov dword [rsp - 0x10], 0x1ea477ef
mov byte [rdi + 0x3a], al
movzx eax, byte [rbx + 0x44]
mov byte [rdi + 0x3b], al
xchg r15, r15
movzx eax, byte [rbx + 0x43]
mov byte [rdi + 0x3c], al
movzx eax, byte [rbx + 0x42]
mov rcx, rcx
mov byte [rdi + 0x3d], al
movzx eax, byte [rbx + 0x41]
mov byte [rdi + 0x3e], al
movzx eax, byte [rbx + 0x40]
xchg rsp, rsp
mov byte [rdi + 0x3f], al
xor eax, eax
mov rbx, qword [rsp + 0x38]
mov dword [rsp - 0x14], 0x3c2d2dde
nop
add rsp, 0x364152dd
sub rsp, 0x364152bd
pop rdi
xchg rsi, rsi
ret
xchg rbx, rdi
mov rdi, qword [rsp + 0x38]
xchg rbx, rdi
mov eax, 0x58e16f6c
xor eax, 0x1cbf6e10
sub eax, 0x2e85451e
xor eax, 0x15d8bc5f
add rsp, 0x20
mov dword [rsp - 0x3c], 0x4924413d
nop
add rsp, 8
mov rdi, qword [rsp - 8]
ret