Function at 0x484ff0
Capabilities:
Create process on windows
Set console window title
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa8
mov eax, dword [0x659780]
xor eax, ebp
mov dword [ebp - 4], eax
push 6
push 0x5b2fe4
mov eax, dword [ebp + 8]
push eax
call fcn.0045e050
add esp, 0xc
test eax, eax
jne 0x485023
mov dword [ebp - 0x3c], 1
jmp 0x48502a
mov dword [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x1c], 0xffffffff
push 0xffffffffffffffff
mov edx, dword [ebp + 8]
push edx
call fcn.004854e0
add esp, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], 0
push 0x44
push 0
lea eax, [ebp - 0xa8]
push eax
call fcn.0050eb10
add esp, 0xc
mov dword [ebp - 0xa8], 0x44
push 0xc
push 0
lea ecx, [ebp - 0x54]
push ecx
call fcn.0050eb10
add esp, 0xc
mov dword [ebp - 0x54], 0xc
cmp dword [ebp - 0x34], 0
je 0x4850ee
mov edx, dword [ebp + 8]
push edx
call fcn.005139f0
add esp, 4
add eax, 1
push eax
call fcn.0051f5d0
add esp, 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x4850c6
push 0x5b2fec
call fcn.00402660
add esp, 4
mov eax, dword [ebp - 0x1c]
jmp 0x4853bd
mov eax, dword [ebp + 8]
add eax, 6
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005138f0
add esp, 8
mov dword [ebp - 0x30], 1
mov edx, dword [ebp + 0xc]
mov dword [edx], 0
jmp 0x4851e4
mov dword [ebp - 0x4c], 1
push 1
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00484530
add esp, 0xc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x485125
push 0x5b3000
call fcn.00402660
add esp, 4
mov eax, dword [ebp - 0x1c]
jmp 0x4853bd
call dword [sym.imp.KERNEL32.dll_AllocConsole]
test eax, eax
jne 0x485156
cmp dword [ebp - 0x30], 0
je 0x485141
mov edx, dword [ebp - 0x20]
push edx
call fcn.0051f5a0
add esp, 4
push str._console_creation_failed_
call fcn.0041dcf0
add esp, 4
mov eax, dword [ebp - 0x1c]
jmp 0x4853bd
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0xa8]
push ecx
call fcn.00485900
add esp, 8
test eax, eax
jne 0x48518d
call dword [sym.imp.KERNEL32.dll_FreeConsole]
cmp dword [ebp - 0x30], 0
je 0x485185
mov edx, dword [ebp - 0x20]
push edx
call fcn.0051f5a0
add esp, 4
mov eax, dword [ebp - 0x1c]
jmp 0x4853bd
mov eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
call fcn.00485750
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x28]
push ecx
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x4851e4
push 1
push 0xf060
push 0
mov edx, dword [ebp - 0x24]
push edx
call dword [sym.imp.USER32.dll_GetSystemMenu]
push eax
call dword [sym.imp.USER32.dll_EnableMenuItem]
mov dword [ebp - 0x44], 1
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004854e0
add esp, 8
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x485210
push str.w32_system_winvile
call fcn.00402660
add esp, 4
mov eax, dword [ebp - 0x1c]
jmp 0x4853bd
cmp dword [ebp - 0x34], 0
jne 0x48521f
mov dword [ebp - 0x40], 1
jmp 0x485226
mov dword [ebp - 0x40], 0
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0xa8]
push eax
push 0
push 0
push 0
mov ecx, dword [ebp - 0x40]
push ecx
lea edx, [ebp - 0x54]
push edx
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x485377
cmp dword [ebp - 0x44], 0
jne 0x4852bd
mov dword [ebp - 0x38], 0
jmp 0x48526f
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 5
jge 0x4852bd
mov eax, dword [ebp - 0x28]
push eax
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x4852b0
push 1
push 0xf060
push 0
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.USER32.dll_GetSystemMenu]
push eax
call dword [sym.imp.USER32.dll_EnableMenuItem]
mov edx, dword [ebp - 0x24]
push edx
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x4852bd
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x485266
cmp dword [ebp - 0x34], 0
jne 0x48535a
push 0
mov eax, dword [ebp - 0x64]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.0053935d
add esp, 0xc
call fcn.004857f0
mov edx, dword [ebp + 0xc]
cmp dword [edx], 0
je 0x485358
push 0
lea eax, [ebp - 0x48]
push eax
push 0x1c
push str._n_Press_any_key_to_continue_
mov ecx, dword [ebp - 0x6c]
push ecx
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x485317
push str._dynamic_console_write_failed_
call fcn.0041dcf0
add esp, 4
mov dword [ebp - 0x1c], 0xffffffff
jmp 0x485358
lea edx, [ebp - 0x48]
push edx
push 1
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
call dword [sym.imp.KERNEL32.dll_ReadConsoleInputW]
test eax, eax
jne 0x485345
push str._dynamic_console_read_failed_
call fcn.0041dcf0
add esp, 4
mov dword [ebp - 0x1c], 0xffffffff
jmp 0x485358
movzx edx, word [ebp - 0x18]
cmp edx, 1
jne 0x485356
cmp dword [ebp - 0x14], 0
je 0x485356
jmp 0x485358
jmp 0x485317
jmp 0x485361
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x64]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x60]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x485384
push str._unable_to_create_Win32_process_
call fcn.0041dcf0
add esp, 4
mov edx, dword [ebp - 0x28]
push edx
call fcn.0051f5a0
add esp, 4
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0051f5a0
add esp, 4
cmp dword [ebp - 0x30], 0
je 0x4853ae
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.0051f5a0
add esp, 4
cmp dword [ebp - 0x34], 0
jne 0x4853ba
call dword [sym.imp.KERNEL32.dll_FreeConsole]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0050d210
mov esp, ebp
pop ebp
ret