Function at 0x140056e20
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x190
mov rax, qword [0x14010b010]
xor rax, rsp
mov qword [rsp + 0x180], rax
mov r12, r8
mov r13, rdx
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], r8
mov byte [rsp + 0x60], 0
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xa8]
xor edx, edx
xor ecx, ecx
lea r8d, [rdx + 1]
call qword [sym.imp.WTSAPI32.dll_WTSEnumerateSessionsW]
lea r14, str.C:Userspaul1_leeDesktopAsusAppServiceAsusAppServiceAsusAppServiceProcessHelper.cpp
test eax, eax
jne 0x140056ee0
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x140056eb8
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x140056ebb
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.WTSEnumerateSessions:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x1b
mov rcx, rbx
call fcn.140015b90
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x68], rax
xor r15d, r15d
mov ecx, r15d
mov r9d, dword [rsp + 0xe8]
mov r8, qword [rsp + 0xa8]
test r9d, r9d
je 0x140057577
nop dword [rax]
mov edx, ecx
lea rax, [rdx + rdx*2]
cmp dword [r8 + rax*8 + 0x10], r15d
je 0x140056f29
inc ecx
cmp ecx, r9d
jb 0x140056f10
jmp 0x140057577
lea rax, [rdx + rdx*2]
lea rbx, [rax*8]
cmp dword [rbx + r8], r15d
je 0x140057577
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
mov rcx, r14
test rax, rax
je 0x140056f62
mov edx, 0x5c
call fcn.14008d398
lea rcx, [rax + 1]
mov rax, qword [rsp + 0xa8]
mov edx, dword [rbx + rax]
mov dword [rsp + 0x20], edx
lea r9, str.Session:__d
lea r8, str.CreateUserSessionProcess
mov edx, 0x28
call fcn.140015b90
mov qword [rsp + 0xb0], r15
lea rdx, [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
mov ecx, dword [rbx + rax]
call qword [sym.imp.WTSAPI32.dll_WTSQueryUserToken]
test eax, eax
jne 0x140056ff9
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x140056fd1
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x140056fd4
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.WTSQueryUserToken:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x2d
mov rcx, rbx
call fcn.140015b90
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 1
xor r8d, r8d
mov edx, 0xf01ff
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
test eax, eax
jne 0x140057086
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x14005705e
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x140057061
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.DuplicateTokenEx:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x3d
mov rcx, rbx
call fcn.140015b90
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x140057114
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x140057114
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x1400570ec
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x1400570ef
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.GetTokenInformation_TokenUser__1:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x46
mov rcx, rbx
call fcn.140015b90
mov ecx, dword [rsp + 0x90]
call fcn.140061318
mov rsi, rax
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x90]
mov r8, rsi
mov edx, 1
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x1400571a5
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x14005717d
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x140057180
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.GetTokenInformation_TokenUser__2:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x4c
mov rcx, rbx
call fcn.140015b90
mov dword [rsp + 0x98], r15d
mov dword [rsp + 0x94], r15d
lea rax, [rsp + 0xec]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x94]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x98]
xor r8d, r8d
mov rdx, qword [rsi]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_LookupAccountSidW]
test eax, eax
jne 0x140057246
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x140057246
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x14005721e
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea rbx, [rax + 1]
jmp 0x140057221
mov rbx, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.LookupAccountSid_1:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x57
mov rcx, rbx
call fcn.140015b90
mov ecx, dword [rsp + 0x98]
mov eax, 2
mul rcx
mov rdi, 0xffffffffffffffff
cmovo rax, rdi
mov rcx, rax
call fcn.140061318
mov rbx, rax
mov qword [rsp + 0xf8], rax
mov ecx, dword [rsp + 0x94]
mov eax, 2
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.140061318
mov rdi, rax
mov qword [rsp + 0x100], rax
lea rax, [rsp + 0xec]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x94]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x98]
mov r8, rbx
mov rdx, qword [rsi]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_LookupAccountSidW]
test eax, eax
jne 0x14005731d
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x1400572f5
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea r15, [rax + 1]
jmp 0x1400572f8
mov r15, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.LookupAccountSid_2:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x5e
mov rcx, r15
call fcn.140015b90
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x140057341
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
inc rax
jmp 0x140057344
mov rax, r14
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
lea r9, str.User:__s__Domain:__s
lea r8, str.CreateUserSessionProcess
mov edx, 0x61
mov rcx, rax
call fcn.140015b90
xor r8d, r8d
mov rdx, qword [rsp + 0xa0]
lea rcx, [rsp + 0xb8]
call qword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
test eax, eax
jne 0x1400573d1
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x1400573a9
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea r15, [rax + 1]
jmp 0x1400573ac
mov r15, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.CreateEnvironmentBlock:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x6e
mov rcx, r15
call fcn.140015b90
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x110], 0x68
xorps xmm0, xmm0
movups xmmword [rsp + 0x118], xmm0
movups xmmword [rsp + 0x128], xmm0
movups xmmword [rsp + 0x138], xmm0
movups xmmword [rsp + 0x148], xmm0
movups xmmword [rsp + 0x158], xmm0
movups xmmword [rsp + 0x168], xmm0
xor eax, eax
movups xmmword [rsp + 0xd0], xmm0
mov qword [rsp + 0xe0], rax
mov r8, r12
cmp qword [r12 + 0x18], 8
jb 0x140057440
mov r8, qword [r12]
mov rdx, r13
cmp qword [r13 + 0x18], 8
jb 0x14005744e
mov rdx, qword [r13]
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x48], rax
xor r15d, r15d
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x400
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
jne 0x1400574f3
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x1400574c6
lea edx, [r15 + 0x5c]
mov rcx, r14
call fcn.14008d398
lea r15, [rax + 1]
jmp 0x1400574c9
mov r15, r14
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, str.CreateProcessAsUser:_error_d
lea r8, str.CreateUserSessionProcess
mov edx, 0x78
mov rcx, r15
call fcn.140015b90
xor r15d, r15d
jmp 0x1400574f8
mov byte [rsp + 0x60], 1
mov edx, 0xffffffff
mov rcx, qword [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
nop
mov rcx, rdi
call fcn.140061310
nop
mov rcx, rbx
call fcn.140061310
nop
mov rcx, rsi
call fcn.140061310
nop
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8, qword [rsp + 0xa8]
mov rcx, r8
call qword [sym.imp.WTSAPI32.dll_WTSFreeMemory]
nop
jmp 0x14005759d
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
test rax, rax
je 0x1400575c0
mov edx, 0x5c
mov rcx, r14
call fcn.14008d398
lea r14, [rax + 1]
lea rcx, [0x1400dbe28]
lea rax, [0x1400dbe38]
movzx ebx, byte [rsp + 0x60]
test bl, bl
cmovne rax, rcx
mov qword [rsp + 0x20], rax
lea r9, str.End__res____s
lea r8, str.CreateUserSessionProcess
mov edx, 0x8b
mov rcx, r14
call fcn.140015b90
nop
mov rdx, qword [r13 + 0x18]
cmp rdx, 8
jb 0x14005763a
mov rcx, qword [r13]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140057635
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400576d1
mov rcx, r8
call fcn.140061310
mov qword [r13 + 0x10], r15
mov qword [r13 + 0x18], 7
mov word [r13], r15w
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x140057688
lea rdx, [rdx*2 + 2]
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x140057683
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400576cb
mov rcx, r8
call fcn.140061310
mov qword [r12 + 0x10], r15
mov qword [r12 + 0x18], 7
mov word [r12], r15w
movzx eax, bl
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
call fcn.1400612f0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.140091d94
nop
call fcn.140091d94
nop
int3