Function at 0x201dff80
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201dffcc
test edx, edx
je 0x201e001c
test r8d, r8d
je 0x201e005c
test r9d, r9d
je 0x201e00d9
movzx eax, byte [0x2058fec4]
cmp al, 0x95
je 0x201dffc4
mov cl, 0x83
nop dword [rax + rax]
mov al, 0x4e
lock cmpxchg byte [0x2058fec4], cl
je 0x201e0259
cmp al, 0x95
jne 0x201dffb0
lea rax, [0x2058feb0]
ret
test edx, edx
je 0x201e009c
test r8d, r8d
je 0x201e010c
test r9d, r9d
je 0x201e0189
movzx eax, byte [0x2058ff94]
cmp al, 0x79
je 0x201e0014
mov cl, 0xd
nop word cs:[rax + rax]
mov al, 0x8d
lock cmpxchg byte [0x2058ff94], cl
je 0x201e0329
cmp al, 0x79
jne 0x201e0000
lea rax, [0x2058ff80]
ret
test r8d, r8d
je 0x201e0149
test r9d, r9d
je 0x201e01b9
movzx eax, byte [0x2058fb85]
cmp al, 0x66
je 0x201e0054
mov cl, 0xb8
nop dword [rax + rax]
mov al, 0x90
lock cmpxchg byte [0x2058fb85], cl
je 0x201e0361
cmp al, 0x66
jne 0x201e0040
lea rax, [0x2058fb80]
ret
test r9d, r9d
je 0x201e01e9
movzx eax, byte [0x2058fb7c]
cmp al, 0xb
je 0x201e0094
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0x21
lock cmpxchg byte [0x2058fb7c], cl
je 0x201e03a1
cmp al, 0xb
jne 0x201e0080
lea rax, [0x2058fb60]
ret
test r8d, r8d
je 0x201e0219
test r9d, r9d
je 0x201e0291
movzx eax, byte [0x2058fedd]
cmp al, 0x8d
je 0x201e0479
mov cl, 0xec
nop
mov al, 3
lock cmpxchg byte [0x2058fedd], cl
je 0x201e044b
cmp al, 0x8d
jne 0x201e00c0
jmp 0x201e0479
movzx eax, byte [0x2058f670]
cmp al, 0xde
je 0x201e0104
mov cl, 9
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x2058f670], cl
je 0x201e03e1
cmp al, 0xde
jne 0x201e00f0
lea rax, [0x2058f650]
ret
test r9d, r9d
je 0x201e02c9
movzx eax, byte [0x2058f6bd]
cmp al, 0x23
je 0x201e04b9
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x2058f6bd], cl
je 0x201e0481
cmp al, 0x23
jne 0x201e0130
jmp 0x201e04b9
test r9d, r9d
je 0x201e02f9
movzx eax, byte [0x2058fb93]
cmp al, 0xa4
je 0x201e04f9
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x2058fb93], cl
je 0x201e04c1
cmp al, 0xa4
jne 0x201e0170
jmp 0x201e04f9
movzx eax, byte [0x2058ff0d]
cmp al, 0x9b
je 0x201e0539
mov cl, 0x97
nop word [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x2058ff0d], cl
je 0x201e0501
cmp al, 0x9b
jne 0x201e01a0
jmp 0x201e0539
movzx eax, byte [0x20590121]
cmp al, 0x5d
je 0x201e0579
mov cl, 0xdc
nop word [rax + rax]
mov al, 0x42
lock cmpxchg byte [0x20590121], cl
je 0x201e0541
cmp al, 0x5d
jne 0x201e01d0
jmp 0x201e0579
movzx eax, byte [0x2058fddd]
cmp al, 0x5c
je 0x201e05b9
mov cl, 0xe7
nop word [rax + rax]
mov al, 0x77
lock cmpxchg byte [0x2058fddd], cl
je 0x201e0581
cmp al, 0x5c
jne 0x201e0200
jmp 0x201e05b9
test r9d, r9d
je 0x201e0421
movzx eax, byte [0x2058f508]
cmp al, 0x8f
je 0x201e05f9
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0x6c
lock cmpxchg byte [0x2058f508], cl
je 0x201e05c1
cmp al, 0x8f
jne 0x201e0240
jmp 0x201e05f9
xor eax, eax
lea rcx, [0x2058feb0]
lea rdx, [0x20477e70]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201e0270
mov al, 0x95
xchg byte [0x2058fec4], al
lea rax, [0x2058feb0]
ret
movzx eax, byte [0x2058fd4d]
cmp al, 0x7d
je 0x201e0639
mov cl, 0xf
nop word cs:[rax + rax]
mov al, 0xab
lock cmpxchg byte [0x2058fd4d], cl
je 0x201e0601
cmp al, 0x7d
jne 0x201e02b0
jmp 0x201e0639
movzx eax, byte [0x2058f763]
cmp al, 0x66
je 0x201e0679
mov cl, 0xa9
nop word [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x2058f763], cl
je 0x201e0641
cmp al, 0x66
jne 0x201e02e0
jmp 0x201e0679
movzx eax, byte [0x2058f4ed]
cmp al, 0x17
je 0x201e06b9
mov cl, 0x2f
nop word [rax + rax]
mov al, 0x34
lock cmpxchg byte [0x2058f4ed], cl
je 0x201e0681
cmp al, 0x17
jne 0x201e0310
jmp 0x201e06b9
xor eax, eax
lea rcx, [0x2058ff80]
lea rdx, [0x20477f40]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201e0340
mov al, 0x79
xchg byte [0x2058ff94], al
lea rax, [0x2058ff80]
ret
xor eax, eax
lea rcx, [0x2058fb80]
lea rdx, [0x20477b50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201e0380
mov al, 0x66
xchg byte [0x2058fb85], al
lea rax, [0x2058fb80]
ret
xor eax, eax
lea rcx, [0x2058fb60]
lea rdx, [0x20477b30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x201e03c0
mov al, 0xb
xchg byte [0x2058fb7c], al
lea rax, [0x2058fb60]
ret
xor eax, eax
lea rcx, [0x2058f650]
lea rdx, [0x20477660]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x20
jl 0x201e0400
mov al, 0xde
xchg byte [0x2058f670], al
lea rax, [0x2058f650]
ret
movzx eax, byte [0x2058f984]
cmp al, 0x83
je 0x201e06ea
mov cl, 0xf7
mov al, 0xeb
lock cmpxchg byte [0x2058f984], cl
je 0x201e06c1
cmp al, 0x83
jne 0x201e0432
jmp 0x201e06ea
xor eax, eax
lea rcx, [0x2058fed0]
lea rdx, [0x20477e90]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e0460
mov al, 0x8d
xchg byte [0x2058fedd], al
lea rax, [0x2058fed0]
ret
xor eax, eax
lea rcx, [0x2058f6a0]
lea rdx, [0x204776a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x201e04a0
mov al, 0x23
xchg byte [0x2058f6bd], al
lea rax, [0x2058f6a0]
ret
xor eax, eax
lea rcx, [0x2058fb90]
lea rdx, [0x20477b60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201e04e0
mov al, 0xa4
xchg byte [0x2058fb93], al
lea rax, [0x2058fb90]
ret
xor eax, eax
lea rcx, [0x2058ff00]
lea rdx, [0x20477ec0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e0520
mov al, 0x9b
xchg byte [0x2058ff0d], al
lea rax, [0x2058ff00]
ret
xor eax, eax
lea rcx, [0x20590110]
lea rdx, [0x204780d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x201e0560
mov al, 0x5d
xchg byte [0x20590121], al
lea rax, [0x20590110]
ret
xor eax, eax
lea rcx, [0x2058fdd0]
lea rdx, [0x20477d90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e05a0
mov al, 0x5c
xchg byte [0x2058fddd], al
lea rax, [0x2058fdd0]
ret
xor eax, eax
lea rcx, [0x2058f4f0]
lea rdx, [0x20477500]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x201e05e0
mov al, 0x8f
xchg byte [0x2058f508], al
lea rax, [0x2058f4f0]
ret
xor eax, eax
lea rcx, [0x2058fd40]
lea rdx, [0x20477d00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201e0620
mov al, 0x7d
xchg byte [0x2058fd4d], al
lea rax, [0x2058fd40]
ret
xor eax, eax
lea rcx, [0x2058f740]
lea rdx, [0x20477740]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201e0660
mov al, 0x66
xchg byte [0x2058f763], al
lea rax, [0x2058f740]
ret
xor eax, eax
lea rcx, [0x2058f4d0]
lea rdx, [0x204774e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x201e06a0
mov al, 0x17
xchg byte [0x2058f4ed], al
lea rax, [0x2058f4d0]
ret
xor eax, eax
lea rcx, [0x2058f970]
lea rdx, [0x20477950]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201e06d1
mov al, 0x83
xchg byte [0x2058f984], al
lea rax, [0x2058f970]
ret