Function at 0x201e2580
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201e25bc
test edx, edx
je 0x201e25fc
test r8d, r8d
je 0x201e263c
movzx eax, byte [0x20590a83]
cmp al, 0x54
je 0x201e25b4
mov cl, 0x28
nop
mov al, 0x86
lock cmpxchg byte [0x20590a83], cl
je 0x201e26dc
cmp al, 0x54
jne 0x201e25a0
lea rax, [0x20590a70]
ret
test edx, edx
je 0x201e266c
movzx eax, byte [0x20590c8d]
cmp al, 0xaf
je 0x201e25f4
mov cl, 0x19
nop word cs:[rax + rax]
mov al, 0xb4
lock cmpxchg byte [0x20590c8d], cl
je 0x201e2711
cmp al, 0xaf
jne 0x201e25e0
lea rax, [0x20590c80]
ret
test r8d, r8d
je 0x201e26ac
movzx eax, byte [0x20590ca4]
cmp al, 0x65
je 0x201e2634
mov cl, 0x83
nop word cs:[rax + rax]
mov al, 0x7a
lock cmpxchg byte [0x20590ca4], cl
je 0x201e2789
cmp al, 0x65
jne 0x201e2620
lea rax, [0x20590c90]
ret
movzx eax, byte [0x20590a35]
cmp al, 0x82
je 0x201e2664
mov cl, 0xff
nop dword [rax]
mov al, 0xd
lock cmpxchg byte [0x20590a35], cl
je 0x201e27c1
cmp al, 0x82
jne 0x201e2650
lea rax, [0x20590a20]
ret
test r8d, r8d
je 0x201e2751
movzx eax, byte [0x205ecb10]
cmp al, 0x65
je 0x201e26a4
mov cl, 0xe2
nop word cs:[rax + rax]
xor eax, eax
lock cmpxchg byte [0x205ecb10], cl
je 0x201e2801
cmp al, 0x65
jne 0x201e2690
lea rax, [0x20590ae0]
ret
movzx eax, byte [0x20590bff]
cmp al, 0x74
je 0x201e26d4
mov cl, 0x64
nop dword [rax]
mov al, 0xa
lock cmpxchg byte [0x20590bff], cl
je 0x201e2841
cmp al, 0x74
jne 0x201e26c0
lea rax, [0x20590bf0]
ret
xor eax, eax
lea rcx, [0x20590a70]
lea rdx, [0x20478640]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201e26f0
mov al, 0x54
xchg byte [0x20590a83], al
lea rax, [0x20590a70]
ret
xor eax, eax
lea rcx, [0x20590c80]
lea rdx, [0x20478850]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e2730
mov al, 0xaf
xchg byte [0x20590c8d], al
lea rax, [0x20590c80]
ret
movzx eax, byte [0x20590cca]
cmp al, 0x19
je 0x201e28b9
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0x94
lock cmpxchg byte [0x20590cca], cl
je 0x201e2881
cmp al, 0x19
jne 0x201e2770
jmp 0x201e28b9
xor eax, eax
lea rcx, [0x20590c90]
lea rdx, [0x20478860]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201e27a0
mov al, 0x65
xchg byte [0x20590ca4], al
lea rax, [0x20590c90]
ret
xor eax, eax
lea rcx, [0x20590a20]
lea rdx, [0x204785f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x201e27e0
mov al, 0x82
xchg byte [0x20590a35], al
lea rax, [0x20590a20]
ret
xor eax, eax
lea rcx, [0x20590ae0]
lea rdx, [0x204786b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x201e2820
mov al, 0x65
xchg byte [0x205ecb10], al
lea rax, [0x20590ae0]
ret
xor eax, eax
lea rcx, [0x20590bf0]
lea rdx, [0x204787c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201e2860
mov al, 0x74
xchg byte [0x20590bff], al
lea rax, [0x20590bf0]
ret
xor eax, eax
lea rcx, [0x20590cc0]
lea rdx, [0x20478890]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x201e28a0
mov al, 0x19
xchg byte [0x20590cca], al
lea rax, [0x20590cc0]
ret