Function at 0x201dabb0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201dabfc
test edx, edx
je 0x201dac4c
test r8d, r8d
je 0x201dac8c
test r9d, r9d
je 0x201dad09
movzx eax, byte [0x205281ad]
cmp al, 0xcf
je 0x201dabf4
mov cl, 2
nop dword [rax + rax]
mov al, 0x67
lock cmpxchg byte [0x205281ad], cl
je 0x201dae89
cmp al, 0xcf
jne 0x201dabe0
lea rax, [0x205281a0]
ret
test edx, edx
je 0x201daccc
test r8d, r8d
je 0x201dad3c
test r9d, r9d
je 0x201dadb9
movzx eax, byte [0x20527e85]
cmp al, 0xd
je 0x201dac44
mov cl, 0x52
nop word cs:[rax + rax]
mov al, 0x39
lock cmpxchg byte [0x20527e85], cl
je 0x201daf59
cmp al, 0xd
jne 0x201dac30
lea rax, [0x20527e70]
ret
test r8d, r8d
je 0x201dad79
test r9d, r9d
je 0x201dade9
movzx eax, byte [0x20527d7d]
cmp al, 3
je 0x201dac84
mov cl, 0x92
nop dword [rax + rax]
mov al, 0xfd
lock cmpxchg byte [0x20527d7d], cl
je 0x201daf91
cmp al, 3
jne 0x201dac70
lea rax, [0x20527d70]
ret
test r9d, r9d
je 0x201dae19
movzx eax, byte [0x20527ecd]
cmp al, 0xaf
je 0x201dacc4
mov cl, 0x38
nop word cs:[rax + rax]
mov al, 0x42
lock cmpxchg byte [0x20527ecd], cl
je 0x201dafd1
cmp al, 0xaf
jne 0x201dacb0
lea rax, [0x20527ec0]
ret
test r8d, r8d
je 0x201dae49
test r9d, r9d
je 0x201daec1
movzx eax, byte [0x2052782c]
cmp al, 0x90
je 0x201db0a9
mov cl, 0x7a
nop
mov al, 0xc2
lock cmpxchg byte [0x2052782c], cl
je 0x201db07b
cmp al, 0x90
jne 0x201dacf0
jmp 0x201db0a9
movzx eax, byte [0x205730e8]
cmp al, 0x70
je 0x201dad34
mov cl, 0xdd
nop word cs:[rax + rax]
xor eax, eax
lock cmpxchg byte [0x205730e8], cl
je 0x201db011
cmp al, 0x70
jne 0x201dad20
lea rax, [0x20527d50]
ret
test r9d, r9d
je 0x201daef9
movzx eax, byte [0x2052812d]
cmp al, 0x98
je 0x201db0e9
mov cl, 0x46
nop word cs:[rax + rax]
mov al, 0xeb
lock cmpxchg byte [0x2052812d], cl
je 0x201db0b1
cmp al, 0x98
jne 0x201dad60
jmp 0x201db0e9
test r9d, r9d
je 0x201daf29
movzx eax, byte [0x20527fcd]
cmp al, 0x9b
je 0x201db129
mov cl, 0x17
nop word cs:[rax + rax]
mov al, 0xc8
lock cmpxchg byte [0x20527fcd], cl
je 0x201db0f1
cmp al, 0x9b
jne 0x201dada0
jmp 0x201db129
movzx eax, byte [0x20527ce3]
cmp al, 0x24
je 0x201db169
mov cl, 0x17
nop word [rax + rax]
mov al, 0xe1
lock cmpxchg byte [0x20527ce3], cl
je 0x201db131
cmp al, 0x24
jne 0x201dadd0
jmp 0x201db169
movzx eax, byte [0x2052807d]
cmp al, 0x2d
je 0x201db1a9
mov cl, 5
nop word [rax + rax]
mov al, 0x14
lock cmpxchg byte [0x2052807d], cl
je 0x201db171
cmp al, 0x2d
jne 0x201dae00
jmp 0x201db1a9
movzx eax, byte [0x20527d6b]
cmp al, 0x22
je 0x201db1e9
mov cl, 0xbd
nop word [rax + rax]
mov al, 0xe
lock cmpxchg byte [0x20527d6b], cl
je 0x201db1b1
cmp al, 0x22
jne 0x201dae30
jmp 0x201db1e9
test r9d, r9d
je 0x201db051
movzx eax, byte [0x20527e3d]
cmp al, 0x48
je 0x201db229
mov cl, 0xe4
nop word cs:[rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x20527e3d], cl
je 0x201db1f1
cmp al, 0x48
jne 0x201dae70
jmp 0x201db229
xor eax, eax
lea rcx, [0x205281a0]
lea rdx, [0x2041c2b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201daea0
mov al, 0xcf
xchg byte [0x205281ad], al
lea rax, [0x205281a0]
ret
movzx eax, byte [0x20527b83]
cmp al, 0x29
je 0x201db269
mov cl, 0xa9
nop word cs:[rax + rax]
mov al, 0x3d
lock cmpxchg byte [0x20527b83], cl
je 0x201db231
cmp al, 0x29
jne 0x201daee0
jmp 0x201db269
movzx eax, byte [0x20527cfb]
cmp al, 0x15
je 0x201db2a9
mov cl, 0xa3
nop word [rax + rax]
mov al, 0xf1
lock cmpxchg byte [0x20527cfb], cl
je 0x201db271
cmp al, 0x15
jne 0x201daf10
jmp 0x201db2a9
movzx eax, byte [0x20527c4e]
cmp al, 0x22
je 0x201db2e9
mov cl, 0x75
nop word [rax + rax]
mov al, 0x66
lock cmpxchg byte [0x20527c4e], cl
je 0x201db2b1
cmp al, 0x22
jne 0x201daf40
jmp 0x201db2e9
xor eax, eax
lea rcx, [0x20527e70]
lea rdx, [0x2041bf80]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x201daf70
mov al, 0xd
xchg byte [0x20527e85], al
lea rax, [0x20527e70]
ret
xor eax, eax
lea rcx, [0x20527d70]
lea rdx, [0x2041be90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201dafb0
mov al, 3
xchg byte [0x20527d7d], al
lea rax, [0x20527d70]
ret
xor eax, eax
lea rcx, [0x20527ec0]
lea rdx, [0x2041bfd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201daff0
mov al, 0xaf
xchg byte [0x20527ecd], al
lea rax, [0x20527ec0]
ret
xor eax, eax
lea rcx, [0x20527d50]
lea rdx, [0x2041be70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201db030
mov al, 0x70
xchg byte [0x205730e8], al
lea rax, [0x20527d50]
ret
movzx eax, byte [0x20527e9d]
cmp al, 0xd8
je 0x201db31a
mov cl, 0x74
mov al, 0xf7
lock cmpxchg byte [0x20527e9d], cl
je 0x201db2f1
cmp al, 0xd8
jne 0x201db062
jmp 0x201db31a
xor eax, eax
lea rcx, [0x20527810]
lea rdx, [0x2041b960]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x201db090
mov al, 0x90
xchg byte [0x2052782c], al
lea rax, [0x20527810]
ret
xor eax, eax
lea rcx, [0x20528120]
lea rdx, [0x2041c230]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db0d0
mov al, 0x98
xchg byte [0x2052812d], al
lea rax, [0x20528120]
ret
xor eax, eax
lea rcx, [0x20527fc0]
lea rdx, [0x2041c0d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db110
mov al, 0x9b
xchg byte [0x20527fcd], al
lea rax, [0x20527fc0]
ret
xor eax, eax
lea rcx, [0x20527cc0]
lea rdx, [0x2041bde0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201db150
mov al, 0x24
xchg byte [0x20527ce3], al
lea rax, [0x20527cc0]
ret
xor eax, eax
lea rcx, [0x20528070]
lea rdx, [0x2041c180]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db190
mov al, 0x2d
xchg byte [0x2052807d], al
lea rax, [0x20528070]
ret
xor eax, eax
lea rcx, [0x20527d60]
lea rdx, [0x2041be80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201db1d0
mov al, 0x22
xchg byte [0x20527d6b], al
lea rax, [0x20527d60]
ret
xor eax, eax
lea rcx, [0x20527e30]
lea rdx, [0x2041bf40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db210
mov al, 0x48
xchg byte [0x20527e3d], al
lea rax, [0x20527e30]
ret
xor eax, eax
lea rcx, [0x20527b70]
lea rdx, [0x2041bc90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201db250
mov al, 0x29
xchg byte [0x20527b83], al
lea rax, [0x20527b70]
ret
xor eax, eax
lea rcx, [0x20527cf0]
lea rdx, [0x2041be10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201db290
mov al, 0x15
xchg byte [0x20527cfb], al
lea rax, [0x20527cf0]
ret
xor eax, eax
lea rcx, [0x20527c40]
lea rdx, [0x2041bd60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x201db2d0
mov al, 0x22
xchg byte [0x20527c4e], al
lea rax, [0x20527c40]
ret
xor eax, eax
lea rcx, [0x20527e90]
lea rdx, [0x2041bfa0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db301
mov al, 0xd8
xchg byte [0x20527e9d], al
lea rax, [0x20527e90]
ret