Function at 0x1400a8ac0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov esi, r9d
test ecx, ecx
je 0x1400a8b09
test edx, edx
je 0x1400a8b49
movzx eax, byte [0x1404ed38f]
cmp al, 0xf
je 0x1400a8c73
mov cl, 0x4a
nop dword [rax + rax]
mov al, 0xca
lock cmpxchg byte [0x1404ed38f], cl
je 0x1400a8be9
cmp al, 0xf
jne 0x1400a8af0
jmp 0x1400a8c73
test edx, edx
je 0x1400a8ba7
mov ecx, esi
xor ecx, 0x2834790e
mov edx, 0xcd9b22d9
call fcn.1400abde0
test al, 1
jne 0x1400a8cc1
mov cl, 0x52
nop dword [rax]
mov al, 0xf2
lock cmpxchg byte [0x1404ed1d3], cl
je 0x1400a8c7f
cmp al, 0x7f
jne 0x1400a8b30
jmp 0x1400a8cc1
mov ecx, esi
xor ecx, 0x14e2cac
mov edx, 0xb9cac8c1
add edx, dword [0x1404edc00]
call fcn.1400abd80
test al, 1
jne 0x1400a8d2f
mov edi, esi
xor edi, 0xfb73c4f4
lea rbx, [rsp + 0x40]
nop word cs:[rax + rax]
mov rcx, rbx
mov edx, edi
mov r8d, 0x5c7ecd89
call fcn.1400a9860
cmp byte [rsp + 0x41], 0
jne 0x1400a8ccd
cmp byte [rsp + 0x40], 0x85
jne 0x1400a8b80
jmp 0x1400a8d2f
mov edx, esi
xor edx, 0xd7f7f6cc
lea rdi, [rsp + 0x40]
mov rcx, rdi
mov r8d, 0x485b68d8
call fcn.1400a9bc0
cmp byte [rsp + 0x40], 0xc
je 0x1400a8dd6
mov cl, 0x29
nop
mov al, 0xda
lock cmpxchg byte [0x1404ed253], cl
je 0x1400a8d3b
cmp al, 0xc
jne 0x1400a8bd0
jmp 0x1400a8dd6
xor ebp, ebp
mov edi, esi
xor edi, 0x2c741678
lea rbx, [rsp + 0x40]
xor esi, 0x5eae20fb
lea r14, [rsp + 0x3f]
nop word cs:[rax + rax]
mov ecx, ebp
mov rdx, rbx
mov r8d, edi
mov r9d, 0xe16cd1f8
call fcn.1400ac000
movzx edx, byte [rsp + 0x40]
movsxd r15, ebp
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x30], 0x7531a41d
mov rcx, r15
mov r8d, r15d
mov r9, r14
call fcn.1400a9f20
movzx eax, byte [rsp + 0x3f]
mov rcx, qword [rsp + 0x40]
mov byte [rcx], al
mov eax, dword [0x1404edc00]
lea ebp, [rax + r15]
add ebp, 0x4f81c445
cmp ebp, 0xf
jl 0x1400a8c10
mov al, 0xf
xchg byte [0x1404ed38f], al
lea rax, [0x1404ed380]
jmp 0x1400a8ddd
xor edx, edx
lea rax, [0x1404ed1d0]
lea rcx, [0x140427920]
nop
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
mov r8d, edx
xor r8d, 1
and edx, 1
lea edx, [r8 + rdx*2]
cmp edx, 3
jl 0x1400a8c90
xor esi, 0x3920a424
mov ecx, esi
mov edx, 0x73213a06
call fcn.1400ab1b0
lea rax, [0x1404ed1d0]
jmp 0x1400a8ddd
xor ebx, ebx
xor esi, 0xbf240469
lea rdi, [rsp + 0x40]
lea r14, [0x1404ed0a0]
nop word cs:[rax + rax]
mov ecx, ebx
mov rdx, rdi
mov r8d, esi
mov r9d, 0x90f889cf
call fcn.1400ab1e0
movzx eax, byte [rsp + 0x40]
movsxd rcx, ebx
mov byte [rcx + r14], al
mov eax, dword [0x1404edc00]
lea ebx, [rax + rcx]
add ebx, 0x4f81c445
add eax, 0x4f81c44a
cmp ebx, eax
jl 0x1400a8cf0
mov al, 0x85
xchg byte [0x1404ed0a6], al
lea rax, [0x1404ed0a0]
jmp 0x1400a8ddd
xor ecx, ecx
lea r15, [0x1404ed250]
mov ebp, esi
xor ebp, 0x57378fa5
lea rbx, [rsp + 0x3f]
nop word cs:[rax + rax]
movsxd r14, ecx
movzx edx, byte [r14 + r15]
mov dword [rsp + 0x28], ebp
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x30], 0x574e063b
mov rcx, r14
mov r8d, r14d
mov r9, rbx
call fcn.1400a9ba0
movzx edx, byte [rsp + 0x3f]
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1404edc00]
mov r8d, 0x6919fd39
sub r8d, eax
add eax, 0x96e602c6
xor r8d, eax
and r8d, esi
xor r8d, eax
mov dword [rsp + 0x20], r8d
mov dword [rsp + 0x28], 0x3bd3a3be
mov r8d, r14d
mov r9, rdi
call fcn.1400a9cf0
mov ecx, dword [rsp + 0x40]
test al, 1
je 0x1400a8d60
mov al, 0xc
xchg byte [0x1404ed253], al
lea rax, [0x1404ed250]
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret