Function at 0x140001320
Capabilities:
Encode data using xor
Enumerate processes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov rax, qword [0x140026040]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov rbx, r8
mov rdi, rdx
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x70], rbx
mov dword [rbp - 0x80], 1
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
xor r14d, r14d
mov qword [rdx], r14
mov qword [rdx + 8], r14
mov qword [rdx + 0x10], r14
mov dword [rbp - 0x80], 1
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rsi, rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x1400015a4
mov dword [rbp - 0x60], 0x130
lea rdx, [rbp - 0x60]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
jne 0x140001530
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call qword [sym.imp.ntdll.dll_RtlGetLastNtStatus]
mov edx, eax
movdqa xmm0, xmmword [0x140022a20]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm1, xmmword [0x140022950]
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm0, xmmword [0x1400229f0]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x140022970]
movdqa xmmword [rsp + 0x50], xmm1
movdqa xmm0, xmmword [str.VDCrEEXE_r]
movdqa xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x70], 0x3d4f
xor eax, eax
mov byte [rsp + 0x72], al
mov ecx, r14d
nop dword [rax + rax]
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x21], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x22], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x23], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x24], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x25], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x26], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x27], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x28], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x29], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2a], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2b], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2c], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2d], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2e], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2f], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x30], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x31], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x32], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x33], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x34], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x35], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x36], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x37], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x38], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x39], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3a], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3b], al
add rcx, 0x1b
cmp rcx, 0x51
jb 0x140001420
mov byte [rsp + 0x72], 0
jmp 0x1400017bf
lea rcx, [rbp - 0x34]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140001540
mov r8, qword [rbx + 0x10]
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14000155a
mov rcx, qword [rbx]
cmp r8, rax
jne 0x14000158e
lea rdx, [rbp - 0x34]
call fcn.140018bc0
test eax, eax
jne 0x14000158e
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x140001582
mov eax, dword [rbp - 0x58]
mov dword [rdx], eax
add qword [rdi + 8], 4
jmp 0x14000158e
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140002eb0
lea rdx, [rbp - 0x60]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x140001530
jmp 0x1400017cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call qword [sym.imp.ntdll.dll_RtlGetLastNtStatus]
mov edx, eax
movdqa xmm0, xmmword [0x1400228e0]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm1, xmmword [0x140022910]
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm0, xmmword [0x140022880]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x140022a50]
movdqa xmmword [rsp + 0x50], xmm1
movdqa xmm0, xmmword [0x140022940]
movdqa xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x70], 0x3d75657f
mov dword [rsp + 0x74], 0x3d7d7560
mov word [rsp + 0x78], 0x4f
mov rcx, r14
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x21], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x22], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x23], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x24], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x25], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x26], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x27], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x28], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x29], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2a], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2b], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2c], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2d], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2e], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x2f], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x30], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x31], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x32], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x33], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x34], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x35], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x36], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x37], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x38], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x39], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3a], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3b], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3c], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3d], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3e], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x3f], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x40], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x41], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x42], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x43], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x44], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x45], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x46], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x47], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x48], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x49], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x4a], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x4b], al
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x4c], al
add rcx, 0x2c
cmp rcx, 0x58
jb 0x140001620
mov byte [rsp + 0x79], 0
mov r8d, esi
lea rcx, [rsp + 0x21]
call fcn.140001010
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x140001803
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x1400017fe
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000183c
mov rcx, r8
call fcn.1400032b0
mov byte [rbx], 0
mov qword [rbx + 0x18], 0xf
mov qword [rbx + 0x10], r14
mov rax, rdi
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.140003170
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.14000a7a0
int3