Function at 0x402bc0
Capabilities:
Accept command line arguments
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x42135d
mov eax, dword fs:[0]
push eax
sub esp, 0x1e8
mov eax, dword [0x43701c]
xor eax, esp
mov dword [esp + 0x1e0], eax
push ebx
push esi
push edi
mov eax, dword [0x43701c]
xor eax, esp
push eax
lea eax, [esp + 0x1f8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x90]
mov dword [esp + 0x44], eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
xor edi, edi
lea ecx, [esp + 0xac]
mov dword [esp + 0x200], edi
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0x164]
mov byte [esp + 0x200], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0x180]
mov byte [esp + 0x200], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0x100]
mov byte [esp + 0x200], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x200], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x200], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0x148]
mov byte [esp + 0x200], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [esp + 0x19c]
mov byte [esp + 0x200], 7
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
mov byte [esp + 0x200], 8
push edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x3c], edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [esp + 0x124]
call dword [sym.imp.K8Common.dll_public:_void___thiscall_GameMgr::GMCmdLineParser::constructor_wchar_t_const___bool_]
mov bl, 9
push str._id
lea ecx, [esp + 0x78]
mov byte [esp + 0x204], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x204], 0xa
mov esi, dword [sym.imp.K8Common.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____thiscall_GameMgr::GMCmdLineParser::GetValue_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
push edx
lea ecx, [esp + 0x124]
call esi
push eax
lea ecx, [esp + 0xb0]
mov byte [esp + 0x204], 0xb
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0xa
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._gtid
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x204], 0xc
push ecx
lea ecx, [esp + 0x124]
call esi
push eax
lea ecx, [esp + 0x168]
mov byte [esp + 0x204], 0xd
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._tid
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea edx, [esp + 0x74]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0xe
call esi
push eax
lea ecx, [esp + 0x184]
mov byte [esp + 0x204], 0xf
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0xe
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._config
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0x10
call esi
push eax
lea ecx, [esp + 0x94]
mov byte [esp + 0x204], 0x11
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x10
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._setuptime
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0x12
call esi
push eax
lea ecx, [esp + 0xcc]
mov byte [esp + 0x204], 0x13
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x12
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._embedded
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea edx, [esp + 0x74]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0x14
call esi
push eax
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x204], 0x15
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x14
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str._starttype
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0x16
call esi
mov byte [esp + 0x200], 0x17
cmp dword [eax + 0x18], 8
jb 0x402f80
mov eax, dword [eax + 4]
jmp 0x402f83
add eax, 4
push edi
push eax
call dword [sym.imp.K8Common.dll_public:_static_unsigned_long_long_unsigned___int64____cdecl_GameMgr::GMStringUtils::ConvertStringToUInt64_wchar_t_const___wchar_t_const___]
add esp, 8
lea ecx, [esp + 0x1c]
mov dword [esp + 0x40], eax
mov byte [esp + 0x200], 0x16
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
cmp dword [esp + 0xa4], edi
je 0x4030a4
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x78]
push ecx
call dword [sym.imp.K8Common.dll_public:_static_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_GameMgr::GMFilePathUtils::Extension_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
add esp, 8
mov byte [esp + 0x200], 0x18
cmp dword [esp + 0x88], edi
je 0x403091
push str..ini
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x78]
mov byte [esp + 0x204], 0x19
mov edi, dword [sym.imp.K8Common.dll_public:_static_int___cdecl_GameMgr::GMStringUtils::CompareNoCase_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
push eax
call edi
add esp, 8
test eax, eax
lea ecx, [esp + 0x1c]
sete byte [esp + 0x16]
mov byte [esp + 0x200], 0x18
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
cmp byte [esp + 0x16], 0
je 0x40316f
lea ecx, [esp + 0x18]
push ecx
sub esp, 0x1c
lea edx, [esp + 0xb0]
mov ecx, esp
mov dword [esp + 0x5c], esp
push edx
lea ebx, [esp + 0x5c]
lea edi, [esp + 0x16c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
mov ecx, ebx
mov ebx, edi
lea edi, [esp + 0x104]
lea edx, [esp + 0x120]
call fcn.0040e500
add esp, 0x20
test al, al
jne 0x40308f
push 0x423134
mov ecx, edi
call dword [0x422ae0]
mov bl, 9
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor edi, edi
cmp dword [esp + 0x114], edi
jne 0x403110
push str._name
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x78]
push edx
lea ecx, [esp + 0x124]
mov byte [esp + 0x208], 0x1b
call esi
push eax
lea ecx, [esp + 0x104]
mov byte [esp + 0x204], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], 0x1b
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push edi
call dword [sym.imp.ole32.dll_OleInitialize]
cmp eax, edi
jl 0x403495
cmp dword [esp + 0xc0], edi
je 0x4031ec
cmp dword [esp + 0xc4], 8
mov eax, dword [esp + 0xb0]
jae 0x403144
lea eax, [esp + 0xb0]
push eax
call dword [sym.imp.MSVCR80.dll__wtoi]
mov esi, eax
add esp, 4
push esi
call fcn.0040fcb0
add esp, 4
test eax, eax
je 0x4031ec
push esi
call fcn.0040fd80
add esp, 4
jmp 0x403671
push str..swf
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x78]
push ecx
mov byte [esp + 0x208], 0x1a
call edi
add esp, 8
test eax, eax
lea ecx, [esp + 0x1c]
sete byte [esp + 0x16]
mov byte [esp + 0x200], 0x18
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
cmp byte [esp + 0x16], 0
je 0x403091
lea edx, [esp + 0x90]
push edx
call dword [sym.imp.K8Common.dll_public:_static_bool___cdecl_GameMgr::GMFilePathUtils::IsExistsFile_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
add esp, 4
test al, al
je 0x403091
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0xe8]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
jmp 0x403091
mov eax, dword [esp + 0x44]
push eax
call dword [sym.imp.K8UIRender.dll_void___cdecl_GameMgr::SetResourceInstance_struct_HINSTANCE____]
add esp, 4
lea ecx, [esp + 0x1b8]
call fcn.00411fb0
lea ecx, [esp + 0x1b8]
push ecx
mov byte [esp + 0x204], 0x1d
call dword [sym.imp.K8UIRender.dll_void___cdecl_GameMgr::SetSkinFullPath_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
add esp, 4
push str.Resource.xml
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
push 0x423134
lea ecx, [esp + 0x20]
mov byte [esp + 0x204], 0x1e
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea edx, [esp + 0x74]
push edx
lea eax, [esp + 0x1bc]
push eax
lea ecx, [esp + 0x24]
push ecx
mov byte [esp + 0x20c], 0x1f
call dword [sym.imp.K8UIRender.dll_void___cdecl_GameMgr::EnumSkin_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
add esp, 0xc
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x1e
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], 0x1d
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
call fcn.004029d0
test al, al
jne 0x40329f
call fcn.00402a70
jmp 0x40365d
push 1
call dword [sym.imp.K8UIRender.dll_public:_static_void___cdecl_GameMgr::GMPaintManager::SetMessageLoopThreadFlag_bool_]
add esp, 4
lea ecx, [esp + 0x1d4]
call fcn.00412670
lea ecx, [esp + 0x48]
mov byte [esp + 0x200], 0x20
call dword [sym.imp.K8Common.dll_public:_void___thiscall_GameMgr::GMVersionInfo::constructor_void_]
push 0x423370
lea ecx, [esp + 0x20]
mov dword [esp + 0x4c], 2
mov dword [esp + 0x50], 4
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0x17ce
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea edx, [esp + 0x58]
push edi
push edx
mov byte [esp + 0x208], 0x21
call dword [sym.imp.K8Common.dll_public:_static_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_GameMgr::GMSharedLibrary::GetModuleFullName_struct_HINSTANCE____]
add esp, 8
mov esi, eax
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x4c]
mov byte [esp + 0x204], 0x22
call dword [sym.imp.K8Common.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____thiscall_GameMgr::GMVersionInfo::Format_void_]
mov byte [esp + 0x200], 0x23
mov ecx, dword [sym.imp.K8Common.dll_private:_static_long_int___stdcall_GameMgr::GMMemDumper::DefaultExceptHanler_struct__EXCEPTION_POINTERS__]
push ecx
push edi
push esi
push eax
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x1e8]
push 7
push eax
call dword [sym.imp.K8Common.dll_public:_static_class_GameMgr::GMMemDumper____cdecl_GameMgr::GMMemDumperSingleton::Instance_void_]
mov ecx, eax
call dword [sym.imp.K8Common.dll_public:_bool___thiscall_GameMgr::GMMemDumper::Install_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___bool__long_int____stdcall___struct__EXCEPTION_POINTERS___]
lea ecx, [esp + 0x74]
mov byte [esp + 0x200], 0x22
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x58]
mov byte [esp + 0x200], 0x21
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x20
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push str.true
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
lea ecx, [esp + 0x19c]
push ecx
lea edx, [esp + 0x20]
push edx
mov byte [esp + 0x208], 0x24
call dword [sym.imp.K8Common.dll_public:_static_int___cdecl_GameMgr::GMStringUtils::CompareNoCase_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
add esp, 8
test eax, eax
lea ecx, [esp + 0x1c]
sete byte [esp + 0x16]
mov byte [esp + 0x200], 0x20
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
push 0x3a8
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
mov dword [esp + 0x3c], esi
cmp esi, edi
mov byte [esp + 0x200], 0x25
je 0x40345a
cmp dword [esp + 0xe0], 8
mov eax, dword [esp + 0xcc]
jae 0x403409
lea eax, [esp + 0xcc]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x18]
push ecx
push edx
push edi
push eax
call dword [sym.imp.K8Common.dll_public:_static_long_long___int64____cdecl_GameMgr::GMStringUtils::ConvertStringToInt64_wchar_t_const___wchar_t_const___]
add esp, 8
push edx
push eax
lea eax, [esp + 0x190]
push eax
lea ecx, [esp + 0x178]
push ecx
lea edx, [esp + 0xc4]
push edx
lea eax, [esp + 0x164]
push eax
lea ecx, [esp + 0x104]
push ecx
lea edx, [esp + 0x124]
push edx
push esi
call fcn.00405c20
mov esi, eax
jmp 0x40345c
xor esi, esi
cmp esi, edi
mov byte [esp + 0x200], 0x20
jne 0x403572
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x200], 0x1d
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x11c]
mov byte [esp + 0x200], 8
call dword [sym.imp.K8Common.dll_public:_void___thiscall_GameMgr::GMCmdLineParser::destructor_void_]
lea ecx, [esp + 0x19c]
mov byte [esp + 0x200], 7
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x148]
mov byte [esp + 0x200], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x200], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x200], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x100]
mov byte [esp + 0x200], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x180]
mov byte [esp + 0x200], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x164]
mov byte [esp + 0x200], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xac]
mov byte [esp + 0x200], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x90]
mov dword [esp + 0x200], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
or eax, 0xffffffff
jmp 0x403748
cmp byte [esp + 0x16], 0
mov eax, dword [esp + 0x40]
mov dword [esi + 0x354], eax
mov edi, 0x16cf0000
mov dword [esp + 0x18], 0x100
je 0x40359d
mov edi, 0x6cf0000
mov dword [esp + 0x18], 0x180
lea ecx, [esp + 0x58]
push 0xb3
push ecx
call dword [sym.imp.K8UIRender.dll_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_GameMgr::LoadStr_unsigned_int_]
add esp, 8
mov byte [esp + 0x200], 0x26
cmp dword [eax + 0x18], 8
jb 0x4035c3
mov eax, dword [eax + 4]
jmp 0x4035c6
add eax, 4
mov edx, dword [esp + 0x18]
push 0
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push edx
push edi
push eax
push 0
mov ecx, esi
call dword [sym.imp.K8UIRender.dll_public:_struct_HWND______thiscall_GameMgr::GMWindowWnd::Create_struct_HWND_____wchar_t_const___unsigned_long_int__unsigned_long_int__int__int__int__int__struct_HMENU____]
test eax, eax
lea ecx, [esp + 0x58]
sete byte [esp + 0x17]
mov byte [esp + 0x200], 0x20
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
cmp byte [esp + 0x17], 0
jne 0x40346c
cmp byte [esp + 0x16], 0
je 0x403623
mov ebx, esi
call fcn.0040d6e0
mov bl, 9
jmp 0x403630
mov eax, dword [esi]
mov edx, dword [eax + 8]
push 1
push 1
mov ecx, esi
call edx
call dword [sym.imp.K8UIRender.dll_public:_static_void___cdecl_GameMgr::GMPaintManager::MessageLoop_void_]
call fcn.00403770
mov ecx, eax
call fcn.00417380
call dword [sym.imp.ole32.dll_OleUninitialize]
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x200], 0x1d
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x200], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x11c]
mov byte [esp + 0x200], 8
call dword [sym.imp.K8Common.dll_public:_void___thiscall_GameMgr::GMCmdLineParser::destructor_void_]
lea ecx, [esp + 0x19c]
mov byte [esp + 0x200], 7
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x148]
mov byte [esp + 0x200], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x200], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x200], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x100]
mov byte [esp + 0x200], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x180]
mov byte [esp + 0x200], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x164]
mov byte [esp + 0x200], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xac]
mov byte [esp + 0x200], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0x90]
mov dword [esp + 0x200], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor eax, eax
mov ecx, dword [esp + 0x1f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1e0]
xor ecx, esp
call fcn.0041cf41
mov esp, ebp
pop ebp
ret 0x10