Function at 0x401000
Capabilities:
Create process on windows
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6c
mov eax, dword [0x403004]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push esi
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen_s]
lea eax, [esp + 0x14]
push 0x402118
push str.resources_packed_repentance.a
push eax
mov dword [esp + 0x20], 0
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test eax, eax
setne byte [esp + 0x12]
test eax, eax
je 0x401063
push eax
call esi
add esp, 4
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push str.resources_packed_afterbirthp.a
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne bh
test eax, eax
je 0x401092
push eax
call esi
add esp, 4
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push str.resources_packed_afterbirth.a
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne bl
test eax, eax
je 0x4010c1
push eax
call esi
add esp, 4
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push str.isaac_ng_repentance.exe
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne cl
mov byte [esp + 0x13], cl
test eax, eax
je 0x4010f8
push eax
call esi
mov cl, byte [esp + 0x17]
add esp, 4
test cl, cl
je 0x401149
test bl, bl
je 0x401149
test bh, bh
je 0x401149
cmp byte [esp + 0x12], 0
je 0x401149
push 0x40
lea eax, [esp + 0x30]
mov dword [esp + 0x2c], 0x44
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
push 0
push 0
push 1
push 0
push 0
push 0x40211b
push str.isaac_ng_repentance.exe
jmp 0x4012a8
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push 0x402194
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne cl
mov byte [esp + 0x12], cl
test eax, eax
je 0x401180
push eax
call esi
mov cl, byte [esp + 0x16]
add esp, 4
test cl, cl
je 0x4011ca
test bl, bl
je 0x4011ca
test bh, bh
je 0x4011ca
push 0x40
lea eax, [esp + 0x30]
mov dword [esp + 0x2c], 0x44
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
push 0
push 0
push 1
push 0
push 0
push 0x40211b
push 0x402194
jmp 0x4012a8
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push str.isaac_ng_afterbirth.exe
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne bh
test eax, eax
je 0x4011f9
push eax
call esi
add esp, 4
test bh, bh
je 0x40123c
test bl, bl
je 0x40123c
push 0x40
lea eax, [esp + 0x30]
mov dword [esp + 0x2c], 0x44
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
push 0
push 0
push 1
push 0
push 0
push 0x40211b
push str.isaac_ng_afterbirth.exe
jmp 0x4012a8
push 0x402118
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push str.isaac_ng_rebirth.exe
push eax
call edi
mov eax, dword [esp + 0x20]
add esp, 0xc
test eax, eax
setne bl
test eax, eax
je 0x40126b
push eax
call esi
add esp, 4
test bl, bl
je 0x4012e4
push 0x40
lea eax, [esp + 0x30]
mov dword [esp + 0x2c], 0x44
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
push 0
push 0
push 1
push 0
push 0
push 0x40211b
push str.isaac_ng_rebirth.exe
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x4012f8
push 0xffffffffffffffff
push dword [esp + 0x1c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [esp + 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [esp + 0x1c]
call esi
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.0040130c
mov esp, ebp
pop ebp
ret
push 0x30
push str.Error_
push str.No_executable_found_to_run_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [esp + 0x74]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0040130c
mov esp, ebp
pop ebp
ret