Function at 0x1401f8960
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x38
test ecx, ecx
je 0x1401f89b9
test edx, edx
je 0x1401f8a09
test r8d, r8d
je 0x1401f8a49
test r9d, r9d
je 0x1401f8ac9
movzx eax, byte [0x1404ab755]
cmp al, 0xa8
je 0x1401f8c79
mov cl, 0xa1
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x1404ab755], cl
je 0x1401f8c49
cmp al, 0xa8
jne 0x1401f89a0
jmp 0x1401f8c79
test edx, edx
je 0x1401f8a89
test r8d, r8d
je 0x1401f8af9
test r9d, r9d
je 0x1401f8b79
movzx eax, byte [0x1404abd61]
cmp al, 0x9f
je 0x1401f8d49
mov cl, 0xfb
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x1404abd61], cl
je 0x1401f8d19
cmp al, 0x9f
jne 0x1401f89f0
jmp 0x1401f8d49
test r8d, r8d
je 0x1401f8b39
test r9d, r9d
je 0x1401f8ba9
movzx eax, byte [0x1404ab810]
cmp al, 0x6d
je 0x1401f8d89
mov cl, 0x28
nop dword [rax]
mov al, 0xb2
lock cmpxchg byte [0x1404ab810], cl
je 0x1401f8d55
cmp al, 0x6d
jne 0x1401f8a30
jmp 0x1401f8d89
test r9d, r9d
je 0x1401f8bd9
movzx eax, byte [0x1404aba73]
cmp al, 0xe5
je 0x1401f8dc9
mov cl, 0xc8
nop word cs:[rax + rax]
mov al, 0xf8
lock cmpxchg byte [0x1404aba73], cl
je 0x1401f8d95
cmp al, 0xe5
jne 0x1401f8a70
jmp 0x1401f8dc9
test r8d, r8d
je 0x1401f8c09
test r9d, r9d
je 0x1401f8c85
movzx eax, byte [0x1404abc96]
cmp al, 0x5e
je 0x1401f8e69
mov cl, 0xae
nop dword [rax]
mov al, 0x67
lock cmpxchg byte [0x1404abc96], cl
je 0x1401f8e3f
cmp al, 0x5e
jne 0x1401f8ab0
jmp 0x1401f8e69
movzx eax, byte [0x1404abe44]
cmp al, 0x4a
je 0x1401f8e09
mov cl, 0xe0
nop word [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x1404abe44], cl
je 0x1401f8dd5
cmp al, 0x4a
jne 0x1401f8ae0
jmp 0x1401f8e09
test r9d, r9d
je 0x1401f8cb9
movzx eax, byte [0x1404ab9ec]
cmp al, 0x47
je 0x1401f8f09
mov cl, 0xa5
nop word cs:[rax + rax]
mov al, 0x98
lock cmpxchg byte [0x1404ab9ec], cl
je 0x1401f8e75
cmp al, 0x47
jne 0x1401f8b20
jmp 0x1401f8f09
test r9d, r9d
je 0x1401f8ce9
movzx eax, byte [0x1404abfaa]
cmp al, 0x9d
je 0x1401f8f49
mov cl, 0x2e
nop word cs:[rax + rax]
mov al, 0x97
lock cmpxchg byte [0x1404abfaa], cl
je 0x1401f8f15
cmp al, 0x9d
jne 0x1401f8b60
jmp 0x1401f8f49
movzx eax, byte [0x1404abd7d]
cmp al, 0x21
je 0x1401f8f89
mov cl, 0xce
nop word [rax + rax]
mov al, 0xa7
lock cmpxchg byte [0x1404abd7d], cl
je 0x1401f8f55
cmp al, 0x21
jne 0x1401f8b90
jmp 0x1401f8f89
movzx eax, byte [0x1404abf76]
cmp al, 0xef
je 0x1401f8fc9
mov cl, 0x14
nop word [rax + rax]
mov al, 0x6e
lock cmpxchg byte [0x1404abf76], cl
je 0x1401f8f95
cmp al, 0xef
jne 0x1401f8bc0
jmp 0x1401f8fc9
movzx eax, byte [0x1404ac16a]
cmp al, 0xce
je 0x1401f9009
mov cl, 0x56
nop word [rax + rax]
mov al, 0x21
lock cmpxchg byte [0x1404ac16a], cl
je 0x1401f8fd5
cmp al, 0xce
jne 0x1401f8bf0
jmp 0x1401f9009
test r9d, r9d
je 0x1401f8e15
movzx eax, byte [0x1404ab87f]
cmp al, 0x48
je 0x1401f9049
mov cl, 0x5a
nop word cs:[rax + rax]
mov al, 0x51
lock cmpxchg byte [0x1404ab87f], cl
je 0x1401f9015
cmp al, 0x48
jne 0x1401f8c30
jmp 0x1401f9049
xor eax, eax
lea rcx, [0x1404ab740]
lea rdx, [0x1403c3ab0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1401f8c60
mov al, 0xa8
xchg byte [0x1404ab755], al
lea rax, [0x1404ab740]
jmp 0x1401f9142
movzx eax, byte [0x1404ac210]
cmp al, 0xe7
je 0x1401f9089
mov cl, 0x8d
nop word cs:[rax + rax]
mov al, 0xa8
lock cmpxchg byte [0x1404ac210], cl
je 0x1401f9055
cmp al, 0xe7
jne 0x1401f8ca0
jmp 0x1401f9089
movzx eax, byte [0x1404abead]
cmp al, 0x65
je 0x1401f90c9
mov cl, 0xed
nop word [rax + rax]
mov al, 0xf4
lock cmpxchg byte [0x1404abead], cl
je 0x1401f9095
cmp al, 0x65
jne 0x1401f8cd0
jmp 0x1401f90c9
movzx eax, byte [0x1404abdc0]
cmp al, 4
je 0x1401f9109
mov cl, 0x38
nop word [rax + rax]
mov al, 0x9e
lock cmpxchg byte [0x1404abdc0], cl
je 0x1401f90d2
cmp al, 4
jne 0x1401f8d00
jmp 0x1401f9109
xor eax, eax
lea rcx, [0x1404abd50]
lea rdx, [0x1403c4270]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x1401f8d30
mov al, 0x9f
xchg byte [0x1404abd61], al
lea rax, [0x1404abd50]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404ab800]
lea rdx, [0x1403c3b60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401f8d70
mov al, 0x6d
xchg byte [0x1404ab810], al
lea rax, [0x1404ab800]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404aba50]
lea rdx, [0x1403c3f80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1401f8db0
mov al, 0xe5
xchg byte [0x1404aba73], al
lea rax, [0x1404aba50]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abe30]
lea rdx, [0x1403c4340]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x1401f8df0
mov al, 0x4a
xchg byte [0x1404abe44], al
lea rax, [0x1404abe30]
jmp 0x1401f9142
movzx eax, byte [0x1404ab715]
cmp al, 0x59
je 0x1401f913b
mov cl, 0xd5
mov al, 0xf
lock cmpxchg byte [0x1404ab715], cl
je 0x1401f9112
cmp al, 0x59
jne 0x1401f8e26
jmp 0x1401f913b
xor eax, eax
lea rcx, [0x1404abc70]
lea rdx, [0x1403c4190]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x1401f8e50
mov al, 0x5e
xchg byte [0x1404abc96], al
lea rax, [0x1404abc70]
jmp 0x1401f9142
cmp qword [0x1404ef068], 0
jne 0x1401f8ed5
mov dword [rsp + 0x28], 0x1f411150
mov qword [rsp + 0x20], 0
xor edi, edi
xor ecx, ecx
xor edx, edx
mov r8d, 0xb
xor r9d, r9d
call fcn.1401f7d00
mov rsi, rax
mov qword [0x1404ef068], rax
lea rcx, [0x1401f7ce0]
mov edx, 0x8361c00d
call fcn.140137f30
lea rax, [0x1403c3f00]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 9
jle 0x1401f8ec6
mov rax, qword [0x1404ef068]
xor ecx, ecx
lea rdx, [0x1403c3f10]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
add byte [rax + rcx], r8b
inc rcx
cmp ecx, 0xa
jl 0x1401f8ef0
mov al, 0x47
xchg byte [0x1404ab9ec], al
mov rax, qword [0x1404ef068]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abf90]
lea rdx, [0x1403c44a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x1401f8f30
mov al, 0x9d
xchg byte [0x1404abfaa], al
lea rax, [0x1404abf90]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abd70]
lea rdx, [0x1403c4290]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401f8f70
mov al, 0x21
xchg byte [0x1404abd7d], al
lea rax, [0x1404abd70]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abf70]
lea rdx, [0x1403c4480]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x1401f8fb0
mov al, 0xef
xchg byte [0x1404abf76], al
lea rax, [0x1404abf70]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404ac160]
lea rdx, [0x1403c4670]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x1401f8ff0
mov al, 0xce
xchg byte [0x1404ac16a], al
lea rax, [0x1404ac160]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404ab870]
lea rdx, [0x1403c3c00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401f9030
mov al, 0x48
xchg byte [0x1404ab87f], al
lea rax, [0x1404ab870]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404ac200]
lea rdx, [0x1403c4700]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401f9070
mov al, 0xe7
xchg byte [0x1404ac210], al
lea rax, [0x1404ac200]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abea0]
lea rdx, [0x1403c43b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401f90b0
mov al, 0x65
xchg byte [0x1404abead], al
lea rax, [0x1404abea0]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404abdb0]
lea rdx, [0x1403c42d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401f90f0
mov al, 4
xchg byte [0x1404abdc0], al
lea rax, [0x1404abdb0]
jmp 0x1401f9142
xor eax, eax
lea rcx, [0x1404ab700]
lea rdx, [0x1403c3a70]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1401f9122
mov al, 0x59
xchg byte [0x1404ab715], al
lea rax, [0x1404ab700]
add rsp, 0x38
pop rdi
pop rsi
ret