Function at 0x201de5a0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201de5ec
test edx, edx
je 0x201de63c
test r8d, r8d
je 0x201de67c
movzx eax, byte [0x20528dfd]
cmp al, 0x19
je 0x201de5e4
mov cl, 0xf4
nop word cs:[rax + rax]
mov al, 0x92
lock cmpxchg byte [0x20528dfd], cl
je 0x201de75c
cmp al, 0x19
jne 0x201de5d0
lea rax, [0x20528df0]
ret
test edx, edx
je 0x201de6ac
test r8d, r8d
je 0x201de6e9
test r9d, r9d
je 0x201de791
movzx eax, byte [0x20528d8d]
cmp al, 0x3f
je 0x201de634
mov cl, 0x71
nop word cs:[rax + rax]
mov al, 0xb5
lock cmpxchg byte [0x20528d8d], cl
je 0x201de8e9
cmp al, 0x3f
jne 0x201de620
lea rax, [0x20528d80]
ret
test r8d, r8d
je 0x201de729
movzx eax, byte [0x20528b75]
cmp al, 0x6f
je 0x201de674
mov cl, 0x69
nop word cs:[rax + rax]
mov al, 0xe4
lock cmpxchg byte [0x20528b75], cl
je 0x201de809
cmp al, 0x6f
jne 0x201de660
lea rax, [0x20528b70]
ret
movzx eax, byte [0x20528b13]
cmp al, 0x90
je 0x201de6a4
mov cl, 0x78
nop dword [rax]
mov al, 0x3e
lock cmpxchg byte [0x20528b13], cl
je 0x201de841
cmp al, 0x90
jne 0x201de690
lea rax, [0x20528b10]
ret
test r8d, r8d
je 0x201de7c9
test r9d, r9d
je 0x201de881
movzx eax, byte [0x20528cc3]
cmp al, 0xe9
je 0x201de9b9
mov cl, 0x9c
nop
mov al, 0xfa
lock cmpxchg byte [0x20528cc3], cl
je 0x201de98b
cmp al, 0xe9
jne 0x201de6d0
jmp 0x201de9b9
test r9d, r9d
je 0x201de8b9
movzx eax, byte [0x20528b82]
cmp al, 0x83
je 0x201de9f9
mov cl, 0xda
nop word cs:[rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x20528b82], cl
je 0x201de9c1
cmp al, 0x83
jne 0x201de710
jmp 0x201de9f9
movzx eax, byte [0x20528c8a]
cmp al, 0xba
je 0x201de754
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0x3b
lock cmpxchg byte [0x20528c8a], cl
je 0x201de921
cmp al, 0xba
jne 0x201de740
lea rax, [0x20528c60]
ret
xor eax, eax
lea rcx, [0x20528df0]
lea rdx, [0x2041cb10]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201de770
mov al, 0x19
xchg byte [0x20528dfd], al
lea rax, [0x20528df0]
ret
movzx eax, byte [0x20528c25]
cmp al, 0x63
je 0x201dea39
mov cl, 0xd2
nop word cs:[rax + rax]
mov al, 0x78
lock cmpxchg byte [0x20528c25], cl
je 0x201dea01
cmp al, 0x63
jne 0x201de7b0
jmp 0x201dea39
test r9d, r9d
je 0x201de961
movzx eax, byte [0x20528d9f]
cmp al, 0x8c
je 0x201dea79
mov cl, 0x9d
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x20528d9f], cl
je 0x201dea41
cmp al, 0x8c
jne 0x201de7f0
jmp 0x201dea79
xor eax, eax
lea rcx, [0x20528b70]
lea rdx, [0x2041c890]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201de820
mov al, 0x6f
xchg byte [0x20528b75], al
lea rax, [0x20528b70]
ret
xor eax, eax
lea rcx, [0x20528b10]
lea rdx, [0x2041c840]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201de860
mov al, 0x90
xchg byte [0x20528b13], al
lea rax, [0x20528b10]
ret
movzx eax, byte [0x20528bf4]
cmp al, 0x51
je 0x201deab9
mov cl, 0xe0
nop word cs:[rax + rax]
mov al, 0x71
lock cmpxchg byte [0x20528bf4], cl
je 0x201dea81
cmp al, 0x51
jne 0x201de8a0
jmp 0x201deab9
movzx eax, byte [0x20528b63]
cmp al, 0xf0
je 0x201deaf9
mov cl, 0x75
nop word [rax + rax]
mov al, 0x74
lock cmpxchg byte [0x20528b63], cl
je 0x201deac1
cmp al, 0xf0
jne 0x201de8d0
jmp 0x201deaf9
xor eax, eax
lea rcx, [0x20528d80]
lea rdx, [0x2041caa0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201de900
mov al, 0x3f
xchg byte [0x20528d8d], al
lea rax, [0x20528d80]
ret
xor eax, eax
lea rcx, [0x20528c60]
lea rdx, [0x2041c980]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x2a
jl 0x201de940
mov al, 0xba
xchg byte [0x20528c8a], al
lea rax, [0x20528c60]
ret
movzx eax, byte [0x20528cb5]
cmp al, 0x26
je 0x201deb2a
mov cl, 0x1f
mov al, 0x8f
lock cmpxchg byte [0x20528cb5], cl
je 0x201deb01
cmp al, 0x26
jne 0x201de972
jmp 0x201deb2a
xor eax, eax
lea rcx, [0x20528cc0]
lea rdx, [0x2041c9e0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201de9a0
mov al, 0xe9
xchg byte [0x20528cc3], al
lea rax, [0x20528cc0]
ret
xor eax, eax
lea rcx, [0x20528b80]
lea rdx, [0x2041c8a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201de9e0
mov al, 0x83
xchg byte [0x20528b82], al
lea rax, [0x20528b80]
ret
xor eax, eax
lea rcx, [0x20528c20]
lea rdx, [0x2041c940]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201dea20
mov al, 0x63
xchg byte [0x20528c25], al
lea rax, [0x20528c20]
ret
xor eax, eax
lea rcx, [0x20528d90]
lea rdx, [0x2041cab0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201dea60
mov al, 0x8c
xchg byte [0x20528d9f], al
lea rax, [0x20528d90]
ret
xor eax, eax
lea rcx, [0x20528bf0]
lea rdx, [0x2041c910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x201deaa0
mov al, 0x51
xchg byte [0x20528bf4], al
lea rax, [0x20528bf0]
ret
xor eax, eax
lea rcx, [0x20528b60]
lea rdx, [0x2041c880]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201deae0
mov al, 0xf0
xchg byte [0x20528b63], al
lea rax, [0x20528b60]
ret
xor eax, eax
lea rcx, [0x20528cb0]
lea rdx, [0x2041c9d0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201deb11
mov al, 0x26
xchg byte [0x20528cb5], al
lea rax, [0x20528cb0]
ret