Function at 0x201fcfb0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201fcffc
test edx, edx
je 0x201fd04c
test r8d, r8d
je 0x201fd08c
test r9d, r9d
je 0x201fd109
movzx eax, byte [0x20468926]
cmp al, 0x25
je 0x201fcff4
mov cl, 0x60
nop dword [rax + rax]
mov al, 0x7f
lock cmpxchg byte [0x20468926], cl
je 0x201fd289
cmp al, 0x25
jne 0x201fcfe0
lea rax, [0x20468900]
ret
test edx, edx
je 0x201fd0cc
test r8d, r8d
je 0x201fd13c
test r9d, r9d
je 0x201fd1b9
movzx eax, byte [0x20468aad]
cmp al, 0xbc
je 0x201fd044
mov cl, 9
nop word cs:[rax + rax]
mov al, 0x94
lock cmpxchg byte [0x20468aad], cl
je 0x201fd359
cmp al, 0xbc
jne 0x201fd030
lea rax, [0x20468aa0]
ret
test r8d, r8d
je 0x201fd179
test r9d, r9d
je 0x201fd1e9
movzx eax, byte [0x204689a5]
cmp al, 0x37
je 0x201fd084
mov cl, 0xd7
nop dword [rax + rax]
mov al, 0x18
lock cmpxchg byte [0x204689a5], cl
je 0x201fd391
cmp al, 0x37
jne 0x201fd070
lea rax, [0x20468990]
ret
test r9d, r9d
je 0x201fd219
movzx eax, byte [0x2046898d]
cmp al, 0x2f
je 0x201fd0c4
mov cl, 0x34
nop word cs:[rax + rax]
mov al, 0x7e
lock cmpxchg byte [0x2046898d], cl
je 0x201fd3d1
cmp al, 0x2f
jne 0x201fd0b0
lea rax, [0x20468980]
ret
test r8d, r8d
je 0x201fd249
test r9d, r9d
je 0x201fd2c1
movzx eax, byte [0x20468932]
cmp al, 8
je 0x201fd4e9
mov cl, 0x5d
nop
mov al, 0xac
lock cmpxchg byte [0x20468932], cl
je 0x201fd4b1
cmp al, 8
jne 0x201fd0f0
jmp 0x201fd4e9
movzx eax, byte [0x20468942]
cmp al, 0xc0
je 0x201fd134
mov cl, 0xa8
nop word cs:[rax + rax]
mov al, 0x7b
lock cmpxchg byte [0x20468942], cl
je 0x201fd411
cmp al, 0xc0
jne 0x201fd120
lea rax, [0x20468940]
ret
test r9d, r9d
je 0x201fd2f9
movzx eax, byte [0x20468842]
cmp al, 0xed
je 0x201fd529
mov cl, 0x3f
nop word cs:[rax + rax]
mov al, 0x86
lock cmpxchg byte [0x20468842], cl
je 0x201fd4f1
cmp al, 0xed
jne 0x201fd160
jmp 0x201fd529
test r9d, r9d
je 0x201fd329
movzx eax, byte [0x204689d1]
cmp al, 0xcf
je 0x201fd569
mov cl, 0x24
nop word cs:[rax + rax]
mov al, 0x82
lock cmpxchg byte [0x204689d1], cl
je 0x201fd531
cmp al, 0xcf
jne 0x201fd1a0
jmp 0x201fd569
movzx eax, byte [0x20468aea]
cmp al, 0xa1
je 0x201fd5a9
mov cl, 0xe
nop word [rax + rax]
mov al, 0x22
lock cmpxchg byte [0x20468aea], cl
je 0x201fd571
cmp al, 0xa1
jne 0x201fd1d0
jmp 0x201fd5a9
cmp byte [0x20468a7d], 0
je 0x201fd4a9
mov cl, 0xa6
nop dword [rax + rax]
mov al, 0xc9
lock cmpxchg byte [0x20468a7d], cl
je 0x201fd47b
test al, al
jne 0x201fd200
jmp 0x201fd4a9
movzx eax, byte [0x204687a7]
cmp al, 0x15
je 0x201fd5e9
mov cl, 0x94
nop word [rax + rax]
mov al, 0xf8
lock cmpxchg byte [0x204687a7], cl
je 0x201fd5b1
cmp al, 0x15
jne 0x201fd230
jmp 0x201fd5e9
test r9d, r9d
je 0x201fd451
movzx eax, byte [0x204688d3]
cmp al, 0x15
je 0x201fd629
mov cl, 0x7b
nop word cs:[rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x204688d3], cl
je 0x201fd5f1
cmp al, 0x15
jne 0x201fd270
jmp 0x201fd629
xor eax, eax
lea rcx, [0x20468900]
lea rdx, [0x2037da90]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x201fd2a0
mov al, 0x25
xchg byte [0x20468926], al
lea rax, [0x20468900]
ret
movzx eax, byte [0x204687e6]
cmp al, 0xea
je 0x201fd669
mov cl, 0xc9
nop word cs:[rax + rax]
mov al, 0x80
lock cmpxchg byte [0x204687e6], cl
je 0x201fd631
cmp al, 0xea
jne 0x201fd2e0
jmp 0x201fd669
movzx eax, byte [0x20468a33]
cmp al, 0x28
je 0x201fd6a9
mov cl, 0x48
nop word [rax + rax]
mov al, 0xa4
lock cmpxchg byte [0x20468a33], cl
je 0x201fd671
cmp al, 0x28
jne 0x201fd310
jmp 0x201fd6a9
movzx eax, byte [0x2046896d]
cmp al, 0x53
je 0x201fd6e9
mov cl, 0xc3
nop word [rax + rax]
mov al, 0x8c
lock cmpxchg byte [0x2046896d], cl
je 0x201fd6b1
cmp al, 0x53
jne 0x201fd340
jmp 0x201fd6e9
xor eax, eax
lea rcx, [0x20468aa0]
lea rdx, [0x2037dc30]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fd370
mov al, 0xbc
xchg byte [0x20468aad], al
lea rax, [0x20468aa0]
ret
xor eax, eax
lea rcx, [0x20468990]
lea rdx, [0x2037db20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x201fd3b0
mov al, 0x37
xchg byte [0x204689a5], al
lea rax, [0x20468990]
ret
xor eax, eax
lea rcx, [0x20468980]
lea rdx, [0x2037db10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fd3f0
mov al, 0x2f
xchg byte [0x2046898d], al
lea rax, [0x20468980]
ret
xor eax, eax
lea rcx, [0x20468940]
lea rdx, [0x2037dad0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201fd430
mov al, 0xc0
xchg byte [0x20468942], al
lea rax, [0x20468940]
ret
movzx eax, byte [0x2046895b]
cmp al, 0x50
je 0x201fd71a
mov cl, 0xc5
mov al, 0x77
lock cmpxchg byte [0x2046895b], cl
je 0x201fd6f1
cmp al, 0x50
jne 0x201fd462
jmp 0x201fd71a
xor eax, eax
lea rcx, [0x20468a70]
lea rdx, [0x2037dc00]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fd490
xor eax, eax
xchg byte [0x20468a7d], al
lea rax, [0x20468a70]
ret
xor eax, eax
lea rcx, [0x20468930]
lea rdx, [0x2037dac0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201fd4d0
mov al, 8
xchg byte [0x20468932], al
lea rax, [0x20468930]
ret
xor eax, eax
lea rcx, [0x20468830]
lea rdx, [0x2037d9c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201fd510
mov al, 0xed
xchg byte [0x20468842], al
lea rax, [0x20468830]
ret
xor eax, eax
lea rcx, [0x204689c0]
lea rdx, [0x2037db50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x201fd550
mov al, 0xcf
xchg byte [0x204689d1], al
lea rax, [0x204689c0]
ret
xor eax, eax
lea rcx, [0x20468ad0]
lea rdx, [0x2037dc60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x201fd590
mov al, 0xa1
xchg byte [0x20468aea], al
lea rax, [0x20468ad0]
ret
xor eax, eax
lea rcx, [0x204687a0]
lea rdx, [0x2037d940]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 7
jl 0x201fd5d0
mov al, 0x15
xchg byte [0x204687a7], al
lea rax, [0x204687a0]
ret
xor eax, eax
lea rcx, [0x204688b0]
lea rdx, [0x2037da40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201fd610
mov al, 0x15
xchg byte [0x204688d3], al
lea rax, [0x204688b0]
ret
xor eax, eax
lea rcx, [0x204687e0]
lea rdx, [0x2037d980]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x201fd650
mov al, 0xea
xchg byte [0x204687e6], al
lea rax, [0x204687e0]
ret
xor eax, eax
lea rcx, [0x20468a20]
lea rdx, [0x2037dbb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201fd690
mov al, 0x28
xchg byte [0x20468a33], al
lea rax, [0x20468a20]
ret
xor eax, eax
lea rcx, [0x20468960]
lea rdx, [0x2037daf0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201fd6d0
mov al, 0x53
xchg byte [0x2046896d], al
lea rax, [0x20468960]
ret
xor eax, eax
lea rcx, [0x20468950]
lea rdx, [0x2037dae0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201fd701
mov al, 0x50
xchg byte [0x2046895b], al
lea rax, [0x20468950]
ret