Function at 0x1400b1950
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
nop
push 0x6db46f47
mov qword [rsp], rdi
neg rsp
sub rsp, 0xffffffffffffffe0
neg rsp
xchg rsi, rdi
mov rsi, rdx
xchg rdi, rsi
xchg rcx, r11
mov rbx, r11
xchg rcx, r11
test rcx, rcx
je 0x1400b1dc1
test rdx, rdx
mov rbx, rbx
je 0x1400b1dc1
mov rcx, qword [rcx + 0x48]
cmp rcx, 0x80
xchg rbp, rbp
jae 0x1400b1dc1
lea rax, [rcx*8]
xchg rbp, rsi
mov qword [rsp + 0x30], rbp
xchg rbp, rsi
add qword [rbx], rax
mov byte [rcx + rbx + 0x50], 0x10
add byte [rcx + rbx + 0x50], 0x5b
xor byte [rcx + rbx + 0x50], 0x41
add byte [rcx + rbx + 0x50], 0x11
add byte [rcx + rbx + 0x50], 0x45
mov rax, qword [rbx + 0x48]
inc rax
mov dword [rsp - 0x2c], 0x651b8cbc
xchg rdi, rax
mov qword [rbx + 0x48], rdi
xchg rdi, rax
cmp rax, 0x70
xchg r9, r9
jbe 0x1400b1a6f
cmp rax, 0x80
jae 0x1400b1a4c
nop dword [rax]
mov r14, r14
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 5
xor byte [rax + rbx + 0x50], 0x18
xor byte [rax + rbx + 0x50], 0x30
sub byte [rax + rbx + 0x50], 0x1a
sub byte [rax + rbx + 0x50], 0x13
xchg r10, rax
mov r10, qword [rbx + 0x48]
xchg r10, rax
inc rax
mov qword [rbx + 0x48], rax
cmp rax, 0x80
mov rbx, rbx
jb 0x1400b1a15
lea rsi, [rbx + 0x50]
xchg r9, rbx
mov rcx, r9
xchg r9, rbx
mov rdx, rsi
call fcn.1400b04e0
mov r11, r11
xor eax, eax
mov qword [rbx + 0x48], rax
jmp 0x1400b1a88
lea rsi, [rbx + 0x50]
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0xc], 0x1e957df8
mov byte [rax + rbx + 0x50], 0x12
xor byte [rax + rbx + 0x50], 0x2e
xor byte [rax + rbx + 0x50], 0x25
xor byte [rax + rbx + 0x50], 0x19
mov rax, qword [rbx + 0x48]
inc rax
xchg rdi, rax
mov qword [rbx + 0x48], rdi
xchg rdi, rax
cmp rax, 0x78
mov dword [rsp - 0x24], 0x4dc1ffc1
jb 0x1400b1a88
movzx eax, byte [rbx + 7]
xchg rdx, r15
mov r15, rsi
xchg r15, rdx
mov byte [rbx + 0xc8], al
mov rcx, rbx
movzx eax, byte [rbx + 6]
mov rsp, rsp
mov byte [rbx + 0xc9], al
movzx eax, byte [rbx + 5]
mov byte [rbx + 0xca], al
mov r14, r14
movzx eax, byte [rbx + 4]
mov byte [rbx + 0xcb], al
movzx eax, byte [rbx + 3]
mov byte [rbx + 0xcc], al
xchg rsi, rsi
movzx eax, byte [rbx + 2]
mov byte [rbx + 0xcd], al
movzx eax, byte [rbx + 1]
mov byte [rbx + 0xce], al
mov r12, r12
movzx eax, byte [rbx]
mov byte [rbx + 0xcf], al
call fcn.1400b04e0
movzx eax, byte [rbx + 0xf]
mov rcx, rcx
mov byte [rdi], al
movzx eax, byte [rbx + 0xe]
mov byte [rdi + 1], al
movzx eax, byte [rbx + 0xd]
mov dword [rsp - 0x40], 0x4a82b723
mov byte [rdi + 2], al
movzx eax, byte [rbx + 0xc]
mov byte [rdi + 3], al
movzx eax, byte [rbx + 0xb]
mov dword [rsp - 0xc], 0x23118d2d
mov byte [rdi + 4], al
movzx eax, byte [rbx + 0xa]
mov byte [rdi + 5], al
xchg rbp, rbp
movzx eax, byte [rbx + 9]
mov byte [rdi + 6], al
movzx eax, byte [rbx + 8]
mov dword [rsp - 0xc], esp
mov byte [rdi + 7], al
movzx eax, byte [rbx + 0x17]
mov byte [rdi + 8], al
mov dword [rsp - 0x1c], edi
movzx eax, byte [rbx + 0x16]
mov byte [rdi + 9], al
movzx eax, byte [rbx + 0x15]
mov dword [rsp - 0x38], 0x10468e7b
mov byte [rdi + 0xa], al
movzx eax, byte [rbx + 0x14]
mov byte [rdi + 0xb], al
movzx eax, byte [rbx + 0x13]
xchg rbp, rbp
mov byte [rdi + 0xc], al
movzx eax, byte [rbx + 0x12]
mov byte [rdi + 0xd], al
mov rcx, rcx
movzx eax, byte [rbx + 0x11]
mov byte [rdi + 0xe], al
movzx eax, byte [rbx + 0x10]
mov dword [rsp - 0x40], 0x4868176f
mov byte [rdi + 0xf], al
movzx eax, byte [rbx + 0x1f]
mov byte [rdi + 0x10], al
movzx eax, byte [rbx + 0x1e]
mov dword [rsp - 0x28], esi
mov byte [rdi + 0x11], al
movzx eax, byte [rbx + 0x1d]
mov byte [rdi + 0x12], al
mov dword [rsp - 0x20], 0x7a89d9a3
movzx eax, byte [rbx + 0x1c]
mov byte [rdi + 0x13], al
movzx eax, byte [rbx + 0x1b]
mov byte [rdi + 0x14], al
mov dword [rsp - 0xc], 0x358fe016
movzx eax, byte [rbx + 0x1a]
mov byte [rdi + 0x15], al
movzx eax, byte [rbx + 0x19]
mov dword [rsp - 0x14], ebx
mov byte [rdi + 0x16], al
movzx eax, byte [rbx + 0x18]
mov byte [rdi + 0x17], al
movzx eax, byte [rbx + 0x27]
mov dword [rsp - 0x38], 0x4fbb23da
mov byte [rdi + 0x18], al
movzx eax, byte [rbx + 0x26]
mov byte [rdi + 0x19], al
movzx eax, byte [rbx + 0x25]
mov dword [rsp - 0x14], 0x776f2b08
mov byte [rdi + 0x1a], al
movzx eax, byte [rbx + 0x24]
mov byte [rdi + 0x1b], al
movzx eax, byte [rbx + 0x23]
mov dword [rsp - 0x44], ebp
mov byte [rdi + 0x1c], al
movzx eax, byte [rbx + 0x22]
mov byte [rdi + 0x1d], al
mov dword [rsp - 0x20], 0x14d75089
movzx eax, byte [rbx + 0x21]
mov byte [rdi + 0x1e], al
movzx eax, byte [rbx + 0x20]
xchg rsi, rsi
mov byte [rdi + 0x1f], al
movzx eax, byte [rbx + 0x2f]
mov byte [rdi + 0x20], al
movzx eax, byte [rbx + 0x2e]
xchg rdx, rdx
mov byte [rdi + 0x21], al
movzx eax, byte [rbx + 0x2d]
mov byte [rdi + 0x22], al
movzx eax, byte [rbx + 0x2c]
mov dword [rsp - 0x14], 0xce4afab
mov byte [rdi + 0x23], al
movzx eax, byte [rbx + 0x2b]
mov byte [rdi + 0x24], al
movzx eax, byte [rbx + 0x2a]
xchg rsp, rsp
mov byte [rdi + 0x25], al
movzx eax, byte [rbx + 0x29]
mov byte [rdi + 0x26], al
mov dword [rsp - 0x2c], 0x60d561a8
movzx eax, byte [rbx + 0x28]
mov byte [rdi + 0x27], al
movzx eax, byte [rbx + 0x37]
mov dword [rsp - 0x40], 0x1f5fa344
mov byte [rdi + 0x28], al
movzx eax, byte [rbx + 0x36]
mov byte [rdi + 0x29], al
movzx eax, byte [rbx + 0x35]
xchg r14, r14
mov byte [rdi + 0x2a], al
movzx eax, byte [rbx + 0x34]
mov byte [rdi + 0x2b], al
mov dword [rsp - 0x34], 0x7d9402c3
movzx eax, byte [rbx + 0x33]
mov byte [rdi + 0x2c], al
movzx eax, byte [rbx + 0x32]
mov byte [rdi + 0x2d], al
mov rbx, rbx
movzx eax, byte [rbx + 0x31]
mov byte [rdi + 0x2e], al
movzx eax, byte [rbx + 0x30]
xchg rdi, rdi
mov byte [rdi + 0x2f], al
movzx eax, byte [rbx + 0x3f]
mov rsi, qword [rsp + 0x30]
mov byte [rdi + 0x30], al
xchg r14, r14
movzx eax, byte [rbx + 0x3e]
mov byte [rdi + 0x31], al
movzx eax, byte [rbx + 0x3d]
mov byte [rdi + 0x32], al
mov dword [rsp - 0x14], 0x17f74ca7
movzx eax, byte [rbx + 0x3c]
mov byte [rdi + 0x33], al
movzx eax, byte [rbx + 0x3b]
mov r13, r13
mov byte [rdi + 0x34], al
movzx eax, byte [rbx + 0x3a]
mov byte [rdi + 0x35], al
mov dword [rsp - 0x18], ecx
movzx eax, byte [rbx + 0x39]
mov byte [rdi + 0x36], al
movzx eax, byte [rbx + 0x38]
mov byte [rdi + 0x37], al
mov r14, r14
movzx eax, byte [rbx + 0x47]
mov byte [rdi + 0x38], al
movzx eax, byte [rbx + 0x46]
mov dword [rsp - 0x44], esi
mov byte [rdi + 0x39], al
movzx eax, byte [rbx + 0x45]
mov byte [rdi + 0x3a], al
movzx eax, byte [rbx + 0x44]
xchg r8, r8
mov byte [rdi + 0x3b], al
movzx eax, byte [rbx + 0x43]
mov byte [rdi + 0x3c], al
xchg rbx, rbx
movzx eax, byte [rbx + 0x42]
mov byte [rdi + 0x3d], al
movzx eax, byte [rbx + 0x41]
mov byte [rdi + 0x3e], al
mov r15, r15
movzx eax, byte [rbx + 0x40]
mov byte [rdi + 0x3f], al
xor eax, eax
mov rbx, qword [rsp + 0x38]
xchg rdx, rdx
add rsp, 0x20
nop
mov rdi, qword [rsp]
add rsp, 8
ret
mov rbx, qword [rsp + 0x38]
mov eax, 0x4522e07c
sub eax, 0xa734cdc
xor eax, 0x5302d223
sub eax, 0x69ad4182
nop
add rsp, 0x5f50d7d1
sub rsp, 0x5f50d7b1
pop rdi
mov dword [rsp - 0x18], 0x7f341b0c
ret