Function at 0x2018aa30
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x2018aa7c
test edx, edx
je 0x2018aacc
test r8d, r8d
je 0x2018ab0c
test r9d, r9d
je 0x2018ab89
movzx eax, byte [0x203cb140]
cmp al, 0x11
je 0x2018aa74
mov cl, 0x2f
nop dword [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x203cb140], cl
je 0x2018ad09
cmp al, 0x11
jne 0x2018aa60
lea rax, [0x203cb130]
ret
test edx, edx
je 0x2018ab4c
test r8d, r8d
je 0x2018abbc
test r9d, r9d
je 0x2018ac39
movzx eax, byte [0x203cb3ca]
cmp al, 0x6f
je 0x2018aac4
mov cl, 0x3e
nop word cs:[rax + rax]
mov al, 0x94
lock cmpxchg byte [0x203cb3ca], cl
je 0x2018add9
cmp al, 0x6f
jne 0x2018aab0
lea rax, [0x203cb3c0]
ret
test r8d, r8d
je 0x2018abf9
test r9d, r9d
je 0x2018ac69
movzx eax, byte [0x203cb295]
cmp al, 0x89
je 0x2018ab04
mov cl, 0xf
nop dword [rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x203cb295], cl
je 0x2018ae11
cmp al, 0x89
jne 0x2018aaf0
lea rax, [0x203cb290]
ret
test r9d, r9d
je 0x2018ac99
movzx eax, byte [0x203cb38d]
cmp al, 0x19
je 0x2018ab44
mov cl, 0xdc
nop word cs:[rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x203cb38d], cl
je 0x2018ae51
cmp al, 0x19
jne 0x2018ab30
lea rax, [0x203cb380]
ret
test r8d, r8d
je 0x2018acc9
test r9d, r9d
je 0x2018ad41
movzx eax, byte [0x203cb123]
cmp al, 0x4b
je 0x2018af29
mov cl, 0xdc
nop
mov al, 0xf8
lock cmpxchg byte [0x203cb123], cl
je 0x2018aefb
cmp al, 0x4b
jne 0x2018ab70
jmp 0x2018af29
movzx eax, byte [0x203cb262]
cmp al, 8
je 0x2018abb4
mov cl, 4
nop word cs:[rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x203cb262], cl
je 0x2018ae91
cmp al, 8
jne 0x2018aba0
lea rax, [0x203cb250]
ret
test r9d, r9d
je 0x2018ad79
movzx eax, byte [0x203cb24f]
cmp al, 0x48
je 0x2018af69
mov cl, 0x87
nop word cs:[rax + rax]
mov al, 0xed
lock cmpxchg byte [0x203cb24f], cl
je 0x2018af31
cmp al, 0x48
jne 0x2018abe0
jmp 0x2018af69
test r9d, r9d
je 0x2018ada9
movzx eax, byte [0x203cb1b3]
cmp al, 0x94
je 0x2018afa9
mov cl, 0xfb
nop word cs:[rax + rax]
mov al, 0x75
lock cmpxchg byte [0x203cb1b3], cl
je 0x2018af71
cmp al, 0x94
jne 0x2018ac20
jmp 0x2018afa9
movzx eax, byte [0x203cb3bd]
cmp al, 0x7c
je 0x2018afe9
mov cl, 0x15
nop word [rax + rax]
mov al, 0x86
lock cmpxchg byte [0x203cb3bd], cl
je 0x2018afb1
cmp al, 0x7c
jne 0x2018ac50
jmp 0x2018afe9
movzx eax, byte [0x203cb36d]
cmp al, 0x56
je 0x2018b029
mov cl, 0x95
nop word [rax + rax]
mov al, 0x3c
lock cmpxchg byte [0x203cb36d], cl
je 0x2018aff1
cmp al, 0x56
jne 0x2018ac80
jmp 0x2018b029
movzx eax, byte [0x203cb326]
cmp al, 0x77
je 0x2018b069
mov cl, 0x45
nop word [rax + rax]
mov al, 0x31
lock cmpxchg byte [0x203cb326], cl
je 0x2018b031
cmp al, 0x77
jne 0x2018acb0
jmp 0x2018b069
test r9d, r9d
je 0x2018aed1
movzx eax, byte [0x203cb173]
cmp al, 0xa5
je 0x2018b0a9
mov cl, 0x7c
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x203cb173], cl
je 0x2018b071
cmp al, 0xa5
jne 0x2018acf0
jmp 0x2018b0a9
xor eax, eax
lea rcx, [0x203cb130]
lea rdx, [0x202fc7a0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x2018ad20
mov al, 0x11
xchg byte [0x203cb140], al
lea rax, [0x203cb130]
ret
movzx eax, byte [0x203cb3ef]
cmp al, 0xc1
je 0x2018b0e9
mov cl, 0xc6
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x203cb3ef], cl
je 0x2018b0b1
cmp al, 0xc1
jne 0x2018ad60
jmp 0x2018b0e9
movzx eax, byte [0x203cb2eb]
cmp al, 0xdb
je 0x2018b129
mov cl, 0x27
nop word [rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x203cb2eb], cl
je 0x2018b0f1
cmp al, 0xdb
jne 0x2018ad90
jmp 0x2018b129
movzx eax, byte [0x203cb114]
cmp al, 0xc
je 0x2018b169
mov cl, 0xa5
nop word [rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x203cb114], cl
je 0x2018b131
cmp al, 0xc
jne 0x2018adc0
jmp 0x2018b169
xor eax, eax
lea rcx, [0x203cb3c0]
lea rdx, [0x202fca20]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x2018adf0
mov al, 0x6f
xchg byte [0x203cb3ca], al
lea rax, [0x203cb3c0]
ret
xor eax, eax
lea rcx, [0x203cb290]
lea rdx, [0x202fc8f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x2018ae30
mov al, 0x89
xchg byte [0x203cb295], al
lea rax, [0x203cb290]
ret
xor eax, eax
lea rcx, [0x203cb380]
lea rdx, [0x202fc9e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2018ae70
mov al, 0x19
xchg byte [0x203cb38d], al
lea rax, [0x203cb380]
ret
xor eax, eax
lea rcx, [0x203cb250]
lea rdx, [0x202fc8b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x2018aeb0
mov al, 8
xchg byte [0x203cb262], al
lea rax, [0x203cb250]
ret
movzx eax, byte [0x203cb165]
cmp al, 0x10
je 0x2018b19a
mov cl, 0xb9
mov al, 0x6b
lock cmpxchg byte [0x203cb165], cl
je 0x2018b171
cmp al, 0x10
jne 0x2018aee2
jmp 0x2018b19a
xor eax, eax
lea rcx, [0x203cb120]
lea rdx, [0x202fc790]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x2018af10
mov al, 0x4b
xchg byte [0x203cb123], al
lea rax, [0x203cb120]
ret
xor eax, eax
lea rcx, [0x203cb240]
lea rdx, [0x202fc8a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x2018af50
mov al, 0x48
xchg byte [0x203cb24f], al
lea rax, [0x203cb240]
ret
xor eax, eax
lea rcx, [0x203cb1a0]
lea rdx, [0x202fc800]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x2018af90
mov al, 0x94
xchg byte [0x203cb1b3], al
lea rax, [0x203cb1a0]
ret
xor eax, eax
lea rcx, [0x203cb3b0]
lea rdx, [0x202fca10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2018afd0
mov al, 0x7c
xchg byte [0x203cb3bd], al
lea rax, [0x203cb3b0]
ret
xor eax, eax
lea rcx, [0x203cb360]
lea rdx, [0x202fc9c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2018b010
mov al, 0x56
xchg byte [0x203cb36d], al
lea rax, [0x203cb360]
ret
xor eax, eax
lea rcx, [0x203cb300]
lea rdx, [0x202fc960]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x2018b050
mov al, 0x77
xchg byte [0x203cb326], al
lea rax, [0x203cb300]
ret
xor eax, eax
lea rcx, [0x203cb170]
lea rdx, [0x202fc7d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x2018b090
mov al, 0xa5
xchg byte [0x203cb173], al
lea rax, [0x203cb170]
ret
xor eax, eax
lea rcx, [0x203cb3e0]
lea rdx, [0x202fca40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x2018b0d0
mov al, 0xc1
xchg byte [0x203cb3ef], al
lea rax, [0x203cb3e0]
ret
xor eax, eax
lea rcx, [0x203cb2e0]
lea rdx, [0x202fc940]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x2018b110
mov al, 0xdb
xchg byte [0x203cb2eb], al
lea rax, [0x203cb2e0]
ret
xor eax, eax
lea rcx, [0x203cb110]
lea rdx, [0x202fc780]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x2018b150
mov al, 0xc
xchg byte [0x203cb114], al
lea rax, [0x203cb110]
ret
xor eax, eax
lea rcx, [0x203cb150]
lea rdx, [0x202fc7b0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x2018b181
mov al, 0x10
xchg byte [0x203cb165], al
lea rax, [0x203cb150]
ret