Function at 0x201e28d0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201e291c
test edx, edx
je 0x201e296c
test r8d, r8d
je 0x201e29ac
test r9d, r9d
je 0x201e2a29
movzx eax, byte [0x20590b1f]
cmp al, 0x31
je 0x201e2914
mov cl, 0xf1
nop dword [rax + rax]
mov al, 0x20
lock cmpxchg byte [0x20590b1f], cl
je 0x201e2ba9
cmp al, 0x31
jne 0x201e2900
lea rax, [0x20590b10]
ret
test edx, edx
je 0x201e29ec
test r8d, r8d
je 0x201e2a5c
test r9d, r9d
je 0x201e2ad9
movzx eax, byte [0x20590ac9]
cmp al, 0x2d
je 0x201e2964
mov cl, 0xbc
nop word cs:[rax + rax]
mov al, 0xd0
lock cmpxchg byte [0x20590ac9], cl
je 0x201e2c79
cmp al, 0x2d
jne 0x201e2950
lea rax, [0x20590ab0]
ret
test r8d, r8d
je 0x201e2a99
test r9d, r9d
je 0x201e2b09
movzx eax, byte [0x20590aac]
cmp al, 0x15
je 0x201e29a4
mov cl, 0xbb
nop dword [rax + rax]
mov al, 0xa7
lock cmpxchg byte [0x20590aac], cl
je 0x201e2cb1
cmp al, 0x15
jne 0x201e2990
lea rax, [0x20590aa0]
ret
test r9d, r9d
je 0x201e2b39
movzx eax, byte [0x20590a97]
cmp al, 0x41
je 0x201e29e4
mov cl, 0x1b
nop word cs:[rax + rax]
mov al, 0x95
lock cmpxchg byte [0x20590a97], cl
je 0x201e2cf1
cmp al, 0x41
jne 0x201e29d0
lea rax, [0x20590a90]
ret
test r8d, r8d
je 0x201e2b69
test r9d, r9d
je 0x201e2be1
movzx eax, byte [0x20590b32]
cmp al, 0x7a
je 0x201e2dc9
mov cl, 0x9c
nop
mov al, 0x28
lock cmpxchg byte [0x20590b32], cl
je 0x201e2d9b
cmp al, 0x7a
jne 0x201e2a10
jmp 0x201e2dc9
movzx eax, byte [0x20590bd3]
cmp al, 0xb
je 0x201e2a54
mov cl, 0x37
nop word cs:[rax + rax]
mov al, 5
lock cmpxchg byte [0x20590bd3], cl
je 0x201e2d31
cmp al, 0xb
jne 0x201e2a40
lea rax, [0x20590bb0]
ret
test r9d, r9d
je 0x201e2c19
movzx eax, byte [0x20590c32]
cmp al, 0x9c
je 0x201e2e09
mov cl, 0xc7
nop word cs:[rax + rax]
mov al, 0x62
lock cmpxchg byte [0x20590c32], cl
je 0x201e2dd1
cmp al, 0x9c
jne 0x201e2a80
jmp 0x201e2e09
test r9d, r9d
je 0x201e2c49
movzx eax, byte [0x20590c5b]
cmp al, 0xb5
je 0x201e2e49
mov cl, 0x47
nop word cs:[rax + rax]
mov al, 0xee
lock cmpxchg byte [0x20590c5b], cl
je 0x201e2e11
cmp al, 0xb5
jne 0x201e2ac0
jmp 0x201e2e49
movzx eax, byte [0x20590b8c]
cmp al, 0x90
je 0x201e2e89
mov cl, 0x43
nop word [rax + rax]
mov al, 0x5d
lock cmpxchg byte [0x20590b8c], cl
je 0x201e2e51
cmp al, 0x90
jne 0x201e2af0
jmp 0x201e2e89
movzx eax, byte [0x20590a10]
cmp al, 0xe0
je 0x201e2ec9
mov cl, 0x45
nop word [rax + rax]
mov al, 0xe3
lock cmpxchg byte [0x20590a10], cl
je 0x201e2e91
cmp al, 0xe0
jne 0x201e2b20
jmp 0x201e2ec9
movzx eax, byte [0x20590cef]
cmp al, 0x5b
je 0x201e2f09
mov cl, 0xa9
nop word [rax + rax]
mov al, 0xde
lock cmpxchg byte [0x20590cef], cl
je 0x201e2ed1
cmp al, 0x5b
jne 0x201e2b50
jmp 0x201e2f09
test r9d, r9d
je 0x201e2d71
movzx eax, byte [0x20590c26]
cmp al, 6
je 0x201e2f49
mov cl, 0xb4
nop word cs:[rax + rax]
mov al, 0x8c
lock cmpxchg byte [0x20590c26], cl
je 0x201e2f11
cmp al, 6
jne 0x201e2b90
jmp 0x201e2f49
xor eax, eax
lea rcx, [0x20590b10]
lea rdx, [0x204786e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201e2bc0
mov al, 0x31
xchg byte [0x20590b1f], al
lea rax, [0x20590b10]
ret
movzx eax, byte [0x20590cbd]
cmp al, 0x25
je 0x201e2f89
mov cl, 0x32
nop word cs:[rax + rax]
mov al, 0x56
lock cmpxchg byte [0x20590cbd], cl
je 0x201e2f51
cmp al, 0x25
jne 0x201e2c00
jmp 0x201e2f89
movzx eax, byte [0x20590beb]
cmp al, 0xd
je 0x201e2fc9
mov cl, 0xf6
nop word [rax + rax]
mov al, 0x8b
lock cmpxchg byte [0x20590beb], cl
je 0x201e2f91
cmp al, 0xd
jne 0x201e2c30
jmp 0x201e2fc9
movzx eax, byte [0x20590c42]
cmp al, 0x9e
je 0x201e3009
mov cl, 0xe7
nop word [rax + rax]
mov al, 0xea
lock cmpxchg byte [0x20590c42], cl
je 0x201e2fd1
cmp al, 0x9e
jne 0x201e2c60
jmp 0x201e3009
xor eax, eax
lea rcx, [0x20590ab0]
lea rdx, [0x20478680]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x201e2c90
mov al, 0x2d
xchg byte [0x20590ac9], al
lea rax, [0x20590ab0]
ret
xor eax, eax
lea rcx, [0x20590aa0]
lea rdx, [0x20478670]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201e2cd0
mov al, 0x15
xchg byte [0x20590aac], al
lea rax, [0x20590aa0]
ret
xor eax, eax
lea rcx, [0x20590a90]
lea rdx, [0x20478660]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 7
jl 0x201e2d10
mov al, 0x41
xchg byte [0x20590a97], al
lea rax, [0x20590a90]
ret
xor eax, eax
lea rcx, [0x20590bb0]
lea rdx, [0x20478780]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201e2d50
mov al, 0xb
xchg byte [0x20590bd3], al
lea rax, [0x20590bb0]
ret
movzx eax, byte [0x205909eb]
cmp al, 0x59
je 0x201e303a
mov cl, 0xd4
mov al, 0xb5
lock cmpxchg byte [0x205909eb], cl
je 0x201e3011
cmp al, 0x59
jne 0x201e2d82
jmp 0x201e303a
xor eax, eax
lea rcx, [0x20590b20]
lea rdx, [0x204786f0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201e2db0
mov al, 0x7a
xchg byte [0x20590b32], al
lea rax, [0x20590b20]
ret
xor eax, eax
lea rcx, [0x20590c30]
lea rdx, [0x20478800]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201e2df0
mov al, 0x9c
xchg byte [0x20590c32], al
lea rax, [0x20590c30]
ret
xor eax, eax
lea rcx, [0x20590c50]
lea rdx, [0x20478820]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201e2e30
mov al, 0xb5
xchg byte [0x20590c5b], al
lea rax, [0x20590c50]
ret
xor eax, eax
lea rcx, [0x20590b70]
lea rdx, [0x20478740]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x201e2e70
mov al, 0x90
xchg byte [0x20590b8c], al
lea rax, [0x20590b70]
ret
xor eax, eax
lea rcx, [0x20590a00]
lea rdx, [0x204785e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201e2eb0
mov al, 0xe0
xchg byte [0x20590a10], al
lea rax, [0x20590a00]
ret
xor eax, eax
lea rcx, [0x20590ce0]
lea rdx, [0x204788b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201e2ef0
mov al, 0x5b
xchg byte [0x20590cef], al
lea rax, [0x20590ce0]
ret
xor eax, eax
lea rcx, [0x20590c00]
lea rdx, [0x204787d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x201e2f30
mov al, 6
xchg byte [0x20590c26], al
lea rax, [0x20590c00]
ret
xor eax, eax
lea rcx, [0x20590cb0]
lea rdx, [0x20478880]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e2f70
mov al, 0x25
xchg byte [0x20590cbd], al
lea rax, [0x20590cb0]
ret
xor eax, eax
lea rcx, [0x20590be0]
lea rdx, [0x204787b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201e2fb0
mov al, 0xd
xchg byte [0x20590beb], al
lea rax, [0x20590be0]
ret
xor eax, eax
lea rcx, [0x20590c40]
lea rdx, [0x20478810]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201e2ff0
mov al, 0x9e
xchg byte [0x20590c42], al
lea rax, [0x20590c40]
ret
xor eax, eax
lea rcx, [0x205909c0]
lea rdx, [0x204785a0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x2b
jl 0x201e3021
mov al, 0x59
xchg byte [0x205909eb], al
lea rax, [0x205909c0]
ret