Function at 0x4a3250
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x661277
mov eax, dword fs:[0]
push eax
sub esp, 0xec
mov eax, dword [0x70a0c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x54], ecx
cmp dword [ebp + 0xc], 0
je 0x4a3295
mov ecx, dword [ebp - 0x54]
add ecx, 0x20
call fcn.00489d50
cmp dword [ebp + 8], eax
jb 0x4a329a
jmp 0x4a37fd
mov ecx, dword [ebp + 0xc]
call dword [sym.imp.soui.dll_public:_unsigned_int___thiscall_SOUI::SWindow::GetChildrenCount_void_const]
test eax, eax
jne 0x4a32b8
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x28]
call eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x54]
add ecx, 0x20
call fcn.00492960
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp + 0xc]
call dword [sym.imp.soui.dll_public:_unsigned_long_int___thiscall_SOUI::SWindow::SetUserData_unsigned_long_int_]
mov ecx, dword [ebp - 0x54]
push ecx
push 0x4a3890
lea edx, [ebp - 0xd4]
push edx
call fcn.004a3fa0
add esp, 0xc
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x80], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x80]
push ecx
push 0x271a
mov ecx, dword [ebp + 0xc]
call dword [sym.imp.soui.dll_public:_class_SOUI::SEventSet____thiscall_SOUI::SWindow::GetEventSet_void_]
mov ecx, eax
call dword [sym.imp.soui.dll_public:_bool___thiscall_SOUI::SEventSet::subscribeEvent_unsigned_long_int__struct_SOUI::ISlotFunctor_const__]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd4]
call fcn.004a4910
mov edx, dword [ebp - 0x54]
push edx
push 0x4a38e0
lea eax, [ebp - 0xe0]
push eax
call fcn.004a3fa0
add esp, 0xc
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x88], ecx
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x88]
push edx
push 0x271b
mov ecx, dword [ebp + 0xc]
call dword [sym.imp.soui.dll_public:_class_SOUI::SEventSet____thiscall_SOUI::SWindow::GetEventSet_void_]
mov ecx, eax
call dword [sym.imp.soui.dll_public:_bool___thiscall_SOUI::SEventSet::subscribeEvent_unsigned_long_int__struct_SOUI::ISlotFunctor_const__]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe0]
call fcn.004a4910
push 0xffffffffffffffff
push str.m_game_item
mov ecx, dword [ebp + 0xc]
call fcn.00491dc0
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x4a377f
mov dword [ebp - 0x70], 0
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
push edx
call fcn.0046a540
mov ecx, eax
call fcn.0046c550
mov byte [ebp - 0x42], al
push 0xffffffffffffffff
push str.m_game_item_limit
mov ecx, dword [ebp - 0x48]
call fcn.0048e320
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x4a34a4
mov eax, dword [ebp - 0x70]
push eax
push 0x684478
lea ecx, [ebp - 0x94]
push ecx
lea ecx, [ebp - 0x98]
call dword [sym.imp.utilities.dll_public:_void___thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::constructor_void_]
mov dword [ebp - 0xb8], eax
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0xbc], edx
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0xbc]
push eax
call dword [sym.imp.utilities.dll_public:_class_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits____cdecl_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::Format_wchar_t_const__]
add esp, 0x10
mov dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0x90], ecx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x90]
call dword [sym.imp.utilities.dll_public:_wchar_t_const____thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::operator_wchar_t_const__void_const]
push eax
mov edx, dword [ebp - 0x58]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x58]
mov edx, dword [eax + 0x40]
call edx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x94]
call dword [sym.imp.utilities.dll_public:_void___thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x98]
call dword [sym.imp.utilities.dll_public:_void___thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::destructor_void_]
movzx eax, byte [ebp - 0x42]
test eax, eax
je 0x4a348e
mov dword [ebp - 0x74], 1
jmp 0x4a3495
mov dword [ebp - 0x74], 0
push 1
mov ecx, dword [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x58]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SWindow::SetVisible_int__int_]
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx]
push eax
call fcn.0046a540
mov ecx, eax
call fcn.0046c4b0
mov byte [ebp - 0x4d], al
push 0xffffffffffffffff
push str.m_game_item_national
mov ecx, dword [ebp - 0x48]
call fcn.0048e320
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
je 0x4a3512
push 0x6844b0
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [edx + 0x40]
call eax
movzx ecx, byte [ebp - 0x42]
test ecx, ecx
jne 0x4a34fc
movzx edx, byte [ebp - 0x4d]
test edx, edx
je 0x4a34fc
mov dword [ebp - 0x78], 1
jmp 0x4a3503
mov dword [ebp - 0x78], 0
push 1
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [ebp - 0x5c]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SWindow::SetVisible_int__int_]
push 0xffffffffffffffff
push 0x6844bc
mov ecx, dword [ebp - 0x48]
call fcn.0048de70
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
je 0x4a3597
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x68]
call dword [sym.imp.soui.dll_public:_unsigned_long_int___thiscall_SOUI::SWindow::SetUserData_unsigned_long_int_]
mov edx, dword [ebp - 0x54]
push edx
push 0x4a39d0
lea eax, [ebp - 0xec]
push eax
call fcn.004a3fa0
add esp, 0xc
mov dword [ebp - 0x9c], eax
mov ecx, dword [ebp - 0x9c]
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 4], 4
mov edx, dword [ebp - 0xa0]
push edx
push 0x2710
mov ecx, dword [ebp - 0x68]
call dword [sym.imp.soui.dll_public:_class_SOUI::SEventSet____thiscall_SOUI::SWindow::GetEventSet_void_]
mov ecx, eax
call dword [sym.imp.soui.dll_public:_bool___thiscall_SOUI::SEventSet::subscribeEvent_unsigned_long_int__struct_SOUI::ISlotFunctor_const__]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xec]
call fcn.004a4910
push 0xffffffffffffffff
push 0x6844e0
mov ecx, dword [ebp + 0xc]
call fcn.0048a5c0
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
je 0x4a361c
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x6c]
call dword [sym.imp.soui.dll_public:_unsigned_long_int___thiscall_SOUI::SWindow::SetUserData_unsigned_long_int_]
mov ecx, dword [ebp - 0x54]
push ecx
push 0x4a3930
lea edx, [ebp - 0xf8]
push edx
call fcn.004a3fa0
add esp, 0xc
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 4], 5
mov ecx, dword [ebp - 0xa8]
push ecx
push 0x2710
mov ecx, dword [ebp - 0x6c]
call dword [sym.imp.soui.dll_public:_class_SOUI::SEventSet____thiscall_SOUI::SWindow::GetEventSet_void_]
mov ecx, eax
call dword [sym.imp.soui.dll_public:_bool___thiscall_SOUI::SEventSet::subscribeEvent_unsigned_long_int__struct_SOUI::ISlotFunctor_const__]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf8]
call fcn.004a4910
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x48]
call dword [sym.imp.soui.dll_public:_unsigned_long_int___thiscall_SOUI::SWindow::SetUserData_unsigned_long_int_]
mov ecx, dword [ebp - 0x4c]
add ecx, 4
push ecx
mov edx, dword [ebp - 0x48]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x48]
mov edx, dword [eax + 0x40]
call edx
mov eax, dword [ebp - 0x4c]
add eax, 4
push eax
mov ecx, dword [ebp - 0x48]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x48]
mov eax, dword [edx + 0x44]
call eax
mov byte [ebp - 0x41], 1
lea ecx, [ebp - 0x40]
call fcn.004474e0
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.004474e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x64]
call fcn.0054e470
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x64]
call fcn.0054e5f0
lea ecx, [ebp - 0x28]
call fcn.0043dc00
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4a36d3
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x64]
call fcn.0054e490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.0043cfa0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.0043cfa0
jmp 0x4a376a
lea ecx, [ebp - 0x28]
call fcn.0043dc00
push eax
call dword [sym.imp.soui.dll_public:_static_struct_SOUI::IBitmap____cdecl_SOUI::SResLoadFromFile::LoadImageW_wchar_t_const__]
add esp, 4
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jne 0x4a3717
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x64]
call fcn.0054e490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.0043cfa0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.0043cfa0
jmp 0x4a376a
push 3
mov edx, dword [ebp - 0x60]
push edx
mov ecx, dword [ebp - 0x48]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SImageWnd::SetImage_struct_SOUI::IBitmap___enum_SOUI::FilterLevel_]
mov ecx, dword [ebp - 0x60]
add ecx, 4
mov eax, dword [ebp - 0x60]
mov edx, dword [eax + 4]
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 0x41], 0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x64]
call fcn.0054e490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.0043cfa0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.0043cfa0
xor ecx, ecx
jne 0x4a3657
movzx edx, byte [ebp - 0x41]
test edx, edx
je 0x4a377f
push 0
push 0
mov ecx, dword [ebp - 0x48]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SImageWnd::SetImage_struct_SOUI::IBitmap___enum_SOUI::FilterLevel_]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xb0], 0x4a3b00
sub esp, 0x28
mov esi, esp
mov dword [ebp - 0xc4], esp
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0xc8], esp
push 0x684438
lea edx, [ebp - 0xac]
push edx
lea eax, [ebp - 0xb0]
push eax
push ecx
call fcn.004a42a0
add esp, 0x10
mov ecx, esi
call fcn.004a3ea0
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0xb4]
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 4], 9
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx]
push eax
call fcn.00536c00
mov dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00536de0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005c7840
mov esp, ebp
pop ebp
ret 0xc