Function at 0x203e9850
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x203e989c
test edx, edx
je 0x203e98ec
test r8d, r8d
je 0x203e992c
test r9d, r9d
je 0x203e99a9
movzx eax, byte [0x205db09d]
cmp al, 0x43
je 0x203e9894
xor ecx, ecx
nop dword [rax + rax]
mov al, 0xf
lock cmpxchg byte [0x205db09d], cl
je 0x203e9b29
cmp al, 0x43
jne 0x203e9880
lea rax, [0x205db090]
ret
test edx, edx
je 0x203e996c
test r8d, r8d
je 0x203e99dc
test r9d, r9d
je 0x203e9a59
movzx eax, byte [0x205db36d]
cmp al, 0xb
je 0x203e98e4
mov cl, 0x6c
nop word cs:[rax + rax]
mov al, 0x34
lock cmpxchg byte [0x205db36d], cl
je 0x203e9bf9
cmp al, 0xb
jne 0x203e98d0
lea rax, [0x205db360]
ret
test r8d, r8d
je 0x203e9a19
test r9d, r9d
je 0x203e9a89
movzx eax, byte [0x205db083]
cmp al, 0x10
je 0x203e9924
mov cl, 0xc2
nop dword [rax + rax]
mov al, 0x93
lock cmpxchg byte [0x205db083], cl
je 0x203e9c31
cmp al, 0x10
jne 0x203e9910
lea rax, [0x205db070]
ret
test r9d, r9d
je 0x203e9ab9
movzx eax, byte [0x205dabbf]
cmp al, 0xf3
je 0x203e9964
mov cl, 0x4b
nop word cs:[rax + rax]
mov al, 0x28
lock cmpxchg byte [0x205dabbf], cl
je 0x203e9c71
cmp al, 0xf3
jne 0x203e9950
lea rax, [0x205dabb0]
ret
test r8d, r8d
je 0x203e9ae9
test r9d, r9d
je 0x203e9b61
movzx eax, byte [0x205db38d]
cmp al, 0xd3
je 0x203e9d49
mov cl, 0x3e
nop
mov al, 0x2f
lock cmpxchg byte [0x205db38d], cl
je 0x203e9d1b
cmp al, 0xd3
jne 0x203e9990
jmp 0x203e9d49
movzx eax, byte [0x205db29d]
cmp al, 0xe8
je 0x203e99d4
mov cl, 0x15
nop word cs:[rax + rax]
mov al, 0x10
lock cmpxchg byte [0x205db29d], cl
je 0x203e9cb1
cmp al, 0xe8
jne 0x203e99c0
lea rax, [0x205db290]
ret
test r9d, r9d
je 0x203e9b99
movzx eax, byte [0x205db28a]
cmp al, 0x5e
je 0x203e9d89
mov cl, 0xdb
nop word cs:[rax + rax]
mov al, 0xa8
lock cmpxchg byte [0x205db28a], cl
je 0x203e9d51
cmp al, 0x5e
jne 0x203e9a00
jmp 0x203e9d89
test r9d, r9d
je 0x203e9bc9
movzx eax, byte [0x205db2b8]
cmp al, 0xaf
je 0x203e9dc9
mov cl, 0x2f
nop word cs:[rax + rax]
mov al, 0x97
lock cmpxchg byte [0x205db2b8], cl
je 0x203e9d91
cmp al, 0xaf
jne 0x203e9a40
jmp 0x203e9dc9
movzx eax, byte [0x205daa42]
cmp al, 0x4a
je 0x203e9e09
mov cl, 0xec
nop word [rax + rax]
mov al, 0x31
lock cmpxchg byte [0x205daa42], cl
je 0x203e9dd1
cmp al, 0x4a
jne 0x203e9a70
jmp 0x203e9e09
movzx eax, byte [0x205db25e]
cmp al, 0x94
je 0x203e9e49
mov cl, 0x89
nop word [rax + rax]
mov al, 0x2b
lock cmpxchg byte [0x205db25e], cl
je 0x203e9e11
cmp al, 0x94
jne 0x203e9aa0
jmp 0x203e9e49
movzx eax, byte [0x205db1eb]
cmp al, 0x15
je 0x203e9e89
mov cl, 0x19
nop word [rax + rax]
mov al, 0xd9
lock cmpxchg byte [0x205db1eb], cl
je 0x203e9e51
cmp al, 0x15
jne 0x203e9ad0
jmp 0x203e9e89
test r9d, r9d
je 0x203e9cf1
movzx eax, byte [0x205dad75]
cmp al, 0x9c
je 0x203e9ec9
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x205dad75], cl
je 0x203e9e91
cmp al, 0x9c
jne 0x203e9b10
jmp 0x203e9ec9
xor eax, eax
lea rcx, [0x205db090]
lea rdx, [0x2049ba80]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9b40
mov al, 0x43
xchg byte [0x205db09d], al
lea rax, [0x205db090]
ret
movzx eax, byte [0x205dafed]
cmp al, 0x18
je 0x203e9f09
mov cl, 0xde
nop word cs:[rax + rax]
mov al, 0x62
lock cmpxchg byte [0x205dafed], cl
je 0x203e9ed1
cmp al, 0x18
jne 0x203e9b80
jmp 0x203e9f09
movzx eax, byte [0x205db1bd]
cmp al, 0x19
je 0x203e9f49
mov cl, 0xc8
nop word [rax + rax]
mov al, 0x85
lock cmpxchg byte [0x205db1bd], cl
je 0x203e9f11
cmp al, 0x19
jne 0x203e9bb0
jmp 0x203e9f49
movzx eax, byte [0x205db22d]
cmp al, 0x6c
je 0x203e9f89
mov cl, 0x99
nop word [rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x205db22d], cl
je 0x203e9f51
cmp al, 0x6c
jne 0x203e9be0
jmp 0x203e9f89
xor eax, eax
lea rcx, [0x205db360]
lea rdx, [0x2049bd50]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9c10
mov al, 0xb
xchg byte [0x205db36d], al
lea rax, [0x205db360]
ret
xor eax, eax
lea rcx, [0x205db070]
lea rdx, [0x2049ba60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x203e9c50
mov al, 0x10
xchg byte [0x205db083], al
lea rax, [0x205db070]
ret
xor eax, eax
lea rcx, [0x205dabb0]
lea rdx, [0x2049b5a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x203e9c90
mov al, 0xf3
xchg byte [0x205dabbf], al
lea rax, [0x205dabb0]
ret
xor eax, eax
lea rcx, [0x205db290]
lea rdx, [0x2049bc80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9cd0
mov al, 0xe8
xchg byte [0x205db29d], al
lea rax, [0x205db290]
ret
movzx eax, byte [0x205dae21]
cmp al, 0x75
je 0x203e9fba
mov cl, 0x35
mov al, 0xad
lock cmpxchg byte [0x205dae21], cl
je 0x203e9f91
cmp al, 0x75
jne 0x203e9d02
jmp 0x203e9fba
xor eax, eax
lea rcx, [0x205db380]
lea rdx, [0x2049bd70]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9d30
mov al, 0xd3
xchg byte [0x205db38d], al
lea rax, [0x205db380]
ret
xor eax, eax
lea rcx, [0x205db270]
lea rdx, [0x2049bc60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x203e9d70
mov al, 0x5e
xchg byte [0x205db28a], al
lea rax, [0x205db270]
ret
xor eax, eax
lea rcx, [0x205db2a0]
lea rdx, [0x2049bc90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x203e9db0
mov al, 0xaf
xchg byte [0x205db2b8], al
lea rax, [0x205db2a0]
ret
xor eax, eax
lea rcx, [0x205daa30]
lea rdx, [0x2049b430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x203e9df0
mov al, 0x4a
xchg byte [0x205daa42], al
lea rax, [0x205daa30]
ret
xor eax, eax
lea rcx, [0x205db250]
lea rdx, [0x2049bc40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x203e9e30
mov al, 0x94
xchg byte [0x205db25e], al
lea rax, [0x205db250]
ret
xor eax, eax
lea rcx, [0x205db1e0]
lea rdx, [0x2049bbd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x203e9e70
mov al, 0x15
xchg byte [0x205db1eb], al
lea rax, [0x205db1e0]
ret
xor eax, eax
lea rcx, [0x205dad10]
lea rdx, [0x2049b700]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x65
jl 0x203e9eb0
mov al, 0x9c
xchg byte [0x205dad75], al
lea rax, [0x205dad10]
ret
xor eax, eax
lea rcx, [0x205dafe0]
lea rdx, [0x2049b9d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9ef0
mov al, 0x18
xchg byte [0x205dafed], al
lea rax, [0x205dafe0]
ret
xor eax, eax
lea rcx, [0x205db1b0]
lea rdx, [0x2049bba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9f30
mov al, 0x19
xchg byte [0x205db1bd], al
lea rax, [0x205db1b0]
ret
xor eax, eax
lea rcx, [0x205db220]
lea rdx, [0x2049bc10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x203e9f70
mov al, 0x6c
xchg byte [0x205db22d], al
lea rax, [0x205db220]
ret
xor eax, eax
lea rcx, [0x205dae10]
lea rdx, [0x2049b800]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x203e9fa1
mov al, 0x75
xchg byte [0x205dae21], al
lea rax, [0x205dae10]
ret