Function at 0x10044a55
Capabilities:
Shutdown system
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x19c
mov eax, dword [0x100a69a0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
call fcn.1006ea6d
push 0x32
lea eax, [ebp - 0x38]
push eax
mov ecx, 0x103aac68
call sub.mfc100.dll_Ordinal_6969
push 0x32
lea eax, [ebp - 0x6c]
push eax
mov ecx, 0x103aad14
call sub.mfc100.dll_Ordinal_6969
mov ebx, dword [sym.imp.MSVCR100.dll_sprintf]
lea eax, [ebp - 0x38]
push eax
push 0x100992d4
mov esi, 0x10342b58
push esi
call ebx
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
add esp, 0xc
cmp dword [0x103ae880], 1
je 0x10044b82
push esi
call fcn.10006150
pop ecx
test eax, eax
je 0x10044ad5
push 1
push esi
call fcn.10005fbb
jmp 0x10044b91
lea eax, [ebp - 0x6c]
push 0x100992cc
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10044b70
and dword [ebp - 0x194], 0
mov esi, dword [0x2f98458]
and dword [ebp - 0x198], 0
call fcn.10005f8c
test eax, eax
je 0x10044b4e
add esi, 0x53c
mov eax, dword [esi]
test eax, eax
je 0x10044b2a
add eax, 0x64
push eax
push 0x10097564
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10044b42
inc dword [ebp - 0x198]
add esi, 4
call fcn.10005f8c
cmp dword [ebp - 0x198], eax
jb 0x10044b10
jmp 0x10044b4e
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x194], eax
push dword [ebp - 0x194]
push 0
push 0
push 0x147
push dword [0x103aad34]
call edi
add eax, 9
push eax
call fcn.1003915d
jmp 0x10044b91
push 1
push 0x1008c4f4
call fcn.10005fbb
pop ecx
pop ecx
test al, al
jne 0x10044b93
lea eax, [ebp - 0x38]
push eax
call fcn.10006846
push eax
call fcn.1003a748
pop ecx
pop ecx
mov eax, dword [0x103a6e24]
cmp eax, 1
jne 0x10044c3f
lea eax, [ebp - 0x190]
push eax
mov dword [ebp - 0x190], 0x94
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
push 2
pop esi
cmp dword [ebp - 0x180], esi
jne 0x10044c2f
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea ecx, [ebp - 0x194]
push ecx
push 0x20
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
lea eax, [ebp - 0x19c]
push eax
push str.SeShutdownPrivilege
xor edi, edi
push edi
mov dword [ebp - 0xfc], 1
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueA]
mov eax, dword [ebp - 0x19c]
push edi
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x198]
push edi
push edi
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xfc]
push eax
push edi
push dword [ebp - 0x194]
mov dword [ebp - 0xf0], esi
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
jmp 0x10044c31
xor edi, edi
push edi
push 8
call dword [sym.imp.USER32.dll_ExitWindowsEx]
jmp 0x10044ce6
cmp eax, 2
jne 0x10044ce6
lea eax, [ebp - 0xec]
push eax
movzx eax, byte [0x34ccfc6]
push eax
mov esi, 0x10342ad0
push esi
call fcn.1003b7c7
lea eax, [ebp - 0xec]
push 0x2f98cb0
push eax
call sub.MSVCR100.dll_strcat
add esp, 0x14
lea eax, [ebp - 0xec]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x291
push dword [0x1010eafc]
call edi
lea eax, [ebp - 0xec]
push eax
movzx eax, byte [0x34ccfc6]
push eax
push esi
call fcn.1003b7c7
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0x17c]
push 0x10099298
push eax
call ebx
add esp, 0x18
lea eax, [ebp - 0x17c]
push eax
push dword [0x100e04bc]
push 0x2712
push dword [0x1010eafc]
call edi
push 1
push dword [0x100f3d44]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10083e24
leave
ret