Function at 0x407d50
Capabilities:
Accept command line arguments
Check for time delay via queryperformancecounter
Create process on windows
Create process suspended
Terminate process

Disassembly:
push r15
mov eax, 0x2198
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.0040ddf0
sub rsp, rax
mov r8d, 0x1000
lea rdi, [rsp + 0x190]
mov rsi, rcx
lea rbp, [rsp + 0x120]
mov rdx, rdi
lea rcx, [rcx + 0x10]
call fcn.00408600
mov edx, 1
lea rcx, [0x004077d0]
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
mov rcx, rbp
mov dword [rsp + 0x80], 0x18
mov qword [rsp + 0x88], 0
mov dword [rsp + 0x90], 1
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov eax, 1
xor ecx, ecx
mov rbx, qword [fcn.0040ee10]
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov dword [rsp + 0x15c], 0x101
mov word [rsp + 0x160], ax
call rbx
mov rcx, rax
call fcn.00407530
mov ecx, 1
mov qword [rsp + 0x170], rax
call rbx
mov rcx, rax
call fcn.00407530
mov ecx, 2
mov qword [rsp + 0x178], rax
call rbx
mov rcx, rax
call fcn.00407530
mov qword [rsp + 0x180], rax
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor r9d, r9d
mov qword [rsp + 0x40], rbp
mov rcx, rdi
lea rdx, [rsi + 0x3040]
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x48], rdx
lea r8, [rsp + 0x80]
mov rdx, rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x20], 1
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x4081e4
lea rdx, [rsp + 0xd0]
xor eax, eax
mov ecx, 8
mov rdi, rdx
rep stosq qword [rdi], rax
lea rax, str.PyInstallerOnefileHiddenWindow
mov rcx, rdx
mov qword [rsp + 0x110], rax
lea rax, [0x004076c0]
mov qword [rsp + 0xd8], rax
call qword [sym.imp.USER32.dll_RegisterClassW]
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], 0
lea r8, str.PyInstaller_Onefile_Hidden_Window
mov rdx, qword [rsp + 0x110]
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0x80000000
mov dword [rsp + 0x30], 0x80000000
mov dword [rsp + 0x28], 0x80000000
mov dword [rsp + 0x20], 0x80000000
call qword [sym.imp.USER32.dll_CreateWindowExW]
test rax, rax
mov qword [rsi + 0x3058], rax
je 0x407f55
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov r13, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rbx, [rsp + 0xa0]
mov rdi, qword [sym.imp.USER32.dll_PeekMessageW]
mov r12, qword [sym.imp.USER32.dll_TranslateMessage]
mov rbp, qword [sym.imp.USER32.dll_DispatchMessageW]
nop dword [rax]
mov rcx, qword [rsi + 0x3040]
mov edx, 0x64
call r13
test eax, eax
je 0x407fcb
cmp byte [rsi + 0x3060], 0
jne 0x408170
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsi + 0x3058]
mov rcx, rbx
mov dword [rsp + 0x20], 1
call rdi
test eax, eax
jle 0x407f80
mov rcx, rbx
call r12
mov rcx, rbx
call rbp
jmp 0x407fa0
cmp byte [rsi + 0x3060], 0
jne 0x408170
movzx eax, byte [rsi + 0x3061]
test al, al
je 0x40808f
mov rdx, qword [rsi + 0x3058]
lea r13, [rsp + 0x78]
mov rdi, qword [sym.imp.USER32.dll_GetMessageW]
mov rbp, qword [sym.imp.USER32.dll_TranslateMessage]
lea rbx, [rsp + 0xa0]
jmp 0x408031
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
call rdi
test eax, eax
jg 0x408194
movzx eax, byte [rsi + 0x3061]
mov rdx, qword [rsi + 0x3058]
test al, al
mov rcx, rdx
jne 0x408010
test rcx, rcx
je 0x40804e
call qword [sym.imp.USER32.dll_DestroyWindow]
mov qword [rsi + 0x3058], 0
mov rdx, r13
mov rcx, qword [rsi + 0x3040]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rsi + 0x3040]
mov rbx, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rbx
mov rcx, qword [rsi + 0x3048]
call rbx
mov eax, dword [rsp + 0x78]
add rsp, 0x2198
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
lea rcx, [rsp + 0x68]
mov r15, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
call r15
mov rdi, qword [sym.imp.USER32.dll_PeekMessageW]
lea rbx, [rsp + 0xa0]
mov r14, qword [sym.imp.USER32.dll_MsgWaitForMultipleObjects]
lea r13, [rsp + 0x78]
mov r12, qword [sym.imp.USER32.dll_TranslateMessage]
mov rbp, qword [sym.imp.USER32.dll_DispatchMessageW]
mov dword [rsp + 0x20], 0x4ff
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov r9d, 0x32
call r14
jmp 0x4080fb
mov rcx, rbx
call r12
mov rcx, rbx
call rbp
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsi + 0x3058]
mov rcx, rbx
mov dword [rsp + 0x20], 1
call rdi
test eax, eax
jg 0x4080f0
movzx eax, byte [rsi + 0x3061]
test al, al
jne 0x4081b5
mov rcx, r13
call r15
mov rax, qword [rsp + 0x78]
sub rax, qword [rsp + 0x68]
imul rax, rax, 0x3e8
cqo
idiv qword [rsp + 0x70]
cmp rax, 0xf9
jle 0x4080d2
movzx eax, byte [rsi + 0x3061]
mov rdx, qword [rsi + 0x3058]
test al, al
mov rcx, rdx
je 0x408038
jmp 0x407ff3
mov rcx, qword [rsi + 0x3040]
mov edx, 0x1f4
call r13
test eax, eax
jne 0x4081c1
mov rcx, qword [rsi + 0x3058]
lea r13, [rsp + 0x78]
jmp 0x408038
mov rcx, rbx
call rbp
mov rcx, rbx
call qword [sym.imp.USER32.dll_DispatchMessageW]
movzx eax, byte [rsi + 0x3061]
mov rdx, qword [rsi + 0x3058]
jmp 0x408001
mov rdx, qword [rsi + 0x3058]
jmp 0x407ff3
mov rcx, qword [rsi + 0x3040]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, qword [rsi + 0x3040]
mov edx, 0xffffffff
call r13
jmp 0x408183
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r8, str.Failed_to_create_child_process__n
lea rcx, str.CreateProcessW
mov edx, eax
call fcn.004025c0
mov eax, 0xffffffff
jmp 0x40807b