Function at 0x405a30
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x532890
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
push ebx
push esi
push edi
mov eax, dword [0x575494]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
push str.______ParseCmdLineParam___IN_______n
mov eax, 0x577668
mov byte [ebp - 0xd], bl
call fcn.0043fd80
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
cmp esi, ebx
je 0x405cfb
cmp word [esi], bx
je 0x405cfb
push esi
push str.Command_line_parameter___s_n
mov eax, 0x577668
call fcn.0043fd40
add esp, 8
push esi
lea esi, [ebp - 0x48]
mov dword [ebp - 0x14], ebx
mov byte [ebp - 0xe], bl
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
call fcn.00507d60
mov dword [ebp - 4], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
xor esi, esi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 4], 3
lea esp, [esp]
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0xe]
call fcn.00507770
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.00508010
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x54]
cmp eax, ebx
je 0x405b1d
push eax
call fcn.0051eadb
add esp, 4
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
cmp byte [ebp - 0xe], bl
je 0x405ca6
cmp dword [ebp - 0x2c], ebx
jle 0x405bea
mov esi, dword [ebp - 0x30]
push 0x3d
push esi
call fcn.00520846
add esp, 8
cmp eax, ebx
je 0x405bea
sub eax, esi
sar eax, 1
mov esi, eax
cmp esi, ebx
jle 0x405bea
lea eax, [ebp - 0x60]
push eax
mov edx, esi
lea ecx, [ebp - 0x30]
call fcn.00507640
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 5
call fcn.00508010
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x60]
cmp eax, ebx
je 0x405b8a
push eax
call fcn.0051eadb
add esp, 4
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
lea edx, [ebp - 0x6c]
push edx
lea ecx, [esi + 1]
lea edx, [ebp - 0x30]
call fcn.005076b0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 6
call fcn.00508010
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x6c]
cmp eax, ebx
je 0x405bc2
push eax
call fcn.0051eadb
add esp, 4
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov edi, dword [ebp - 0x24]
mov esi, dword [ebp - 0x3c]
cmp dword [ebp - 0x38], ebx
jle 0x405ca6
push str.BootProc
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x405c0d
mov byte [ebp - 0xd], 1
jmp 0x405ca6
lea eax, [ebp - 0x30]
lea ecx, [ebp - 0x3c]
call fcn.00508010
cmp dword [ebp - 0x20], ebx
jle 0x405bc5
mov eax, dword [ebp - 0x1c]
push eax
push ebx
push edi
call fcn.00522610
add esp, 0xc
mov dword [ebp - 0x20], ebx
jmp 0x405bc5
push str.Model
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x405c70
cmp dword [ebp - 0x20], ebx
jle 0x405ca6
cmp word [edi], 0x22
jne 0x405ca6
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0x78]
push edx
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x18], ebx
call fcn.00507890
mov ecx, 0x57be8c
mov byte [ebp - 4], 7
call fcn.00508010
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x78]
cmp eax, ebx
je 0x405c6a
push eax
call fcn.0051eadb
add esp, 4
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov byte [ebp - 0xd], 1
jmp 0x405ca6
push str.MsgChk
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x405c89
mov byte [0x57b25c], 1
jmp 0x405ca6
push str.LangID
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x405ca6
lea eax, [ebp - 0x24]
mov ecx, 0x57b5e4
call fcn.00508010
cmp dword [ebp - 0x2c], ebx
jg 0x405ae0
mov byte [ebp - 4], 2
cmp edi, ebx
je 0x405cc0
push edi
call fcn.0051eadb
add esp, 4
mov byte [ebp - 4], 1
cmp esi, ebx
je 0x405cd1
push esi
call fcn.0051eadb
add esp, 4
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x30]
cmp eax, ebx
je 0x405ce4
push eax
call fcn.0051eadb
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x48]
cmp eax, ebx
je 0x405cfb
push eax
call fcn.0051eadb
add esp, 4
push str.______ParseCmdLineParam___OUT_______n
mov eax, 0x577668
call fcn.0043fd80
mov al, byte [ebp - 0xd]
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret