Function at 0x180005d40
Capabilities:
Contain obfuscated stackstrings
Create thread
Encode data using xor
Get common file path

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x4b0]
sub rsp, 0x5b0
mov esi, edx
mov r15, rcx
xor edx, edx
lea rcx, [rbp + 0xa0]
mov r8d, 0x200
call sub.ntdll.dll_memset
mov edx, 0x64
lea rcx, [rbp + 0xa0]
call qword [sym.imp.KERNEL32.DLL_GetSystemDirectoryW]
test eax, eax
jne 0x180005d90
call qword [sym.imp.KERNEL32.DLL_GetLastError]
xor edx, edx
mov dword [rsp + 0x30], 0x3a5e3a66
mov r8d, 0xea
mov dword [rsp + 0x34], 0x3a563a56
lea rcx, [rbp - 0x50]
mov dword [rsp + 0x38], 0x3a553a52
mov dword [rsp + 0x3c], 0x3a4e3a49
mov dword [rsp + 0x40], 0x3a5f3a14
mov dword [rsp + 0x44], 0x3a5f3a42
mov dword [rsp + 0x48], 0x3a153a1a
mov dword [rsp + 0x4c], 0x3a483a6a
mov dword [rsp + 0x50], 0x3a593a55
mov dword [rsp + 0x54], 0x3a493a5f
mov dword [rsp + 0x58], 0x3a533a49
mov dword [rsp + 0x5c], 0x3a003a5e
mov dword [rsp + 0x60], 0x3a7c3a41
mov dword [rsp + 0x64], 0x3a083a02
mov dword [rsp + 0x68], 0x3a0e3a02
mov dword [rsp + 0x6c], 0x3a093a08
mov dword [rsp + 0x70], 0x3a173a09
mov dword [rsp + 0x74], 0x3a023a0e
mov dword [rsp + 0x78], 0x3a0e3a7c
mov dword [rsp + 0x7c], 0x3a0e3a17
mov dword [rbp - 0x80], 0x3a023a0c
mov dword [rbp - 0x7c], 0x3a173a0a
mov dword [rbp - 0x78], 0x3a7e3a7b
mov dword [rbp - 0x74], 0x3a7e3a7e
mov dword [rbp - 0x70], 0x3a7c3a17
mov dword [rbp - 0x6c], 0x3a083a02
mov dword [rbp - 0x68], 0x3a0e3a02
mov dword [rbp - 0x64], 0x3a093a08
mov dword [rbp - 0x60], 0x3a473a09
mov byte [rbp - 0x5c], 0x3a
call sub.ntdll.dll_memset
xor eax, eax
lea r8d, [rax + 0x75]
xor byte [rsp + rax + 0x30], 0x3a
inc rax
cmp rax, r8
jl 0x180005e8a
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x50]
call qword [sym.imp.ntdll.dll_memcpy]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xa0]
call qword [sym.imp.KERNEL32.DLL_lstrcatW]
mov rcx, qword [0x180060a28]
mov rdx, rsi
call fcn.18001074c
test rax, rax
jne 0x180005ff6
or qword [rbp + 0x4e0], 0xffffffffffffffff
call fcn.18000be08
mov r8d, dword [0x1800609d8]
lea rcx, [rbp + 0xa0]
mov rdx, qword [0x1800609d0]
mov rdi, rax
lea rax, [rbp + 0x4e0]
mov r9d, esi
mov qword [rsp + 0x20], rax
call qword [rdi + 0x18]
mov r8, qword [rbp + 0x4e0]
cmp r8, 0xffffffffffffffff
je 0x180005fee
mov rcx, qword [0x180060a28]
mov rdx, rsi
call fcn.1800106c0
mov r9, qword [rbp + 0x4e0]
lea rax, [rbp + 0x4e8]
and dword [rbp + 0x4e8], 0
lea r8, [0x180006010]
mov qword [rsp + 0x28], rax
xor edx, edx
and dword [rsp + 0x20], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_CreateThread]
test rax, rax
je 0x180005f70
mov edx, dword [rbp + 0x4e8]
mov r8, rax
mov rcx, qword [0x1800609c8]
call fcn.1800106c0
call fcn.1800116e8
xor edx, edx
lea rcx, [rbp + 0x2a0]
mov r8d, 0x208
mov rbx, rax
call sub.ntdll.dll_memset
call qword [sym.imp.KERNEL32.DLL_GetCurrentProcessId]
mov r9d, esi
lea rdx, str..Pipe_d_pipe_d
mov r8d, eax
lea rcx, [rbp + 0x2a0]
call qword [sym.imp.USER32.dll_wsprintfW]
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call qword [rbx + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [0x180060a08]
mov r8, rbx
mov rdx, rsi
call fcn.1800106c0
and qword [rsp + 0x28], 0
mov r9, r15
and dword [rsp + 0x20], 0
xor edx, edx
mov r8, qword [r15 + 0x30]
xor ecx, ecx
mov dword [r15 + 0xb3c], esi
call qword [sym.imp.KERNEL32.DLL_CreateThread]
mov rcx, rdi
call fcn.18000bf7c
mov rbx, qword [rsp + 0x5f0]
xor eax, eax
add rsp, 0x5b0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret