Function at 0x14021bfb0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14021bffc
test edx, edx
je 0x14021c04c
test r8d, r8d
je 0x14021c08c
test r9d, r9d
je 0x14021c109
movzx eax, byte [0x14051165f]
cmp al, 0xf
je 0x14021bff4
mov cl, 0xa7
nop dword [rax + rax]
mov al, 0xc4
lock cmpxchg byte [0x14051165f], cl
je 0x14021c289
cmp al, 0xf
jne 0x14021bfe0
lea rax, [0x140511640]
ret
test edx, edx
je 0x14021c0cc
test r8d, r8d
je 0x14021c13c
test r9d, r9d
je 0x14021c1b9
movzx eax, byte [0x140511356]
cmp al, 0x70
je 0x14021c044
mov cl, 0x48
nop word cs:[rax + rax]
mov al, 0x6c
lock cmpxchg byte [0x140511356], cl
je 0x14021c359
cmp al, 0x70
jne 0x14021c030
lea rax, [0x140511330]
ret
test r8d, r8d
je 0x14021c179
test r9d, r9d
je 0x14021c1e9
movzx eax, byte [0x140511adc]
cmp al, 0x61
je 0x14021c084
mov cl, 0xb6
nop dword [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x140511adc], cl
je 0x14021c391
cmp al, 0x61
jne 0x14021c070
lea rax, [0x140511ad0]
ret
test r9d, r9d
je 0x14021c219
movzx eax, byte [0x140511e3d]
cmp al, 0xda
je 0x14021c0c4
mov cl, 0xb9
nop word cs:[rax + rax]
mov al, 0xec
lock cmpxchg byte [0x140511e3d], cl
je 0x14021c3d1
cmp al, 0xda
jne 0x14021c0b0
lea rax, [0x140511e30]
ret
test r8d, r8d
je 0x14021c249
test r9d, r9d
je 0x14021c2c1
movzx eax, byte [0x140511ddc]
cmp al, 0xb9
je 0x14021c4a9
xor ecx, ecx
nop
mov al, 0xcc
lock cmpxchg byte [0x140511ddc], cl
je 0x14021c47b
cmp al, 0xb9
jne 0x14021c0f0
jmp 0x14021c4a9
movzx eax, byte [0x140511414]
cmp al, 0x93
je 0x14021c134
mov cl, 0xf5
nop word cs:[rax + rax]
mov al, 0x25
lock cmpxchg byte [0x140511414], cl
je 0x14021c411
cmp al, 0x93
jne 0x14021c120
lea rax, [0x1405113f0]
ret
test r9d, r9d
je 0x14021c2f9
movzx eax, byte [0x14051188e]
cmp al, 0x79
je 0x14021c4e9
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x15
lock cmpxchg byte [0x14051188e], cl
je 0x14021c4b1
cmp al, 0x79
jne 0x14021c160
jmp 0x14021c4e9
test r9d, r9d
je 0x14021c329
movzx eax, byte [0x1405118ce]
cmp al, 0x6d
je 0x14021c529
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0x83
lock cmpxchg byte [0x1405118ce], cl
je 0x14021c4f1
cmp al, 0x6d
jne 0x14021c1a0
jmp 0x14021c529
movzx eax, byte [0x1405113b2]
cmp al, 0x27
je 0x14021c569
mov cl, 0x30
nop word [rax + rax]
mov al, 0x13
lock cmpxchg byte [0x1405113b2], cl
je 0x14021c531
cmp al, 0x27
jne 0x14021c1d0
jmp 0x14021c569
movzx eax, byte [0x140511bcb]
cmp al, 0x37
je 0x14021c5a9
mov cl, 0x4a
nop word [rax + rax]
mov al, 0xfe
lock cmpxchg byte [0x140511bcb], cl
je 0x14021c571
cmp al, 0x37
jne 0x14021c200
jmp 0x14021c5a9
movzx eax, byte [0x140511c0d]
cmp al, 0x61
je 0x14021c5e9
mov cl, 0xe2
nop word [rax + rax]
mov al, 0xb5
lock cmpxchg byte [0x140511c0d], cl
je 0x14021c5b1
cmp al, 0x61
jne 0x14021c230
jmp 0x14021c5e9
test r9d, r9d
je 0x14021c451
movzx eax, byte [0x140511d21]
cmp al, 8
je 0x14021c669
mov cl, 0x3d
nop word cs:[rax + rax]
mov al, 0x2c
lock cmpxchg byte [0x140511d21], cl
je 0x14021c631
cmp al, 8
jne 0x14021c270
jmp 0x14021c669
xor eax, eax
lea rcx, [0x140511640]
lea rdx, [0x14042b1d0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1f
jl 0x14021c2a0
mov al, 0xf
xchg byte [0x14051165f], al
lea rax, [0x140511640]
ret
movzx eax, byte [0x14051179d]
cmp al, 0xc1
je 0x14021c6a9
mov cl, 0x36
nop word cs:[rax + rax]
mov al, 0x85
lock cmpxchg byte [0x14051179d], cl
je 0x14021c671
cmp al, 0xc1
jne 0x14021c2e0
jmp 0x14021c6a9
movzx eax, byte [0x140511ecd]
cmp al, 0xff
je 0x14021c629
mov cl, 0xd2
nop word [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x140511ecd], cl
je 0x14021c5f1
cmp al, 0xff
jne 0x14021c310
jmp 0x14021c629
movzx eax, byte [0x140511384]
cmp al, 0xfd
je 0x14021c6e9
mov cl, 0x9e
nop word [rax + rax]
mov al, 0x40
lock cmpxchg byte [0x140511384], cl
je 0x14021c6b1
cmp al, 0xfd
jne 0x14021c340
jmp 0x14021c6e9
xor eax, eax
lea rcx, [0x140511330]
lea rdx, [0x14042aee0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x14021c370
mov al, 0x70
xchg byte [0x140511356], al
lea rax, [0x140511330]
ret
xor eax, eax
lea rcx, [0x140511ad0]
lea rdx, [0x14042b630]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x14021c3b0
mov al, 0x61
xchg byte [0x140511adc], al
lea rax, [0x140511ad0]
ret
xor eax, eax
lea rcx, [0x140511e30]
lea rdx, [0x14042b990]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021c3f0
mov al, 0xda
xchg byte [0x140511e3d], al
lea rax, [0x140511e30]
ret
xor eax, eax
lea rcx, [0x1405113f0]
lea rdx, [0x14042afa0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x24
jl 0x14021c430
mov al, 0x93
xchg byte [0x140511414], al
lea rax, [0x1405113f0]
ret
movzx eax, byte [0x140511d4f]
cmp al, 0x3a
je 0x14021c71a
mov cl, 0xce
mov al, 0xa3
lock cmpxchg byte [0x140511d4f], cl
je 0x14021c6f1
cmp al, 0x3a
jne 0x14021c462
jmp 0x14021c71a
xor eax, eax
lea rcx, [0x140511dd0]
lea rdx, [0x14042b930]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x14021c490
mov al, 0xb9
xchg byte [0x140511ddc], al
lea rax, [0x140511dd0]
ret
xor eax, eax
lea rcx, [0x140511880]
lea rdx, [0x14042b3f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x14021c4d0
mov al, 0x79
xchg byte [0x14051188e], al
lea rax, [0x140511880]
ret
xor eax, eax
lea rcx, [0x1405118b0]
lea rdx, [0x14042b420]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1e
jl 0x14021c510
mov al, 0x6d
xchg byte [0x1405118ce], al
lea rax, [0x1405118b0]
ret
xor eax, eax
lea rcx, [0x140511390]
lea rdx, [0x14042af40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x22
jl 0x14021c550
mov al, 0x27
xchg byte [0x1405113b2], al
lea rax, [0x140511390]
ret
xor eax, eax
lea rcx, [0x140511bb0]
lea rdx, [0x14042b710]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1b
jl 0x14021c590
mov al, 0x37
xchg byte [0x140511bcb], al
lea rax, [0x140511bb0]
ret
xor eax, eax
lea rcx, [0x140511c00]
lea rdx, [0x14042b760]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021c5d0
mov al, 0x61
xchg byte [0x140511c0d], al
lea rax, [0x140511c00]
ret
xor eax, eax
lea rcx, [0x140511ec0]
lea rdx, [0x14042ba20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021c610
mov al, 0xff
xchg byte [0x140511ecd], al
lea rax, [0x140511ec0]
ret
xor eax, eax
lea rcx, [0x140511d10]
lea rdx, [0x14042b870]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x14021c650
mov al, 8
xchg byte [0x140511d21], al
lea rax, [0x140511d10]
ret
xor eax, eax
lea rcx, [0x140511790]
lea rdx, [0x14042b310]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021c690
mov al, 0xc1
xchg byte [0x14051179d], al
lea rax, [0x140511790]
ret
xor eax, eax
lea rcx, [0x140511360]
lea rdx, [0x14042af10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x24
jl 0x14021c6d0
mov al, 0xfd
xchg byte [0x140511384], al
lea rax, [0x140511360]
ret
xor eax, eax
lea rcx, [0x140511d40]
lea rdx, [0x14042b8a0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x14021c701
mov al, 0x3a
xchg byte [0x140511d4f], al
lea rax, [0x140511d40]
ret