Function at 0x1401f4970
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1401f49bc
test edx, edx
je 0x1401f4a0c
test r8d, r8d
je 0x1401f4a4c
test r9d, r9d
je 0x1401f4ac9
movzx eax, byte [0x140457fd9]
cmp al, 0xb
je 0x1401f49b4
mov cl, 0xf7
nop dword [rax + rax]
mov al, 0x40
lock cmpxchg byte [0x140457fd9], cl
je 0x1401f4c49
cmp al, 0xb
jne 0x1401f49a0
lea rax, [0x140457fd0]
ret
test edx, edx
je 0x1401f4a8c
test r8d, r8d
je 0x1401f4afc
test r9d, r9d
je 0x1401f4b79
movzx eax, byte [0x14045818d]
cmp al, 0x6f
je 0x1401f4a04
mov cl, 0x98
nop word cs:[rax + rax]
mov al, 0x15
lock cmpxchg byte [0x14045818d], cl
je 0x1401f4d19
cmp al, 0x6f
jne 0x1401f49f0
lea rax, [0x140458180]
ret
test r8d, r8d
je 0x1401f4b39
test r9d, r9d
je 0x1401f4ba9
movzx eax, byte [0x140491820]
cmp al, 0xe
je 0x1401f4a44
mov cl, 0xe7
nop dword [rax + rax]
xor eax, eax
lock cmpxchg byte [0x140491820], cl
je 0x1401f4d51
cmp al, 0xe
jne 0x1401f4a30
lea rax, [0x140458100]
ret
test r9d, r9d
je 0x1401f4bd9
movzx eax, byte [0x140457fc5]
cmp al, 0x42
je 0x1401f4a84
mov cl, 0x15
nop word cs:[rax + rax]
mov al, 0x3e
lock cmpxchg byte [0x140457fc5], cl
je 0x1401f4d91
cmp al, 0x42
jne 0x1401f4a70
lea rax, [0x140457fb0]
ret
test r8d, r8d
je 0x1401f4c09
test r9d, r9d
je 0x1401f4c81
movzx eax, byte [0x14045802c]
cmp al, 0x27
je 0x1401f4e69
mov cl, 0xf2
nop
mov al, 6
lock cmpxchg byte [0x14045802c], cl
je 0x1401f4e3b
cmp al, 0x27
jne 0x1401f4ab0
jmp 0x1401f4e69
movzx eax, byte [0x140457f36]
cmp al, 0x7b
je 0x1401f4af4
mov cl, 0x28
nop word cs:[rax + rax]
mov al, 0xd4
lock cmpxchg byte [0x140457f36], cl
je 0x1401f4dd1
cmp al, 0x7b
jne 0x1401f4ae0
lea rax, [0x140457f30]
ret
test r9d, r9d
je 0x1401f4cb9
movzx eax, byte [0x140457d82]
cmp al, 4
je 0x1401f4ea9
mov cl, 0x4d
nop word cs:[rax + rax]
mov al, 0xe9
lock cmpxchg byte [0x140457d82], cl
je 0x1401f4e71
cmp al, 4
jne 0x1401f4b20
jmp 0x1401f4ea9
test r9d, r9d
je 0x1401f4ce9
movzx eax, byte [0x140457dfb]
cmp al, 0x48
je 0x1401f4ee9
mov cl, 0x53
nop word cs:[rax + rax]
mov al, 0xe9
lock cmpxchg byte [0x140457dfb], cl
je 0x1401f4eb1
cmp al, 0x48
jne 0x1401f4b60
jmp 0x1401f4ee9
movzx eax, byte [0x140457de0]
cmp al, 0x62
je 0x1401f4f29
mov cl, 0x94
nop word [rax + rax]
mov al, 0xf4
lock cmpxchg byte [0x140457de0], cl
je 0x1401f4ef1
cmp al, 0x62
jne 0x1401f4b90
jmp 0x1401f4f29
movzx eax, byte [0x140457f10]
cmp al, 0xfb
je 0x1401f4f69
mov cl, 0x4d
nop word [rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x140457f10], cl
je 0x1401f4f31
cmp al, 0xfb
jne 0x1401f4bc0
jmp 0x1401f4f69
movzx eax, byte [0x140457d72]
cmp al, 0xef
je 0x1401f4fa9
mov cl, 0xaa
nop word [rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x140457d72], cl
je 0x1401f4f71
cmp al, 0xef
jne 0x1401f4bf0
jmp 0x1401f4fa9
test r9d, r9d
je 0x1401f4e11
movzx eax, byte [0x140458145]
cmp al, 0x67
je 0x1401f4fe9
mov cl, 0xdd
nop word cs:[rax + rax]
mov al, 0xc0
lock cmpxchg byte [0x140458145], cl
je 0x1401f4fb1
cmp al, 0x67
jne 0x1401f4c30
jmp 0x1401f4fe9
xor eax, eax
lea rcx, [0x140457fd0]
lea rdx, [0x14036ca10]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x1401f4c60
mov al, 0xb
xchg byte [0x140457fd9], al
lea rax, [0x140457fd0]
ret
movzx eax, byte [0x140457ff6]
cmp al, 0x4b
je 0x1401f5029
mov cl, 0xd9
nop word cs:[rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x140457ff6], cl
je 0x1401f4ff1
cmp al, 0x4b
jne 0x1401f4ca0
jmp 0x1401f5029
movzx eax, byte [0x140457e24]
cmp al, 0x2b
je 0x1401f5069
mov cl, 0x63
nop word [rax + rax]
mov al, 0x3e
lock cmpxchg byte [0x140457e24], cl
je 0x1401f5031
cmp al, 0x2b
jne 0x1401f4cd0
jmp 0x1401f5069
movzx eax, byte [0x140457e32]
cmp al, 0xe1
je 0x1401f50a9
mov cl, 0x69
nop word [rax + rax]
mov al, 0x96
lock cmpxchg byte [0x140457e32], cl
je 0x1401f5071
cmp al, 0xe1
jne 0x1401f4d00
jmp 0x1401f50a9
xor eax, eax
lea rcx, [0x140458180]
lea rdx, [0x14036cbc0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401f4d30
mov al, 0x6f
xchg byte [0x14045818d], al
lea rax, [0x140458180]
ret
xor eax, eax
lea rcx, [0x140458100]
lea rdx, [0x14036cb40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401f4d70
mov al, 0xe
xchg byte [0x140491820], al
lea rax, [0x140458100]
ret
xor eax, eax
lea rcx, [0x140457fb0]
lea rdx, [0x14036c9f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1401f4db0
mov al, 0x42
xchg byte [0x140457fc5], al
lea rax, [0x140457fb0]
ret
xor eax, eax
lea rcx, [0x140457f30]
lea rdx, [0x14036c930]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x1401f4df0
mov al, 0x7b
xchg byte [0x140457f36], al
lea rax, [0x140457f30]
ret
movzx eax, byte [0x140458073]
cmp al, 0xea
je 0x1401f50da
mov cl, 0x6d
mov al, 0xb
lock cmpxchg byte [0x140458073], cl
je 0x1401f50b1
cmp al, 0xea
jne 0x1401f4e22
jmp 0x1401f50da
xor eax, eax
lea rcx, [0x140458010]
lea rdx, [0x14036ca50]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1401f4e50
mov al, 0x27
xchg byte [0x14045802c], al
lea rax, [0x140458010]
ret
xor eax, eax
lea rcx, [0x140457d80]
lea rdx, [0x14036c7d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401f4e90
mov al, 4
xchg byte [0x140457d82], al
lea rax, [0x140457d80]
ret
xor eax, eax
lea rcx, [0x140457df0]
lea rdx, [0x14036c830]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1401f4ed0
mov al, 0x48
xchg byte [0x140457dfb], al
lea rax, [0x140457df0]
ret
xor eax, eax
lea rcx, [0x140457db0]
lea rdx, [0x14036c800]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x30
jl 0x1401f4f10
mov al, 0x62
xchg byte [0x140457de0], al
lea rax, [0x140457db0]
ret
xor eax, eax
lea rcx, [0x140457f00]
lea rdx, [0x14036c910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401f4f50
mov al, 0xfb
xchg byte [0x140457f10], al
lea rax, [0x140457f00]
ret
xor eax, eax
lea rcx, [0x140457d70]
lea rdx, [0x14036c7c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401f4f90
mov al, 0xef
xchg byte [0x140457d72], al
lea rax, [0x140457d70]
ret
xor eax, eax
lea rcx, [0x140458130]
lea rdx, [0x14036cb70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1401f4fd0
mov al, 0x67
xchg byte [0x140458145], al
lea rax, [0x140458130]
ret
xor eax, eax
lea rcx, [0x140457fe0]
lea rdx, [0x14036ca20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x1401f5010
mov al, 0x4b
xchg byte [0x140457ff6], al
lea rax, [0x140457fe0]
ret
xor eax, eax
lea rcx, [0x140457e20]
lea rdx, [0x14036c850]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x1401f5050
mov al, 0x2b
xchg byte [0x140457e24], al
lea rax, [0x140457e20]
ret
xor eax, eax
lea rcx, [0x140457e30]
lea rdx, [0x14036c860]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401f5090
mov al, 0xe1
xchg byte [0x140457e32], al
lea rax, [0x140457e30]
ret
xor eax, eax
lea rcx, [0x140458050]
lea rdx, [0x14036ca90]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1401f50c1
mov al, 0xea
xchg byte [0x140458073], al
lea rax, [0x140458050]
ret