Function at 0x1400889d0
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, r8
mov qword [rsp + 0x10], r8
xchg r8, rbx
xchg rbp, rdi
mov qword [rsp + 0x18], rdi
xchg rdi, rbp
nop
sub rsp, 8
mov qword [rsp], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r14
xchg rdx, rdx
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
movsxd rax, dword [rcx + 0x3c]
mov r10, r10
mov r14, rdx
xchg r13, r8
mov rsi, r13
xchg r8, r13
mov rbx, rcx
mov edx, dword [rax + rcx + 0x98]
test edx, edx
xchg r14, r14
je 0x140088ab2
cmp dword [rax + rcx + 0x9c], 0
je 0x140088ab2
call fcn.140083da0
xchg r9, r9
xchg r9, rax
mov rdi, r9
xchg r9, rax
test rax, rax
mov r14, r14
je 0x140088ab2
movzx r8d, word [rax + 0xe]
xor ebp, ebp
movzx ecx, word [rax + 0xc]
mov dword [rsp - 0x40], 0x7296c084
mov edx, ebp
add r8d, ecx
je 0x140088ab2
xchg r12, r12
lea rcx, [rax + 0x10]
mov eax, dword [rcx]
test eax, eax
mov r11, r11
js 0x140088a98
cmp ax, 0x10
je 0x140088ae5
mov r11, r11
inc edx
nop
sub rcx, 0x33c0c61f
add rcx, 0x33c0c627
cmp edx, r8d
jb 0x140088a7e
xor al, al
mov rsp, rsp
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
xchg r11, rsp
mov r11, rsp
xchg r11, rsp
pop r14
xchg r12, r12
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
ret
mov edx, dword [rcx + 4]
xchg rsp, rsp
test edx, edx
jns 0x140088ab2
btr edx, 0x1f
add rdx, rdi
xchg rsi, rsi
je 0x140088ab2
mov r8d, 0x3ec830b
xor r8d, 0x3422877c
sub r8d, 0xab3a664
xor r8d, 0x71c78e63
sub r8d, 0x5cddd06f
xchg rdi, r15
mov rcx, r15
xchg rdi, r15
call fcn.140088fb0
mov r8, r8
test rax, rax
je 0x140088ab2
mov r8d, 0x549216a6
xor r8d, 0x697833a2
sub r8d, 0x69027d0
xor r8d, 0x3759f93d
xchg r14, rdx
mov r14, rax
xchg r14, rdx
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.140088f40
mov rbx, rbx
test rax, rax
je 0x140088ab2
mov edx, dword [rax]
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
call fcn.140083da0
xchg rbp, rbp
xchg r8, r10
mov r10, rax
xchg r8, r10
test rax, rax
je 0x140088ab2
mov dword [rsp - 0x40], edi
mov eax, 0xb6b8a5c
add eax, 0x63facf41
xor eax, 0x68ad3aa9
add eax, 0x4db17e7e
sub eax, 0x557ce15a
mov dword [rsp + 0x20], 0x1a0905bb
add dword [rsp + 0x20], 0x3ac99cbb
add dword [rsp + 0x20], 0x2a5cccf9
sub dword [rsp + 0x20], 0x7f256f42
mov word [rsp + 0x3c], ax
mov dword [rsp - 0x1c], ecx
mov dword [rsp + 0x24], 0x13fbd086
add dword [rsp + 0x24], 0x22fa1f8a
add dword [rsp + 0x24], 0x175d378b
add dword [rsp + 0x24], 0x26fc9d51
sub dword [rsp + 0x24], 0x74d3c4a4
mov dword [rsp + 0x28], 0x52f38fe7
sub dword [rsp + 0x28], 0x293a6a18
xor dword [rsp + 0x28], 0x568e0424
xor dword [rsp + 0x28], 0x47817d1a
sub dword [rsp + 0x28], 0x38ab5cb3
mov dword [rsp + 0x2c], 0x189e279d
xor dword [rsp + 0x2c], 0x27e110a3
add dword [rsp + 0x2c], 0x23580fe2
xor dword [rsp + 0x2c], 0x22bc9dbc
sub dword [rsp + 0x2c], 0x4008da58
mov dword [rsp + 0x30], 0x537912b0
sub dword [rsp + 0x30], 0x22c97b19
add dword [rsp + 0x30], 0x5e9dfb8
xor dword [rsp + 0x30], 0x368e777b
mov dword [rsp + 0x34], 0x352be712
add dword [rsp + 0x34], 0x3d5089ae
xor dword [rsp + 0x34], 0x5026119b
xor dword [rsp + 0x34], 0x22396113
mov dword [rsp + 0x38], 0x55c73a68
sub dword [rsp + 0x38], 0x541b5387
add dword [rsp + 0x38], 0x58606755
sub dword [rsp + 0x38], 0x35c967f1
sub dword [rsp + 0x38], 0x2423e610
mov qword [rsp + 0x80], rbp
xchg rbx, rax
mov rbx, qword [rsp + 0x80]
xchg rbx, rax
nop dword [rax]
mov dword [rsp - 0x40], 0x22ea2c4a
nop word [rax + rax]
mov rcx, qword [rsp + 0x80]
xchg r10, rax
mov r10, qword [rsp + 0x80]
xchg r10, rax
and cl, 3
mov r14, r14
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x20]
mov eax, 0xe2d0b40
add eax, 0x5d0b1897
sub eax, 0x24fe37a7
xor eax, 0x2b9c464f
sub eax, 0x438e5104
shr eax, cl
mov dword [rsp - 0x2c], 0x515a9ab6
movzx ecx, al
mov rax, qword [rsp + 0x80]
xor cx, dx
mov dword [rsp - 0x14], ebx
mov word [rsp + rax*2 + 0x3e], cx
xchg r14, rax
mov r14, qword [rsp + 0x80]
xchg r14, rax
inc rax
mov r10, r10
xchg r15, rax
mov qword [rsp + 0x80], r15
xchg r15, rax
xchg r12, rax
mov r12, qword [rsp + 0x80]
xchg r12, rax
cmp rax, 0xf
mov dword [rsp - 0x3c], 0x113af2b8
jb 0x140088cf2
lea rax, [r8 + 6]
mov word [rsp + 0x5c], bp
mov dword [rsp - 0x20], 0x1b57561b
lea rdi, [rsp + 0x3e]
sub rdi, rax
nop word [rax + rax]
xchg r12, r12
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
mov dword [rsp - 0x34], esi
jne 0x140088dd2
sub rax, 0xfffffffffffffffe
test ecx, ecx
mov dword [rsp - 0x38], edx
jne 0x140088daf
xor eax, eax
lea rdi, [rsp + 0x3e]
mov ecx, 0x64ae227f
sub ecx, 0x4c0036d2
xor ecx, 0x7d1dfa58
sub ecx, 0x652dcf2a
sub ecx, 0x8242bc
rep stosb byte [rdi], al
mov dword [rsp - 0x34], 0x106fda39
test edx, edx
jne 0x140088ab2
mov eax, dword [r8 + 0x28]
xor eax, 0x7a8c338e
mov dword [rsp - 0x18], 0x14ff5458
cmp eax, 0x84633733
jne 0x140088ab2
cmp dword [r8 + 0x2c], 0x10000
jne 0x140088ab2
xchg rcx, rcx
mov eax, dword [r8 + 0x30]
mov dword [r14], eax
mov eax, dword [r8 + 0x34]
xchg rdi, rdi
mov dword [rsi], eax
mov al, 0x28
sub al, 0xe
sub al, 0x1a
add al, 0x4f
xor al, 0x4e
jmp 0x140088ab7