Function at 0x203e8950
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x203e899c
test edx, edx
je 0x203e89ec
test r8d, r8d
je 0x203e8a2c
test r9d, r9d
je 0x203e8aa9
movzx eax, byte [0x205dae55]
cmp al, 0x76
je 0x203e8994
mov cl, 0x1a
nop dword [rax + rax]
mov al, 0x45
lock cmpxchg byte [0x205dae55], cl
je 0x203e8c29
cmp al, 0x76
jne 0x203e8980
lea rax, [0x205dae50]
ret
test edx, edx
je 0x203e8a6c
test r8d, r8d
je 0x203e8adc
test r9d, r9d
je 0x203e8b59
movzx eax, byte [0x205daf6d]
cmp al, 0xb3
je 0x203e89e4
mov cl, 0x30
nop word cs:[rax + rax]
mov al, 0xbb
lock cmpxchg byte [0x205daf6d], cl
je 0x203e8cf9
cmp al, 0xb3
jne 0x203e89d0
lea rax, [0x205daf60]
ret
test r8d, r8d
je 0x203e8b19
test r9d, r9d
je 0x203e8b89
movzx eax, byte [0x205db134]
cmp al, 0x98
je 0x203e8a24
mov cl, 0x88
nop dword [rax + rax]
mov al, 0x45
lock cmpxchg byte [0x205db134], cl
je 0x203e8d31
cmp al, 0x98
jne 0x203e8a10
lea rax, [0x205db120]
ret
test r9d, r9d
je 0x203e8bb9
movzx eax, byte [0x205db2e1]
cmp al, 0x65
je 0x203e8a64
mov cl, 0x8d
nop word cs:[rax + rax]
mov al, 0xa0
lock cmpxchg byte [0x205db2e1], cl
je 0x203e8d71
cmp al, 0x65
jne 0x203e8a50
lea rax, [0x205db2d0]
ret
test r8d, r8d
je 0x203e8be9
test r9d, r9d
je 0x203e8c61
movzx eax, byte [0x205db11d]
cmp al, 0xab
je 0x203e8e49
mov cl, 0x97
nop
mov al, 0x4b
lock cmpxchg byte [0x205db11d], cl
je 0x203e8e1b
cmp al, 0xab
jne 0x203e8a90
jmp 0x203e8e49
movzx eax, byte [0x205daf5d]
cmp al, 0x35
je 0x203e8ad4
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0x22
lock cmpxchg byte [0x205daf5d], cl
je 0x203e8db1
cmp al, 0x35
jne 0x203e8ac0
lea rax, [0x205daf50]
ret
test r9d, r9d
je 0x203e8c99
movzx eax, byte [0x205daf2d]
cmp al, 0xa4
je 0x203e8e89
mov cl, 0x5a
nop word cs:[rax + rax]
mov al, 0x4f
lock cmpxchg byte [0x205daf2d], cl
je 0x203e8e51
cmp al, 0xa4
jne 0x203e8b00
jmp 0x203e8e89
test r9d, r9d
je 0x203e8cc9
movzx eax, byte [0x205dab74]
cmp al, 0x3e
je 0x203e8ec9
mov cl, 0x1c
nop word cs:[rax + rax]
mov al, 0x3b
lock cmpxchg byte [0x205dab74], cl
je 0x203e8e91
cmp al, 0x3e
jne 0x203e8b40
jmp 0x203e8ec9
movzx eax, byte [0x205daaa0]
cmp al, 0xdf
je 0x203e8f09
mov cl, 0xed
nop word [rax + rax]
mov al, 0xc7
lock cmpxchg byte [0x205daaa0], cl
je 0x203e8ed1
cmp al, 0xdf
jne 0x203e8b70
jmp 0x203e8f09
movzx eax, byte [0x205db399]
cmp al, 0x14
je 0x203e8f49
mov cl, 0x75
nop word [rax + rax]
mov al, 0x76
lock cmpxchg byte [0x205db399], cl
je 0x203e8f11
cmp al, 0x14
jne 0x203e8ba0
jmp 0x203e8f49
movzx eax, byte [0x205dab37]
cmp al, 0xe4
je 0x203e8f89
mov cl, 0x4c
nop word [rax + rax]
mov al, 0x13
lock cmpxchg byte [0x205dab37], cl
je 0x203e8f51
cmp al, 0xe4
jne 0x203e8bd0
jmp 0x203e8f89
test r9d, r9d
je 0x203e8df1
movzx eax, byte [0x205db3b8]
cmp al, 0x36
je 0x203e8fc9
mov cl, 0x7a
nop word cs:[rax + rax]
mov al, 0x4d
lock cmpxchg byte [0x205db3b8], cl
je 0x203e8f91
cmp al, 0x36
jne 0x203e8c10
jmp 0x203e8fc9
xor eax, eax
lea rcx, [0x205dae50]
lea rdx, [0x2049b840]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x203e8c40
mov al, 0x76
xchg byte [0x205dae55], al
lea rax, [0x205dae50]
ret
movzx eax, byte [0x205dae4c]
cmp al, 0xdc
je 0x203e9009
mov cl, 0xb8
nop word cs:[rax + rax]
mov al, 6
lock cmpxchg byte [0x205dae4c], cl
je 0x203e8fd1
cmp al, 0xdc
jne 0x203e8c80
jmp 0x203e9009
movzx eax, byte [0x205db1a1]
cmp al, 0x28
je 0x203e9049
mov cl, 0x37
nop word [rax + rax]
mov al, 0x80
lock cmpxchg byte [0x205db1a1], cl
je 0x203e9011
cmp al, 0x28
jne 0x203e8cb0
jmp 0x203e9049
movzx eax, byte [0x205daf4d]
cmp al, 0xcd
je 0x203e9089
mov cl, 0x5d
nop word [rax + rax]
mov al, 6
lock cmpxchg byte [0x205daf4d], cl
je 0x203e9051
cmp al, 0xcd
jne 0x203e8ce0
jmp 0x203e9089
xor eax, eax
lea rcx, [0x205daf60]
lea rdx, [0x2049b950]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e8d10
mov al, 0xb3
xchg byte [0x205daf6d], al
lea rax, [0x205daf60]
ret
xor eax, eax
lea rcx, [0x205db120]
lea rdx, [0x2049bb10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x203e8d50
mov al, 0x98
xchg byte [0x205db134], al
lea rax, [0x205db120]
ret
xor eax, eax
lea rcx, [0x205db2d0]
lea rdx, [0x2049bcc0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x203e8d90
mov al, 0x65
xchg byte [0x205db2e1], al
lea rax, [0x205db2d0]
ret
xor eax, eax
lea rcx, [0x205daf50]
lea rdx, [0x2049b940]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e8dd0
mov al, 0x35
xchg byte [0x205daf5d], al
lea rax, [0x205daf50]
ret
movzx eax, byte [0x205dafcd]
cmp al, 0x3e
je 0x203e90ba
mov cl, 0xd7
mov al, 0x34
lock cmpxchg byte [0x205dafcd], cl
je 0x203e9091
cmp al, 0x3e
jne 0x203e8e02
jmp 0x203e90ba
xor eax, eax
lea rcx, [0x205db110]
lea rdx, [0x2049bb00]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e8e30
mov al, 0xab
xchg byte [0x205db11d], al
lea rax, [0x205db110]
ret
xor eax, eax
lea rcx, [0x205daf20]
lea rdx, [0x2049b910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e8e70
mov al, 0xa4
xchg byte [0x205daf2d], al
lea rax, [0x205daf20]
ret
xor eax, eax
lea rcx, [0x205dab70]
lea rdx, [0x2049b560]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x203e8eb0
mov al, 0x3e
xchg byte [0x205dab74], al
lea rax, [0x205dab70]
ret
xor eax, eax
lea rcx, [0x205daa90]
lea rdx, [0x2049b490]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x203e8ef0
mov al, 0xdf
xchg byte [0x205daaa0], al
lea rax, [0x205daa90]
ret
xor eax, eax
lea rcx, [0x205db390]
lea rdx, [0x2049bd80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x203e8f30
mov al, 0x14
xchg byte [0x205db399], al
lea rax, [0x205db390]
ret
xor eax, eax
lea rcx, [0x205dab30]
lea rdx, [0x2049b520]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 7
jl 0x203e8f70
mov al, 0xe4
xchg byte [0x205dab37], al
lea rax, [0x205dab30]
ret
xor eax, eax
lea rcx, [0x205db3b0]
lea rdx, [0x2049bda0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 8
jl 0x203e8fb0
mov al, 0x36
xchg byte [0x205db3b8], al
lea rax, [0x205db3b0]
ret
xor eax, eax
lea rcx, [0x205dae30]
lea rdx, [0x2049b820]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x203e8ff0
mov al, 0xdc
xchg byte [0x205dae4c], al
lea rax, [0x205dae30]
ret
xor eax, eax
lea rcx, [0x205db190]
lea rdx, [0x2049bb80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x203e9030
mov al, 0x28
xchg byte [0x205db1a1], al
lea rax, [0x205db190]
ret
xor eax, eax
lea rcx, [0x205daf40]
lea rdx, [0x2049b930]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9070
mov al, 0xcd
xchg byte [0x205daf4d], al
lea rax, [0x205daf40]
ret
xor eax, eax
lea rcx, [0x205dafc0]
lea rdx, [0x2049b9b0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e90a1
mov al, 0x3e
xchg byte [0x205dafcd], al
lea rax, [0x205dafc0]
ret