Function at 0x1401d3a80
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1401d3acc
test edx, edx
je 0x1401d3b1c
test r8d, r8d
je 0x1401d3b5c
movzx eax, byte [0x14043d36d]
cmp al, 0x19
je 0x1401d3ac4
mov cl, 0xf4
nop word cs:[rax + rax]
mov al, 0x92
lock cmpxchg byte [0x14043d36d], cl
je 0x1401d3c3c
cmp al, 0x19
jne 0x1401d3ab0
lea rax, [0x14043d360]
ret
test edx, edx
je 0x1401d3b8c
test r8d, r8d
je 0x1401d3bc9
test r9d, r9d
je 0x1401d3c71
movzx eax, byte [0x14043d2fd]
cmp al, 0x3f
je 0x1401d3b14
mov cl, 0x71
nop word cs:[rax + rax]
mov al, 0xb5
lock cmpxchg byte [0x14043d2fd], cl
je 0x1401d3dc9
cmp al, 0x3f
jne 0x1401d3b00
lea rax, [0x14043d2f0]
ret
test r8d, r8d
je 0x1401d3c09
movzx eax, byte [0x14043d0e5]
cmp al, 0x6f
je 0x1401d3b54
mov cl, 0x69
nop word cs:[rax + rax]
mov al, 0xe4
lock cmpxchg byte [0x14043d0e5], cl
je 0x1401d3ce9
cmp al, 0x6f
jne 0x1401d3b40
lea rax, [0x14043d0e0]
ret
movzx eax, byte [0x14043d083]
cmp al, 0x90
je 0x1401d3b84
mov cl, 0x78
nop dword [rax]
mov al, 0x3e
lock cmpxchg byte [0x14043d083], cl
je 0x1401d3d21
cmp al, 0x90
jne 0x1401d3b70
lea rax, [0x14043d080]
ret
test r8d, r8d
je 0x1401d3ca9
test r9d, r9d
je 0x1401d3d61
movzx eax, byte [0x14043d233]
cmp al, 0xe9
je 0x1401d3e99
mov cl, 0x9c
nop
mov al, 0xfa
lock cmpxchg byte [0x14043d233], cl
je 0x1401d3e6b
cmp al, 0xe9
jne 0x1401d3bb0
jmp 0x1401d3e99
test r9d, r9d
je 0x1401d3d99
movzx eax, byte [0x14043d0f2]
cmp al, 0x83
je 0x1401d3ed9
mov cl, 0xda
nop word cs:[rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x14043d0f2], cl
je 0x1401d3ea1
cmp al, 0x83
jne 0x1401d3bf0
jmp 0x1401d3ed9
movzx eax, byte [0x14043d1fa]
cmp al, 0xba
je 0x1401d3c34
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0x3b
lock cmpxchg byte [0x14043d1fa], cl
je 0x1401d3e01
cmp al, 0xba
jne 0x1401d3c20
lea rax, [0x14043d1d0]
ret
xor eax, eax
lea rcx, [0x14043d360]
lea rdx, [0x14035d980]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401d3c50
mov al, 0x19
xchg byte [0x14043d36d], al
lea rax, [0x14043d360]
ret
movzx eax, byte [0x14043d195]
cmp al, 0x63
je 0x1401d3f19
mov cl, 0xd2
nop word cs:[rax + rax]
mov al, 0x78
lock cmpxchg byte [0x14043d195], cl
je 0x1401d3ee1
cmp al, 0x63
jne 0x1401d3c90
jmp 0x1401d3f19
test r9d, r9d
je 0x1401d3e41
movzx eax, byte [0x14043d30f]
cmp al, 0x8c
je 0x1401d3f59
mov cl, 0x9d
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x14043d30f], cl
je 0x1401d3f21
cmp al, 0x8c
jne 0x1401d3cd0
jmp 0x1401d3f59
xor eax, eax
lea rcx, [0x14043d0e0]
lea rdx, [0x14035d700]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1401d3d00
mov al, 0x6f
xchg byte [0x14043d0e5], al
lea rax, [0x14043d0e0]
ret
xor eax, eax
lea rcx, [0x14043d080]
lea rdx, [0x14035d6b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401d3d40
mov al, 0x90
xchg byte [0x14043d083], al
lea rax, [0x14043d080]
ret
movzx eax, byte [0x14043d164]
cmp al, 0x51
je 0x1401d3f99
mov cl, pe_nt_image_headers64
nop word cs:[rax + rax]
mov al, 0x71
lock cmpxchg byte [0x14043d164], cl
je 0x1401d3f61
cmp al, 0x51
jne 0x1401d3d80
jmp 0x1401d3f99
movzx eax, byte [0x14043d0d3]
cmp al, 0xf0
je 0x1401d3fd9
mov cl, 0x75
nop word [rax + rax]
mov al, 0x74
lock cmpxchg byte [0x14043d0d3], cl
je 0x1401d3fa1
cmp al, 0xf0
jne 0x1401d3db0
jmp 0x1401d3fd9
xor eax, eax
lea rcx, [0x14043d2f0]
lea rdx, [0x14035d910]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401d3de0
mov al, 0x3f
xchg byte [0x14043d2fd], al
lea rax, [0x14043d2f0]
ret
xor eax, eax
lea rcx, [0x14043d1d0]
lea rdx, [0x14035d7f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x2a
jl 0x1401d3e20
mov al, 0xba
xchg byte [0x14043d1fa], al
lea rax, [0x14043d1d0]
ret
movzx eax, byte [0x14043d225]
cmp al, 0x26
je 0x1401d400a
mov cl, 0x1f
mov al, 0x8f
lock cmpxchg byte [0x14043d225], cl
je 0x1401d3fe1
cmp al, 0x26
jne 0x1401d3e52
jmp 0x1401d400a
xor eax, eax
lea rcx, [0x14043d230]
lea rdx, [0x14035d850]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401d3e80
mov al, 0xe9
xchg byte [0x14043d233], al
lea rax, [0x14043d230]
ret
xor eax, eax
lea rcx, [0x14043d0f0]
lea rdx, [0x14035d710]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401d3ec0
mov al, 0x83
xchg byte [0x14043d0f2], al
lea rax, [0x14043d0f0]
ret
xor eax, eax
lea rcx, [0x14043d190]
lea rdx, [0x14035d7b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1401d3f00
mov al, 0x63
xchg byte [0x14043d195], al
lea rax, [0x14043d190]
ret
xor eax, eax
lea rcx, [0x14043d300]
lea rdx, [0x14035d920]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401d3f40
mov al, 0x8c
xchg byte [0x14043d30f], al
lea rax, [0x14043d300]
ret
xor eax, eax
lea rcx, [0x14043d160]
lea rdx, [0x14035d780]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x1401d3f80
mov al, 0x51
xchg byte [0x14043d164], al
lea rax, [0x14043d160]
ret
xor eax, eax
lea rcx, [0x14043d0d0]
lea rdx, [0x14035d6f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401d3fc0
mov al, 0xf0
xchg byte [0x14043d0d3], al
lea rax, [0x14043d0d0]
ret
xor eax, eax
lea rcx, [0x14043d220]
lea rdx, [0x14035d840]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1401d3ff1
mov al, 0x26
xchg byte [0x14043d225], al
lea rax, [0x14043d220]
ret