Function at 0x1400a9190
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov esi, r9d
test ecx, ecx
je 0x1400a9204
mov eax, esi
xor eax, 0x5bc37c1f
mov ecx, edx
mov edx, eax
mov r8d, 0x6afd230a
call fcn.1400aa7f0
test al, 1
je 0x1400a9239
movzx eax, byte [0x1404b1273]
cmp al, 0xab
je 0x1400a9331
mov edi, esi
xor edi, 0x2a127a30
lea rbx, [rsp + 0x30]
nop dword [rax]
mov rcx, rbx
mov edx, edi
mov r8d, 0xab4ce77e
call fcn.1400adc00
test al, 1
jne 0x1400a92d4
cmp byte [rsp + 0x30], 0xab
jne 0x1400a91e0
jmp 0x1400a9331
test edx, edx
je 0x1400a9284
movzx eax, byte [0x1404b12ad]
cmp al, 0x5d
je 0x1400a945c
mov cl, 0xfa
nop dword [rax]
mov al, 0x87
lock cmpxchg byte [0x1404b12ad], cl
je 0x1400a93e9
cmp al, 0x5d
jne 0x1400a9220
jmp 0x1400a945c
movzx eax, byte [0x1404b1231]
cmp al, 0x77
je 0x1400a93dd
mov edi, esi
xor edi, 0x61e7d628
lea rbx, [rsp + 0x30]
nop word cs:[rax + rax]
mov rcx, rbx
mov edx, edi
mov r8d, 0xc4c64e94
call fcn.1400aae20
test al, 1
jne 0x1400a933d
cmp byte [rsp + 0x30], 0x77
jne 0x1400a9260
jmp 0x1400a93dd
movzx eax, byte [0x1404b1299]
movzx ecx, byte [0x1404b2b8c]
add cl, 0x76
cmp al, cl
je 0x1400a94a0
xor esi, 0x671cc609
lea rdi, [rsp + 0x30]
nop dword [rax + rax]
mov rcx, rdi
mov edx, esi
mov r8d, 0x311f73e0
call fcn.1400ada10
test al, 1
jne 0x1400a9465
cmp byte [rsp + 0x30], 0x6d
jne 0x1400a92b0
jmp 0x1400a94a0
xor eax, eax
lea rcx, [0x1404b1250]
lea rdx, [0x1403eb730]
nop word cs:[rax + rax]
cdqe
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
mov r8d, dword [0x1404b2b88]
mov r9d, r8d
xor r9d, 0x41637b52
and r8d, 0x41637b52
lea r8d, [r9 + r8*2]
add eax, r8d
cmp eax, 0x23
jl 0x1400a92f0
xor esi, 0x2a94d9ef
mov ecx, esi
mov edx, 0x7577f85b
call fcn.1400ab750
lea rax, [0x1404b1250]
jmp 0x1400a94a7
xor edi, edi
mov ebx, esi
xor ebx, 0xff7879a7
lea r14, [rsp + 0x30]
mov ebp, 0x5ae1ca9
mov r15d, 0x4a30f008
lea r12, [0x1404b1220]
nop
mov ecx, edi
mov rdx, r14
mov r8d, ebx
mov r9d, 0x6f4aa125
call fcn.1400ad980
mov rcx, qword [rsp + 0x30]
mov r9d, dword [0x1404b2b88]
add r9d, ebp
xor r9d, esi
mov dword [rsp + 0x20], 0xe8567da9
mov edx, edi
mov r8, r14
call fcn.1400ab7d0
movzx r13d, byte [rsp + 0x30]
mov eax, dword [0x1404b2b88]
add eax, r15d
mov r8d, eax
xor r8d, eax
not r8d
and r8d, esi
xor r8d, eax
mov ecx, edi
mov rdx, r14
mov r9d, 0x27d00664
call fcn.1400ab4e0
mov rax, qword [rsp + 0x30]
mov byte [rax + r12], r13b
inc edi
cmp edi, 0x11
jl 0x1400a9360
mov al, 0x77
xchg byte [0x1404b1231], al
lea rax, [0x1404b1220]
jmp 0x1400a94a7
xor edi, edi
mov ebp, 0x15b0df44
lea rbx, [rsp + 0x30]
lea r14, [0x1404b12a0]
lea r15, [0x1403eb780]
nop word cs:[rax + rax]
mov r8d, dword [0x1404b2b88]
add r8d, ebp
xor r8d, esi
mov ecx, edi
mov rdx, rbx
mov r9d, 0x2ab23da8
call fcn.1400ab4e0
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rdi + r15]
mov edx, ecx
xor dl, cl
not dl
and dl, byte [rax + r14]
xor dl, cl
mov byte [rdi + r14], dl
lea eax, [rdi + 1]
cmp eax, 0xc
jg 0x1400a9454
inc rdi
jmp 0x1400a9410
mov al, 0x5d
xchg byte [0x1404b12ad], al
lea rax, [0x1404b12a0]
jmp 0x1400a94a7
xor eax, eax
lea rcx, [0x1404b1290]
lea rdx, [0x1403eb770]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 8
jg 0x1400a9498
inc rax
jmp 0x1400a9480
mov al, 0x6d
xchg byte [0x1404b1299], al
lea rax, [0x1404b1290]
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret