Function at 0x14023d1e0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14023d21c
test edx, edx
je 0x14023d27b
movzx eax, byte [0x14057c1ad]
cmp al, 0xa8
je 0x14023d214
mov cl, 0xb2
nop dword [rax]
mov al, 0x82
lock cmpxchg byte [0x14057c1ad], cl
je 0x14023d31c
cmp al, 0xa8
jne 0x14023d200
lea rax, [0x14057c1a0]
ret
test edx, edx
je 0x14023d2ec
mov eax, 0x136d98de
nop dword [rax]
mov ecx, dword [0x1405d1760]
mov edx, 0xcd15726b
sub edx, ecx
imul edx, ecx
test dl, 1
jne 0x14023d257
movzx ecx, byte [0x14057c2dd]
mov edx, dword [0x1405d1764]
cmp edx, 0x30
jle 0x14023d2c2
movzx ecx, byte [0x14057c2dd]
mov ecx, dword [0x1405d1760]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
mov ecx, dword [0x14057ddd4]
add ecx, eax
cmp edx, ecx
jne 0x14023d230
jmp 0x14023d245
movzx eax, byte [0x14057c471]
cmp al, 0x1b
je 0x14023d44f
mov cl, 0xc8
nop dword [rax]
mov al, 0xbc
lock cmpxchg byte [0x14057c471], cl
je 0x14023d379
movzx edx, byte [0x14057ddd0]
mov r8d, edx
xor r8b, 0x9a
and dl, 0x1a
add dl, dl
add dl, r8b
add dl, 0x2c
cmp al, dl
jne 0x14023d290
jmp 0x14023d44f
cmp cl, 0xf5
je 0x14023d2e4
mov cl, 0xc8
nop dword [rax]
mov al, 0xca
lock cmpxchg byte [0x14057c2dd], cl
je 0x14023d3a8
cmp al, 0xf5
jne 0x14023d2d0
lea rax, [0x14057c2d0]
ret
movzx eax, byte [0x14057c0ed]
cmp al, 0xef
je 0x14023d314
mov cl, 0x96
nop dword [rax]
mov al, 0x37
lock cmpxchg byte [0x14057c0ed], cl
je 0x14023d46e
cmp al, 0xef
jne 0x14023d300
lea rax, [0x14057c0e0]
ret
xor edx, edx
lea rax, [0x14057c1a0]
lea rcx, [0x140494270]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rdx + rax]
xor r9b, r8b
mov byte [rdx + rax], r9b
mov r8d, edx
xor r8d, 1
not edx
and edx, 0x7ffffffe
or edx, r8d
not edx
lea edx, [r8 + rdx*2]
cmp edx, 0xd
jl 0x14023d330
mov al, 0xa8
xchg byte [0x14057c1ad], al
lea rax, [0x14057c1a0]
ret
xor eax, eax
lea rcx, [0x14057c460]
lea rdx, [0x140494530]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x10
jg 0x14023d3f5
inc rax
jmp 0x14023d390
xor eax, eax
lea rcx, [0x14057c2d0]
lea rdx, [0x1404943a0]
nop dword [rax + rax]
movzx r8d, byte [rax + rcx]
movzx r9d, byte [rax + rdx]
mov r10d, r8d
not r10b
mov r11d, r9d
xor r11b, r10b
and r10b, r9b
not r11b
and r11b, r8b
or r11b, r10b
mov byte [rax + rcx], r11b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x14023d457
inc rax
jmp 0x14023d3c0
mov eax, 0x136d98df
lea rcx, [fcn.14023d1e0]
add ecx, ecx
add ecx, 0x3ec0
nop dword [rax]
mov edx, dword [0x1405d1760]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
je 0x14023d437
mov dl, 0x1b
xchg byte [0x14057c471], dl
mov edx, dword [0x1405d1764]
cmp edx, 0x44
jge 0x14023d410
mov dl, 0x1b
xchg byte [0x14057c471], dl
mov edx, dword [0x14057ddd4]
add edx, eax
xor edx, ecx
not edx
test ecx, edx
jne 0x14023d424
lea rax, [0x14057c460]
ret
movzx eax, byte [0x14057ddd0]
add al, 0xa0
xchg byte [0x14057c2dd], al
lea rax, [0x14057c2d0]
ret
xor edx, edx
lea rax, [0x14057c0e0]
lea rcx, [0x1404941b0]
nop
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rdx + rax]
xor r9b, r8b
mov byte [rdx + rax], r9b
mov r8d, edx
xor r8d, 1
and edx, 1
lea edx, [r8 + rdx*2]
cmp edx, 0xd
jl 0x14023d480
mov al, 0xef
xchg byte [0x14057c0ed], al
lea rax, [0x14057c0e0]
ret