Function at 0x401260
Capabilities:
Create process on windows

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4037cb
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1e0
push esi
push edi
mov eax, dword [0x406008]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x44
lea eax, [ebp - 0x1f0]
xorps xmm0, xmm0
push 0
push eax
movups xmmword [ebp - 0x28], xmm0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x1f0]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.zLoader.bin
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
call dword [sym.imp.MSVCP140.dll__Thrd_hardware_concurrency]
push ecx
lea ecx, [ebp - 0x1a8]
mov edi, eax
call fcn.004021f0
push ecx
push 1
push ecx
lea ecx, [ebp - 0x1a8]
mov dword [ebp - 4], 0
call fcn.00402080
mov eax, dword [ebp - 0x1a8]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x19c], 6
je 0x401333
push ecx
push 2
push ecx
lea ecx, [ebp - 0x1a8]
call fcn.00402080
lea ecx, [ebp - 0x198]
call fcn.00402540
lea ecx, [ebp - 0x1a8]
call fcn.00402000
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x1a8]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_fstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_fstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x78]
mov dword [ebp + ecx - 0x1ac], eax
lea ecx, [ebp - 0x190]
call fcn.00401f40
lea ecx, [ebp - 0x188]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x130]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
push ecx
lea ecx, [ebp - 0xe8]
xor esi, esi
call fcn.004021f0
push ecx
push 1
push ecx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 4], 1
call fcn.00402080
cmp dword [ebp - 0x84], esi
je 0x401426
lea eax, [ebp - 0x11]
push eax
lea ecx, [ebp - 0xe8]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::get_char__]
movsx esi, byte [ebp - 0x11]
lea ecx, [ebp - 0xe8]
sub esi, 0x30
call fcn.00402000
push ecx
push 2
push ecx
lea ecx, [ebp - 0xe8]
call fcn.00402080
cmp esi, edi
jae 0x40140d
cmp esi, 4
jge 0x40140d
mov al, byte [ebp - 0x11]
lea ecx, [ebp - 0xd8]
inc al
movzx eax, al
push eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::put_char_]
inc esi
jmp 0x40141b
push 0x30
lea ecx, [ebp - 0xd8]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::put_char_]
lea ecx, [ebp - 0xe8]
call fcn.00402000
mov eax, dword [ebp - 0xe8]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xe8], vtable.std::basic_fstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0xe8]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x78]
mov dword [ebp + ecx - 0xec], eax
lea ecx, [ebp - 0xd0]
call fcn.00401f40
lea ecx, [ebp - 0xc8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
cmp esi, 1
jne 0x401476
mov eax, esi
jmp 0x4014bf
cmp esi, 2
jne 0x40147f
mov eax, esi
jmp 0x4014bf
cmp esi, 3
jne 0x401489
lea eax, [esi + 1]
jmp 0x4014bf
cmp esi, 4
jne 0x401493
lea eax, [esi + 4]
jmp 0x4014bf
cmp esi, 5
jne 0x40149d
lea eax, [esi + 0xb]
jmp 0x4014bf
cmp esi, 6
jne 0x4014a7
lea eax, [esi + 0x1a]
jmp 0x4014bf
cmp esi, 7
jne 0x4014b1
lea eax, [esi + 0x39]
jmp 0x4014bf
mov eax, dword [ebp - 0x18]
cmp esi, 8
mov ecx, 0x80
cmove eax, ecx
push eax
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret