Function at 0x575fd0
Capabilities:
Create process on windows
Impersonate user
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e1609
mov eax, dword fs:[0]
push eax
sub esp, 0x300
mov eax, dword [0x676580]
xor eax, ebp
mov dword [ebp - 0x6c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x2a8]
call fcn.004481e0
mov dword [ebp - 4], 0
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x28c], 0
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x1c], 0
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x64], 0
push 0x40
push 0
lea ecx, [ebp - 0x60]
push ecx
call fcn.00524800
add esp, 0xc
mov dword [ebp - 0x64], 0x44
mov dword [ebp - 0x38], 1
mov word [ebp - 0x34], 1
mov edx, dword [ebp + 8]
movzx eax, word [edx]
xor ecx, ecx
cmp eax, 0x22
setne cl
mov dword [ebp - 0x284], ecx
cmp dword [ebp - 0x284], 0
je 0x5760b3
push 0x616988
lea ecx, [ebp - 0x2a8]
call fcn.004481c0
mov edx, dword [ebp + 8]
push edx
lea ecx, [ebp - 0x2a8]
call fcn.00446920
cmp dword [ebp - 0x284], 0
je 0x5760db
push 0x61698c
lea ecx, [ebp - 0x2a8]
call fcn.00446920
cmp dword [ebp + 0xc], 0
je 0x576100
push 0x616990
lea ecx, [ebp - 0x2a8]
call fcn.00446920
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00446920
lea ecx, [ebp - 0x278]
push ecx
push 0xf01ff
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
jne 0x57612c
mov dword [ebp - 0x27c], 0xfffffff9
jmp 0x576690
mov dword [ebp - 0x68], 0
lea edx, [ebp - 0x68]
push edx
lea eax, [ebp - 0x288]
push eax
push 1
mov ecx, dword [ebp - 0x278]
push ecx
call fcn.0057b220
add esp, 0x10
test eax, eax
jne 0x576162
mov dword [ebp - 0x27c], 0xfffffff8
jmp 0x576690
mov edx, dword [ebp - 0x288]
mov eax, dword [edx]
push eax
call fcn.0057b390
add esp, 4
test eax, eax
je 0x57636c
lea ecx, [ebp - 0x274]
push ecx
call fcn.005c66d0
add esp, 4
test eax, eax
jne 0x57619d
mov dword [ebp - 0x27c], 0xfffffffe
jmp 0x576690
mov edx, dword [ebp - 0x274]
push edx
lea eax, [ebp - 0x28c]
push eax
call fcn.005c6420
add esp, 8
test eax, eax
jne 0x5761c6
mov dword [ebp - 0x27c], 0xfffffffd
jmp 0x576690
mov dword [ebp - 0x2d8], 0
mov ecx, dword [ebp - 0x28c]
push ecx
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x2d8], eax
cmp dword [ebp - 0x2d8], 0
jne 0x576202
mov dword [ebp - 0x27c], 0xfffffff1
jmp 0x576690
lea edx, [ebp - 0x270]
push edx
push 0xf01ff
mov eax, dword [ebp - 0x2d8]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov ecx, dword [ebp - 0x2d8]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x2d0], 0
xor edx, edx
mov dword [ebp - 0x2cc], edx
mov dword [ebp - 0x2c8], edx
mov dword [ebp - 0x2c4], edx
mov dword [ebp - 0x2c0], edx
mov dword [ebp - 0x2bc], edx
mov dword [ebp - 0x2b8], edx
mov dword [ebp - 0x2b4], edx
mov dword [ebp - 0x2d0], 0x20
lea eax, [ebp - 0x2d0]
push eax
mov ecx, dword [ebp - 0x270]
push ecx
call dword [sym.imp.USERENV.dll_LoadUserProfileW]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0
jne 0x576296
push 0x616994
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [ebp - 0x2b0], 0
push 0
mov edx, dword [ebp - 0x270]
push edx
lea eax, [ebp - 0x2b0]
push eax
call dword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0
jne 0x5762d0
push str.cant_create_environment_block_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x64]
push edx
push 0
mov eax, dword [ebp - 0x2b0]
push eax
push 0x400
push 0
push 0
push 0
lea ecx, [ebp - 0x2a8]
call fcn.00447330
push eax
push 0
mov ecx, dword [ebp - 0x270]
push ecx
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0
je 0x576334
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x27c], 0
cmp dword [ebp - 0x2b0], 0
je 0x57634a
mov ecx, dword [ebp - 0x2b0]
push ecx
call dword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
cmp dword [ebp - 0x2b4], 0
je 0x576367
mov edx, dword [ebp - 0x2b4]
push edx
mov eax, dword [ebp - 0x270]
push eax
call dword [sym.imp.USERENV.dll_UnloadUserProfile]
jmp 0x576690
mov dword [ebp - 0x2e4], 0
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2e0], 0
lea ecx, [ebp - 0x2e0]
push ecx
lea edx, [ebp - 0x2dc]
push edx
lea eax, [ebp - 0x2e4]
push eax
call fcn.0057b3d0
add esp, 0xc
test eax, eax
je 0x576686
cmp dword [ebp - 0x2e4], 2
jne 0x576623
cmp dword [ebp - 0x2dc], 6
jb 0x576623
push 1
push str.SeIncreaseQuotaPrivilege
mov ecx, dword [ebp - 0x278]
push ecx
call fcn.0057b300
add esp, 0xc
call dword [sym.imp.USER32.dll_GetShellWindow]
mov dword [ebp - 0x2f0], eax
cmp dword [ebp - 0x2f0], 0
jne 0x576403
mov dword [ebp - 0x27c], 0xfffffff6
jmp 0x576690
mov dword [ebp - 0x2ec], 0
lea edx, [ebp - 0x2ec]
push edx
mov eax, dword [ebp - 0x2f0]
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
jne 0x576434
mov dword [ebp - 0x27c], 0xfffffff5
jmp 0x576690
mov ecx, dword [ebp - 0x2ec]
push ecx
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x2e8], eax
cmp dword [ebp - 0x2e8], 0
jne 0x576466
mov dword [ebp - 0x27c], 0xfffffff3
jmp 0x576690
mov dword [ebp - 0x2f4], 0
lea edx, [ebp - 0x2f4]
push edx
push 2
mov eax, dword [ebp - 0x2e8]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x57660a
mov dword [ebp - 0x2f8], 0x18b
lea ecx, [ebp - 0x270]
push ecx
push 1
push 2
push 0
push 0x18b
mov edx, dword [ebp - 0x2f4]
push edx
call dword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
test eax, eax
je 0x5765f1
push str.Advapi32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x2fc], eax
cmp dword [ebp - 0x2fc], 0
je 0x5765e5
mov dword [ebp - 0x300], 0
push str.CreateProcessWithTokenW
mov eax, dword [ebp - 0x2fc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x300], eax
cmp dword [ebp - 0x300], 0
je 0x5765cc
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x64]
push edx
push 0
push 0
push 0
lea ecx, [ebp - 0x2a8]
call fcn.00447330
push eax
push 0
push 0
mov eax, dword [ebp - 0x270]
push eax
call dword [ebp - 0x300]
mov dword [ebp - 0x304], eax
cmp dword [ebp - 0x304], 0
jne 0x576597
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x422
jne 0x576597
push 3
push str.seclogon
call fcn.00575ee0
add esp, 8
test eax, eax
je 0x576597
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x64]
push edx
push 0
push 0
push 0
lea ecx, [ebp - 0x2a8]
call fcn.00447330
push eax
push 0
push 0
mov eax, dword [ebp - 0x270]
push eax
call dword [ebp - 0x300]
mov dword [ebp - 0x304], eax
cmp dword [ebp - 0x304], 0
je 0x5765c0
mov ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x27c], 0
jmp 0x5765ca
mov dword [ebp - 0x27c], 0xfffffff0
jmp 0x5765d6
mov dword [ebp - 0x27c], 0xffffffef
mov eax, dword [ebp - 0x2fc]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x5765ef
mov dword [ebp - 0x27c], 0xffffffee
jmp 0x5765fb
mov dword [ebp - 0x27c], 0xffffffed
mov ecx, dword [ebp - 0x2f4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x576614
mov dword [ebp - 0x27c], 0xffffffec
mov edx, dword [ebp - 0x2e8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x576684
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2a8]
call fcn.00447330
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x308], 0
je 0x57667a
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x27c], 0
jmp 0x576684
mov dword [ebp - 0x27c], 0xffffffeb
jmp 0x576690
mov dword [ebp - 0x27c], 0xfffffff4
cmp dword [ebp - 0x278], 0
je 0x5766a6
mov ecx, dword [ebp - 0x278]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x270], 0
je 0x5766bc
mov edx, dword [ebp - 0x270]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x288], 0
je 0x5766d4
mov eax, dword [ebp - 0x288]
push eax
call fcn.0057b200
add esp, 4
mov word [ebp - 0x26c], 0
push 0x1fe
push 0
lea ecx, [ebp - 0x26a]
push ecx
call fcn.00524800
add esp, 0xc
mov edx, dword [ebp - 0x27c]
push edx
push str.from1ver0.3errcode_d
lea eax, [ebp - 0x26c]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea ecx, [ebp - 0x27d]
call fcn.00492f80
push str.duba_createprocess_by_svc
lea ecx, [ebp - 0x27d]
call fcn.00473d50
lea ecx, [ebp - 0x26c]
push ecx
lea edx, [ebp - 0x27d]
push edx
call fcn.004d3ea0
add esp, 8
lea ecx, [ebp - 0x2a8]
call fcn.00447330
push eax
push str.cmdline
lea ecx, [ebp - 0x27d]
call fcn.00473c70
push 0
lea ecx, [ebp - 0x27d]
call fcn.0043cdc0
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x30c], eax
lea ecx, [ebp - 0x27d]
call fcn.004ae5c0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a8]
call fcn.00447350
mov eax, dword [ebp - 0x30c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x6c]
xor ecx, ebp
call fcn.005236f2
mov esp, ebp
pop ebp
ret