Function at 0x14021ddb0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14021ddfc
test edx, edx
je 0x14021de4c
test r8d, r8d
je 0x14021de8c
test r9d, r9d
je 0x14021df09
movzx eax, byte [0x140511cc4]
cmp al, 0x95
je 0x14021ddf4
mov cl, 0x83
nop dword [rax + rax]
mov al, 0x4e
lock cmpxchg byte [0x140511cc4], cl
je 0x14021e089
cmp al, 0x95
jne 0x14021dde0
lea rax, [0x140511cb0]
ret
test edx, edx
je 0x14021decc
test r8d, r8d
je 0x14021df3c
test r9d, r9d
je 0x14021dfb9
movzx eax, byte [0x140511d94]
cmp al, 0x79
je 0x14021de44
mov cl, 0xd
nop word cs:[rax + rax]
mov al, 0x8d
lock cmpxchg byte [0x140511d94], cl
je 0x14021e159
cmp al, 0x79
jne 0x14021de30
lea rax, [0x140511d80]
ret
test r8d, r8d
je 0x14021df79
test r9d, r9d
je 0x14021dfe9
movzx eax, byte [0x140511985]
cmp al, 0x66
je 0x14021de84
mov cl, 0xb8
nop dword [rax + rax]
mov al, 0x90
lock cmpxchg byte [0x140511985], cl
je 0x14021e191
cmp al, 0x66
jne 0x14021de70
lea rax, [0x140511980]
ret
test r9d, r9d
je 0x14021e019
movzx eax, byte [0x14051197c]
cmp al, 0xb
je 0x14021dec4
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0x21
lock cmpxchg byte [0x14051197c], cl
je 0x14021e1d1
cmp al, 0xb
jne 0x14021deb0
lea rax, [0x140511960]
ret
test r8d, r8d
je 0x14021e049
test r9d, r9d
je 0x14021e0c1
movzx eax, byte [0x140511cdd]
cmp al, 0x8d
je 0x14021e2a9
mov cl, 0xec
nop
mov al, 3
lock cmpxchg byte [0x140511cdd], cl
je 0x14021e27b
cmp al, 0x8d
jne 0x14021def0
jmp 0x14021e2a9
movzx eax, byte [0x140511470]
cmp al, 0xde
je 0x14021df34
mov cl, 9
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x140511470], cl
je 0x14021e211
cmp al, 0xde
jne 0x14021df20
lea rax, [0x140511450]
ret
test r9d, r9d
je 0x14021e0f9
movzx eax, byte [0x1405114bd]
cmp al, 0x23
je 0x14021e2e9
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x1405114bd], cl
je 0x14021e2b1
cmp al, 0x23
jne 0x14021df60
jmp 0x14021e2e9
test r9d, r9d
je 0x14021e129
movzx eax, byte [0x140511993]
cmp al, 0xa4
je 0x14021e329
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x140511993], cl
je 0x14021e2f1
cmp al, 0xa4
jne 0x14021dfa0
jmp 0x14021e329
movzx eax, byte [0x140511d0d]
cmp al, 0x9b
je 0x14021e369
mov cl, 0x97
nop word [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x140511d0d], cl
je 0x14021e331
cmp al, 0x9b
jne 0x14021dfd0
jmp 0x14021e369
movzx eax, byte [0x140511f21]
cmp al, 0x5d
je 0x14021e3a9
mov cl, 0xdc
nop word [rax + rax]
mov al, 0x42
lock cmpxchg byte [0x140511f21], cl
je 0x14021e371
cmp al, 0x5d
jne 0x14021e000
jmp 0x14021e3a9
movzx eax, byte [0x140511bdd]
cmp al, 0x5c
je 0x14021e3e9
mov cl, 0xe7
nop word [rax + rax]
mov al, 0x77
lock cmpxchg byte [0x140511bdd], cl
je 0x14021e3b1
cmp al, 0x5c
jne 0x14021e030
jmp 0x14021e3e9
test r9d, r9d
je 0x14021e251
movzx eax, byte [0x140511308]
cmp al, 0x8f
je 0x14021e429
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0x6c
lock cmpxchg byte [0x140511308], cl
je 0x14021e3f1
cmp al, 0x8f
jne 0x14021e070
jmp 0x14021e429
xor eax, eax
lea rcx, [0x140511cb0]
lea rdx, [0x14042b810]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x14021e0a0
mov al, 0x95
xchg byte [0x140511cc4], al
lea rax, [0x140511cb0]
ret
movzx eax, byte [0x140511b4d]
cmp al, 0x7d
je 0x14021e469
mov cl, 0xf
nop word cs:[rax + rax]
mov al, 0xab
lock cmpxchg byte [0x140511b4d], cl
je 0x14021e431
cmp al, 0x7d
jne 0x14021e0e0
jmp 0x14021e469
movzx eax, byte [0x140511563]
cmp al, 0x66
je 0x14021e4a9
mov cl, 0xa9
nop word [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x140511563], cl
je 0x14021e471
cmp al, 0x66
jne 0x14021e110
jmp 0x14021e4a9
movzx eax, byte [0x1405112ed]
cmp al, 0x17
je 0x14021e4e9
mov cl, 0x2f
nop word [rax + rax]
mov al, 0x34
lock cmpxchg byte [0x1405112ed], cl
je 0x14021e4b1
cmp al, 0x17
jne 0x14021e140
jmp 0x14021e4e9
xor eax, eax
lea rcx, [0x140511d80]
lea rdx, [0x14042b8e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x14021e170
mov al, 0x79
xchg byte [0x140511d94], al
lea rax, [0x140511d80]
ret
xor eax, eax
lea rcx, [0x140511980]
lea rdx, [0x14042b4f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x14021e1b0
mov al, 0x66
xchg byte [0x140511985], al
lea rax, [0x140511980]
ret
xor eax, eax
lea rcx, [0x140511960]
lea rdx, [0x14042b4d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x14021e1f0
mov al, 0xb
xchg byte [0x14051197c], al
lea rax, [0x140511960]
ret
xor eax, eax
lea rcx, [0x140511450]
lea rdx, [0x14042b000]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x20
jl 0x14021e230
mov al, 0xde
xchg byte [0x140511470], al
lea rax, [0x140511450]
ret
movzx eax, byte [0x140511784]
cmp al, 0x83
je 0x14021e51a
mov cl, 0xf7
mov al, 0xeb
lock cmpxchg byte [0x140511784], cl
je 0x14021e4f1
cmp al, 0x83
jne 0x14021e262
jmp 0x14021e51a
xor eax, eax
lea rcx, [0x140511cd0]
lea rdx, [0x14042b830]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021e290
mov al, 0x8d
xchg byte [0x140511cdd], al
lea rax, [0x140511cd0]
ret
xor eax, eax
lea rcx, [0x1405114a0]
lea rdx, [0x14042b040]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x14021e2d0
mov al, 0x23
xchg byte [0x1405114bd], al
lea rax, [0x1405114a0]
ret
xor eax, eax
lea rcx, [0x140511990]
lea rdx, [0x14042b500]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14021e310
mov al, 0xa4
xchg byte [0x140511993], al
lea rax, [0x140511990]
ret
xor eax, eax
lea rcx, [0x140511d00]
lea rdx, [0x14042b860]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021e350
mov al, 0x9b
xchg byte [0x140511d0d], al
lea rax, [0x140511d00]
ret
xor eax, eax
lea rcx, [0x140511f10]
lea rdx, [0x14042ba70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x14021e390
mov al, 0x5d
xchg byte [0x140511f21], al
lea rax, [0x140511f10]
ret
xor eax, eax
lea rcx, [0x140511bd0]
lea rdx, [0x14042b730]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021e3d0
mov al, 0x5c
xchg byte [0x140511bdd], al
lea rax, [0x140511bd0]
ret
xor eax, eax
lea rcx, [0x1405112f0]
lea rdx, [0x14042aea0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x14021e410
mov al, 0x8f
xchg byte [0x140511308], al
lea rax, [0x1405112f0]
ret
xor eax, eax
lea rcx, [0x140511b40]
lea rdx, [0x14042b6a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021e450
mov al, 0x7d
xchg byte [0x140511b4d], al
lea rax, [0x140511b40]
ret
xor eax, eax
lea rcx, [0x140511540]
lea rdx, [0x14042b0e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x14021e490
mov al, 0x66
xchg byte [0x140511563], al
lea rax, [0x140511540]
ret
xor eax, eax
lea rcx, [0x1405112d0]
lea rdx, [0x14042ae80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x14021e4d0
mov al, 0x17
xchg byte [0x1405112ed], al
lea rax, [0x1405112d0]
ret
xor eax, eax
lea rcx, [0x140511770]
lea rdx, [0x14042b2f0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x14021e501
mov al, 0x83
xchg byte [0x140511784], al
lea rax, [0x140511770]
ret