Function at 0x202c54b0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x202c54fc
test edx, edx
je 0x202c554c
test r8d, r8d
je 0x202c558c
movzx eax, byte [0x20489852]
cmp al, 0xec
je 0x202c54f4
mov cl, 0xa4
nop word cs:[rax + rax]
mov al, 0x7c
lock cmpxchg byte [0x20489852], cl
je 0x202c566c
cmp al, 0xec
jne 0x202c54e0
lea rax, [0x20489850]
ret
test edx, edx
je 0x202c55bc
test r8d, r8d
je 0x202c55f9
test r9d, r9d
je 0x202c56a1
movzx eax, byte [0x20489916]
cmp al, 0x80
je 0x202c5544
mov cl, 4
nop word cs:[rax + rax]
mov al, 0x91
lock cmpxchg byte [0x20489916], cl
je 0x202c57e9
cmp al, 0x80
jne 0x202c5530
lea rax, [0x204898f0]
ret
test r8d, r8d
je 0x202c5639
movzx eax, byte [0x2048994b]
cmp al, 0xe0
je 0x202c5584
mov cl, 0xfc
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x2048994b], cl
je 0x202c5709
cmp al, 0xe0
jne 0x202c5570
lea rax, [0x20489940]
ret
movzx eax, byte [0x20489885]
cmp al, 0x77
je 0x202c55b4
mov cl, 0xa8
nop dword [rax]
mov al, 0xdd
lock cmpxchg byte [0x20489885], cl
je 0x202c5741
cmp al, 0x77
jne 0x202c55a0
lea rax, [0x20489880]
ret
test r8d, r8d
je 0x202c56d9
test r9d, r9d
je 0x202c5781
movzx eax, byte [0x20489893]
cmp al, 0xb
je 0x202c5899
mov cl, 0x13
nop
mov al, 0x87
lock cmpxchg byte [0x20489893], cl
je 0x202c5861
cmp al, 0xb
jne 0x202c55e0
jmp 0x202c5899
test r9d, r9d
je 0x202c57b9
movzx eax, byte [0x204898ef]
cmp al, 0xe8
je 0x202c58d9
mov cl, 0x26
nop word cs:[rax + rax]
mov al, 0x13
lock cmpxchg byte [0x204898ef], cl
je 0x202c58a1
cmp al, 0xe8
jne 0x202c5620
jmp 0x202c58d9
movzx eax, byte [0x20489932]
cmp al, 0x10
je 0x202c5664
mov cl, 0x43
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x20489932], cl
je 0x202c5821
cmp al, 0x10
jne 0x202c5650
lea rax, [0x20489930]
ret
xor eax, eax
lea rcx, [0x20489850]
lea rdx, [0x20399a00]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x202c5680
mov al, 0xec
xchg byte [0x20489852], al
lea rax, [0x20489850]
ret
movzx eax, byte [0x2048987c]
cmp al, 0xda
je 0x202c5919
mov cl, 0x5e
nop word cs:[rax + rax]
mov al, 0x36
lock cmpxchg byte [0x2048987c], cl
je 0x202c58e1
cmp al, 0xda
jne 0x202c56c0
jmp 0x202c5919
movzx eax, byte [0x20489922]
cmp al, 0x9c
je 0x202c5959
mov cl, 0xad
nop word [rax + rax]
mov al, 0x1b
lock cmpxchg byte [0x20489922], cl
je 0x202c5921
cmp al, 0x9c
jne 0x202c56f0
jmp 0x202c5959
xor eax, eax
lea rcx, [0x20489940]
lea rdx, [0x20399af0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x202c5720
mov al, 0xe0
xchg byte [0x2048994b], al
lea rax, [0x20489940]
ret
xor eax, eax
lea rcx, [0x20489880]
lea rdx, [0x20399a30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x202c5760
mov al, 0x77
xchg byte [0x20489885], al
lea rax, [0x20489880]
ret
movzx eax, byte [0x204898c3]
cmp al, 0xb0
je 0x202c5999
mov cl, 0x49
nop word cs:[rax + rax]
mov al, 0x36
lock cmpxchg byte [0x204898c3], cl
je 0x202c5961
cmp al, 0xb0
jne 0x202c57a0
jmp 0x202c5999
movzx eax, byte [0x204898db]
cmp al, 3
je 0x202c59d9
mov cl, 0x82
nop word [rax + rax]
mov al, 0xbe
lock cmpxchg byte [0x204898db], cl
je 0x202c59a1
cmp al, 3
jne 0x202c57d0
jmp 0x202c59d9
xor eax, eax
lea rcx, [0x204898f0]
lea rdx, [0x20399aa0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x202c5800
mov al, 0x80
xchg byte [0x20489916], al
lea rax, [0x204898f0]
ret
xor eax, eax
lea rcx, [0x20489930]
lea rdx, [0x20399ae0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x202c5840
mov al, 0x10
xchg byte [0x20489932], al
lea rax, [0x20489930]
ret
xor eax, eax
lea rcx, [0x20489890]
lea rdx, [0x20399a40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x202c5880
mov al, 0xb
xchg byte [0x20489893], al
lea rax, [0x20489890]
ret
xor eax, eax
lea rcx, [0x204898e0]
lea rdx, [0x20399a90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x202c58c0
mov al, 0xe8
xchg byte [0x204898ef], al
lea rax, [0x204898e0]
ret
xor eax, eax
lea rcx, [0x20489860]
lea rdx, [0x20399a10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x202c5900
mov al, 0xda
xchg byte [0x2048987c], al
lea rax, [0x20489860]
ret
xor eax, eax
lea rcx, [0x20489920]
lea rdx, [0x20399ad0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x202c5940
mov al, 0x9c
xchg byte [0x20489922], al
lea rax, [0x20489920]
ret
xor eax, eax
lea rcx, [0x204898a0]
lea rdx, [0x20399a50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x202c5980
mov al, 0xb0
xchg byte [0x204898c3], al
lea rax, [0x204898a0]
ret
xor eax, eax
lea rcx, [0x204898d0]
lea rdx, [0x20399a80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x202c59c0
mov al, 3
xchg byte [0x204898db], al
lea rax, [0x204898d0]
ret