Function at 0x201eb160
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201eb1ac
test edx, edx
je 0x201eb1fc
test r8d, r8d
je 0x201eb23c
test r9d, r9d
je 0x201eb2b9
movzx eax, byte [0x20591420]
cmp al, 0x11
je 0x201eb1a4
mov cl, 0x2f
nop dword [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x20591420], cl
je 0x201eb439
cmp al, 0x11
jne 0x201eb190
lea rax, [0x20591410]
ret
test edx, edx
je 0x201eb27c
test r8d, r8d
je 0x201eb2ec
test r9d, r9d
je 0x201eb369
movzx eax, byte [0x205916aa]
cmp al, 0x6f
je 0x201eb1f4
mov cl, 0x3e
nop word cs:[rax + rax]
mov al, 0x94
lock cmpxchg byte [0x205916aa], cl
je 0x201eb509
cmp al, 0x6f
jne 0x201eb1e0
lea rax, [0x205916a0]
ret
test r8d, r8d
je 0x201eb329
test r9d, r9d
je 0x201eb399
movzx eax, byte [0x20591575]
cmp al, 0x89
je 0x201eb234
mov cl, 0xf
nop dword [rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x20591575], cl
je 0x201eb541
cmp al, 0x89
jne 0x201eb220
lea rax, [0x20591570]
ret
test r9d, r9d
je 0x201eb3c9
movzx eax, byte [0x2059166d]
cmp al, 0x19
je 0x201eb274
mov cl, 0xdc
nop word cs:[rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x2059166d], cl
je 0x201eb581
cmp al, 0x19
jne 0x201eb260
lea rax, [0x20591660]
ret
test r8d, r8d
je 0x201eb3f9
test r9d, r9d
je 0x201eb471
movzx eax, byte [0x20591403]
cmp al, 0x4b
je 0x201eb659
mov cl, 0xdc
nop
mov al, 0xf8
lock cmpxchg byte [0x20591403], cl
je 0x201eb62b
cmp al, 0x4b
jne 0x201eb2a0
jmp 0x201eb659
movzx eax, byte [0x20591542]
cmp al, 8
je 0x201eb2e4
mov cl, 4
nop word cs:[rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x20591542], cl
je 0x201eb5c1
cmp al, 8
jne 0x201eb2d0
lea rax, [0x20591530]
ret
test r9d, r9d
je 0x201eb4a9
movzx eax, byte [0x2059152f]
cmp al, 0x48
je 0x201eb699
mov cl, 0x87
nop word cs:[rax + rax]
mov al, 0xed
lock cmpxchg byte [0x2059152f], cl
je 0x201eb661
cmp al, 0x48
jne 0x201eb310
jmp 0x201eb699
test r9d, r9d
je 0x201eb4d9
movzx eax, byte [0x20591493]
cmp al, 0x94
je 0x201eb6d9
mov cl, 0xfb
nop word cs:[rax + rax]
mov al, 0x75
lock cmpxchg byte [0x20591493], cl
je 0x201eb6a1
cmp al, 0x94
jne 0x201eb350
jmp 0x201eb6d9
movzx eax, byte [0x2059169d]
cmp al, 0x7c
je 0x201eb719
mov cl, 0x15
nop word [rax + rax]
mov al, 0x86
lock cmpxchg byte [0x2059169d], cl
je 0x201eb6e1
cmp al, 0x7c
jne 0x201eb380
jmp 0x201eb719
movzx eax, byte [0x2059164d]
cmp al, 0x56
je 0x201eb759
mov cl, 0x95
nop word [rax + rax]
mov al, 0x3c
lock cmpxchg byte [0x2059164d], cl
je 0x201eb721
cmp al, 0x56
jne 0x201eb3b0
jmp 0x201eb759
movzx eax, byte [0x20591606]
cmp al, 0x77
je 0x201eb799
mov cl, 0x45
nop word [rax + rax]
mov al, 0x31
lock cmpxchg byte [0x20591606], cl
je 0x201eb761
cmp al, 0x77
jne 0x201eb3e0
jmp 0x201eb799
test r9d, r9d
je 0x201eb601
movzx eax, byte [0x20591453]
cmp al, 0xa5
je 0x201eb7d9
mov cl, 0x7c
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x20591453], cl
je 0x201eb7a1
cmp al, 0xa5
jne 0x201eb420
jmp 0x201eb7d9
xor eax, eax
lea rcx, [0x20591410]
lea rdx, [0x20479000]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201eb450
mov al, 0x11
xchg byte [0x20591420], al
lea rax, [0x20591410]
ret
movzx eax, byte [0x205916cf]
cmp al, 0xc1
je 0x201eb819
mov cl, 0xc6
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x205916cf], cl
je 0x201eb7e1
cmp al, 0xc1
jne 0x201eb490
jmp 0x201eb819
movzx eax, byte [0x205915cb]
cmp al, 0xdb
je 0x201eb859
mov cl, 0x27
nop word [rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x205915cb], cl
je 0x201eb821
cmp al, 0xdb
jne 0x201eb4c0
jmp 0x201eb859
movzx eax, byte [0x205913f4]
cmp al, 0xc
je 0x201eb899
mov cl, 0xa5
nop word [rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x205913f4], cl
je 0x201eb861
cmp al, 0xc
jne 0x201eb4f0
jmp 0x201eb899
xor eax, eax
lea rcx, [0x205916a0]
lea rdx, [0x20479280]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x201eb520
mov al, 0x6f
xchg byte [0x205916aa], al
lea rax, [0x205916a0]
ret
xor eax, eax
lea rcx, [0x20591570]
lea rdx, [0x20479150]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201eb560
mov al, 0x89
xchg byte [0x20591575], al
lea rax, [0x20591570]
ret
xor eax, eax
lea rcx, [0x20591660]
lea rdx, [0x20479240]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201eb5a0
mov al, 0x19
xchg byte [0x2059166d], al
lea rax, [0x20591660]
ret
xor eax, eax
lea rcx, [0x20591530]
lea rdx, [0x20479110]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201eb5e0
mov al, 8
xchg byte [0x20591542], al
lea rax, [0x20591530]
ret
movzx eax, byte [0x20591445]
cmp al, 0x10
je 0x201eb8ca
mov cl, 0xb9
mov al, 0x6b
lock cmpxchg byte [0x20591445], cl
je 0x201eb8a1
cmp al, 0x10
jne 0x201eb612
jmp 0x201eb8ca
xor eax, eax
lea rcx, [0x20591400]
lea rdx, [0x20478ff0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201eb640
mov al, 0x4b
xchg byte [0x20591403], al
lea rax, [0x20591400]
ret
xor eax, eax
lea rcx, [0x20591520]
lea rdx, [0x20479100]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201eb680
mov al, 0x48
xchg byte [0x2059152f], al
lea rax, [0x20591520]
ret
xor eax, eax
lea rcx, [0x20591480]
lea rdx, [0x20479060]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201eb6c0
mov al, 0x94
xchg byte [0x20591493], al
lea rax, [0x20591480]
ret
xor eax, eax
lea rcx, [0x20591690]
lea rdx, [0x20479270]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201eb700
mov al, 0x7c
xchg byte [0x2059169d], al
lea rax, [0x20591690]
ret
xor eax, eax
lea rcx, [0x20591640]
lea rdx, [0x20479220]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201eb740
mov al, 0x56
xchg byte [0x2059164d], al
lea rax, [0x20591640]
ret
xor eax, eax
lea rcx, [0x205915e0]
lea rdx, [0x204791c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x201eb780
mov al, 0x77
xchg byte [0x20591606], al
lea rax, [0x205915e0]
ret
xor eax, eax
lea rcx, [0x20591450]
lea rdx, [0x20479030]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201eb7c0
mov al, 0xa5
xchg byte [0x20591453], al
lea rax, [0x20591450]
ret
xor eax, eax
lea rcx, [0x205916c0]
lea rdx, [0x204792a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201eb800
mov al, 0xc1
xchg byte [0x205916cf], al
lea rax, [0x205916c0]
ret
xor eax, eax
lea rcx, [0x205915c0]
lea rdx, [0x204791a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201eb840
mov al, 0xdb
xchg byte [0x205915cb], al
lea rax, [0x205915c0]
ret
xor eax, eax
lea rcx, [0x205913f0]
lea rdx, [0x20478fe0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x201eb880
mov al, 0xc
xchg byte [0x205913f4], al
lea rax, [0x205913f0]
ret
xor eax, eax
lea rcx, [0x20591430]
lea rdx, [0x20479010]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x201eb8b1
mov al, 0x10
xchg byte [0x20591445], al
lea rax, [0x20591430]
ret