Function at 0x140193510
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x48
test ecx, ecx
je 0x140193569
mov ecx, edx
mov edx, 0xeb03f27d
mov r8d, 0x784a1adf
call fcn.1400712d0
test al, 1
je 0x1401935d0
movzx eax, byte [0x14052c989]
cmp al, 0xeb
je 0x1401936a8
mov cl, 0x2e
nop dword [rax + rax]
mov al, 0xfa
lock cmpxchg byte [0x14052c989], cl
je 0x140193659
cmp al, 0xeb
jne 0x140193550
jmp 0x1401936a8
test edx, edx
je 0x140193617
movzx eax, byte [0x14052ca4d]
cmp al, 0x75
je 0x1401937a8
lea rsi, [rsp + 0x40]
lea rdi, [rsp + 0x3f]
nop word [rax + rax]
mov rcx, rsi
mov rdx, rdi
mov r8d, 0x8f8ca27a
mov r9d, 0xe72b6fc4
call fcn.1401956c0
cmp byte [rsp + 0x41], 0
jne 0x140193734
movzx ecx, byte [rsp + 0x3f]
mov edx, 0x9a20cbae
mov r8d, 0x1548ae0d
call fcn.140193ed0
test al, 1
je 0x140193590
jmp 0x1401937a8
movzx eax, byte [0x14052cae5]
cmp al, 0x5b
je 0x140193728
lea rsi, [rsp + 0x40]
nop word cs:[rax + rax]
mov rcx, rsi
mov edx, 0x898e2feb
mov r8d, 0xec5586e2
call fcn.1401939d0
test al, 1
jne 0x1401936b4
cmp byte [rsp + 0x40], 0x5b
jne 0x1401935f0
jmp 0x140193728
lea rcx, [rsp + 0x40]
mov edx, 0xe9d5a170
mov r8d, 0xacd61a42
call fcn.1401938e0
cmp byte [rsp + 0x40], 0x84
je 0x14019381a
mov cl, 0x1d
nop dword [rax]
mov al, 0xbb
lock cmpxchg byte [0x14052ca6d], cl
je 0x1401937b1
cmp al, 0x84
jne 0x140193640
jmp 0x14019381a
xor r8d, r8d
lea rax, [0x14052c980]
lea rcx, [0x14044fe10]
mov edx, 0x76a2eb09
nop
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
add byte [r8 + rax], r9b
mov r9d, dword [0x14052f5e8]
add r9d, edx
mov r10d, r8d
xor r10d, r9d
and r9d, r8d
lea r8d, [r10 + r9*2]
cmp r8d, 9
jl 0x140193670
mov ecx, 0x70f5ca80
mov edx, 0x9fdb76a4
call fcn.1401939c0
lea rax, [0x14052c980]
jmp 0x140193821
xor edi, edi
lea rsi, [rsp + 0x40]
nop dword [rax + rax]
mov ecx, edi
mov rdx, rsi
mov r8d, 0xa147fd2a
mov r9d, 0x406c36f2
call fcn.140193a50
movzx ebx, byte [rsp + 0x40]
movsxd rdi, edi
mov rcx, rdi
mov rdx, rsi
mov r8d, 0xbf239692
mov r9d, 0x8b5257f5
call fcn.140195690
mov rdx, qword [rsp + 0x40]
mov dword [rsp + 0x28], 0x4d0ed324
mov dword [rsp + 0x20], 0x7c369957
mov ecx, ebx
mov r8d, edi
mov r9, rsi
call fcn.140193ea0
mov edi, dword [rsp + 0x40]
cmp edi, 0x15
jl 0x1401936c0
mov al, 0x5b
xchg byte [0x14052cae5], al
lea rax, [0x14052cad0]
jmp 0x140193821
xor edi, edi
lea rsi, [rsp + 0x40]
lea rbx, [0x14044fed0]
lea r14, [0x14052ca40]
nop dword [rax]
mov ecx, edi
mov rdx, rsi
mov r8d, 0x81517fb0
mov r9d, 0xc8065800
call fcn.140195650
movzx eax, byte [rsp + 0x40]
movsxd rcx, edi
movzx edx, byte [rcx + rbx]
mov r8d, eax
xor r8b, dl
not al
not dl
and dl, al
or dl, r8b
not dl
add dl, dl
add dl, r8b
mov byte [rcx + r14], dl
mov eax, dword [0x14052f5e8]
lea edi, [rax + rcx]
add edi, 0x76a2eb09
cmp edi, 0xd
jl 0x140193750
mov al, 0x75
xchg byte [0x14052ca4d], al
lea rax, [0x14052ca40]
jmp 0x140193821
xor edi, edi
lea rsi, [rsp + 0x40]
nop dword [rax + rax]
movsxd rdi, edi
mov rcx, rdi
mov edx, edi
mov r8d, 0xc7831f4e
mov r9d, 0x835923e5
call fcn.140193840
mov r9d, dword [0x14052f5e8]
lea r8d, [r9 - 0x25ab0809]
add r9d, 0xda267f10
mov ecx, edi
mov rdx, rsi
call fcn.140195680
mov edi, dword [rsp + 0x40]
mov ecx, edi
mov edx, 0x1e6bb55d
mov r8d, 0x19b7d54d
call fcn.140193a70
test al, 1
je 0x1401937c0
mov al, 0x84
xchg byte [0x14052ca6d], al
lea rax, [0x14052ca60]
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r14
ret