Function at 0x202f5960
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x202f59ac
test edx, edx
je 0x202f59fc
test r8d, r8d
je 0x202f5a3c
test r9d, r9d
je 0x202f5ab9
movzx eax, byte [0x204900a9]
cmp al, 0xb0
je 0x202f59a4
mov cl, 0x67
nop dword [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x204900a9], cl
je 0x202f5c39
cmp al, 0xb0
jne 0x202f5990
lea rax, [0x20490090]
ret
test edx, edx
je 0x202f5a7c
test r8d, r8d
je 0x202f5aec
test r9d, r9d
je 0x202f5b69
movzx eax, byte [0x2048feab]
cmp al, 0x75
je 0x202f59f4
mov cl, 0x4c
nop word cs:[rax + rax]
mov al, 0x70
lock cmpxchg byte [0x2048feab], cl
je 0x202f5d09
cmp al, 0x75
jne 0x202f59e0
lea rax, [0x2048fe90]
ret
test r8d, r8d
je 0x202f5b29
test r9d, r9d
je 0x202f5b99
movzx eax, byte [0x2049068c]
cmp al, 0x61
je 0x202f5a34
mov cl, 0xa7
nop dword [rax + rax]
mov al, 5
lock cmpxchg byte [0x2049068c], cl
je 0x202f5d41
cmp al, 0x61
jne 0x202f5a20
lea rax, [0x20490620]
ret
test r9d, r9d
je 0x202f5bc9
movzx eax, byte [0x20490865]
cmp al, 0x9e
je 0x202f5a74
mov cl, 2
nop word cs:[rax + rax]
mov al, 0xa5
lock cmpxchg byte [0x20490865], cl
je 0x202f5d81
cmp al, 0x9e
jne 0x202f5a60
lea rax, [0x20490800]
ret
test r8d, r8d
je 0x202f5bf9
test r9d, r9d
je 0x202f5c71
movzx eax, byte [0x204906d1]
cmp al, 0x2d
je 0x202f5e59
mov cl, 0xff
nop
mov al, 0xf6
lock cmpxchg byte [0x204906d1], cl
je 0x202f5e2b
cmp al, 0x2d
jne 0x202f5aa0
jmp 0x202f5e59
movzx eax, byte [0x2049056c]
cmp al, 0xec
je 0x202f5ae4
mov cl, 0x21
nop word cs:[rax + rax]
mov al, 0x33
lock cmpxchg byte [0x2049056c], cl
je 0x202f5dc1
cmp al, 0xec
jne 0x202f5ad0
lea rax, [0x20490530]
ret
test r9d, r9d
je 0x202f5ca9
movzx eax, byte [0x20490227]
cmp al, 0xd3
je 0x202f5e99
mov cl, 0x2d
nop word cs:[rax + rax]
mov al, 0x8b
lock cmpxchg byte [0x20490227], cl
je 0x202f5e61
cmp al, 0xd3
jne 0x202f5b10
jmp 0x202f5e99
test r9d, r9d
je 0x202f5cd9
movzx eax, byte [0x2049004b]
cmp al, 0x4d
je 0x202f5ed9
mov cl, 0xc9
nop word cs:[rax + rax]
mov al, 0xf4
lock cmpxchg byte [0x2049004b], cl
je 0x202f5ea1
cmp al, 0x4d
jne 0x202f5b50
jmp 0x202f5ed9
movzx eax, byte [0x20490331]
cmp al, 0x7e
je 0x202f5f1b
mov cl, 0xb
nop word [rax + rax]
mov al, 0x26
lock cmpxchg byte [0x20490331], cl
je 0x202f5ee1
cmp al, 0x7e
jne 0x202f5b80
jmp 0x202f5f1b
movzx eax, byte [0x2048ff91]
cmp al, 0xb4
je 0x202f5f59
mov cl, 0x4d
nop word [rax + rax]
mov al, 0x1d
lock cmpxchg byte [0x2048ff91], cl
je 0x202f5f23
cmp al, 0xb4
jne 0x202f5bb0
jmp 0x202f5f59
movzx eax, byte [0x20490a0e]
cmp al, 0x22
je 0x202f5f99
mov cl, 0x98
nop word [rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x20490a0e], cl
je 0x202f5f61
cmp al, 0x22
jne 0x202f5be0
jmp 0x202f5f99
test r9d, r9d
je 0x202f5e01
movzx eax, byte [0x2048ff49]
cmp al, 0xa6
je 0x202f5fdb
mov cl, 3
nop word cs:[rax + rax]
mov al, 0x98
lock cmpxchg byte [0x2048ff49], cl
je 0x202f5fa1
cmp al, 0xa6
jne 0x202f5c20
jmp 0x202f5fdb
xor eax, eax
lea rcx, [0x20490090]
lea rdx, [0x2039cae0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x202f5c50
mov al, 0xb0
xchg byte [0x204900a9], al
lea rax, [0x20490090]
ret
movzx eax, byte [0x204900c6]
cmp al, 0x2a
je 0x202f6019
mov cl, 0xce
nop word cs:[rax + rax]
mov al, 0x78
lock cmpxchg byte [0x204900c6], cl
je 0x202f5fe3
cmp al, 0x2a
jne 0x202f5c90
jmp 0x202f6019
movzx eax, byte [0x20490186]
cmp al, 0x28
je 0x202f6059
mov cl, 0xc4
nop word [rax + rax]
mov al, 0x29
lock cmpxchg byte [0x20490186], cl
je 0x202f6021
cmp al, 0x28
jne 0x202f5cc0
jmp 0x202f6059
movzx eax, byte [0x20490d0f]
cmp al, 0x16
je 0x202f6099
mov cl, 7
nop word [rax + rax]
mov al, 0x59
lock cmpxchg byte [0x20490d0f], cl
je 0x202f6061
cmp al, 0x16
jne 0x202f5cf0
jmp 0x202f6099
xor eax, eax
lea rcx, [0x2048fe90]
lea rdx, [0x2039c8e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1b
jl 0x202f5d20
mov al, 0x75
xchg byte [0x2048feab], al
lea rax, [0x2048fe90]
ret
xor eax, eax
lea rcx, [0x20490620]
lea rdx, [0x2039d070]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x6c
jl 0x202f5d60
mov al, 0x61
xchg byte [0x2049068c], al
lea rax, [0x20490620]
ret
xor eax, eax
lea rcx, [0x20490800]
lea rdx, [0x2039d250]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x65
jl 0x202f5da0
mov al, 0x9e
xchg byte [0x20490865], al
lea rax, [0x20490800]
ret
xor eax, eax
lea rcx, [0x20490530]
lea rdx, [0x2039cf80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x3c
jl 0x202f5de0
mov al, 0xec
xchg byte [0x2049056c], al
lea rax, [0x20490530]
ret
movzx eax, byte [0x2049052b]
cmp al, 0x80
je 0x202f60ca
mov cl, 0x75
mov al, 0x95
lock cmpxchg byte [0x2049052b], cl
je 0x202f60a1
cmp al, 0x80
jne 0x202f5e12
jmp 0x202f60ca
xor eax, eax
lea rcx, [0x20490690]
lea rdx, [0x2039d0e0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x41
jl 0x202f5e40
mov al, 0x2d
xchg byte [0x204906d1], al
lea rax, [0x20490690]
ret
xor eax, eax
lea rcx, [0x204901b0]
lea rdx, [0x2039cc00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x77
jl 0x202f5e80
mov al, 0xd3
xchg byte [0x20490227], al
lea rax, [0x204901b0]
ret
xor eax, eax
lea rcx, [0x20490020]
lea rdx, [0x2039ca70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x2b
jl 0x202f5ec0
mov al, 0x4d
xchg byte [0x2049004b], al
lea rax, [0x20490020]
ret
xor eax, eax
lea rcx, [0x204902b0]
lea rdx, [0x2039cd00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x81
jl 0x202f5f00
mov al, 0x7e
xchg byte [0x20490331], al
lea rax, [0x204902b0]
ret
xor eax, eax
lea rcx, [0x2048ff50]
lea rdx, [0x2039c9a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x41
jl 0x202f5f40
mov al, 0xb4
xchg byte [0x2048ff91], al
lea rax, [0x2048ff50]
ret
xor eax, eax
lea rcx, [0x20490990]
lea rdx, [0x2039d3e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x7e
jl 0x202f5f80
mov al, 0x22
xchg byte [0x20490a0e], al
lea rax, [0x20490990]
ret
xor eax, eax
lea rcx, [0x2048fec0]
lea rdx, [0x2039c910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x89
jl 0x202f5fc0
mov al, 0xa6
xchg byte [0x2048ff49], al
lea rax, [0x2048fec0]
ret
xor eax, eax
lea rcx, [0x204900b0]
lea rdx, [0x2039cb00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x202f6000
mov al, 0x2a
xchg byte [0x204900c6], al
lea rax, [0x204900b0]
ret
xor eax, eax
lea rcx, [0x20490150]
lea rdx, [0x2039cba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x36
jl 0x202f6040
mov al, 0x28
xchg byte [0x20490186], al
lea rax, [0x20490150]
ret
xor eax, eax
lea rcx, [0x20490d00]
lea rdx, [0x2039d740]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x202f6080
mov al, 0x16
xchg byte [0x20490d0f], al
lea rax, [0x20490d00]
ret
xor eax, eax
lea rcx, [0x204904e0]
lea rdx, [0x2039cf30]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x4b
jl 0x202f60b1
mov al, 0x80
xchg byte [0x2049052b], al
lea rax, [0x204904e0]
ret