Function at 0x14009f8f0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x48
test ecx, ecx
je 0x14009f939
test edx, edx
je 0x14009f989
test r8d, r8d
je 0x14009f9c9
movzx eax, byte [0x14045635b]
cmp al, 0x19
je 0x14009fae9
mov cl, 0x9b
nop dword [rax]
mov al, 0xb7
lock cmpxchg byte [0x14045635b], cl
je 0x14009fab9
cmp al, 0x19
jne 0x14009f920
jmp 0x14009fae9
test edx, edx
je 0x14009f9f9
test r8d, r8d
je 0x14009fa39
test r9d, r9d
je 0x14009faf5
movzx eax, byte [0x140456204]
cmp al, 0x5e
je 0x14009fd09
mov cl, 0xc6
nop word cs:[rax + rax]
mov al, 0x10
lock cmpxchg byte [0x140456204], cl
je 0x14009fc69
cmp al, 0x5e
jne 0x14009f970
jmp 0x14009fd09
test r8d, r8d
je 0x14009fa79
test r9d, r9d
je 0x14009fb29
movzx eax, byte [0x14045640f]
cmp al, 0x70
je 0x14009fd49
mov cl, 0x41
nop dword [rax]
mov al, 0x6f
lock cmpxchg byte [0x14045640f], cl
je 0x14009fd15
cmp al, 0x70
jne 0x14009f9b0
jmp 0x14009fd49
movzx eax, byte [0x140456185]
cmp al, 0x1b
je 0x14009fbc9
mov cl, 0xed
nop word [rax + rax]
mov al, 0x24
lock cmpxchg byte [0x140456185], cl
je 0x14009fb99
cmp al, 0x1b
jne 0x14009f9e0
jmp 0x14009fbc9
test r8d, r8d
je 0x14009fb59
test r9d, r9d
je 0x14009fbd5
movzx eax, byte [0x140456203]
cmp al, 0x35
je 0x14009fda9
mov cl, 0x19
nop dword [rax]
mov al, 0x6c
lock cmpxchg byte [0x140456203], cl
je 0x14009fd7f
cmp al, 0x35
jne 0x14009fa20
jmp 0x14009fda9
test r9d, r9d
je 0x14009fc09
movzx eax, byte [0x140456205]
cmp al, 0xcf
je 0x14009fe59
mov cl, 0xa4
nop word cs:[rax + rax]
mov al, 0x8b
lock cmpxchg byte [0x140456205], cl
je 0x14009fdb5
cmp al, 0xcf
jne 0x14009fa60
jmp 0x14009fe59
test r9d, r9d
je 0x14009fc39
movzx eax, byte [0x1404561b6]
cmp al, 0x78
je 0x14009fe99
mov cl, 0x31
nop word cs:[rax + rax]
mov al, 0x57
lock cmpxchg byte [0x1404561b6], cl
je 0x14009fe65
cmp al, 0x78
jne 0x14009faa0
jmp 0x14009fe99
xor eax, eax
lea rcx, [0x140456350]
lea rdx, [0x14038b330]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14009fad0
mov al, 0x19
xchg byte [0x14045635b], al
lea rax, [0x140456350]
jmp 0x1400a0052
movzx eax, byte [0x140456312]
cmp al, 0xad
je 0x14009fed9
mov cl, 0xbf
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x140456312], cl
je 0x14009fea5
cmp al, 0xad
jne 0x14009fb10
jmp 0x14009fed9
movzx eax, byte [0x140456096]
cmp al, 0xa3
je 0x14009ff19
mov cl, 0xc4
nop word [rax + rax]
mov al, 0xc0
lock cmpxchg byte [0x140456096], cl
je 0x14009fee5
cmp al, 0xa3
jne 0x14009fb40
jmp 0x14009ff19
test r9d, r9d
je 0x14009fd55
movzx eax, byte [0x140456120]
cmp al, 0x58
je 0x14009ff59
mov cl, 0xce
nop word cs:[rax + rax]
mov al, 0xdb
lock cmpxchg byte [0x140456120], cl
je 0x14009ff25
cmp al, 0x58
jne 0x14009fb80
jmp 0x14009ff59
xor eax, eax
lea rcx, [0x140456170]
lea rdx, [0x14038b100]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x14009fbb0
mov al, 0x1b
xchg byte [0x140456185], al
lea rax, [0x140456170]
jmp 0x1400a0052
movzx eax, byte [0x140456273]
cmp al, 0x3c
je 0x14009ff99
mov cl, 0xc
nop word cs:[rax + rax]
mov al, 0x29
lock cmpxchg byte [0x140456273], cl
je 0x14009ff65
cmp al, 0x3c
jne 0x14009fbf0
jmp 0x14009ff99
movzx eax, byte [0x140456302]
cmp al, 0x6f
je 0x14009ffd9
mov cl, 0x4e
nop word [rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x140456302], cl
je 0x14009ffa5
cmp al, 0x6f
jne 0x14009fc20
jmp 0x14009ffd9
movzx eax, byte [0x1404562cf]
cmp al, 0xbe
je 0x1400a0019
mov cl, 0x6a
nop word [rax + rax]
mov al, 0xc6
lock cmpxchg byte [0x1404562cf], cl
je 0x14009ffe2
cmp al, 0xbe
jne 0x14009fc50
jmp 0x1400a0019
cmp qword [0x1404be908], 0
jne 0x14009fcdf
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0xfb30e365
mov qword [rsp + 0x30], 0
xor edi, edi
mov ecx, 1
xor edx, edx
mov r8d, 7
xor r9d, r9d
call fcn.14009d910
mov rsi, rax
mov qword [0x1404be908], rax
lea rdx, [0x14009d760]
xor ecx, ecx
mov r8d, 0x680c48f9
call fcn.14009d880
lea rax, [0x14038b190]
nop dword [rax + rax]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 5
jle 0x14009fcd0
mov rax, qword [0x1404be908]
xor ecx, ecx
lea rdx, [0x14038b1a0]
nop
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 6
jl 0x14009fcf0
mov al, 0x5e
xchg byte [0x140456204], al
mov rax, qword [0x1404be908]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456400]
lea rdx, [0x14038b3e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x14009fd30
mov al, 0x70
xchg byte [0x14045640f], al
lea rax, [0x140456400]
jmp 0x1400a0052
movzx eax, byte [0x140456393]
cmp al, 0x15
je 0x1400a004b
mov cl, 0x93
mov al, 0x4f
lock cmpxchg byte [0x140456393], cl
je 0x1400a0022
cmp al, 0x15
jne 0x14009fd66
jmp 0x1400a004b
xor eax, eax
lea rcx, [0x140456200]
lea rdx, [0x14038b180]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14009fd90
mov al, 0x35
xchg byte [0x140456203], al
lea rax, [0x140456200]
jmp 0x1400a0052
cmp qword [0x1404be910], 0
jne 0x14009fe23
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0xfb30e365
mov qword [rsp + 0x30], 0
xor edi, edi
mov ecx, 1
xor edx, edx
mov r8d, 4
xor r9d, r9d
call fcn.14009d910
mov rsi, rax
mov qword [0x1404be910], rax
lea rdx, [0x14009d780]
xor ecx, ecx
mov r8d, 0x680c48f9
call fcn.14009d880
lea rax, [0x14038b1b0]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 2
jle 0x14009fe14
mov rax, qword [0x1404be910]
xor ecx, ecx
lea rdx, [0x14038b1c0]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
add byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x14009fe40
mov al, 0xcf
xchg byte [0x140456205], al
mov rax, qword [0x1404be910]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x1404561a0]
lea rdx, [0x14038b130]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x14009fe80
mov al, 0x78
xchg byte [0x1404561b6], al
lea rax, [0x1404561a0]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456310]
lea rdx, [0x14038b2f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x14009fec0
mov al, 0xad
xchg byte [0x140456312], al
lea rax, [0x140456310]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456090]
lea rdx, [0x14038b030]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x14009ff00
mov al, 0xa3
xchg byte [0x140456096], al
lea rax, [0x140456090]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456110]
lea rdx, [0x14038b0b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14009ff40
mov al, 0x58
xchg byte [0x140456120], al
lea rax, [0x140456110]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456270]
lea rdx, [0x14038b250]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14009ff80
mov al, 0x3c
xchg byte [0x140456273], al
lea rax, [0x140456270]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456300]
lea rdx, [0x14038b2e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x14009ffc0
mov al, 0x6f
xchg byte [0x140456302], al
lea rax, [0x140456300]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x1404562c0]
lea rdx, [0x14038b2a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1400a0000
mov al, 0xbe
xchg byte [0x1404562cf], al
lea rax, [0x1404562c0]
jmp 0x1400a0052
xor eax, eax
lea rcx, [0x140456380]
lea rdx, [0x14038b360]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x1400a0032
mov al, 0x15
xchg byte [0x140456393], al
lea rax, [0x140456380]
add rsp, 0x48
pop rdi
pop rsi
ret