Function at 0x401000
Capabilities:
Check os version
Get common file path
Get hostname
Get session user name

Disassembly:
mov eax, dword [esp + 8]
mov edx, dword [esp + 0xc]
sub esp, 0x118
push esi
push edi
mov esi, ecx
mov ecx, dword [esp + 0x124]
push str.If__Command_Name__is_provided_displayes_syntax_and_description_of_that_command_otherwise_displays_all_the_avilable_commands
push str.Command_Name
xor edi, edi
mov dword [esi + 0x550], ecx
push fcn.004019c0
push str.Help
mov ecx, esi
mov dword [esi + 0x548], edi
mov dword [esi + 0x554], 0x40b5e8
mov dword [esi + 0x558], eax
mov dword [esi + 0x55c], edx
mov dword [esi], edi
call fcn.004014a0
push str.Executes_the_given_system_command__returns_immidiately_
push str.Command
push 0x402ad0
push str.System
mov ecx, esi
call fcn.004014a0
push str.call_and_wait_untill_app_is_done.
push str.Exact_path_to_App__arguments
push 0x402af0
push str.SysCallAndWait
mov ecx, esi
call fcn.004014a0
push str.Defines_the_variable_if_not_defined_and_Sets_the_its_value_to_the_given_value._nIf__Value__is_not_given_it_undefines_the_given_variable
push str.Name_Value_
push 0x4017a0
push 0x4095cc
mov ecx, esi
call fcn.004014a0
push str.Outputs_data_after_evaluation
push str.Data
push 0x402350
push str.Echo
mov ecx, esi
call fcn.004014a0
push str.runs_all_the_commands_in_that_section_and_returnd_and_continues_executing_commands_after_that_line
push str.Section_Name
push 0x402910
push str.Call
mov ecx, esi
call fcn.004014a0
push str.Executes_all_the_commands_in_that_file_and_returns
push str.Path_to_an_NVU_File
push fcn.00402960
push 0x4094d0
mov ecx, esi
call fcn.004014a0
push str.Run_all_the_commands_in_this_file_and_delete_the_file
push str.Path_to_an_NVU_File
push fcn.00402a20
push str.RunOnce
mov ecx, esi
call fcn.004014a0
push str.Adds_or_replaces_the_given_section_of_the_given_file_from_the_same_section_name_in_the_current_NVU_file
push str.Section_filename
push 0x4018b0
push str.ExportSection
mov ecx, esi
call fcn.004014a0
push str.Adds_or_replaces_the_given_section_of_the_current_file_from_the_same_section_name_in_the_given_NVU_file
push str.Section_filename
push 0x401950
push str.ImportSection
mov ecx, esi
call fcn.004014a0
push str.Removes_the_given_section_from_the_current_file
push str.Section
push 0x402a80
push str.RemoveSection
mov ecx, esi
call fcn.004014a0
push str.A_dir_will_be_applied_to_the_given_path_and_for_each_file_found_it_sets_variable_current_file_to_that_file_and_calls_the_given_command.
push str.DirPath_Command
push 0x402b80
push str.DirAndApply
mov ecx, esi
call fcn.004014a0
push str.Executes_command_if_Exp1_is_the_same_as_Exp2
push str.Exp1Exp2_then_Command
push 0x401800
push 0x409240
mov ecx, esi
call fcn.004014a0
push str.reEvaluates_the_given_command_and_executes_it
push str.Command
push fcn.00401c40
push str.Eval
mov ecx, esi
call fcn.004014a0
push str.Opens_the_given_log_files_ad_Logs_all_the_commands_in_the_given_file
push str.Filename
push 0x402860
push str.StartLogging
mov ecx, esi
call fcn.004014a0
push str.Stops_logging_close_the_file
push 0x40b5e8
push fcn.004028e0
push str.StopLogging
mov ecx, esi
call fcn.004014a0
mov dword [esi + 0x54c], 0x40914c
mov dword [esi + 0x404], edi
mov eax, dword [esi + 0x404]
mov dword [esi + eax*8 + 4], edi
mov ecx, dword [esi + 0x404]
mov dword [esi + ecx*8 + 8], edi
mov ecx, dword [esi + 0x404]
inc ecx
mov eax, ecx
mov dword [esi + 0x404], ecx
cmp eax, 0x80
jl 0x4011ff
push ebx
lea edx, [esp + 0x10]
push 0x80
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea eax, [esp + 0x10]
mov ecx, esi
push eax
push str.windir
call fcn.00401670
lea ecx, [esp + 0x10]
push 0x80
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea edx, [esp + 0x10]
mov ecx, esi
push edx
push str.sysdir
call fcn.00401670
lea eax, [esp + 0x10]
push eax
push 0x80
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea ecx, [esp + 0x10]
push ecx
push str.Currentdir
mov ecx, esi
call fcn.00401670
push 0x40912c
push 0x409128
mov ecx, esi
call fcn.00401670
mov eax, dword [esi + 0x550]
lea edx, [esp + 0x10]
push 0x80
push edx
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x10]
push ecx
push str.Current_Parser_Path
mov ecx, esi
call fcn.00401670
lea edx, [esp + 0x10]
mov ecx, esi
push edx
call fcn.00401b60
push eax
push str.Current_Parser_Name
mov ecx, esi
call fcn.00401670
lea eax, [esp + 0xc]
lea ecx, [esp + 0x10]
push eax
push ecx
mov dword [esp + 0x14], 0x80
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
lea edx, [esp + 0x10]
mov ecx, esi
push edx
push str.Computer_Name
call fcn.00401670
lea eax, [esp + 0xc]
lea ecx, [esp + 0x10]
push eax
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
lea edx, [esp + 0x10]
mov ecx, esi
push edx
push str.User_Name
call fcn.00401670
lea eax, [esp + 0x90]
mov dword [esp + 0x90], 0x94
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov ecx, dword [esp + 0x94]
lea edx, [esp + 0x10]
push ecx
push 0x4090e0
push edx
mov ebx, dword [sym.imp.MSVCRT.dll_sprintf]
call ebx
add esp, 0xc
lea eax, [esp + 0x10]
mov ecx, esi
push eax
push str.OS_Major_Version
call fcn.00401670
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x10]
push ecx
push 0x4090e0
push edx
call ebx
add esp, 0xc
lea eax, [esp + 0x10]
mov ecx, esi
push eax
push str.OS_Minor_Version
call fcn.00401670
mov eax, dword [esp + 0xa0]
mov dword [esi + 0x560], edi
dec eax
pop ebx
je 0x401408
dec eax
jne 0x401456
push str.ControlClass
push str.DriverBaseRegPath
mov ecx, esi
call fcn.00401670
mov eax, dword [esp + 0x90]
cmp eax, 5
jne 0x4013fc
mov eax, dword [esp + 0x94]
sub eax, edi
je 0x4013f5
dec eax
je 0x4013ee
dec eax
mov ecx, esi
je 0x4013e7
push str.Unknown_WIN32_NT5
jmp 0x40144c
push str.WinServer2003Family
jmp 0x40144c
push str.WinXP
jmp 0x40144a
push str.Win2K
jmp 0x40144a
cmp eax, 4
jne 0x401456
push str.WinNT4
jmp 0x40144a
push str.ServicesClass
push str.DriverBaseRegPath
mov ecx, esi
call fcn.00401670
mov eax, dword [esp + 0x94]
cmp eax, edi
je 0x401445
cmp eax, 0xa
je 0x40143e
cmp eax, 0x5a
mov ecx, esi
je 0x401437
push str.Unknown_WIN32_Windows
jmp 0x40144c
push str.WinME
jmp 0x40144c
push str.Win98
jmp 0x40144a
push str.Win95
mov ecx, esi
push 0x409010
call fcn.00401670
mov eax, esi
pop edi
pop esi
add esp, 0x118
ret 0xc