Function at 0x1400866f0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x48
test ecx, ecx
je 0x140086749
test edx, edx
je 0x140086799
test r8d, r8d
je 0x1400867d9
test r9d, r9d
je 0x140086859
movzx eax, byte [0x14042735b]
cmp al, 0x93
je 0x1400869f9
mov cl, 0x3a
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x14042735b], cl
je 0x1400869c9
cmp al, 0x93
jne 0x140086730
jmp 0x1400869f9
test edx, edx
je 0x140086819
test r8d, r8d
je 0x140086889
test r9d, r9d
je 0x140086909
movzx eax, byte [0x1404273fd]
cmp al, 3
je 0x140086a99
mov cl, 0xba
nop word cs:[rax + rax]
mov al, 0x59
lock cmpxchg byte [0x1404273fd], cl
je 0x140086a69
cmp al, 3
jne 0x140086780
jmp 0x140086a99
test r8d, r8d
je 0x1400868c9
test r9d, r9d
je 0x140086939
movzx eax, byte [0x140427096]
cmp al, 0x59
je 0x140086ad9
mov cl, 0xdb
nop dword [rax]
mov al, 0x3b
lock cmpxchg byte [0x140427096], cl
je 0x140086aa5
cmp al, 0x59
jne 0x1400867c0
jmp 0x140086ad9
test r9d, r9d
je 0x140086969
movzx eax, byte [0x1404271c3]
cmp al, 5
je 0x140086b19
mov cl, 0x5d
nop word cs:[rax + rax]
mov al, 0xb2
lock cmpxchg byte [0x1404271c3], cl
je 0x140086ae5
cmp al, 5
jne 0x140086800
jmp 0x140086b19
test r8d, r8d
je 0x140086999
movzx eax, byte [0x140427185]
cmp al, 0xb6
je 0x140086b99
mov cl, 0x7b
nop word cs:[rax + rax]
mov al, 0xfe
lock cmpxchg byte [0x140427185], cl
je 0x140086b65
cmp al, 0xb6
jne 0x140086840
jmp 0x140086b99
movzx eax, byte [0x1404271f9]
cmp al, 0xe9
je 0x140086b59
mov cl, 0x9f
nop word [rax + rax]
mov al, 0x94
lock cmpxchg byte [0x1404271f9], cl
je 0x140086b25
cmp al, 0xe9
jne 0x140086870
jmp 0x140086b59
test r9d, r9d
je 0x140086a05
movzx eax, byte [0x14042725c]
cmp al, 0xad
je 0x140086bd9
mov cl, 0xbf
nop word cs:[rax + rax]
mov al, 0x18
lock cmpxchg byte [0x14042725c], cl
je 0x140086ba5
cmp al, 0xad
jne 0x1400868b0
jmp 0x140086bd9
test r9d, r9d
je 0x140086a39
movzx eax, byte [0x140427145]
cmp al, 0xad
je 0x140086c19
mov cl, 0xd4
nop word cs:[rax + rax]
mov al, 0xfc
lock cmpxchg byte [0x140427145], cl
je 0x140086be5
cmp al, 0xad
jne 0x1400868f0
jmp 0x140086c19
movzx eax, byte [0x140427205]
cmp al, 0xc8
je 0x140086ce9
mov cl, 0x72
nop word [rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x140427205], cl
je 0x140086c25
cmp al, 0xc8
jne 0x140086920
jmp 0x140086ce9
movzx eax, byte [0x140427204]
cmp al, 0xa8
je 0x140086db9
mov cl, 0xf4
nop word [rax + rax]
mov al, 0xce
lock cmpxchg byte [0x140427204], cl
je 0x140086cf5
cmp al, 0xa8
jne 0x140086950
jmp 0x140086db9
movzx eax, byte [0x14042732b]
cmp al, 0x98
je 0x140086df9
mov cl, 0xe4
nop word [rax + rax]
mov al, 0x56
lock cmpxchg byte [0x14042732b], cl
je 0x140086dc5
cmp al, 0x98
jne 0x140086980
jmp 0x140086df9
movzx eax, byte [0x140427108]
cmp al, 0xb8
je 0x140086e39
mov cl, 0x5f
nop word [rax + rax]
mov al, 0x9a
lock cmpxchg byte [0x140427108], cl
je 0x140086e05
cmp al, 0xb8
jne 0x1400869b0
jmp 0x140086e39
xor eax, eax
lea rcx, [0x140427350]
lea rdx, [0x14035c300]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1400869e0
mov al, 0x93
xchg byte [0x14042735b], al
lea rax, [0x140427350]
jmp 0x140086ec0
movzx eax, byte [0x1404273ad]
cmp al, 0x62
je 0x140086e79
mov cl, 0x73
nop word cs:[rax + rax]
mov al, 0x48
lock cmpxchg byte [0x1404273ad], cl
je 0x140086e42
cmp al, 0x62
jne 0x140086a20
jmp 0x140086e79
movzx eax, byte [0x140427231]
cmp al, 0xa5
je 0x140086eb9
mov cl, 0x35
nop word [rax + rax]
mov al, 0xd9
lock cmpxchg byte [0x140427231], cl
je 0x140086e82
cmp al, 0xa5
jne 0x140086a50
jmp 0x140086eb9
xor eax, eax
lea rcx, [0x1404273f0]
lea rdx, [0x14035c3a0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140086a80
mov al, 3
xchg byte [0x1404273fd], al
lea rax, [0x1404273f0]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427090]
lea rdx, [0x14035c000]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x140086ac0
mov al, 0x59
xchg byte [0x140427096], al
lea rax, [0x140427090]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x1404271c0]
lea rdx, [0x14035c120]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140086b00
mov al, 5
xchg byte [0x1404271c3], al
lea rax, [0x1404271c0]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x1404271f0]
lea rdx, [0x14035c140]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x140086b40
mov al, 0xe9
xchg byte [0x1404271f9], al
lea rax, [0x1404271f0]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427170]
lea rdx, [0x14035c0d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140086b80
mov al, 0xb6
xchg byte [0x140427185], al
lea rax, [0x140427170]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427240]
lea rdx, [0x14035c1f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140086bc0
mov al, 0xad
xchg byte [0x14042725c], al
lea rax, [0x140427240]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427130]
lea rdx, [0x14035c090]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140086c00
mov al, 0xad
xchg byte [0x140427145], al
lea rax, [0x140427130]
jmp 0x140086ec0
cmp qword [0x140490030], 0
jne 0x140086cba
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xe0587042
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
xor edi, edi
xor ecx, ecx
xor edx, edx
mov r8d, 4
xor r9d, r9d
call fcn.140084910
mov rsi, rax
mov qword [0x140490030], rax
mov dword [rsp + 0x30], 0xff3b04ef
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r8, [0x140084510]
mov ecx, 1
mov edx, 1
xor r9d, r9d
call fcn.1400848b0
lea rax, [0x14035c180]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 2
jle 0x140086cab
mov rax, qword [0x140490030]
xor ecx, ecx
lea rdx, [0x14035c190]
nop word [rax + rax]
movzx r8d, byte [rcx + rdx]
add byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x140086cd0
mov al, 0xc8
xchg byte [0x140427205], al
mov rax, qword [0x140490030]
jmp 0x140086ec0
cmp qword [0x140490028], 0
jne 0x140086d8a
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xe0587042
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
xor edi, edi
xor ecx, ecx
xor edx, edx
mov r8d, 7
xor r9d, r9d
call fcn.140084910
mov rsi, rax
mov qword [0x140490028], rax
mov dword [rsp + 0x30], 0xff3b04ef
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r8, [0x1400844f0]
mov ecx, 1
mov edx, 1
xor r9d, r9d
call fcn.1400848b0
lea rax, [0x14035c160]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 5
jle 0x140086d7b
mov rax, qword [0x140490028]
xor ecx, ecx
lea rdx, [0x14035c170]
nop word [rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 6
jl 0x140086da0
mov al, 0xa8
xchg byte [0x140427204], al
mov rax, qword [0x140490028]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427320]
lea rdx, [0x14035c2d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140086de0
mov al, 0x98
xchg byte [0x14042732b], al
lea rax, [0x140427320]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x1404270f0]
lea rdx, [0x14035c060]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x140086e20
mov al, 0xb8
xchg byte [0x140427108], al
lea rax, [0x1404270f0]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x1404273a0]
lea rdx, [0x14035c350]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140086e60
mov al, 0x62
xchg byte [0x1404273ad], al
lea rax, [0x1404273a0]
jmp 0x140086ec0
xor eax, eax
lea rcx, [0x140427220]
lea rdx, [0x14035c1d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x140086ea0
mov al, 0xa5
xchg byte [0x140427231], al
lea rax, [0x140427220]
add rsp, 0x48
pop rdi
pop rsi
ret