Function at 0x201eada0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201eaddc
test edx, edx
je 0x201eae1c
test r8d, r8d
je 0x201eae5c
movzx eax, byte [0x20591684]
cmp al, 0xdb
je 0x201eadd4
mov cl, 8
nop
mov al, 0xdf
lock cmpxchg byte [0x20591684], cl
je 0x201eaf2c
cmp al, 0xdb
jne 0x201eadc0
lea rax, [0x20591670]
ret
test edx, edx
je 0x201eae8c
test r8d, r8d
je 0x201eaecc
movzx eax, byte [0x205914c9]
cmp al, 0xe1
je 0x201eae14
mov cl, 0x5a
nop word [rax + rax]
mov al, 0x63
lock cmpxchg byte [0x205914c9], cl
je 0x201eaf99
cmp al, 0xe1
jne 0x201eae00
lea rax, [0x205914b0]
ret
test r8d, r8d
je 0x201eaefc
movzx eax, byte [0x20591465]
cmp al, 8
je 0x201eae54
mov cl, 0xad
nop word cs:[rax + rax]
mov al, 0xdc
lock cmpxchg byte [0x20591465], cl
je 0x201eafd1
cmp al, 8
jne 0x201eae40
lea rax, [0x20591460]
ret
movzx eax, byte [0x205913d4]
cmp al, 0x68
je 0x201eae84
mov cl, 1
nop dword [rax]
mov al, 0xf6
lock cmpxchg byte [0x205913d4], cl
je 0x201eb011
cmp al, 0x68
jne 0x201eae70
lea rax, [0x205913d0]
ret
test r8d, r8d
je 0x201eaf61
movzx eax, byte [0x2059165f]
cmp al, 0xc0
je 0x201eaec4
mov cl, 0x91
nop word cs:[rax + rax]
mov al, 0x64
lock cmpxchg byte [0x2059165f], cl
je 0x201eb051
cmp al, 0xc0
jne 0x201eaeb0
lea rax, [0x20591650]
ret
movzx eax, byte [0x2059150a]
cmp al, 0x1c
je 0x201eaef4
mov cl, 0x29
nop dword [rax]
mov al, 5
lock cmpxchg byte [0x2059150a], cl
je 0x201eb091
cmp al, 0x1c
jne 0x201eaee0
lea rax, [0x205914f0]
ret
movzx eax, byte [0x205913e2]
cmp al, 0x38
je 0x201eaf24
mov cl, 0xe5
nop dword [rax]
mov al, 0xbb
lock cmpxchg byte [0x205913e2], cl
je 0x201eb0d1
cmp al, 0x38
jne 0x201eaf10
lea rax, [0x205913e0]
ret
xor eax, eax
lea rcx, [0x20591670]
lea rdx, [0x20479250]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201eaf40
mov al, 0xdb
xchg byte [0x20591684], al
lea rax, [0x20591670]
ret
movzx eax, byte [0x205914ac]
cmp al, 0xc
je 0x201eb149
mov cl, 5
nop word cs:[rax + rax]
mov al, 0xc1
lock cmpxchg byte [0x205914ac], cl
je 0x201eb111
cmp al, 0xc
jne 0x201eaf80
jmp 0x201eb149
xor eax, eax
lea rcx, [0x205914b0]
lea rdx, [0x20479090]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x201eafb0
mov al, 0xe1
xchg byte [0x205914c9], al
lea rax, [0x205914b0]
ret
xor eax, eax
lea rcx, [0x20591460]
lea rdx, [0x20479040]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201eaff0
mov al, 8
xchg byte [0x20591465], al
lea rax, [0x20591460]
ret
xor eax, eax
lea rcx, [0x205913d0]
lea rdx, [0x20478fc0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x201eb030
mov al, 0x68
xchg byte [0x205913d4], al
lea rax, [0x205913d0]
ret
xor eax, eax
lea rcx, [0x20591650]
lea rdx, [0x20479230]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201eb070
mov al, 0xc0
xchg byte [0x2059165f], al
lea rax, [0x20591650]
ret
xor eax, eax
lea rcx, [0x205914f0]
lea rdx, [0x204790d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x201eb0b0
mov al, 0x1c
xchg byte [0x2059150a], al
lea rax, [0x205914f0]
ret
xor eax, eax
lea rcx, [0x205913e0]
lea rdx, [0x20478fd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201eb0f0
mov al, 0x38
xchg byte [0x205913e2], al
lea rax, [0x205913e0]
ret
xor eax, eax
lea rcx, [0x205914a0]
lea rdx, [0x20479080]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201eb130
mov al, 0xc
xchg byte [0x205914ac], al
lea rax, [0x205914a0]
ret