Function at 0x140466eb0
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
and ecx, 0xf
cmp ecx, 4
jbe 0x140466eda
cmp ecx, 7
jbe 0x140466ef2
cmp ecx, 8
jne 0x140466f2d
mov rcx, r9
call fcn.14035d760
xor eax, eax
jmp 0x140467246
cmp ecx, 2
jae 0x140466f0e
test ecx, ecx
je 0x140466f4a
mov rcx, rdx
call fcn.140365bc0
xor eax, eax
jmp 0x140467246
cmp ecx, 5
je 0x140466f59
cmp ecx, 7
jne 0x140466fa9
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x14047f380
je 0x140466f66
cmp ecx, 4
jne 0x140466fb9
mov rcx, rdx
mov rdx, r8
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x14047db90
cmp ecx, 9
ja 0x140466ff9
mov rcx, r9
mov rdx, r8
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x140295630
mov rcx, r8
call fcn.14035d7e0
xor eax, eax
jmp 0x140467246
mov rcx, r9
call fcn.14059d07c
jmp 0x140467244
cmp qword [0x140792658], 0
jne 0x1404670fd
movzx eax, byte [0x1407675c9]
cmp al, 0x8a
je 0x14046704b
mov cl, 6
nop word cs:[rax + rax]
mov al, 0x9c
lock cmpxchg byte [0x1407675c9], cl
je 0x140467024
cmp al, 0x8a
jne 0x140466f90
jmp 0x14046704b
mov rcx, rdx
call fcn.140480e30
movzx eax, al
jmp 0x140467246
cmp qword [0x140792660], 0
jne 0x140467238
movzx eax, byte [0x1407675f7]
cmp al, 0x4f
je 0x140467142
mov cl, 0x80
nop dword [rax + rax]
mov al, 0xd8
lock cmpxchg byte [0x1407675f7], cl
je 0x14046710d
cmp al, 0x4f
jne 0x140466fe0
jmp 0x140467142
mov rsi, r8
mov rcx, rdx
call sub.KERNEL32.dll_LoadLibraryA
test rax, rax
je 0x14046701d
mov rcx, rax
mov rdx, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp sub.KERNEL32.dll_GetProcAddress
xor eax, eax
jmp 0x140467246
movq xmm0, qword [0x1407675c0]
paddb xmm0, xmmword [0x14060e8b0]
movq qword [0x1407675c0], xmm0
add byte [0x1407675c8], 0x59
mov al, 0x8a
xchg byte [0x1407675c9], al
movzx eax, byte [0x1407675e2]
cmp al, 0x45
je 0x1404670de
mov cl, 0x6c
nop dword [rax]
mov al, 0xbc
lock cmpxchg byte [0x1407675e2], cl
je 0x140467072
cmp al, 0x45
jne 0x140467060
jmp 0x1404670de
mov eax, 0xb
lea rcx, [0x1407675d0]
lea rdx, [0x14060eac0]
nop word cs:[rax + rax]
mov r8d, eax
not r8d
lea r9d, [rax - 1]
and r9d, 0xe
xor r9, 0xf
movzx r10d, byte [rax + rcx - 0xb]
movzx r11d, byte [rax + rcx - 0xa]
xor r10b, byte [r9 + rdx]
xor r10b, 0xe7
mov byte [rax + rcx - 0xb], r10b
and r8d, 0xe
xor r11b, byte [r8 + rdx]
xor r11b, 0xe7
mov byte [rax + rcx - 0xa], r11b
add rax, 2
cmp rax, 0x1d
jne 0x140467090
mov al, 0x45
xchg byte [0x1407675e2], al
lea rdx, [0x1407675c0]
lea r8, [0x1407675d0]
mov ecx, 0x46ccbfea
call fcn.140466eb0
mov qword [0x140792658], rax
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp qword [0x140792658]
movdqa xmm0, xmmword [0x1407675f0]
paddb xmm0, xmmword [0x14060e8c0]
movd dword [0x1407675f0], xmm0
add byte [0x1407675f4], 0xb3
add byte [0x1407675f5], 0x6e
add byte [0x1407675f6], 0x5b
mov al, 0x4f
xchg byte [0x1407675f7], al
mov rsi, r9
mov rdi, r8
movzx eax, byte [0x14076760f]
cmp al, 0x14
je 0x140467213
mov cl, 0x26
nop dword [rax]
mov al, 0xaa
lock cmpxchg byte [0x14076760f], cl
je 0x140467175
cmp al, 0x14
jne 0x140467160
jmp 0x140467213
mov ecx, 0x7efdde5c
mov r8d, 0x7efdde5b
xor r10d, r10d
movabs r11, 0x8888888888888889
lea rbx, [0x14060ead0]
lea r14, [0x140767600]
nop dword [rax + rax]
mov rax, rcx
mul r11
mov r9, rdx
mov rax, r8
mul r11
shr rdx, 3
mov rax, rdx
shl rax, 4
sub rdx, rax
lea rax, [rbx + rdx]
add rax, 0x7efdde59
movzx eax, byte [r10 + rax + 2]
xor al, 0x73
add byte [r10 + r14], al
cmp r10, 0xe
je 0x14046720b
shr r9, 3
mov rax, r9
shl rax, 4
sub r9, rax
lea rax, [rbx + r9]
add rax, 0x7efdde5c
movzx eax, byte [rax + r10]
xor al, 0x73
add byte [r10 + r14 + 1], al
add r10, 2
add rcx, 2
add r8, 2
jmp 0x1404671a0
mov al, 0x14
xchg byte [0x14076760f], al
lea rdx, [0x1407675f0]
lea r8, [0x140767600]
mov ecx, 0x46ccbfea
call fcn.140466eb0
mov qword [0x140792660], rax
mov r8, rdi
mov r9, rsi
mov rcx, r9
mov edx, r8d
call qword [0x140792660]
mov eax, eax
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret