Function at 0x1402203a0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1402203dc
test edx, edx
je 0x14022041c
test r8d, r8d
je 0x14022045c
movzx eax, byte [0x140512883]
cmp al, 0x54
je 0x1402203d4
mov cl, 0x28
nop
mov al, 0x86
lock cmpxchg byte [0x140512883], cl
je 0x1402204fc
cmp al, 0x54
jne 0x1402203c0
lea rax, [0x140512870]
ret
test edx, edx
je 0x14022048c
movzx eax, byte [0x140512a8d]
cmp al, 0xaf
je 0x140220414
mov cl, 0x19
nop word cs:[rax + rax]
mov al, 0xb4
lock cmpxchg byte [0x140512a8d], cl
je 0x140220531
cmp al, 0xaf
jne 0x140220400
lea rax, [0x140512a80]
ret
test r8d, r8d
je 0x1402204cc
movzx eax, byte [0x140512aa4]
cmp al, 0x65
je 0x140220454
mov cl, 0x83
nop word cs:[rax + rax]
mov al, 0x7a
lock cmpxchg byte [0x140512aa4], cl
je 0x1402205a9
cmp al, 0x65
jne 0x140220440
lea rax, [0x140512a90]
ret
movzx eax, byte [0x140512835]
cmp al, 0x82
je 0x140220484
mov cl, 0xff
nop dword [rax]
mov al, 0xd
lock cmpxchg byte [0x140512835], cl
je 0x1402205e1
cmp al, 0x82
jne 0x140220470
lea rax, [0x140512820]
ret
test r8d, r8d
je 0x140220571
movzx eax, byte [0x14055fff0]
cmp al, 0x65
je 0x1402204c4
mov cl, 0xe2
nop word cs:[rax + rax]
xor eax, eax
lock cmpxchg byte [0x14055fff0], cl
je 0x140220621
cmp al, 0x65
jne 0x1402204b0
lea rax, [0x1405128e0]
ret
movzx eax, byte [0x1405129ff]
cmp al, 0x74
je 0x1402204f4
mov cl, 0x64
nop dword [rax]
mov al, 0xa
lock cmpxchg byte [0x1405129ff], cl
je 0x140220661
cmp al, 0x74
jne 0x1402204e0
lea rax, [0x1405129f0]
ret
xor eax, eax
lea rcx, [0x140512870]
lea rdx, [0x14042bfe0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x140220510
mov al, 0x54
xchg byte [0x140512883], al
lea rax, [0x140512870]
ret
xor eax, eax
lea rcx, [0x140512a80]
lea rdx, [0x14042c1f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140220550
mov al, 0xaf
xchg byte [0x140512a8d], al
lea rax, [0x140512a80]
ret
movzx eax, byte [0x140512aca]
cmp al, 0x19
je 0x1402206d9
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0x94
lock cmpxchg byte [0x140512aca], cl
je 0x1402206a1
cmp al, 0x19
jne 0x140220590
jmp 0x1402206d9
xor eax, eax
lea rcx, [0x140512a90]
lea rdx, [0x14042c200]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x1402205c0
mov al, 0x65
xchg byte [0x140512aa4], al
lea rax, [0x140512a90]
ret
xor eax, eax
lea rcx, [0x140512820]
lea rdx, [0x14042bf90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140220600
mov al, 0x82
xchg byte [0x140512835], al
lea rax, [0x140512820]
ret
xor eax, eax
lea rcx, [0x1405128e0]
lea rdx, [0x14042c050]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x140220640
mov al, 0x65
xchg byte [0x14055fff0], al
lea rax, [0x1405128e0]
ret
xor eax, eax
lea rcx, [0x1405129f0]
lea rdx, [0x14042c160]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140220680
mov al, 0x74
xchg byte [0x1405129ff], al
lea rax, [0x1405129f0]
ret
xor eax, eax
lea rcx, [0x140512ac0]
lea rdx, [0x14042c230]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x1402206c0
mov al, 0x19
xchg byte [0x140512aca], al
lea rax, [0x140512ac0]
ret