Function at 0x421360
Capabilities:
Print debug messages
Set current directory

Disassembly:
sub esp, 0x20c
mov eax, dword [esp + 0x210]
push ebp
push esi
mov esi, ecx
push edi
mov ecx, 0x40
mov dword [esi + 0x18668], eax
xor eax, eax
lea edi, [esp + 0x11]
mov byte [esp + 0x10], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0xc]
push ecx
stosb byte es:[edi], al
call fcn.00463fe7
mov edx, dword [eax]
add esp, 4
lea eax, [esp + 0x10]
push edx
push str._sdata
push 0x103
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x10
lea ecx, [esp + 0xc]
call sub.MFC42.DLL_CString::CString
mov ebp, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea ecx, [esp + 0x10]
push ecx
call ebp
mov ecx, esi
call fcn.00429690
mov ecx, 0x4a9190
mov dword [esi + 0x215b0], eax
call fcn.0044a630
mov dword [esi + 0x98], eax
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x115]
mov byte [esp + 0x114], 0
lea edx, [esp + 0x114]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push edx
stosb byte es:[edi], al
call sub.CLUINewEngine.dll_void___cdecl_QGEG::HELPER::GetRootPath_char__
add esp, 4
lea eax, [esp + 0x114]
push eax
call ebp
push 0
call sub.CLUINewEngine.dll_public:_static_class_IDisplay____cdecl_CxImage::CreateDisplay_char_const__
add esp, 4
mov dword [esi + 0x1c], eax
test eax, eax
push 0
jne 0x421448
push 0
push str.CxImage::CreateDisplay_2D_D3D8__Failed_
call sub.MFC42.DLL_AfxMessageBox_1
pop edi
pop esi
pop ebp
add esp, 0x20c
ret 4
mov ebp, dword [sym.imp.USER32.dll_GetSystemMetrics]
call ebp
push 1
mov edi, eax
call ebp
cmp edi, 0x320
mov ebp, eax
jge 0x421465
mov edi, 0x320
cmp ebp, 0x258
jge 0x421472
mov ebp, 0x258
mov eax, dword [0x4a91b0]
test eax, eax
je 0x42147e
mov eax, dword [eax + 0x20]
mov ecx, dword [esi + 0x1c]
push ebp
push edi
push eax
mov edx, dword [ecx]
call dword [edx + 0xc]
test eax, eax
je 0x42153d
call sub.CLUINewEngine.dll_public:_static_void___cdecl_CxImage::DestroyDisplay_void_
push 0x481e18
call sub.CLUINewEngine.dll_public:_static_class_IDisplay____cdecl_CxImage::CreateDisplay_char_const__
add esp, 4
mov dword [esi + 0x1c], eax
test eax, eax
jne 0x4214b1
push str.2_CxImage::CreateDisplay_2D__Failed_
jmp 0x4214d1
mov ecx, dword [0x4a91b0]
test ecx, ecx
je 0x4214be
mov ecx, dword [ecx + 0x20]
mov edx, dword [eax]
push ebp
push edi
push ecx
mov ecx, eax
call dword [edx + 0xc]
test eax, eax
je 0x42153d
push str.2_Create_DirectDraw_Failed_
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call sub.CLUINewEngine.dll_public:_static_void___cdecl_CxImage::DestroyDisplay_void_
push str.D3D8
call sub.CLUINewEngine.dll_public:_static_class_IDisplay____cdecl_CxImage::CreateDisplay_char_const__
add esp, 4
mov dword [esi + 0x1c], eax
test eax, eax
jne 0x421508
push eax
push eax
push str.3_CxImage::CreateDisplay_D3D8__Failed__n
call sub.MFC42.DLL_AfxMessageBox_1
pop edi
pop esi
pop ebp
add esp, 0x20c
ret 4
mov ecx, dword [0x4a91b0]
test ecx, ecx
je 0x421515
mov ecx, dword [ecx + 0x20]
mov edx, dword [eax]
push ebp
push edi
push ecx
mov ecx, eax
call dword [edx + 0xc]
test eax, eax
je 0x42153d
push 0
push 0
push str.3_Create_D3D8_Failed__n
call sub.MFC42.DLL_AfxMessageBox_1
pop edi
pop esi
pop ebp
add esp, 0x20c
ret 4
call sub.CLUINewEngine.dll_public:_static_void___cdecl_CxImage::Initialize_void_
mov ecx, esi
call fcn.00424c80
lea ecx, [esi + 0x6588]
call fcn.00455770
lea ecx, [esi + 0xedac]
call fcn.00442520
lea ecx, [esi + 0x11e74]
call fcn.00402e00
lea ecx, [esi + 0x18684]
call fcn.004582e0
push 1
lea ecx, [esi + 0x186f4]
call fcn.00458a70
push 1
lea ecx, [esi + 0x1aa8c]
call fcn.00458a70
push 2
lea ecx, [esi + 0x1ce24]
call fcn.00458a70
push 2
lea ecx, [esi + 0x1f1bc]
call fcn.00458a70
lea ecx, [esi + 0x6324]
call fcn.004610b0
mov ecx, esi
call fcn.0042a3a0
mov ecx, esi
call fcn.00424eb0
push 2
mov ecx, esi
mov dword [esi + 0x18640], 1
call fcn.00421ee0
push 0
push 0
push 0
push str.dataotherexFloatingLayerBGBig.mif
lea ecx, [esi + 0x2167c]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.datadataotherexFloatingLayerBGSmall.mif
lea ecx, [esi + 0x216a0]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.dataotherexFloatingLayerKick.mif
lea ecx, [esi + 0x216c4]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.dataotherexFloatingLayerFriend.mif
lea ecx, [esi + 0x216e8]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.dataotherexFloatingLayerInfo.mif
lea ecx, [esi + 0x2170c]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.datadataotherexFloatingLayerTip.mif
lea ecx, [esi + 0x21730]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
push 0
push 0
push 0
push str.dataotherex_score.mif
lea ecx, [esi + 0x21754]
call sub.CLUINewEngine.dll_public:_bool___thiscall_CxImage::CreateImageFromFile_char_const___struct_IDisplay::_SELECT_PARA___unsigned_int__unsigned_long_int__
test esi, esi
je 0x421678
lea eax, [esi + 0x14]
jmp 0x42167a
xor eax, eax
push str.data_popo_popo_magic.mif
push eax
mov ecx, 0x487638
call fcn.0045a360
push 0xffffffffffffffff
mov ecx, 0x487638
call fcn.0045ada0
pop edi
pop esi
pop ebp
add esp, 0x20c
ret 4