Function at 0x401300
Capabilities:
Allocate or change rwx memory
Create thread
Execute command
Execute shellcode via indirect call
Inject thread
Set console window title
Spawn thread to rwx shellcode
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 8], eax
push ebx
push esi
push edi
push str.Manual_Map_Injector
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ebx, dword [sym.imp.MSVCR100.dll_system]
push str.color_4
call ebx
mov eax, dword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
add esp, 4
push str.Open_LostSaga_Thailand_n
push eax
call fcn.00401630
add esp, 8
call fcn.004011e0
test eax, eax
je 0x401345
mov ecx, dword [0x404054]
lea edx, [ecx + 0x404018]
mov dword [0x4d6798], 0x404018
mov dword [0x4d6788], edx
call fcn.00401130
push eax
push 0
push 0x1fffff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ecx, dword [0x4d6788]
mov edx, dword [ecx + 0x50]
mov edi, dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
push 0x40
push 0x3000
push edx
push 0
push eax
mov dword [0x4d678c], eax
call edi
mov ecx, dword [0x4d6788]
mov edx, dword [ecx + 0x54]
mov esi, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push 0
push edx
push 0x404018
push eax
mov dword [0x4d67a4], eax
mov eax, dword [0x4d678c]
push eax
call esi
mov ecx, dword [0x4d6788]
lea edx, [ecx + 0xf8]
mov dword [0x4d6790], edx
xor eax, eax
xor edx, edx
mov dword [0x4d679c], eax
cmp dx, word [ecx + 6]
jae 0x40142c
mov ecx, dword [0x4d6790]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*8 + 0x10]
lea eax, [ecx + eax*8]
mov ecx, dword [eax + 0x14]
push 0
push edx
mov edx, dword [eax + 0xc]
add edx, dword [0x4d67a4]
mov eax, dword [0x4d678c]
add ecx, 0x404018
push ecx
push edx
push eax
call esi
mov ecx, dword [0x4d6788]
mov eax, dword [0x4d679c]
movzx edx, word [ecx + 6]
inc eax
mov dword [0x4d679c], eax
cmp eax, edx
jb 0x4013e4
mov eax, dword [0x4d678c]
push 0x40
push 0x3000
push 0x1000
push 0
push eax
call edi
mov edx, dword [0x4d6798]
xor ecx, ecx
mov dword [0x4d676c], ecx
mov dword [0x4d6770], ecx
mov dword [0x4d6774], ecx
mov dword [0x4d6778], ecx
mov dword [0x4d677c], ecx
mov dword [0x4d6780], ecx
mov ecx, dword [0x4d67a4]
mov dword [0x4d676c], ecx
mov edx, dword [edx + 0x3c]
add edx, ecx
mov dword [0x4d6770], edx
mov edx, dword [0x4d6788]
mov edi, dword [edx + 0xa0]
add edi, ecx
push 0
mov dword [0x4d6774], edi
mov edx, dword [edx + 0x80]
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x18
add edx, ecx
mov ecx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x4d676c
mov dword [0x4d6778], edx
mov edx, dword [0x4d678c]
push eax
push edx
mov dword [0x4d6784], eax
mov dword [0x4d677c], edi
mov dword [0x4d6780], ecx
mov dword [esp + 0x20], 0x8b55ff8b
mov byte [esp + 0x24], 0xec
call esi
mov ecx, dword [0x4d678c]
push 0
push 5
lea eax, [esp + 0x14]
push eax
push edi
push ecx
call esi
mov eax, dword [0x4d6784]
mov ecx, dword [0x4d678c]
push 0
mov edx, 0x401120
sub edx, section..text
push edx
push section..text
add eax, 0x18
push eax
push ecx
call esi
push str.color_2
call ebx
add esp, 4
push 0x4031a0
call ebx
mov eax, dword [0x4d6784]
mov edx, dword [0x4d678c]
add esp, 4
push 0
push 0
push eax
add eax, 0x18
push eax
push 0
push 0
push edx
call dword [sym.imp.KERNEL32.dll_CreateRemoteThread]
mov dword [0x4d67a0], eax
mov eax, dword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
push str.Injected_
push eax
call fcn.00401630
mov ecx, dword [0x4d67a0]
add esp, 8
push 0xffffffffffffffff
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, dword [0x4d67a0]
push 0x4d6794
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]