Function at 0x402ace
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
push ebx
push esi
push edi
xor edi, edi
push str.ParseCommandLine_start
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], edi
call fcn.00403cd9
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
call fcn.004029f5
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 0xc]
push dword [eax]
lea eax, [esi + 0x1a]
push eax
call fcn.0040c6a0
add esp, 0x18
push 1
pop ebx
cmp dword [ebp - 8], ebx
jle 0x4038ba
mov eax, dword [ebp - 4]
inc dword [ebp - 0xc]
mov edi, ebx
shl edi, 2
mov eax, dword [edi + eax]
cmp byte [eax], 0x2d
jne 0x40373a
push str._force
push eax
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402b52
mov word [esi + 0x7d8], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._warn
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402b76
mov word [esi + 0x7d4], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._quiet
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402b9a
mov word [esi + 0x12a], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._playsound
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402bbe
mov word [esi + 0x320], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._soundfile
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402bfe
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402bf4
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x322]
push eax
call fcn.0040c6a0
jmp 0x403734
push str.Missing_argument_for__soundfile
jmp 0x403626
mov eax, dword [ebp - 4]
push str._service
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402c1f
mov word [esi + 0x18], 1
jmp 0x40371c
mov eax, dword [ebp - 4]
push str._warntime
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402c5f
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402c55
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
mov dword [esi + 0x254], eax
jmp 0x4038ae
push str.Missing_argument_for__warntime
jmp 0x403626
mov eax, dword [ebp - 4]
push str._wait
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402c9f
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402c95
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
mov dword [esi + 0x674], eax
jmp 0x4038ae
push str.Missing_argument_for__wait
jmp 0x403626
mov eax, dword [ebp - 4]
push str._msg
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402d0b
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402d01
mov ecx, dword [ebp - 4]
inc ebx
lea eax, [esi + 0x258]
push dword [ecx + ebx*4]
push eax
call fcn.0040c6a0
mov edi, 0x417a58
push 0x417a54
lea eax, [esi + 0x258]
push edi
push eax
call fcn.0040823b
push edi
lea eax, [esi + 0x258]
push 0x418c80
push eax
call fcn.0040823b
add esp, 0x20
jmp 0x4038ae
push str.Missing_argument_for__msg
jmp 0x403626
mov eax, dword [ebp - 4]
push str._remote
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402d54
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402d4a
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x130]
push eax
call fcn.0040c6a0
pop ecx
mov dword [esi + 4], 1
pop ecx
jmp 0x4038ae
push str.Missing_argument_for__remote
jmp 0x403626
mov eax, dword [ebp - 4]
push str._remschedule
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402d78
mov word [esi + 0x1fa], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._use_nt
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402d9c
mov word [esi + 0x1ca], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._port
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402dec
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402de2
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
lea ecx, [esi + 0x1cc]
test eax, eax
mov dword [ecx], eax
jg 0x4038ae
mov dword [ecx], 0xc8a
jmp 0x4038ae
push str.Missing_argument_for__port
jmp 0x403626
mov eax, dword [ebp - 4]
push str._password
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402e26
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402e1c
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x1d2]
jmp 0x402be9
push str.Missing_argument_for__password
jmp 0x403626
mov eax, dword [ebp - 4]
push str._username
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402e70
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402e66
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x1fe]
push eax
call fcn.0040c6a0
and word [esi + 0x1fc], 0
pop ecx
pop ecx
jmp 0x4038ae
push str.Missing_argument_for__username
jmp 0x403626
mov eax, dword [ebp - 4]
push str._run
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402e94
mov word [esi + 0x7d6], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._program
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402ece
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402ec4
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x428]
jmp 0x402be9
push str.Missing_argument_for__program
jmp 0x403626
mov eax, dword [ebp - 4]
push str._directory
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402f08
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402efe
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x52c]
jmp 0x402be9
push str.Missing_argument_for__directory
jmp 0x403626
mov eax, dword [ebp - 4]
push str._notray
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402f2a
and word [esi + 0x7da], ax
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._nocancel
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402f4c
and word [esi + 0x7dc], ax
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._immediate
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402f6a
and dword [esi + 8], eax
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._scheduled
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402f8c
mov dword [esi + 8], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._allow_remote
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402fb0
mov word [esi + 0x7de], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._remote_port
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x402ff0
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x402fe6
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
lea ecx, [esi + 0x228]
jmp 0x402dcd
push str.Missing_argument_for__remote_port
jmp 0x403626
mov eax, dword [ebp - 4]
push str._remote_pswd
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403039
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x40302f
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.00406f7c
push eax
lea eax, [esi + 0x22c]
push eax
call fcn.0040c6a0
add esp, 0xc
jmp 0x4038ae
push str.Missing_argument_for__remote_pswd
jmp 0x403626
mov eax, dword [ebp - 4]
push str._process
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40307a
mov eax, dword [ebp - 8]
mov dword [esi + 8], 2
dec eax
cmp ebx, eax
jge 0x403070
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x678]
jmp 0x402be9
push str.Missing_argument_for__process
jmp 0x403626
mov eax, dword [ebp - 4]
push str._simulate
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40309b
mov word [esi + 0x14], 1
jmp 0x40371c
mov eax, dword [ebp - 4]
push str._minimize
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4030bc
mov word [esi + 0x16], 1
jmp 0x40371c
mov eax, dword [ebp - 4]
push str._time
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40315c
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x403152
lea eax, [ebp - 0x14]
inc ebx
push eax
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 4]
push str._d:_d
push dword [eax + ebx*4]
call fcn.0040ca0c
add esp, 0x10
cmp eax, 2
je 0x40310f
mov eax, dword [ebp - 4]
push dword [eax + ebx*4]
push str.Invalid_time_format_for__time___s_
jmp 0x40372f
lea eax, [esi + 0x634]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov ax, word [ebp - 0x24]
cmp word [esi + 0x644], 0
mov word [esi + 0x63c], ax
mov ax, word [ebp - 0x14]
mov word [esi + 0x63e], ax
lea eax, [esi + 0x644]
jne 0x4038ae
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
jmp 0x4038ae
push str.Missing_argument_for__time
jmp 0x403626
mov eax, dword [ebp - 4]
push str._date
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4031ef
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x4031e5
lea eax, [ebp - 0x1c]
inc ebx
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 4]
push str._d__d__d
push dword [eax + ebx*4]
call fcn.0040ca0c
add esp, 0x14
cmp eax, 3
je 0x4031af
mov eax, dword [ebp - 4]
push dword [eax + ebx*4]
push str.Invalid_format_for__date___s_
jmp 0x40372f
lea edi, [esi + 0x644]
push edi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov ax, word [ebp - 0x20]
and dword [esi + 0x630], 0
mov word [esi + 0x64a], ax
mov ax, word [ebp - 0x18]
mov word [esi + 0x646], ax
mov ax, word [ebp - 0x1c]
mov word [edi], ax
jmp 0x4038ae
push str.Missing_argument_for__date
jmp 0x403626
mov eax, dword [ebp - 4]
push str._days
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403393
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x403389
lea eax, [ebp - 0x4c]
inc ebx
push eax
lea eax, [ebp - 0x56]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x6a]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x7e]
push eax
lea eax, [ebp - 0x88]
push eax
mov eax, dword [ebp - 4]
xor edi, edi
push str._______________________________s
mov word [esi + 0x654], di
mov word [esi + 0x656], di
mov word [esi + 0x658], di
mov word [esi + 0x65a], di
mov word [esi + 0x65c], di
mov word [esi + 0x65e], di
mov word [esi + 0x660], di
push dword [eax + ebx*4]
call fcn.0040ca0c
add esp, 0x24
cmp eax, edi
jle 0x4038ae
lea ecx, [ebp - 0x88]
push 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
pop edi
push 0x41798c
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4032b1
mov word [esi + 0x654], di
jmp 0x403371
push 0x417984
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4032d0
mov word [esi + 0x656], di
jmp 0x403371
push str.wt_m
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4032ef
mov word [esi + 0x658], di
jmp 0x403371
push 0x41797c
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40330b
mov word [esi + 0x65a], di
jmp 0x403371
push 0x417978
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403327
mov word [esi + 0x65c], di
jmp 0x403371
push 0x417974
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403343
mov word [esi + 0x65e], di
jmp 0x403371
push 0x417970
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40335f
mov word [esi + 0x660], di
jmp 0x403371
mov eax, dword [ebp - 4]
push dword [eax + ebx*4]
push str.Invalid_day_specified_for__day___s_
call fcn.0040290e
pop ecx
pop ecx
add dword [ebp + 8], 0xa
dec dword [ebp + 0xc]
mov dword [esi + 0x630], edi
jne 0x403292
jmp 0x4038ae
push str.Missing_argument_for__days
jmp 0x403626
mov eax, dword [ebp - 4]
push str._weeks
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4034ef
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x4034e5
lea eax, [ebp - 0xc4]
inc ebx
push eax
lea eax, [ebp - 0xce]
push eax
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0xe2]
push eax
lea eax, [ebp - 0xec]
push eax
mov eax, dword [ebp - 4]
xor edi, edi
push str._____________________s
mov word [esi + 0x662], di
mov word [esi + 0x664], di
mov word [esi + 0x666], di
mov word [esi + 0x668], di
mov word [esi + 0x66a], di
push dword [eax + ebx*4]
call fcn.0040ca0c
add esp, 0x1c
cmp eax, edi
jle 0x4038ae
lea ecx, [ebp - 0xec]
push 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
pop edi
push 0x417964
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40344b
mov word [esi + 0x662], di
jmp 0x4034cd
push 0x417960
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403467
mov word [esi + 0x664], di
jmp 0x4034cd
push 0x41795c
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403483
mov word [esi + 0x666], di
jmp 0x4034cd
push 0x417958
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x40349f
mov word [esi + 0x668], di
jmp 0x4034cd
push str.54321
push dword [ebp + 8]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4034bb
mov word [esi + 0x66a], di
jmp 0x4034cd
mov eax, dword [ebp - 4]
push dword [eax + ebx*4]
push str.Invalid_week_number_specified_for__week___s_
call fcn.0040290e
pop ecx
pop ecx
add dword [ebp + 8], 0xa
dec dword [ebp + 0xc]
mov dword [esi + 0x630], edi
jne 0x40342c
jmp 0x4038ae
push str.Missing_argument_for__weeks
jmp 0x403626
mov eax, dword [ebp - 4]
push str._day
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403539
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x40352f
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
mov dword [esi + 0x66c], eax
mov dword [esi + 0x630], 2
jmp 0x4038ae
push str.Missing_argument_for__day
jmp 0x403626
mov eax, dword [ebp - 4]
push str._seconds
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403583
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x403579
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
call fcn.0040d292
pop ecx
mov dword [esi + 0x670], eax
mov dword [esi + 0x630], 3
jmp 0x4038ae
push str.Missing_argument_for__seconds
jmp 0x403626
mov eax, dword [ebp - 4]
push 0x41888c
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4035ba
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x4035b3
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x1a2]
jmp 0x402be9
push str.Missing_argument_for__ip
jmp 0x403626
mov eax, dword [ebp - 4]
push str._subnet
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4035f1
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x4035ea
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x1b6]
jmp 0x402be9
push str.Missing_argument_for__subnet
jmp 0x403626
mov eax, dword [ebp - 4]
push str._mac
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403631
mov eax, dword [ebp - 8]
dec eax
cmp ebx, eax
jge 0x403621
mov eax, dword [ebp - 4]
inc ebx
push dword [eax + ebx*4]
lea eax, [esi + 0x194]
jmp 0x402be9
push str.Missing_argument_for__mac
call fcn.0040290e
pop ecx
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._save_settings
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403653
mov dword [ebp - 0x10], 1
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._remove_settings
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403675
mov dword [ebp - 0x10], 2
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._save_svc_set
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403697
mov dword [ebp - 0x10], 3
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._remove_svc_set
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4036b9
mov dword [ebp - 0x10], 4
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._create_service
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4036db
mov dword [ebp - 0x10], 5
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._remove_service
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x4036fd
mov dword [ebp - 0x10], 6
jmp 0x4038ae
mov eax, dword [ebp - 4]
push str._debug
push dword [edi + eax]
call fcn.0040d2a0
pop ecx
test eax, eax
pop ecx
jne 0x403724
mov word [0x41f30c], 1
dec dword [ebp - 0xc]
jmp 0x4038ae
mov eax, dword [ebp - 4]
push dword [edi + eax]
push str.Invalid_option_specified___s_
call fcn.0040290e
pop ecx
jmp 0x40362b
push str.logoff
push eax
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403752
and dword [esi], eax
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.reboot
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403773
mov dword [esi], 1
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.shutdown
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403794
mov dword [esi], 2
jmp 0x4038a9
mov eax, dword [ebp - 4]
push 0x418770
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x4037b5
mov dword [esi], 3
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.standby
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x4037d6
mov dword [esi], 4
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.hibernate
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x4037f7
mov dword [esi], 5
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.lock
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403818
mov dword [esi], 6
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.monitor_off
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403836
mov dword [esi], 8
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.monitor_on
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403854
mov dword [esi], 9
jmp 0x4038a9
mov eax, dword [ebp - 4]
push str.no_action
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403872
mov dword [esi], 0xa
jmp 0x4038a9
mov eax, dword [ebp - 4]
push 0x41872c
push dword [edi + eax]
call fcn.0040c790
pop ecx
test eax, eax
pop ecx
jne 0x403897
mov dword [esi], 7
mov dword [esi + 4], 1
jmp 0x4038a9
mov eax, dword [ebp - 4]
push dword [edi + eax]
push str.Invalid_action_specified___s_
call fcn.0040290e
pop ecx
pop ecx
and word [esi + 0xc], 0
inc ebx
cmp ebx, dword [ebp - 8]
jl 0x402b1c
xor edi, edi
mov eax, dword [ebp - 0x10]
dec eax
je 0x4039af
dec eax
je 0x40398b
dec eax
je 0x40394b
dec eax
je 0x403927
dec eax
je 0x403918
dec eax
je 0x4038f3
cmp dword [ebp - 0xc], edi
jle 0x4038e4
push 1
pop eax
pop edi
pop esi
pop ebx
leave
ret
push str.ParseCommandLine_end
call fcn.00403cd9
pop ecx
xor eax, eax
jmp 0x4038df
push esi
push edi
call fcn.0040a460
pop ecx
test eax, eax
pop ecx
je 0x403909
push esi
push edi
call fcn.0040a58d
pop ecx
pop ecx
push esi
push edi
call fcn.0040a09b
pop ecx
pop ecx
push edi
call fcn.0040ca6d
push esi
push edi
call fcn.00409f47
pop ecx
pop ecx
push edi
call fcn.0040ca6d
push str.SYSTEMCurrentControlSetServicesP0WER0FFParameters
push 0x80000002
call fcn.00406503
pop ecx
test al, al
pop ecx
jne 0x403945
push edi
push esi
call fcn.00403ed4
pop ecx
pop ecx
push edi
call fcn.0040ca6d
push esi
push str.SYSTEMCurrentControlSetServicesP0WER0FFParameters
push 0x80000002
call fcn.0040a791
add esp, 0xc
cmp dword [esi + 0x750], 1
je 0x403985
push esi
push edi
call fcn.0040a460
pop ecx
test eax, eax
pop ecx
je 0x403985
push esi
push edi
call fcn.0040a58d
push esi
push edi
call fcn.0040a4ef
add esp, 0x10
push edi
call fcn.0040ca6d
push str.SOFTWAREPoweroff
push 0x80000001
call fcn.00406503
pop ecx
test al, al
pop ecx
jne 0x4039a9
push edi
push esi
call fcn.00403ed4
pop ecx
pop ecx
push edi
call fcn.0040ca6d
push esi
push str.SOFTWAREPoweroff
push 0x80000001
call fcn.0040a791
add esp, 0xc
push edi
call fcn.0040ca6d