Function at 0x201da430
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201da47c
test edx, edx
je 0x201da4cc
test r8d, r8d
je 0x201da50c
test r9d, r9d
je 0x201da589
movzx eax, byte [0x2052793c]
cmp al, 0x74
je 0x201da474
mov cl, 0x18
nop dword [rax + rax]
mov al, 0x90
lock cmpxchg byte [0x2052793c], cl
je 0x201da709
cmp al, 0x74
jne 0x201da460
lea rax, [0x20527920]
ret
test edx, edx
je 0x201da54c
test r8d, r8d
je 0x201da5bc
test r9d, r9d
je 0x201da639
movzx eax, byte [0x20527916]
cmp al, 0x1b
je 0x201da4c4
mov cl, 0xa5
nop word cs:[rax + rax]
mov al, 0x37
lock cmpxchg byte [0x20527916], cl
je 0x201da7d9
cmp al, 0x1b
jne 0x201da4b0
lea rax, [0x205278e0]
ret
test r8d, r8d
je 0x201da5f9
test r9d, r9d
je 0x201da669
movzx eax, byte [0x20527999]
cmp al, 0xef
je 0x201da504
mov cl, 0x60
nop dword [rax + rax]
mov al, 0x2a
lock cmpxchg byte [0x20527999], cl
je 0x201da811
cmp al, 0xef
jne 0x201da4f0
lea rax, [0x20527980]
ret
test r9d, r9d
je 0x201da699
movzx eax, byte [0x20527f15]
cmp al, 0x32
je 0x201da544
mov cl, 7
nop word cs:[rax + rax]
mov al, 0x16
lock cmpxchg byte [0x20527f15], cl
je 0x201da851
cmp al, 0x32
jne 0x201da530
lea rax, [0x20527f00]
ret
test r8d, r8d
je 0x201da6c9
test r9d, r9d
je 0x201da741
movzx eax, byte [0x20527b32]
cmp al, 0xba
je 0x201da929
mov cl, 0x46
nop
mov al, 0xb7
lock cmpxchg byte [0x20527b32], cl
je 0x201da8fb
cmp al, 0xba
jne 0x201da570
jmp 0x201da929
movzx eax, byte [0x20527fbc]
cmp al, 0x6e
je 0x201da5b4
mov cl, 0x31
nop word cs:[rax + rax]
mov al, 0xc6
lock cmpxchg byte [0x20527fbc], cl
je 0x201da891
cmp al, 0x6e
jne 0x201da5a0
lea rax, [0x20527fb0]
ret
test r9d, r9d
je 0x201da779
movzx eax, byte [0x20527fad]
cmp al, 0x76
je 0x201da969
mov cl, 0x13
nop word cs:[rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x20527fad], cl
je 0x201da931
cmp al, 0x76
jne 0x201da5e0
jmp 0x201da969
test r9d, r9d
je 0x201da7a9
movzx eax, byte [0x20528191]
cmp al, 0xef
je 0x201da9a9
mov cl, 0x3a
nop word cs:[rax + rax]
mov al, 0xe
lock cmpxchg byte [0x20528191], cl
je 0x201da971
cmp al, 0xef
jne 0x201da620
jmp 0x201da9a9
movzx eax, byte [0x2052805d]
cmp al, 0x87
je 0x201da9e9
mov cl, 0xe5
nop word [rax + rax]
mov al, 0xe7
lock cmpxchg byte [0x2052805d], cl
je 0x201da9b1
cmp al, 0x87
jne 0x201da650
jmp 0x201da9e9
movzx eax, byte [0x20527b67]
cmp al, 0xac
je 0x201daa29
mov cl, 0xb2
nop word [rax + rax]
mov al, 0xc0
lock cmpxchg byte [0x20527b67], cl
je 0x201da9f1
cmp al, 0xac
jne 0x201da680
jmp 0x201daa29
movzx eax, byte [0x205280cd]
cmp al, 0x8f
je 0x201daa69
mov cl, 0xed
nop word [rax + rax]
mov al, 0x5f
lock cmpxchg byte [0x205280cd], cl
je 0x201daa31
cmp al, 0x8f
jne 0x201da6b0
jmp 0x201daa69
test r9d, r9d
je 0x201da8d1
movzx eax, byte [0x20527d42]
cmp al, 0xa3
je 0x201daaa9
mov cl, 0xa0
nop word cs:[rax + rax]
mov al, 0xdf
lock cmpxchg byte [0x20527d42], cl
je 0x201daa71
cmp al, 0xa3
jne 0x201da6f0
jmp 0x201daaa9
xor eax, eax
lea rcx, [0x20527920]
lea rdx, [0x2041ba60]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x201da720
mov al, 0x74
xchg byte [0x2052793c], al
lea rax, [0x20527920]
ret
movzx eax, byte [0x20527d0f]
cmp al, 0x2b
je 0x201daae9
mov cl, 0xce
nop word cs:[rax + rax]
mov al, 0xb0
lock cmpxchg byte [0x20527d0f], cl
je 0x201daab1
cmp al, 0x2b
jne 0x201da760
jmp 0x201daae9
movzx eax, byte [0x2052811c]
cmp al, 0xd0
je 0x201dab29
mov cl, 0x4a
nop word [rax + rax]
mov al, 0x17
lock cmpxchg byte [0x2052811c], cl
je 0x201daaf1
cmp al, 0xd0
jne 0x201da790
jmp 0x201dab29
movzx eax, byte [0x205278af]
cmp al, 0xd6
je 0x201dab69
mov cl, 0xc6
nop word [rax + rax]
mov al, 0x58
lock cmpxchg byte [0x205278af], cl
je 0x201dab31
cmp al, 0xd6
jne 0x201da7c0
jmp 0x201dab69
xor eax, eax
lea rcx, [0x205278e0]
lea rdx, [0x2041ba20]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x36
jl 0x201da7f0
mov al, 0x1b
xchg byte [0x20527916], al
lea rax, [0x205278e0]
ret
xor eax, eax
lea rcx, [0x20527980]
lea rdx, [0x2041bac0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x201da830
mov al, 0xef
xchg byte [0x20527999], al
lea rax, [0x20527980]
ret
xor eax, eax
lea rcx, [0x20527f00]
lea rdx, [0x2041c010]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x201da870
mov al, 0x32
xchg byte [0x20527f15], al
lea rax, [0x20527f00]
ret
xor eax, eax
lea rcx, [0x20527fb0]
lea rdx, [0x2041c0c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201da8b0
mov al, 0x6e
xchg byte [0x20527fbc], al
lea rax, [0x20527fb0]
ret
movzx eax, byte [0x20527f63]
cmp al, 0x3e
je 0x201dab9a
mov cl, 0xcd
mov al, 0x79
lock cmpxchg byte [0x20527f63], cl
je 0x201dab71
cmp al, 0x3e
jne 0x201da8e2
jmp 0x201dab9a
xor eax, eax
lea rcx, [0x20527b20]
lea rdx, [0x2041bc40]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201da910
mov al, 0xba
xchg byte [0x20527b32], al
lea rax, [0x20527b20]
ret
xor eax, eax
lea rcx, [0x20527fa0]
lea rdx, [0x2041c0b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201da950
mov al, 0x76
xchg byte [0x20527fad], al
lea rax, [0x20527fa0]
ret
xor eax, eax
lea rcx, [0x20528180]
lea rdx, [0x2041c290]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x201da990
mov al, 0xef
xchg byte [0x20528191], al
lea rax, [0x20528180]
ret
xor eax, eax
lea rcx, [0x20528050]
lea rdx, [0x2041c160]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201da9d0
mov al, 0x87
xchg byte [0x2052805d], al
lea rax, [0x20528050]
ret
xor eax, eax
lea rcx, [0x20527b60]
lea rdx, [0x2041bc80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 7
jl 0x201daa10
mov al, 0xac
xchg byte [0x20527b67], al
lea rax, [0x20527b60]
ret
xor eax, eax
lea rcx, [0x205280c0]
lea rdx, [0x2041c1d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201daa50
mov al, 0x8f
xchg byte [0x205280cd], al
lea rax, [0x205280c0]
ret
xor eax, eax
lea rcx, [0x20527d40]
lea rdx, [0x2041be60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201daa90
mov al, 0xa3
xchg byte [0x20527d42], al
lea rax, [0x20527d40]
ret
xor eax, eax
lea rcx, [0x20527d00]
lea rdx, [0x2041be20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201daad0
mov al, 0x2b
xchg byte [0x20527d0f], al
lea rax, [0x20527d00]
ret
xor eax, eax
lea rcx, [0x20528110]
lea rdx, [0x2041c220]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201dab10
mov al, 0xd0
xchg byte [0x2052811c], al
lea rax, [0x20528110]
ret
xor eax, eax
lea rcx, [0x20527890]
lea rdx, [0x2041b9e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1f
jl 0x201dab50
mov al, 0xd6
xchg byte [0x205278af], al
lea rax, [0x20527890]
ret
xor eax, eax
lea rcx, [0x20527f50]
lea rdx, [0x2041c060]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201dab81
mov al, 0x3e
xchg byte [0x20527f63], al
lea rax, [0x20527f50]
ret