Function at 0x1400a82ac
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov rdi, rdx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x68], rcx
mov rax, qword [rsp + 0x68]
movups xmmword [rax], xmm0
mov edx, 0x989680
mov rcx, rdi
call fcn.14002a92a
imul rax, rax, 0x64
mov qword [rsp + 0x70], rax
seto byte [rsp + 0x78]
mov rax, qword [rsp + 0x70]
mov al, byte [rsp + 0x78]
mov byte [rsp + 0x23], al
xor eax, eax
lea rcx, [0x1400ff660]
movsxd rdx, dword [rax + rcx]
xor dword [rsp + rdx*4 + 0x30], 0x78c104ba
add rax, 4
cmp rax, 0x1c
jne 0x1400a8315
movabs rax, 0xfe624e212ac18000
add rdi, rax
mov eax, 0x75bbd03d
mov ebx, 0x61ac573a
cmovo ebx, eax
mov eax, 0x4ae4c48a
mov cl, 1
mov dword [rsp + 0x24], ecx
xor ecx, ecx
mov qword [rsp + 0x60], rcx
lea rsi, [0x1400ff67c]
lea rbp, [0x1400ff640]
lea r14, [0x1400ff68c]
xor ecx, ecx
mov qword [rsp + 0x58], rcx
mov r15d, dword [rsp + 0x48]
mov ecx, 0x6793fd2a
xor r15d, ecx
mov r12d, dword [rsp + 0x40]
mov ecx, 0x50c1eb83
xor r12d, ecx
mov r13d, dword [rsp + 0x38]
mov ecx, 0x452455bd
xor r13d, ecx
cmp eax, 0x4ae4c489
jle 0x1400a83bc
cmp eax, 0x775b11f7
jg 0x1400a83d6
cmp eax, 0x4ae4c48a
je 0x1400a84bf
cmp eax, 0x634c96ff
jne 0x1400a839a
jmp 0x1400a8414
cmp eax, 0x13cd7de5
je 0x1400a83e9
cmp eax, 0x2f7d4ef2
je 0x1400a8400
cmp eax, 0x47c49478
jne 0x1400a839a
jmp 0x1400a8486
cmp eax, 0x775b11f8
je 0x1400a840a
cmp eax, 0x7cbfe930
jne 0x1400a839a
jmp 0x1400a8509
mov rcx, qword [rsp + 0x28]
mov r8d, 0x3b9ac9ff
xor edx, edx
call fcn.14001c234
mov eax, r15d
jmp 0x1400a839a
call fcn.140011264
mov eax, r13d
jmp 0x1400a839a
call fcn.140011264
mov eax, r12d
jmp 0x1400a839a
mov rcx, qword [rsp + 0x88]
mov edx, 0x989680
call fcn.14002a52a
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x28], 0
sets cl
mov rax, qword [rsp + 0x28]
cmp rax, 0x3b9ac9ff
setg al
or al, cl
test byte [rsp + 0x24], 1
je 0x1400a8466
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rsp + rdx*4 + 0x30], 0x28a16966
add rcx, 4
cmp rcx, 8
jne 0x1400a8450
test al, al
mov eax, 0x4f32944c
mov ecx, 0x20400099
cmovne eax, ecx
xor eax, dword [rsp + 0x44]
mov dword [rsp + 0x24], 0
jmp 0x1400a8373
mov qword [rsp + 0x88], rdi
cmp byte [rsp + 0x60], 0
jne 0x1400a84ad
xor eax, eax
movsxd rcx, dword [rax + rsi]
xor dword [rsp + rcx*4 + 0x30], 0x316dbcb9
add rax, 4
cmp rax, 0x10
jne 0x1400a8497
mov eax, dword [rsp + 0x3c]
xor eax, ebx
mov cl, 1
mov qword [rsp + 0x60], rcx
jmp 0x1400a8373
mov al, byte [rsp + 0x78]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x28], rax
cmp byte [rsp + 0x58], 0
jne 0x1400a84ec
xor eax, eax
movsxd rcx, dword [rax + rbp]
xor dword [rsp + rcx*4 + 0x30], 0x7a21c57f
add rax, 4
cmp rax, 0x18
jne 0x1400a84d6
cmp byte [rsp + 0x23], 0
mov eax, 0x3f0590c2
mov ecx, 0x57bc4a48
cmovne eax, ecx
xor eax, dword [rsp + 0x30]
mov cl, 1
jmp 0x1400a836e
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x68]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
mov rax, qword [rsp + 0x80]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret