Function at 0x14008a6f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
xchg rbp, r15
mov qword [rsp + 0x18], r15
xchg r15, rbp
push rsi
xchg rbx, rbx
nop
sub rsp, 8
mov qword [rsp], rdi
push r14
sub rsp, 0x60
movsxd rax, dword [rcx + 0x3c]
xchg rdx, rdx
xchg rdx, r8
mov r14, r8
xchg rdx, r8
xchg rsi, r12
mov r12, r8
xchg rsi, r12
xchg rcx, rbx
mov rcx, rbx
xchg rcx, rbx
mov edx, dword [rax + rcx + 0x98]
mov dword [rsp - 0x34], 0x104e34a4
test edx, edx
je 0x14008a7d5
cmp dword [rax + rcx + 0x9c], 0
mov dword [rsp - 0x38], esp
je 0x14008a7d5
call fcn.140085b00
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
test rax, rax
mov dword [rsp - 0x20], edx
je 0x14008a7d5
movzx r8d, word [rax + 0xe]
xor ebp, ebp
movzx ecx, word [rax + 0xc]
mov r13, r13
mov edx, ebp
add r8d, ecx
je 0x14008a7d5
lea rcx, [rax + 0x10]
mov dword [rsp - 0x40], 0x71f9104b
mov eax, dword [rcx]
test eax, eax
js 0x14008a7b3
cmp ax, 0x10
xchg r13, r13
je 0x14008a80b
inc edx
nop
sub rcx, 0x7655babb
add rcx, 0x7655bac3
cmp edx, r8d
mov dword [rsp - 0x34], 0x26ce1dd1
jb 0x14008a79c
xor al, al
lea r11, [rsp + 0x60]
mov rbp, rbp
mov rbx, qword [r11 + 0x28]
xchg rbp, rsi
mov rsi, qword [r11 + 0x30]
xchg rbp, rsi
xchg rsp, r11
mov r11, rsp
xchg r11, rsp
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
pop rsi
ret
mov edx, dword [rcx + 4]
xchg rdi, rdi
test edx, edx
jns 0x14008a7d5
btr edx, 0x1f
add rdx, rdi
mov dword [rsp - 0x18], ebp
je 0x14008a7d5
mov r8d, 0x413c12cd
add r8d, 0x32939645
add r8d, 0x2ec9a88
xor r8d, 0x76bc439b
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.14008acb0
test rax, rax
mov dword [rsp - 0xc], edx
je 0x14008a7d5
mov r8d, 0x528c3411
xor r8d, 0x7a516449
sub r8d, 0x206bbe7
xor r8d, 0x7b0f358f
xor r8d, 0x5dd9a5f7
xchg rdi, rax
mov rdx, rdi
xchg rdi, rax
xchg r8, rdi
mov rcx, r8
xchg r8, rdi
call fcn.14008ac40
mov dword [rsp - 0x40], 0x65365cba
test rax, rax
je 0x14008a7d5
mov edx, dword [rax]
mov dword [rsp - 0x28], 0x26ac3369
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
call fcn.140085b00
xchg r8, rax
mov rax, r8
xchg r8, rax
test rax, rax
je 0x14008a7d5
xchg rdi, rdi
mov eax, 0x4300c52f
sub eax, 0x251360f8
add eax, 0x2fba87a6
sub eax, 0xb1abcdd
sub eax, 0x428d2e05
mov dword [rsp + 0x20], 0x7ba1b2f3
sub dword [rsp + 0x20], 0x107b5bf3
sub dword [rsp + 0x20], 0x545ea520
add dword [rsp + 0x20], 0x5f7834ab
sub dword [rsp + 0x20], 0x75f6e599
mov word [rsp + 0x3c], ax
mov rdi, rdi
mov dword [rsp + 0x24], 0x73385474
sub dword [rsp + 0x24], 0x6d0f5d51
add dword [rsp + 0x24], 0x60bbaa78
xor dword [rsp + 0x24], 0x6689a170
mov dword [rsp + 0x28], 0x43dad5a6
xor dword [rsp + 0x28], 0xa3803c5
sub dword [rsp + 0x28], 0x2dc2c151
sub dword [rsp + 0x28], 0x1bd81431
mov dword [rsp + 0x2c], 0x14c7238b
xor dword [rsp + 0x2c], 0xdf7ac0b
add dword [rsp + 0x2c], 0x81fe2cf
xor dword [rsp + 0x2c], 0x6afed50d
sub dword [rsp + 0x2c], 0x4b3ca65b
mov dword [rsp + 0x30], 0x3e61899e
xor dword [rsp + 0x30], 0x666c7748
xor dword [rsp + 0x30], 0x61246ce
sub dword [rsp + 0x30], 0x5dcbb72d
mov dword [rsp + 0x34], 0x32be781c
sub dword [rsp + 0x34], 0x2079be6d
add dword [rsp + 0x34], 0x69bb57a4
sub dword [rsp + 0x34], 0x7b8e1068
mov dword [rsp + 0x38], 0x3708c29b
xor dword [rsp + 0x38], 0x5be2ab02
xor dword [rsp + 0x38], 0x499bfa2b
sub dword [rsp + 0x38], 0x251592c8
mov qword [rsp + 0x80], rbp
mov dword [rsp - 0x20], edx
mov rax, qword [rsp + 0x80]
nop dword [rax]
nop word [rax + rax]
xchg r8, rcx
mov r8, qword [rsp + 0x80]
xchg r8, rcx
xchg rdx, rax
mov rdx, qword [rsp + 0x80]
xchg rdx, rax
and cl, 3
shl cl, 3
mov dword [rsp - 0x2c], 0x408795b0
movzx edx, word [rsp + rax*2 + 0x20]
mov eax, 0x7b6529bf
xor eax, 0x4b0e2d08
add eax, 0x70e5a8a
add eax, 0x43abb63
shr eax, cl
movzx ecx, al
mov dword [rsp - 0x14], esi
xchg r10, rax
mov r10, qword [rsp + 0x80]
xchg r10, rax
xor cx, dx
mov word [rsp + rax*2 + 0x3e], cx
xchg r13, rax
mov r13, qword [rsp + 0x80]
xchg r13, rax
inc rax
mov r15, r15
mov qword [rsp + 0x80], rax
xchg r11, rax
mov r11, qword [rsp + 0x80]
xchg r11, rax
cmp rax, 0xf
jb 0x14008aa06
mov r13, r13
lea rax, [r8 + 6]
mov word [rsp + 0x5c], bp
lea rdi, [rsp + 0x3e]
sub rdi, rax
mov dword [rsp - 0x18], 0x659da6e3
nop word [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
mov r13, r13
jne 0x14008aada
add rax, 2
test ecx, ecx
jne 0x14008aab9
xchg r9, r9
xor eax, eax
lea rdi, [rsp + 0x3e]
mov ecx, 0x20d3de9f
add ecx, 0x75e4137
xor ecx, 0x508fff92
sub ecx, 0x7047770e
xor ecx, 0x8766939
rep stosb byte [rdi], al
mov r13, r13
test edx, edx
jne 0x14008a7d5
mov eax, dword [r8 + 0x28]
xor eax, 0x2d12297d
mov dword [rsp - 0xc], esp
cmp eax, 0xd3fd2dc0
jne 0x14008a7d5
cmp dword [r8 + 0x2c], 0x10000
mov dword [rsp - 0x14], edi
jne 0x14008a7d5
mov eax, dword [r8 + 0x30]
mov dword [r14], eax
mov eax, dword [r8 + 0x34]
mov r10, r10
mov dword [rsi], eax
mov al, 0x36
sub al, 0xc
sub al, 0x27
sub al, 2
jmp 0x14008a7d7