Function at 0x459c9f
Capabilities:
Create process on windows

Disassembly:
push ebp
lea ebp, [esp - 0x878]
sub esp, 0x8f8
mov eax, dword [0x488548]
xor eax, ebp
mov dword [ebp + 0x874], eax
mov eax, dword [ebp + 0x88c]
push ebx
mov ebx, dword [sym.imp.PPLIB32W.DLL__SkipSpace_4]
push esi
mov esi, dword [ebp + 0x880]
push edi
xor edi, edi
mov dword [ebp + 0x5c], eax
mov dword [ebp + 0x60], 0x40
mov dword [ebp + 0x64], 0x10
mov dword [ebp + 0x68], edi
mov dword [ebp + 0x6c], eax
jmp 0x459dc7
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
lea eax, [ebp + 0x6c]
push eax
call dword [sym.imp.PPLIB32W.DLL__GetOptionParameter_12]
mov ecx, str.SIZE
lea eax, [ebp + 0x76]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x459d2d
cmp dx, di
je 0x459d29
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x459d2d
add eax, 4
add ecx, 4
cmp dx, di
jne 0x459d07
xor eax, eax
jmp 0x459d32
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x459d71
mov eax, dword [ebp + 0x70]
movzx eax, word [eax]
cmp ax, 0x30
jb 0x459d55
cmp ax, 0x39
ja 0x459d55
lea eax, [ebp + 0x70]
push eax
call dword [sym.imp.PPLIB32W.DLL__GetNumber_4]
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x70]
cmp word [eax], 0x2a
jne 0x459dc7
add dword [ebp + 0x70], 2
lea eax, [ebp + 0x70]
push eax
call dword [sym.imp.PPLIB32W.DLL__GetNumber_4]
mov dword [ebp + 0x64], eax
jmp 0x459dc7
mov ecx, str.ONCE
lea eax, [ebp + 0x76]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x459d9f
cmp dx, di
je 0x459d9b
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x459d9f
add eax, 4
add ecx, 4
cmp dx, di
jne 0x459d79
xor eax, eax
jmp 0x459da4
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x459db1
mov dword [ebp + 0x68], 1
jmp 0x459dc7
lea eax, [ebp + 0x74]
push eax
push str.EUOPUnknown_option:__s
push 2
push edi
push edi
call dword [sym.imp.PPLIB32W.DLL_XMessage]
add esp, 0x14
lea eax, [ebp + 0x6c]
push eax
call ebx
cmp ax, 0x2f
je 0x459ced
mov eax, dword [0x48ab14]
push 0x7f00
push edi
mov dword [ebp + 0x24], 8
mov dword [ebp + 0x28], 0x4596bb
mov dword [ebp + 0x2c], edi
mov dword [ebp + 0x30], edi
mov dword [ebp + 0x34], eax
mov dword [ebp + 0x38], edi
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp + 0x3c], eax
lea eax, [ebp + 0x24]
mov ebx, str.DockModule
push eax
mov dword [ebp + 0x40], edi
mov dword [ebp + 0x44], edi
mov dword [ebp + 0x48], ebx
call dword [sym.imp.USER32.dll_RegisterClassW]
push esi
push dword [0x48ab14]
push 0x100b
push dword [esi]
push dword [ebp + 0x64]
push dword [ebp + 0x60]
push edi
push edi
push 0x50000000
push edi
push ebx
push 0x90
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov ebx, eax
push 5
push ebx
mov dword [ebp + 0x70], ebx
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x22
push dword [ebp + 0x6c]
xor eax, eax
mov dword [ebp - 0x30], 0x44
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 4], edi
mov word [ebp + 2], ax
mov dword [ebp + 4], edi
call fcn.0046891a
pop ecx
pop ecx
push ebx
push dword [ebp + 0x6c]
test eax, eax
lea eax, [ebp + 0x74]
je 0x459e8d
push str._s__P_u
jmp 0x459e92
push 0x47ffa0
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x30]
push eax
push 0x48ab20
push edi
push 0x4000000
push edi
push edi
push edi
lea eax, [ebp + 0x74]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x459f7d
push 0xffffffffffffffff
push dword [ebp + 0x14]
call dword [sym.imp.USER32.dll_WaitForInputIdle]
push dword [ebp + 0x14]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
call ebx
push dword [ebp + 0x18]
call ebx
mov ebx, dword [ebp + 0x70]
lea eax, [ebp + 0x4c]
push eax
push ebx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esi + 8]
mov dword [ebp - 0x80], 0x50
mov ecx, dword [eax + 4]
mov dword [ebp - 0x4c], ecx
cmp dword [ebp + 0x68], edi
je 0x459f11
push 2
push 0x47ff9c
push eax
call dword [sym.imp.PPLIB32W.DLL__ThAppend_12]
push dword [ebp + 0x5c]
push dword [esi + 8]
call dword [sym.imp.PPLIB32W.DLL__ThAddString_8]
mov eax, dword [ebp + 0x884]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 0x54]
sub eax, dword [ebp + 0x4c]
mov dword [ebp - 0x60], ebx
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 0x58]
sub eax, dword [ebp + 0x50]
mov dword [ebp - 0x7c], 0x171
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x888]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x80]
push eax
push 0xffffffffffffffff
push 0x40a
push dword [esi]
call ebx
push edi
push edi
push 0x40c
push dword [esi]
call ebx
dec eax
push eax
push 0xfffffffffffffff4
push dword [ebp + 0x70]
call dword [sym.imp.USER32.dll_SetWindowLongW]
xor eax, eax
inc eax
jmp 0x459f92
push ebx
call dword [sym.imp.USER32.dll_DestroyWindow]
push edi
push dword [ebp + 0x6c]
push dword [esi]
call dword [sym.imp.PPLIB32W.DLL__PPErrorBox_12]
xor eax, eax
mov ecx, dword [ebp + 0x874]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046890b
add ebp, 0x878
leave
ret 0x10