Function at 0x1400860a0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
mov esi, r9d
test ecx, ecx
je 0x1400860f9
test edx, edx
je 0x140086139
test r8d, r8d
je 0x140086179
test esi, esi
je 0x1400861f9
movzx eax, byte [0x140427120]
cmp al, 0xec
je 0x140086359
mov cl, 0xca
nop dword [rax + rax]
mov al, 0xa1
lock cmpxchg byte [0x140427120], cl
je 0x140086329
cmp al, 0xec
jne 0x1400860e0
jmp 0x140086359
test edx, edx
je 0x1400861b9
test r8d, r8d
je 0x140086229
movzx eax, byte [0x140427206]
cmp al, 0xd9
je 0x140086429
mov cl, 0x39
nop dword [rax + rax]
mov al, 0xad
lock cmpxchg byte [0x140427206], cl
je 0x140086365
cmp al, 0xd9
jne 0x140086120
jmp 0x140086429
test r8d, r8d
je 0x140086259
test esi, esi
je 0x140086299
movzx eax, byte [0x14042736f]
cmp al, 0xd1
je 0x140086499
mov cl, 0xb8
nop dword [rax + rax]
mov al, 0x41
lock cmpxchg byte [0x14042736f], cl
je 0x140086469
cmp al, 0xd1
jne 0x140086160
jmp 0x140086499
test esi, esi
je 0x1400862c9
movzx eax, byte [0x1404272bb]
cmp al, 0x6d
je 0x1400864d9
mov cl, 0x71
nop word cs:[rax + rax]
mov al, 0x88
lock cmpxchg byte [0x1404272bb], cl
je 0x1400864a5
cmp al, 0x6d
jne 0x1400861a0
jmp 0x1400864d9
test r8d, r8d
je 0x1400862f9
movzx eax, byte [0x14042737d]
cmp al, 0xea
je 0x140086559
mov cl, 0x16
nop word cs:[rax + rax]
mov al, 0x72
lock cmpxchg byte [0x14042737d], cl
je 0x140086525
cmp al, 0xea
jne 0x1400861e0
jmp 0x140086559
movzx eax, byte [0x1404271e0]
cmp al, 0xfc
je 0x140086519
mov cl, 0x2f
nop word [rax + rax]
mov al, 0xd7
lock cmpxchg byte [0x1404271e0], cl
je 0x1400864e5
cmp al, 0xfc
jne 0x140086210
jmp 0x140086519
movzx eax, byte [0x140427346]
cmp al, 0x40
je 0x140086599
mov cl, 0xb8
nop word [rax + rax]
mov al, 0x7c
lock cmpxchg byte [0x140427346], cl
je 0x140086565
cmp al, 0x40
jne 0x140086240
jmp 0x140086599
test esi, esi
je 0x140086435
movzx eax, byte [0x1404270c5]
cmp al, 0x68
je 0x1400865d9
mov cl, 0x94
nop word cs:[rax + rax]
mov al, 0xb
lock cmpxchg byte [0x1404270c5], cl
je 0x1400865a5
cmp al, 0x68
jne 0x140086280
jmp 0x1400865d9
movzx eax, byte [0x140427273]
cmp al, 0xc3
je 0x140086619
mov cl, 0xfc
nop word [rax + rax]
mov al, 0x44
lock cmpxchg byte [0x140427273], cl
je 0x1400865e5
cmp al, 0xc3
jne 0x1400862b0
jmp 0x140086619
movzx eax, byte [0x140427302]
cmp al, 0x21
je 0x140086659
mov cl, 0x2a
nop word [rax + rax]
mov al, 0xf3
lock cmpxchg byte [0x140427302], cl
je 0x140086625
cmp al, 0x21
jne 0x1400862e0
jmp 0x140086659
movzx eax, byte [0x14042733d]
cmp al, 0x9b
je 0x140086699
mov cl, 0x7a
nop word [rax + rax]
mov al, 0x4d
lock cmpxchg byte [0x14042733d], cl
je 0x140086662
cmp al, 0x9b
jne 0x140086310
jmp 0x140086699
xor eax, eax
lea rcx, [0x140427110]
lea rdx, [0x14035c080]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x140086340
mov al, 0xec
xchg byte [0x140427120], al
lea rax, [0x140427110]
jmp 0x1400866e0
cmp qword [0x140490038], 0
jne 0x1400863ff
mov eax, esi
xor eax, 0x36f4455
mov dword [rsp + 0x40], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
xor ebx, ebx
xor ecx, ecx
xor edx, edx
mov r8d, 4
xor r9d, r9d
call fcn.140084910
mov rdi, rax
mov qword [0x140490038], rax
xor esi, 0x1c0c30f8
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r8, [0x140084530]
mov ecx, 1
mov edx, 1
xor r9d, r9d
call fcn.1400848b0
lea rax, [0x14035c1a0]
movzx ecx, byte [rbx + rax]
mov byte [rdi + rbx], cl
inc rbx
cmp ebx, 2
jle 0x1400863f0
mov rax, qword [0x140490038]
xor ecx, ecx
lea rdx, [0x14035c1b0]
nop
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x140086410
mov al, 0xd9
xchg byte [0x140427206], al
mov rax, qword [0x140490038]
jmp 0x1400866e0
movzx eax, byte [0x140427265]
cmp al, 0x14
je 0x1400866d9
mov cl, 0xc4
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x140427265], cl
je 0x1400866a2
cmp al, 0x14
jne 0x140086450
jmp 0x1400866d9
xor eax, eax
lea rcx, [0x140427360]
lea rdx, [0x14035c310]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140086480
mov al, 0xd1
xchg byte [0x14042736f], al
lea rax, [0x140427360]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x1404272b0]
lea rdx, [0x14035c260]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1400864c0
mov al, 0x6d
xchg byte [0x1404272bb], al
lea rax, [0x1404272b0]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x1404271d0]
lea rdx, [0x14035c130]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x140086500
mov al, 0xfc
xchg byte [0x1404271e0], al
lea rax, [0x1404271d0]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427370]
lea rdx, [0x14035c320]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140086540
mov al, 0xea
xchg byte [0x14042737d], al
lea rax, [0x140427370]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427340]
lea rdx, [0x14035c2f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x140086580
mov al, 0x40
xchg byte [0x140427346], al
lea rax, [0x140427340]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x1404270b0]
lea rdx, [0x14035c020]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1400865c0
mov al, 0x68
xchg byte [0x1404270c5], al
lea rax, [0x1404270b0]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427270]
lea rdx, [0x14035c220]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140086600
mov al, 0xc3
xchg byte [0x140427273], al
lea rax, [0x140427270]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427300]
lea rdx, [0x14035c2b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140086640
mov al, 0x21
xchg byte [0x140427302], al
lea rax, [0x140427300]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427330]
lea rdx, [0x14035c2e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140086680
mov al, 0x9b
xchg byte [0x14042733d], al
lea rax, [0x140427330]
jmp 0x1400866e0
xor eax, eax
lea rcx, [0x140427260]
lea rdx, [0x14035c210]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1400866c0
mov al, 0x14
xchg byte [0x140427265], al
lea rax, [0x140427260]
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret