Function at 0x14027edf0
Capabilities:
Encode data using xor

Disassembly:
push rbx
test ecx, ecx
je 0x14027ee0a
cmp dword [0x14055e93c], 0x1f440812
jne 0x14027ef10
jmp 0x14027eee9
test edx, edx
je 0x14027ee32
movzx eax, byte [0x14055e516]
cmp al, 0x36
je 0x14027eea0
mov cl, 0x70
nop
mov al, 0x7d
lock cmpxchg byte [0x14055e516], cl
je 0x14027ee62
cmp al, 0x36
jne 0x14027ee20
jmp 0x14027eea0
movzx eax, byte [0x14055e5b5]
cmp al, 0xe8
je 0x14027eee0
mov cl, 0xff
nop word cs:[rax + rax]
mov al, 0x7a
lock cmpxchg byte [0x14055e5b5], cl
je 0x14027eea9
cmp al, 0xe8
jne 0x14027ee50
jmp 0x14027eee0
xor eax, eax
lea rcx, [0x14055e510]
lea rdx, [0x14046ab00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 5
jg 0x14027ee98
inc rax
jmp 0x14027ee80
mov al, 0x36
xchg byte [0x14055e516], al
lea rax, [0x14055e510]
pop rbx
ret
xor eax, eax
lea rcx, [0x14055e5a0]
lea rdx, [0x14046ab90]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x14
jg 0x14027eed8
inc rax
jmp 0x14027eec0
mov al, 0xe8
xchg byte [0x14055e5b5], al
lea rax, [0x14055e5a0]
pop rbx
ret
mov eax, dword [0x1405a8058]
mov ecx, dword [0x14055e93c]
neg ecx
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
je 0x14027ef23
nop word cs:[rax + rax]
mov eax, dword [0x1405a8058]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x14027ef10
jmp 0x14027eee9
test edx, edx
je 0x14027efde
movzx eax, byte [0x14055e440]
cmp al, 0xc4
je 0x14027f0c3
mov cl, 0x98
mov edx, 0xe0bbf7ef
lea rax, [fcn.14027edf0]
lea r8d, [rax + rax]
add r8d, 0x460
mov r9d, r8d
not r9d
nop dword [rax]
mov eax, dword [0x1405a8058]
lea r10d, [rax - 1]
imul r10d, eax
test r10b, 1
jne 0x14027efa0
nop word cs:[rax + rax]
mov al, 0x32
lock cmpxchg byte [0x14055e440], cl
sete r10b
cmp dword [0x1405a711c], 0
je 0x14027efd0
nop word [rax + rax]
mov al, 0x32
lock cmpxchg byte [0x14055e440], cl
mov eax, dword [0x14055e93c]
add eax, edx
mov r10d, r8d
xor r10d, eax
not eax
and eax, r9d
or eax, r10d
cmp eax, 0xffffffff
jne 0x14027efa0
jmp 0x14027ef80
test r10b, r10b
jne 0x14027f009
cmp al, 0xc4
jne 0x14027ef60
jmp 0x14027f0c3
movzx eax, byte [0x14055e464]
cmp al, 0xff
je 0x14027f121
mov cl, 0xfe
nop
mov al, 0x80
lock cmpxchg byte [0x14055e464], cl
je 0x14027f0cc
cmp al, 0xff
jne 0x14027eff0
jmp 0x14027f121
xor edx, edx
mov r8d, 1
lea r9, [0x14055e430]
lea r10, [0x14046aa50]
xor r11d, r11d
nop word cs:[rax + rax]
mov eax, dword [0x1405a8058]
mov ecx, dword [0x14055e93c]
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
jne 0x14027f06a
nop dword [rax + rax]
movzx eax, byte [rdx + r10]
add byte [rdx + r9], al
mov eax, dword [0x1405a8058]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x14027f090
movzx ebx, byte [rdx + r9]
movzx ecx, byte [rdx + r10]
sub cl, bl
shl bl, cl
mov eax, ecx
sub al, bl
mul cl
mov ebx, eax
xor bl, cl
and al, cl
add al, al
add bl, cl
add bl, al
mov byte [rdx + r9], bl
jmp 0x14027f050
lea eax, [rdx + 1]
cmp eax, 0xf
jg 0x14027f0b0
dec r11d
add r8d, 0xfffffffe
inc rdx
jmp 0x14027f030
mov eax, dword [0x1405a805c]
cmp eax, 0xf
jg 0x14027f0b0
mov al, 0xc4
xchg byte [0x14055e440], al
lea rax, [0x14055e430]
pop rbx
ret
xor r8d, r8d
lea rax, [0x14055e460]
lea rcx, [0x14046aa70]
mov edx, 0xe0bbf7ef
nop word cs:[rax + rax]
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
add byte [r8 + rax], r9b
mov r9d, dword [0x14055e93c]
add r9d, edx
mov r10d, r8d
xor r10d, r9d
and r9d, r8d
lea r8d, [r10 + r9*2]
cmp r8d, 4
jl 0x14027f0f0
mov al, 0xff
xchg byte [0x14055e464], al
lea rax, [0x14055e460]
pop rbx
ret