Function at 0x140086a20
Capabilities:
Encode data using xor

Disassembly:
xchg r15, rbx
mov qword [rsp + 8], r15
xchg r15, rbx
mov qword [rsp + 0x10], rsi
xchg rdi, rdi
mov qword [rsp + 0x18], rdi
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
sub rsp, 8
mov qword [rsp], r14
push r15
lea rbp, [rsp - 0x360]
mov dword [rsp - 0x38], edx
add rsp, 0x54f4efc8
sub rsp, 0x54f4f428
xor r12d, r12d
mov dword [rsp + 0x2a], 0x4c43ab54
xor dword [rsp + 0x2a], 0x7da095c1
sub dword [rsp + 0x2a], 0x25bf6188
sub dword [rsp + 0x2a], 0xc13dc9d
mov dword [rsp + 0x20], r12d
xchg r10, r9
mov r14, r10
xchg r9, r10
mov dword [rsp + 0x2e], 0x7e95e8a8
xor dword [rsp + 0x2e], 0x6799aa13
add dword [rsp + 0x2e], 0x62e563e
sub dword [rsp + 0x2e], 0x1ef39839
xchg r15, r8
mov r8, r15
xchg r8, r15
mov dword [rsp + 0x32], 0x294b7cb3
sub dword [rsp + 0x32], 0x593270d
xor dword [rsp + 0x32], 0x25ecbf67
xor dword [rsp + 0x32], 0x6c399e0a
sub dword [rsp + 0x32], 0x6a5a744f
mov rsi, rdx
mov dword [rsp - 0x44], 0xb15b5e0
mov dword [rsp + 0x36], 0x51092d6a
xor dword [rsp + 0x36], 0x67679937
xor dword [rsp + 0x36], 0x587f7e3a
xor dword [rsp + 0x36], 0x6e0ccae3
mov rbx, rcx
mov dword [rsp + 0x3a], 0xd888857
add dword [rsp + 0x3a], 0x5a8ce9b5
xor dword [rsp + 0x3a], 0x42079aca
sub dword [rsp + 0x3a], 0x2a04e84e
mov qword [rsp + 0x20], r12
mov dword [rsp - 0x10], ecx
mov rax, qword [rsp + 0x20]
nop dword [rax]
xchg rcx, r10
mov r10, qword [rsp + 0x20]
xchg r10, rcx
xchg r11, rax
mov r11, qword [rsp + 0x20]
xchg r11, rax
and cl, 3
mov r9, r9
shl cl, 1
shl cl, 2
movzx edx, word [rsp + rax*2 + 0x2a]
mov eax, 0x54c3cc86
sub eax, 0xcc0b736
sub eax, 0x631c4c4
xor eax, 0x5c6482c
xor eax, 0x2ebe78b1
shr eax, cl
mov rbp, rbp
movzx ecx, al
mov rax, qword [rsp + 0x20]
xor cx, dx
xchg rdi, rdi
mov word [rsp + rax*2 + 0x68], cx
xchg rdx, rax
mov rdx, qword [rsp + 0x20]
xchg rdx, rax
inc rax
mov dword [rsp - 0x2c], 0x39eecae0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
cmp rax, 0xa
mov dword [rsp - 0x34], 0x7c432cce
jb 0x140086b52
mov edi, 0x8e3136a
xor edi, 0x2190b1e4
add edi, 0x4eef307f
sub edi, 0x7862d30c
mov word [rsp + 0x7c], r12w
mov dword [rsp - 0x1c], 0x54ac3dbc
lea rdx, [rsp + 0x68]
xchg r14, rcx
mov r14, rcx
xchg r14, rcx
lea r8d, [rdi + 9]
call fcn.14009acb0
xchg r12, r12
test eax, eax
je 0x140086dc9
mov dword [rsp + 0x3e], 0x554f1c3f
xor dword [rsp + 0x3e], 0x7e540e88
sub dword [rsp + 0x3e], 0x2a84b5b1
add dword [rsp + 0x3e], 0x715f873c
sub dword [rsp + 0x3e], 0x71dde3ce
mov dword [rsp + 0x42], 0x6877a10a
sub dword [rsp + 0x42], 0x1ffdf1b3
sub dword [rsp + 0x42], 0x2a0c3a21
xor dword [rsp + 0x42], 0x5b311efa
sub dword [rsp + 0x42], 0x45156aef
mov dword [rsp + 0x46], 0x4cc66458
xor dword [rsp + 0x46], 0x475290eb
add dword [rsp + 0x46], 0x370cea64
sub dword [rsp + 0x46], 0x4038637f
sub dword [rsp + 0x46], 0x2567b1c
mov dword [rsp + 0x4a], 0x7cb687cb
xor dword [rsp + 0x4a], 0x1a20705e
xor dword [rsp + 0x4a], 0x258130cd
xor dword [rsp + 0x4a], 0x3aa1a3d2
sub dword [rsp + 0x4a], 0x79996406
mov dword [rsp + 0x4e], 0x71df74ea
sub dword [rsp + 0x4e], 0x4a700ab7
sub dword [rsp + 0x4e], 0x24bbbfd1
add dword [rsp + 0x4e], 0x5782f96f
sub dword [rsp + 0x4e], 0x5a28a359
mov qword [rsp + 0x20], r12
mov rax, qword [rsp + 0x20]
mov rsi, rsi
nop word [rax + rax]
xchg rcx, rdi
mov rdi, qword [rsp + 0x20]
xchg rdi, rcx
xchg rdx, rax
mov rdx, qword [rsp + 0x20]
xchg rdx, rax
and cl, 3
shl cl, 3
mov dword [rsp - 0x24], 0x131fe357
movzx edx, word [rsp + rax*2 + 0x3e]
mov eax, 0x63cde27
xor eax, 0x346fa541
sub eax, 0xcf3a1b4
add eax, 0x4549865f
shr eax, cl
xchg rbp, rbp
movzx ecx, al
mov rax, qword [rsp + 0x20]
xor cx, dx
mov r14, r14
mov word [rsp + rax*2 + 0x52], cx
xchg r10, rax
mov r10, qword [rsp + 0x20]
xchg r10, rax
inc rax
xchg r10, r10
xchg rdi, rax
mov qword [rsp + 0x20], rdi
xchg rdi, rax
mov rax, qword [rsp + 0x20]
mov rbx, rbx
cmp rax, 0xa
jb 0x140086cf9
mov edi, 0x686a00cb
xor edi, 0x7091508c
add edi, 0x24d062db
xor edi, 0x1a60206c
sub edi, 0x27ab934b
mov word [rsp + 0x66], r12w
mov dword [rsp - 0x1c], edx
lea rdx, [rsp + 0x52]
mov rcx, r14
lea r8d, [rdi + 7]
mov rbp, rbp
call fcn.14009acb0
test eax, eax
je 0x140086dc9
mov dl, 0x27
xor dl, 0x6c
sub dl, 0x3b
sub dl, 0xf
jmp 0x140086dd8
xor dl, dl
mov r9, r9
test dil, 2
je 0x140086dfb
lea rdi, [rsp + 0x52]
mov rdi, rdi
xor eax, eax
mov ecx, 0x5214bbec
xor ecx, 0x4a8bcd3b
xor ecx, 0x55a1e0d
sub ecx, 0x1dc568d0
rep stosb byte [rdi], al
xor eax, eax
xchg rdx, rdx
lea rdi, [rsp + 0x68]
mov ecx, 0x47fb717e
sub ecx, 0x3c1947e1
add ecx, 0x2127419d
sub ecx, 0x2d096b30
rep stosb byte [rdi], al
mov dword [rsp - 0x1c], 0x480b9bb8
test dl, dl
jne 0x140086fb8
mov rax, qword [rsi + 0x78]
cmp rax, 0x78
mov dword [rsp - 0x44], 0x102f38cf
jbe 0x140086e52
xchg rcx, r11
mov r11, qword [rsi]
xchg rcx, r11
jmp 0x140086e66
test rax, rax
xchg r9, rcx
mov r9, r12
xchg r9, rcx
cmovne rcx, rsi
mov dword [rsp - 0xc], edi
mov rax, qword [rcx]
lea r8, [rbp]
mov r9d, 0x359f824f
add r9d, 0x43666e2c
xor r9d, 0x377d2aee
xor r9d, 0x40060aef
sub r9d, 0xe7ecd22
xchg r13, rdx
mov r13, r15
xchg rdx, r13
call qword [rax + 8]
xchg rsi, rsi
test al, al
je 0x140086fb8
mov rdi, qword [rbp + 0x68]
mov dword [rsp - 0x3c], esp
test rdi, rdi
je 0x140086fb8
mov eax, dword [rbp + 0x118]
mov dword [rsp - 0x44], 0x57251c57
cmp eax, 6
jne 0x140086fb0
mov eax, dword [rbp + 0x11c]
mov dword [rsp - 0x2c], ebp
sub eax, 1
je 0x140086f77
sub eax, 1
mov r10, r10
je 0x140086f77
sub eax, 1
je 0x140086f43
cmp eax, 1
mov dword [rsp - 0x24], edi
jne 0x140086fb8
xchg rdx, rcx
mov rcx, rsi
xchg rcx, rdx
lea rcx, [rbp - 0x80]
call fcn.140087170
xchg r14, r14
xchg r9, r14
mov r14, r9
xchg r14, r9
xchg rdi, r8
mov rdi, r8
xchg rdi, r8
mov rdx, rax
xchg rsp, rsp
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
call fcn.14008c6f0
jmp 0x140086ffd
xchg rsi, rdx
mov rsi, rdx
xchg rsi, rdx
lea rcx, [rbp - 0x80]
call fcn.140087170
xchg r14, r14
mov r9, r14
xchg r8, r9
mov r9, rdi
xchg r9, r8
mov rdx, rax
mov r15, r15
mov rcx, rbx
call fcn.14008dda0
jmp 0x140086ffd
xchg r10, rdx
mov r10, rsi
xchg r10, rdx
lea rcx, [rbp - 0x80]
call fcn.140087170
mov dword [rsp - 0x34], 0x28ae25e
mov r9, r14
xchg rdi, r8
mov rdi, r8
xchg rdi, r8
mov rdx, rax
mov rcx, rbx
xchg rbx, rbx
call fcn.14008d210
jmp 0x140086ffd
cmp eax, 0xa
jmp 0x140086efd
xchg r9, r12
mov qword [rbx], r9
xchg r9, r12
xchg r13, r12
mov qword [rbx + 8], r13
xchg r12, r13
xchg r12, rdx
mov qword [rbx + 0x10], rdx
xchg rdx, r12
mov qword [rbx + 0x18], 0x5f35e7be
add qword [rbx + 0x18], 0x1eaa3f21
xor qword [rbx + 0x18], 0x49ec6be2
xor qword [rbx + 0x18], 0x2e36fef3
sub qword [rbx + 0x18], 0x1a3ab3cd
xchg r14, rcx
mov r14, rsi
xchg rcx, r14
call fcn.1400877b0
lea r11, [rsp + 0x460]
mov rax, rbx
mov dword [rsp - 0xc], 0x29758b66
xchg r14, rbx
mov r14, qword [r11 + 0x30]
xchg r14, rbx
mov rsi, qword [r11 + 0x38]
xchg rbx, rbx
xchg rdi, rsp
mov rsp, qword [r11 + 0x40]
xchg rdi, rsp
mov rsp, r11
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rbp
ret