Function at 0x14000eb50
Capabilities:
Acquire debug privileges
Create process on windows
Enumerate gui resources
Get common file path
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r13
push r14
mov eax, 0x28b0
call fcn.140014430
sub rsp, rax
xor r12d, r12d
lea rcx, str.comctl32.dll
mov rbp, r8
mov dword [rsp + 0x20], 8
mov dword [rsp + 0x24], 0xff
mov ebx, r12d
mov esi, r12d
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea r14d, [r12 + 1]
cmp rax, r12
mov rdi, rax
je 0x14000ebdb
lea rdx, str.InitCommonControlsEx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp rax, r12
je 0x14000ebcd
lea rcx, [rsp + 0x20]
mov esi, r14d
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp esi, r12d
jne 0x14000ebe4
call qword [sym.imp.COMCTL32.dll_InitCommonControls]
mov ebx, r14d
cmp ebx, r12d
jne 0x14000ec0d
lea r8, str.Error
lea rdx, str.Error:_Cannot_load_the_common_control_classes.
mov r9d, 0x30
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, r14d
jmp 0x14000f616
cmp qword [0x140022d20], r12
jne 0x14000ec45
lea rcx, str.shell32.dll
call fcn.14000a794
cmp rax, r12
mov qword [0x140022d20], rax
je 0x14000ec45
lea rdx, str.SHGetSpecialFolderPathW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140022d18], rax
mov ecx, 0x8001
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
xor ecx, ecx
mov dword [0x1400225b0], 0x11223344
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [0x140012208]
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnumResourceTypesW]
lea rcx, [rsp + 0x30]
mov rdx, rbp
mov dword [rsp + 0x50], 0x400
mov dword [rsp + 0x54], 0x100
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x34], r12d
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x58], r12d
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x6c], 0x20
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x70], r12d
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0x78], r12d
call fcn.14000aabc
lea rcx, str.SeDebugPrivilege
call fcn.14000fed8
or r13d, 0xffffffff
lea rdx, str._RunAsService
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jne 0x14000ed42
lea rcx, str.SeTcbPrivilege
call fcn.14000fed8
lea r11, str.NirSoftAdvancedRunService
lea rax, [0x140012550]
lea rcx, [rsp + 0x88]
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], r12
mov qword [rsp + 0xa0], r12
call qword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherW]
jmp 0x14000f5df
lea rdx, str._SpecialRun
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jne 0x14000ee61
cmp dword [rsp + 0x78], 3
jne 0x14000ee61
lea rcx, [rsp + 0x30]
mov edx, r14d
mov qword [rsp + 0xf98], r12
mov qword [rsp + 0xf88], r12
mov qword [rsp + 0xf70], r12
mov qword [rsp + 0xf78], r12
mov qword [rsp + 0xf80], r12
mov qword [rsp + 0xf90], r12
mov qword [rsp + 0xfa0], r12
mov qword [rsp + 0xfa8], r12
mov qword [rsp + 0xfb0], r12
mov qword [rsp + 0x20], r12
call fcn.14000acf0
lea r8, [rsp + 0x20]
lea rdx, str._I64x
mov rcx, rax
call sub.msvcrt.dll_swscanf
lea rcx, [rsp + 0x30]
mov edx, 2
call fcn.14000acf0
mov rcx, rax
call sub.msvcrt.dll__wtoi
mov rdx, qword [rsp + 0x20]
lea rcx, [rsp + 0x770]
mov r8d, eax
xor r9d, r9d
call fcn.14000203c
mov rcx, qword [rsp + 0xfa0]
cmp rcx, r12
mov ebx, eax
je 0x14000ee24
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0xfa0], r12
mov rcx, qword [rsp + 0xf98]
cmp rcx, r12
je 0x14000ee3f
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0xf98], r12
lea rcx, [rsp + 0x30]
call fcn.14000a81c
mov rcx, qword [rsp + 0x60]
cmp rcx, r12
je 0x14000f5fb
call sub.msvcrt.dll_free
jmp 0x14000f5fb
lea rdx, str._SpecialRunSystem
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jne 0x14000ef7c
cmp dword [rsp + 0x78], 3
jne 0x14000ef7c
lea rcx, str.SeTcbPrivilege
call fcn.14000fed8
lea rcx, [rsp + 0x30]
mov edx, r14d
mov qword [rsp + 0x2038], r12
mov qword [rsp + 0x2028], r12
mov qword [rsp + 0x2010], r12
mov qword [rsp + 0x2018], r12
mov qword [rsp + 0x2020], r12
mov qword [rsp + 0x2030], r12
mov qword [rsp + 0x2040], r12
mov qword [rsp + 0x2048], r12
mov qword [rsp + 0x2050], r12
mov qword [rsp + 0x80], r12
call fcn.14000acf0
lea r8, [rsp + 0x80]
lea rdx, str._I64x
mov rcx, rax
call sub.msvcrt.dll_swscanf
lea rcx, [rsp + 0x30]
mov edx, 2
call fcn.14000acf0
mov rcx, rax
call sub.msvcrt.dll__wtoi
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x1810]
mov r8d, eax
mov r9d, r14d
call fcn.14000203c
mov rcx, qword [rsp + 0x2040]
cmp rcx, r12
mov ebx, eax
je 0x14000ef58
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x2040], r12
mov rcx, qword [rsp + 0x2038]
cmp rcx, r12
je 0x14000ee3f
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x2038], r12
jmp 0x14000ee3f
lea rdx, str._CallShellExecute
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jne 0x14000f066
cmp dword [rsp + 0x78], 5
jne 0x14000f066
lea rcx, [rsp + 0x30]
mov edx, r14d
call fcn.14000acf0
lea rcx, [rsp + 0x30]
mov edx, 2
mov rbp, rax
call fcn.14000acf0
lea rcx, [rsp + 0x30]
mov edx, 3
mov rsi, rax
call fcn.14000acf0
lea rcx, [rsp + 0x30]
mov edx, 4
mov rbx, rax
call fcn.14000acf0
mov rcx, rax
call sub.msvcrt.dll__wtoi
xor edx, edx
lea rcx, [rsp + 0xd4]
lea r8d, [rdx + 0x6c]
mov edi, eax
call sub.msvcrt.dll_memset
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0xf8], rbx
mov dword [rsp + 0xd0], 0x70
mov qword [rsp + 0xe8], rsi
cmp word [rbp], r12w
cmovne rcx, rbp
mov dword [rsp + 0x100], edi
mov ebx, r12d
mov qword [rsp + 0xe0], rcx
lea rcx, [rsp + 0xd0]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
cmp eax, r12d
jne 0x14000ee3f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
jmp 0x14000ee3f
lea rdx, str._Run
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
lea rcx, [rsp + 0x30]
cmp eax, r12d
jl 0x14000f2ba
lea edx, [rax + 1]
call fcn.14000acf0
mov rbx, rax
cmp word [rax], r12w
je 0x14000f1ab
mov esi, 0x208
lea rcx, [rsp + 0x142]
xor edx, edx
mov r8, rsi
mov word [rsp + 0x140], r12w
call sub.msvcrt.dll_memset
mov edi, 0x104
lea rdx, [rsp + 0x140]
mov r8d, edi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea rcx, [rsp + 0x140]
mov dx, 0x5c
call sub.msvcrt.dll_wcschr
cmp rax, r12
jne 0x14000f19a
lea rcx, [rsp + 0x352]
mov r8, rsi
xor edx, edx
mov word [rsp + 0x350], r12w
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x562]
mov r8, rsi
xor edx, edx
mov word [rsp + 0x560], r12w
call sub.msvcrt.dll_memset
lea rdx, [rsp + 0x350]
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea rcx, [rsp + 0x350]
call sub.msvcrt.dll_wcslen
lea rcx, [rsp + 0x140]
mov rbx, rax
call sub.msvcrt.dll_wcslen
lea rcx, [rbx + rax + 1]
cmp rcx, rdi
jae 0x14000f17c
lea r8, [rsp + 0x560]
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x350]
call fcn.140009e48
jmp 0x14000f185
mov word [rsp + 0x560], r12w
lea rdx, [rsp + 0x560]
lea rcx, [rsp + 0x140]
call fcn.140014030
lea rdx, [rsp + 0x140]
xor ecx, ecx
call fcn.1400055e8
jmp 0x14000f1cb
lea rdx, str._Clear
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jge 0x14000f1cb
xor ecx, ecx
call fcn.140005550
mov rcx, qword [0x1400225b8]
lea rax, [0x1400163c0]
lea rdx, [rsp + 0x88]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x30]
mov r8d, r14d
add rcx, 0x10
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0x90], r12d
mov qword [rsp + 0x98], rax
call fcn.140001b68
mov rdx, qword [0x1400225b8]
mov dword [rdx + 0x4634], r14d
lea rcx, [rsp + 0xfc0]
add rdx, 0x10
mov qword [rsp + 0x17e8], r12
mov qword [rsp + 0x17d8], r12
mov qword [rsp + 0x17c0], r12
mov qword [rsp + 0x17c8], r12
mov qword [rsp + 0x17d0], r12
mov qword [rsp + 0x17e0], r12
mov qword [rsp + 0x17f0], r12
mov qword [rsp + 0x17f8], r12
mov qword [rsp + 0x1800], r12
call fcn.140002650
mov rcx, qword [rsp + 0x17f0]
cmp rcx, r12
mov ebx, eax
je 0x14000f296
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x17f0], r12
mov rcx, qword [rsp + 0x17e8]
cmp rcx, r12
je 0x14000ee3f
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x17e8], r12
jmp 0x14000ee3f
lea rdx, str._cfg
mov r8d, r13d
call fcn.14000ad1c
mov esi, 0x208
mov edi, 0x104
cmp eax, r12d
jl 0x14000f3d8
mov r9, qword [0x1400225b8]
lea edx, [rax + 1]
lea rcx, [rsp + 0x30]
call fcn.14000acf0
lea rdx, [r9 + 0x5928]
mov r8d, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
mov rcx, qword [0x1400225b8]
mov dx, 0x5c
add rcx, 0x5928
call sub.msvcrt.dll_wcschr
cmp rax, r12
jne 0x14000f3d8
lea rcx, [rsp + 0x562]
mov r8, rsi
xor edx, edx
mov word [rsp + 0x560], r12w
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x352]
mov r8, rsi
xor edx, edx
mov word [rsp + 0x350], r12w
call sub.msvcrt.dll_memset
lea rdx, [rsp + 0x560]
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov rbp, qword [0x1400225b8]
lea rcx, [rbp + 0x5928]
call sub.msvcrt.dll_wcslen
lea rcx, [rsp + 0x560]
mov rbx, rax
call sub.msvcrt.dll_wcslen
lea rcx, [rbx + rax + 1]
cmp rcx, rdi
jae 0x14000f3b4
lea r8, [rsp + 0x350]
lea rdx, [rbp + 0x5928]
lea rcx, [rsp + 0x560]
call fcn.140009e48
jmp 0x14000f3bd
mov word [rsp + 0x350], r12w
mov rcx, qword [0x1400225b8]
lea rdx, [rsp + 0x350]
add rcx, 0x5928
call fcn.140014030
lea rdx, str._Clear
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jge 0x14000f3f8
xor ecx, ecx
call fcn.140005550
mov rcx, qword [0x1400225b8]
lea rax, [0x1400163c0]
lea rdx, [rsp + 0xa8]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x30]
mov r8d, r14d
add rcx, 0x10
mov dword [rsp + 0xc0], r12d
mov dword [rsp + 0xb0], r12d
mov qword [rsp + 0xb8], rax
call fcn.140001b68
mov rdx, qword [0x1400225b8]
cmp dword [rdx + 0x5b34], r12d
je 0x14000f4f4
mov dword [rdx + 0x4634], r14d
lea rcx, [rsp + 0x2060]
add rdx, 0x10
mov qword [rsp + 0x2888], r12
mov qword [rsp + 0x2878], r12
mov qword [rsp + 0x2860], r12
mov qword [rsp + 0x2868], r12
mov qword [rsp + 0x2870], r12
mov qword [rsp + 0x2880], r12
mov qword [rsp + 0x2890], r12
mov qword [rsp + 0x2898], r12
mov qword [rsp + 0x28a0], r12
call fcn.140002650
mov rcx, qword [rsp + 0x2890]
cmp rcx, r12
mov ebx, eax
je 0x14000f4d0
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x2890], r12
mov rcx, qword [rsp + 0x2888]
cmp rcx, r12
je 0x14000ee3f
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x2888], r12
jmp 0x14000ee3f
lea rdx, str._savelangfile
lea rcx, [rsp + 0x30]
mov r8d, r13d
call fcn.14000ad1c
cmp eax, r12d
jl 0x14000f583
lea rcx, [rsp + 0x142]
mov r8, rsi
xor edx, edx
mov word [rsp + 0x140], r12w
call sub.msvcrt.dll_memset
lea rdx, [rsp + 0x140]
mov r8d, edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rcx, [rsp + 0x140]
mov dx, 0x2e
call sub.msvcrt.dll_wcsrchr
cmp rax, r12
je 0x14000f555
mov word [rax], r12w
lea rdx, str._lng.ini
lea rcx, [rsp + 0x140]
call sub.msvcrt.dll_wcscat
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [rsp + 0x140]
mov rcx, rax
call fcn.14000bbf0
jmp 0x14000f5df
call fcn.14000badc
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
mov rdx, qword [0x1400225b8]
lea rcx, [0x14001bb98]
add rdx, 0x10
call fcn.14000f638
mov rax, qword [0x14001a300]
lea rcx, [0x14001a300]
xor edx, edx
call qword [rax + InitCommonControls]
mov rcx, qword [0x1400225b8]
lea rdx, [0x14001bb98]
add rcx, 0x10
call fcn.14000f638
mov ecx, r14d
call fcn.140005550
call qword [sym.imp.ole32.dll_CoUninitialize]
lea rcx, [rsp + 0x30]
call fcn.14000a81c
mov rcx, qword [rsp + 0x60]
cmp rcx, r12
je 0x14000f5f8
call sub.msvcrt.dll_free
mov ebx, r12d
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x70], r12d
mov dword [rsp + 0x68], r12d
call fcn.14000a81c
mov eax, ebx
lea r11, [rsp + 0x28b0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
ret