Function at 0x14021b280
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14021b2bc
test edx, edx
je 0x14021b2fc
test r8d, r8d
je 0x14021b33c
movzx eax, byte [0x140484c63]
cmp al, 0xf5
je 0x14021b2b4
mov cl, 0xa4
nop
mov al, 0x8b
lock cmpxchg byte [0x140484c63], cl
je 0x14021b40c
cmp al, 0xf5
jne 0x14021b2a0
lea rax, [0x140484c40]
ret
test edx, edx
je 0x14021b36c
test r8d, r8d
je 0x14021b3ac
movzx eax, byte [0x140484d2d]
cmp al, 0xbd
je 0x14021b2f4
mov cl, 0xeb
nop word [rax + rax]
mov al, 0xf4
lock cmpxchg byte [0x140484d2d], cl
je 0x14021b479
cmp al, 0xbd
jne 0x14021b2e0
lea rax, [0x140484d20]
ret
test r8d, r8d
je 0x14021b3dc
movzx eax, byte [0x140484d5b]
cmp al, 0xab
je 0x14021b334
mov cl, 0x1d
nop word cs:[rax + rax]
mov al, 0x8a
lock cmpxchg byte [0x140484d5b], cl
je 0x14021b4b1
cmp al, 0xab
jne 0x14021b320
lea rax, [0x140484d50]
ret
movzx eax, byte [0x140484bf0]
cmp al, 0x12
je 0x14021b364
mov cl, 0x79
nop dword [rax]
mov al, 0x2a
lock cmpxchg byte [0x140484bf0], cl
je 0x14021b4f1
cmp al, 0x12
jne 0x14021b350
lea rax, [0x140484be0]
ret
test r8d, r8d
je 0x14021b441
movzx eax, byte [0x140484c1c]
cmp al, 0x70
je 0x14021b3a4
mov cl, 0xc6
nop word cs:[rax + rax]
mov al, 0x3a
lock cmpxchg byte [0x140484c1c], cl
je 0x14021b531
cmp al, 0x70
jne 0x14021b390
lea rax, [0x140484c00]
ret
movzx eax, byte [0x140484bd8]
cmp al, 0x7e
je 0x14021b3d4
mov cl, 0x34
nop dword [rax]
mov al, 0xf2
lock cmpxchg byte [0x140484bd8], cl
je 0x14021b571
cmp al, 0x7e
jne 0x14021b3c0
lea rax, [0x140484bc0]
ret
movzx eax, byte [0x140484bb5]
cmp al, 0x80
je 0x14021b404
mov cl, 0xe
nop dword [rax]
mov al, 0x6e
lock cmpxchg byte [0x140484bb5], cl
je 0x14021b5b1
cmp al, 0x80
jne 0x14021b3f0
lea rax, [0x140484ba0]
ret
xor eax, eax
lea rcx, [0x140484c40]
lea rdx, [0x140399e70]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x14021b420
mov al, 0xf5
xchg byte [0x140484c63], al
lea rax, [0x140484c40]
ret
movzx eax, byte [0x140484b53]
cmp al, 0xd
je 0x14021b629
mov cl, 0xfc
nop word cs:[rax + rax]
mov al, 0x37
lock cmpxchg byte [0x140484b53], cl
je 0x14021b5f1
cmp al, 0xd
jne 0x14021b460
jmp 0x14021b629
xor eax, eax
lea rcx, [0x140484d20]
lea rdx, [0x140399f50]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021b490
mov al, 0xbd
xchg byte [0x140484d2d], al
lea rax, [0x140484d20]
ret
xor eax, eax
lea rcx, [0x140484d50]
lea rdx, [0x140399f80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14021b4d0
mov al, 0xab
xchg byte [0x140484d5b], al
lea rax, [0x140484d50]
ret
xor eax, eax
lea rcx, [0x140484be0]
lea rdx, [0x140399e20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14021b510
mov al, 0x12
xchg byte [0x140484bf0], al
lea rax, [0x140484be0]
ret
xor eax, eax
lea rcx, [0x140484c00]
lea rdx, [0x140399e30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x14021b550
mov al, 0x70
xchg byte [0x140484c1c], al
lea rax, [0x140484c00]
ret
xor eax, eax
lea rcx, [0x140484bc0]
lea rdx, [0x140399e00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x14021b590
mov al, 0x7e
xchg byte [0x140484bd8], al
lea rax, [0x140484bc0]
ret
xor eax, eax
lea rcx, [0x140484ba0]
lea rdx, [0x140399de0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x14021b5d0
mov al, 0x80
xchg byte [0x140484bb5], al
lea rax, [0x140484ba0]
ret
xor eax, eax
lea rcx, [0x140484b50]
lea rdx, [0x140399da0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14021b610
mov al, 0xd
xchg byte [0x140484b53], al
lea rax, [0x140484b50]
ret