Function at 0x1401138d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov esi, r9d
test ecx, ecx
je 0x140113953
mov eax, 0x2ea84cd
add eax, dword [0x140537b00]
cmp edx, eax
jne 0x1401139a4
mov eax, esi
not eax
mov ecx, esi
xor ecx, 0x2c5e6e1b
and eax, 0xd3a191e4
or ecx, eax
not ecx
or ecx, eax
mov edx, 0x73d4840f
call fcn.1401151b0
test al, 1
jne 0x140113ac7
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0x7a
lock cmpxchg byte [0x14052cc65], cl
je 0x140113a6b
movzx edx, byte [0x140537b10]
add dl, 0xe6
cmp al, dl
jne 0x140113930
jmp 0x140113ac7
test edx, edx
je 0x140113a12
mov ecx, esi
xor ecx, 0x1edd37ae
mov edx, 0x55af0027
call fcn.1401152f0
test al, 1
jne 0x140113c1a
nop word cs:[rax + rax]
movzx ecx, byte [0x140537b10]
lea eax, [rcx + 0x48]
add cl, 0x95
lock cmpxchg byte [0x14052cc28], cl
je 0x140113b9f
cmp al, 0x2e
jne 0x140113980
jmp 0x140113c1a
movzx eax, byte [0x14052cdd3]
cmp al, 0x84
je 0x140113b93
mov edi, esi
xor edi, 0xa79ad203
lea rbx, [rsp + 0x40]
movzx ecx, byte [0x140537b10]
lea eax, [rcx - 0x3b]
mov edx, ecx
xor dl, 0xaa
and cl, 0x2a
add cl, cl
add cl, dl
lock cmpxchg byte [0x14052cdd3], cl
sete dl
mov dword [rsp + 0x20], 0xa26e850
mov ecx, eax
mov r8, rbx
mov r9d, edi
call fcn.140114e20
test al, 1
jne 0x140113ad3
movzx eax, byte [0x140537b10]
add al, 0xdc
cmp byte [rsp + 0x40], al
jne 0x1401139c0
jmp 0x140113b93
movzx eax, byte [0x14052cd25]
cmp al, 0x87
je 0x140113ca7
mov edi, esi
xor edi, 0x91705d5b
lea rbx, [rsp + 0x40]
lea r14, [rsp + 0x3f]
nop word cs:[rax + rax]
mov rcx, rbx
mov rdx, r14
mov r8d, edi
mov r9d, 0xb0765652
call fcn.140114ef0
cmp byte [rsp + 0x41], 0
jne 0x140113c26
cmp byte [rsp + 0x3f], 0x87
jne 0x140113a40
jmp 0x140113ca7
xor ecx, ecx
lea rbx, [0x14052cc50]
lea r14, [0x1404650d0]
xor esi, 0xcdd88654
lea rdi, [rsp + 0x40]
nop word cs:[rax + rax]
movsxd r8, ecx
movzx edx, byte [r8 + rbx]
lea rcx, [r14 + r8]
mov dword [rsp + 0x20], esi
mov dword [rsp + 0x28], 0x2653a2ca
mov r9, rdi
call fcn.1401154c0
mov ecx, dword [rsp + 0x40]
test al, 1
je 0x140113a90
movzx eax, byte [0x140537b10]
add al, 0xe6
xchg byte [0x14052cc65], al
lea rax, [0x14052cc50]
jmp 0x140113cae
xor eax, eax
lea r13, [0x140465240]
mov edi, esi
xor edi, 0x62c9818
lea rbx, [rsp + 0x40]
mov ebp, esi
xor ebp, 0x108bd7e9
xor esi, 0x2611121e
mov r12d, 0x2ea84ce
nop dword [rax]
movsxd r14, eax
lea rax, [0x14052cdd0]
movzx r15d, byte [r14 + rax]
lea rcx, [r14 + r13]
mov rdx, rbx
mov r8d, edi
mov r9d, 0x27e0afb2
call fcn.140115440
movzx edx, byte [rsp + 0x40]
mov dword [rsp + 0x20], 0xd92dc139
mov ecx, r15d
mov r8, rbx
mov r9d, ebp
call fcn.1401153d0
movzx r15d, byte [rsp + 0x40]
mov ecx, r14d
mov rdx, rbx
mov r8d, esi
mov r9d, 0x493fb587
call fcn.1401150c0
mov rax, qword [rsp + 0x40]
mov byte [rax], r15b
mov eax, dword [0x140537b00]
add eax, r12d
add r14d, 0x9aa7b59c
mov ecx, r14d
xor ecx, eax
and r14d, eax
lea eax, [rcx + r14*2]
add eax, 0x65584a64
cmp eax, 3
jl 0x140113b00
mov al, 0x84
xchg byte [0x14052cdd3], al
lea rax, [0x14052cdd0]
jmp 0x140113cae
xor ebp, ebp
xor esi, 0x1de0cef1
lea rdi, [rsp + 0x3f]
lea rbx, [rsp + 0x40]
lea r14, [0x14052cc20]
nop dword [rax + rax]
mov dword [rsp + 0x20], 0xdf65814
mov ecx, ebp
mov rdx, rdi
mov r8, rbx
mov r9d, esi
call fcn.140115290
movzx eax, byte [rsp + 0x3f]
mov rcx, qword [rsp + 0x40]
movzx ecx, byte [rcx]
mov edx, eax
xor dl, cl
not al
not cl
and cl, al
or cl, dl
not cl
add cl, cl
add cl, dl
movsxd rax, ebp
mov byte [rax + r14], cl
mov ecx, dword [0x140537b00]
lea ebp, [rcx + rax]
add ebp, 0x2ea84ce
cmp ebp, 8
jl 0x140113bc0
mov al, 0x2e
xchg byte [0x14052cc28], al
lea rax, [0x14052cc20]
jmp 0x140113cae
xor eax, eax
mov ebp, esi
xor ebp, 0xfabf0ac7
lea rdi, [rsp + 0x3f]
lea rbx, [rsp + 0x40]
lea r15, [0x140465190]
lea r12, [0x14052cd10]
nop dword [rax + rax]
movsxd r14, eax
mov dword [rsp + 0x20], ebp
mov dword [rsp + 0x28], 0xe93508dc
mov rcx, r14
mov edx, r14d
mov r8, rdi
mov r9, rbx
call fcn.140115450
movzx eax, byte [rsp + 0x3f]
mov rcx, qword [rsp + 0x40]
add al, byte [rcx + r15]
mov byte [r14 + r12], al
mov eax, r14d
xor eax, 1
and r14d, 1
lea eax, [rax + r14*2]
cmp eax, 0x15
jl 0x140113c50
xor esi, 0x2adeaf72
mov ecx, esi
mov edx, 0x74ef210
call fcn.140115180
lea rax, [0x14052cd10]
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret