Function at 0x201db330
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201db37c
test edx, edx
je 0x201db3cc
test r8d, r8d
je 0x201db40c
test r9d, r9d
je 0x201db489
movzx eax, byte [0x20527fe4]
cmp al, 0x95
je 0x201db374
mov cl, 0x83
nop dword [rax + rax]
mov al, 0x4e
lock cmpxchg byte [0x20527fe4], cl
je 0x201db609
cmp al, 0x95
jne 0x201db360
lea rax, [0x20527fd0]
ret
test edx, edx
je 0x201db44c
test r8d, r8d
je 0x201db4bc
test r9d, r9d
je 0x201db539
movzx eax, byte [0x205280b4]
cmp al, 0x79
je 0x201db3c4
mov cl, 0xd
nop word cs:[rax + rax]
mov al, 0x8d
lock cmpxchg byte [0x205280b4], cl
je 0x201db6d9
cmp al, 0x79
jne 0x201db3b0
lea rax, [0x205280a0]
ret
test r8d, r8d
je 0x201db4f9
test r9d, r9d
je 0x201db569
movzx eax, byte [0x20527ca5]
cmp al, 0x66
je 0x201db404
mov cl, 0xb8
nop dword [rax + rax]
mov al, 0x90
lock cmpxchg byte [0x20527ca5], cl
je 0x201db711
cmp al, 0x66
jne 0x201db3f0
lea rax, [0x20527ca0]
ret
test r9d, r9d
je 0x201db599
movzx eax, byte [0x20527c9c]
cmp al, 0xb
je 0x201db444
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0x21
lock cmpxchg byte [0x20527c9c], cl
je 0x201db751
cmp al, 0xb
jne 0x201db430
lea rax, [0x20527c80]
ret
test r8d, r8d
je 0x201db5c9
test r9d, r9d
je 0x201db641
movzx eax, byte [0x20527ffd]
cmp al, 0x8d
je 0x201db829
mov cl, 0xec
nop
mov al, 3
lock cmpxchg byte [0x20527ffd], cl
je 0x201db7fb
cmp al, 0x8d
jne 0x201db470
jmp 0x201db829
movzx eax, byte [0x20527790]
cmp al, 0xde
je 0x201db4b4
mov cl, 9
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x20527790], cl
je 0x201db791
cmp al, 0xde
jne 0x201db4a0
lea rax, [0x20527770]
ret
test r9d, r9d
je 0x201db679
movzx eax, byte [0x205277dd]
cmp al, 0x23
je 0x201db869
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x205277dd], cl
je 0x201db831
cmp al, 0x23
jne 0x201db4e0
jmp 0x201db869
test r9d, r9d
je 0x201db6a9
movzx eax, byte [0x20527cb3]
cmp al, 0xa4
je 0x201db8a9
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x20527cb3], cl
je 0x201db871
cmp al, 0xa4
jne 0x201db520
jmp 0x201db8a9
movzx eax, byte [0x2052802d]
cmp al, 0x9b
je 0x201db8e9
mov cl, 0x97
nop word [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x2052802d], cl
je 0x201db8b1
cmp al, 0x9b
jne 0x201db550
jmp 0x201db8e9
movzx eax, byte [0x20528241]
cmp al, 0x5d
je 0x201db929
mov cl, 0xdc
nop word [rax + rax]
mov al, 0x42
lock cmpxchg byte [0x20528241], cl
je 0x201db8f1
cmp al, 0x5d
jne 0x201db580
jmp 0x201db929
movzx eax, byte [0x20527efd]
cmp al, 0x5c
je 0x201db969
mov cl, 0xe7
nop word [rax + rax]
mov al, 0x77
lock cmpxchg byte [0x20527efd], cl
je 0x201db931
cmp al, 0x5c
jne 0x201db5b0
jmp 0x201db969
test r9d, r9d
je 0x201db7d1
movzx eax, byte [0x20527628]
cmp al, 0x8f
je 0x201db9a9
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0x6c
lock cmpxchg byte [0x20527628], cl
je 0x201db971
cmp al, 0x8f
jne 0x201db5f0
jmp 0x201db9a9
xor eax, eax
lea rcx, [0x20527fd0]
lea rdx, [0x2041c0e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201db620
mov al, 0x95
xchg byte [0x20527fe4], al
lea rax, [0x20527fd0]
ret
movzx eax, byte [0x20527e6d]
cmp al, 0x7d
je 0x201db9e9
mov cl, 0xf
nop word cs:[rax + rax]
mov al, 0xab
lock cmpxchg byte [0x20527e6d], cl
je 0x201db9b1
cmp al, 0x7d
jne 0x201db660
jmp 0x201db9e9
movzx eax, byte [0x20527883]
cmp al, 0x66
je 0x201dba29
mov cl, 0xa9
nop word [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x20527883], cl
je 0x201db9f1
cmp al, 0x66
jne 0x201db690
jmp 0x201dba29
movzx eax, byte [0x2052760d]
cmp al, 0x17
je 0x201dba69
mov cl, 0x2f
nop word [rax + rax]
mov al, 0x34
lock cmpxchg byte [0x2052760d], cl
je 0x201dba31
cmp al, 0x17
jne 0x201db6c0
jmp 0x201dba69
xor eax, eax
lea rcx, [0x205280a0]
lea rdx, [0x2041c1b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201db6f0
mov al, 0x79
xchg byte [0x205280b4], al
lea rax, [0x205280a0]
ret
xor eax, eax
lea rcx, [0x20527ca0]
lea rdx, [0x2041bdc0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201db730
mov al, 0x66
xchg byte [0x20527ca5], al
lea rax, [0x20527ca0]
ret
xor eax, eax
lea rcx, [0x20527c80]
lea rdx, [0x2041bda0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x201db770
mov al, 0xb
xchg byte [0x20527c9c], al
lea rax, [0x20527c80]
ret
xor eax, eax
lea rcx, [0x20527770]
lea rdx, [0x2041b8d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x20
jl 0x201db7b0
mov al, 0xde
xchg byte [0x20527790], al
lea rax, [0x20527770]
ret
movzx eax, byte [0x20527aa4]
cmp al, 0x83
je 0x201dba9a
mov cl, 0xf7
mov al, 0xeb
lock cmpxchg byte [0x20527aa4], cl
je 0x201dba71
cmp al, 0x83
jne 0x201db7e2
jmp 0x201dba9a
xor eax, eax
lea rcx, [0x20527ff0]
lea rdx, [0x2041c100]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db810
mov al, 0x8d
xchg byte [0x20527ffd], al
lea rax, [0x20527ff0]
ret
xor eax, eax
lea rcx, [0x205277c0]
lea rdx, [0x2041b910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x201db850
mov al, 0x23
xchg byte [0x205277dd], al
lea rax, [0x205277c0]
ret
xor eax, eax
lea rcx, [0x20527cb0]
lea rdx, [0x2041bdd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201db890
mov al, 0xa4
xchg byte [0x20527cb3], al
lea rax, [0x20527cb0]
ret
xor eax, eax
lea rcx, [0x20528020]
lea rdx, [0x2041c130]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db8d0
mov al, 0x9b
xchg byte [0x2052802d], al
lea rax, [0x20528020]
ret
xor eax, eax
lea rcx, [0x20528230]
lea rdx, [0x2041c340]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x201db910
mov al, 0x5d
xchg byte [0x20528241], al
lea rax, [0x20528230]
ret
xor eax, eax
lea rcx, [0x20527ef0]
lea rdx, [0x2041c000]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db950
mov al, 0x5c
xchg byte [0x20527efd], al
lea rax, [0x20527ef0]
ret
xor eax, eax
lea rcx, [0x20527610]
lea rdx, [0x2041b770]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x201db990
mov al, 0x8f
xchg byte [0x20527628], al
lea rax, [0x20527610]
ret
xor eax, eax
lea rcx, [0x20527e60]
lea rdx, [0x2041bf70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201db9d0
mov al, 0x7d
xchg byte [0x20527e6d], al
lea rax, [0x20527e60]
ret
xor eax, eax
lea rcx, [0x20527860]
lea rdx, [0x2041b9b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201dba10
mov al, 0x66
xchg byte [0x20527883], al
lea rax, [0x20527860]
ret
xor eax, eax
lea rcx, [0x205275f0]
lea rdx, [0x2041b750]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x201dba50
mov al, 0x17
xchg byte [0x2052760d], al
lea rax, [0x205275f0]
ret
xor eax, eax
lea rcx, [0x20527a90]
lea rdx, [0x2041bbc0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201dba81
mov al, 0x83
xchg byte [0x20527aa4], al
lea rax, [0x20527a90]
ret