Function at 0x201fcbf0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201fcc2c
test edx, edx
je 0x201fcc6c
test r8d, r8d
je 0x201fccac
movzx eax, byte [0x20468acd]
cmp al, 0xcf
je 0x201fcc24
mov cl, 0xe8
nop
mov al, 0xf
lock cmpxchg byte [0x20468acd], cl
je 0x201fcd7c
cmp al, 0xcf
jne 0x201fcc10
lea rax, [0x20468ac0]
ret
test edx, edx
je 0x201fccdc
test r8d, r8d
je 0x201fcd1c
movzx eax, byte [0x20468a63]
cmp al, 0xa8
je 0x201fcc64
mov cl, 0x84
nop word [rax + rax]
mov al, 0x96
lock cmpxchg byte [0x20468a63], cl
je 0x201fcde9
cmp al, 0xa8
jne 0x201fcc50
lea rax, [0x20468a50]
ret
test r8d, r8d
je 0x201fcd4c
movzx eax, byte [0x204688eb]
cmp al, 0xb9
je 0x201fcca4
mov cl, 0x1e
nop word cs:[rax + rax]
mov al, 0xc1
lock cmpxchg byte [0x204688eb], cl
je 0x201fce21
cmp al, 0xb9
jne 0x201fcc90
lea rax, [0x204688e0]
ret
movzx eax, byte [0x204687b4]
cmp al, 5
je 0x201fccd4
mov cl, 0xa3
nop dword [rax]
mov al, 0x9e
lock cmpxchg byte [0x204687b4], cl
je 0x201fce61
cmp al, 5
jne 0x201fccc0
lea rax, [0x204687b0]
ret
test r8d, r8d
je 0x201fcdb1
movzx eax, byte [0x20468b0f]
cmp al, 0x7f
je 0x201fcd14
mov cl, 0x11
nop word cs:[rax + rax]
mov al, 0xed
lock cmpxchg byte [0x20468b0f], cl
je 0x201fcea1
cmp al, 0x7f
jne 0x201fcd00
lea rax, [0x20468b00]
ret
movzx eax, byte [0x20468895]
cmp al, 0x3c
je 0x201fcd44
mov cl, 0x81
nop dword [rax]
mov al, 8
lock cmpxchg byte [0x20468895], cl
je 0x201fcee1
cmp al, 0x3c
jne 0x201fcd30
lea rax, [0x20468890]
ret
movzx eax, byte [0x20468a1d]
cmp al, 0x8e
je 0x201fcd74
mov cl, 0xed
nop dword [rax]
mov al, 0x93
lock cmpxchg byte [0x20468a1d], cl
je 0x201fcf21
cmp al, 0x8e
jne 0x201fcd60
lea rax, [0x20468a10]
ret
xor eax, eax
lea rcx, [0x20468ac0]
lea rdx, [0x2037dc50]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fcd90
mov al, 0xcf
xchg byte [0x20468acd], al
lea rax, [0x20468ac0]
ret
movzx eax, byte [0x20468afb]
cmp al, 5
je 0x201fcf99
mov cl, 0xa1
nop word cs:[rax + rax]
mov al, 0x37
lock cmpxchg byte [0x20468afb], cl
je 0x201fcf61
cmp al, 5
jne 0x201fcdd0
jmp 0x201fcf99
xor eax, eax
lea rcx, [0x20468a50]
lea rdx, [0x2037dbe0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201fce00
mov al, 0xa8
xchg byte [0x20468a63], al
lea rax, [0x20468a50]
ret
xor eax, eax
lea rcx, [0x204688e0]
lea rdx, [0x2037da70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201fce40
mov al, 0xb9
xchg byte [0x204688eb], al
lea rax, [0x204688e0]
ret
xor eax, eax
lea rcx, [0x204687b0]
lea rdx, [0x2037d950]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x201fce80
mov al, 5
xchg byte [0x204687b4], al
lea rax, [0x204687b0]
ret
xor eax, eax
lea rcx, [0x20468b00]
lea rdx, [0x2037dc90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201fcec0
mov al, 0x7f
xchg byte [0x20468b0f], al
lea rax, [0x20468b00]
ret
xor eax, eax
lea rcx, [0x20468890]
lea rdx, [0x2037da20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201fcf00
mov al, 0x3c
xchg byte [0x20468895], al
lea rax, [0x20468890]
ret
xor eax, eax
lea rcx, [0x20468a10]
lea rdx, [0x2037dba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fcf40
mov al, 0x8e
xchg byte [0x20468a1d], al
lea rax, [0x20468a10]
ret
xor eax, eax
lea rcx, [0x20468af0]
lea rdx, [0x2037dc80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201fcf80
mov al, 5
xchg byte [0x20468afb], al
lea rax, [0x20468af0]
ret