Function at 0x4026a0
Capabilities:
Check if file exists
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43db21
mov eax, dword fs:[0]
push eax
sub esp, 0x664
mov eax, dword [0x45d070]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51]
test al, 1
jne 0x4026ea
or eax, 1
push 0x4427b0
mov dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51], eax
call fcn.0043be9d
add esp, 4
push ecx
mov ecx, sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
call fcn.00420b70
call fcn.0040fb40
mov ecx, eax
call fcn.004101e0
mov eax, dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51]
test al, 1
jne 0x40271f
or eax, 1
push 0x4427b0
mov dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51], eax
call fcn.0043be9d
add esp, 4
xor eax, eax
mov dword [ebp - 0x65c], 7
mov dword [ebp - 0x660], 0
mov word [ebp - 0x670], ax
cmp word [sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst], ax
jne 0x402749
xor ecx, ecx
jmp 0x402760
mov ecx, sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402751
sub ecx, edx
sar ecx, 1
push ecx
push sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea ecx, [ebp - 0x670]
call fcn.00405db0
xor eax, eax
push 0x206
mov dword [ebp - 4], 0
push eax
mov word [ebp - 0x420], ax
lea eax, [ebp - 0x41e]
push eax
call sub.MSVCR110.dll_memset
mov esi, dword [sym.imp.SHLWAPI.dll_PathCombineW]
add esp, 0xc
cmp dword [ebp - 0x65c], 8
lea eax, [ebp - 0x670]
cmovae eax, dword [ebp - 0x670]
push str.skin2gameoapp_style_style.xml
push eax
lea eax, [ebp - 0x420]
push eax
call esi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x628], ax
lea eax, [ebp - 0x626]
push eax
call sub.MSVCR110.dll_memset
add esp, 0xc
cmp dword [ebp - 0x65c], 8
lea eax, [ebp - 0x670]
cmovae eax, dword [ebp - 0x670]
push str.skin2gameoappimage_resource.xml
push eax
lea eax, [ebp - 0x628]
push eax
call esi
push 0
push 0
push 0
lea eax, [ebp - 0x628]
push eax
lea eax, [ebp - 0x420]
push eax
push dword [0x460548]
call dword [sym.imp.ouilibx.dll_public:_static_class_OUI::COUIManager____cdecl_OUI::COUIManager::GetUIManager_void_]
mov ecx, eax
call dword [sym.imp.ouilibx.dll_public:_bool___thiscall_OUI::COUIManager::Initialize_struct_HINSTANCE_____wchar_t___wchar_t___wchar_t___wchar_t___bool_]
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push eax
call sub.MSVCR110.dll_memset
add esp, 0xc
cmp dword [ebp - 0x65c], 8
lea eax, [ebp - 0x670]
cmovae eax, dword [ebp - 0x670]
push str.langgamebox_lang.xml
push eax
lea eax, [ebp - 0x218]
push eax
call esi
lea eax, [ebp - 0x218]
push 0x444e90
push eax
call dword [sym.imp.ouilibx.dll_public:_static_class_OUI::OSTRING_TABLE____cdecl_OUI::OSTRING_TABLE::GetStringTable_void_]
mov ecx, eax
call dword [sym.imp.ouilibx.dll_public:_bool___thiscall_OUI::OSTRING_TABLE::UpdateStringTableXML_wchar_t_const___wchar_t_const__]
mov eax, dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51]
test al, 1
jne 0x4028a1
or eax, 1
push 0x4427b0
mov dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51], eax
call fcn.0043be9d
add esp, 4
xor eax, eax
mov dword [ebp - 0x644], 7
mov dword [ebp - 0x648], 0
mov word [ebp - 0x658], ax
cmp word [sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst], ax
jne 0x4028cb
xor ecx, ecx
jmp 0x4028e2
mov ecx, sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4028d3
sub ecx, edx
sar ecx, 1
push ecx
push sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea ecx, [ebp - 0x658]
call fcn.00405db0
push 6
push str.cache
lea ecx, [ebp - 0x658]
mov byte [ebp - 4], 1
call fcn.00403750
cmp dword [ebp - 0x644], 8
lea eax, [ebp - 0x658]
cmovae eax, dword [ebp - 0x658]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x402947
cmp dword [ebp - 0x644], 8
lea eax, [ebp - 0x658]
cmovae eax, dword [ebp - 0x658]
push 0
push eax
call esi
mov eax, dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51]
test al, 1
jne 0x402965
or eax, 1
push 0x4427b0
mov dword [sym.Gamebox.exe____B_1__GetInstance___CSingleton_VCOPathManager___oopa__SAPAVCOPathManager__XZ_51], eax
call fcn.0043be9d
add esp, 4
xor eax, eax
mov dword [ebp - 0x62c], 7
mov dword [ebp - 0x630], 0
mov word [ebp - 0x640], ax
cmp word [sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst], ax
jne 0x40298f
xor ecx, ecx
jmp 0x4029a6
mov ecx, sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402997
sub ecx, edx
sar ecx, 1
push ecx
push sym.Gamebox.exe_class_COPathManager__public:_static_class_COPathManager____cdecl_oopa::CSingleton_class_COPathManager_::GetInstance_void_::_2::inst
lea ecx, [ebp - 0x640]
call fcn.00405db0
push 6
push 0x444eac
lea ecx, [ebp - 0x640]
mov byte [ebp - 4], 2
call fcn.00403750
cmp dword [ebp - 0x62c], 8
lea eax, [ebp - 0x640]
cmovae eax, dword [ebp - 0x640]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x402a05
cmp dword [ebp - 0x62c], 8
lea eax, [ebp - 0x640]
cmovae eax, dword [ebp - 0x640]
push 0
push eax
call esi
cmp dword [ebp - 0x62c], 8
mov esi, dword [sym.imp.MSVCR110.dll_void___cdecl_operator_delete_void__]
jb 0x402a1f
push dword [ebp - 0x640]
call esi
add esp, 4
xor eax, eax
cmp dword [ebp - 0x644], 8
mov dword [ebp - 0x62c], 7
mov dword [ebp - 0x630], 0
mov word [ebp - 0x640], ax
jb 0x402a50
push dword [ebp - 0x658]
call esi
add esp, 4
xor eax, eax
cmp dword [ebp - 0x65c], 8
mov dword [ebp - 0x644], 7
mov dword [ebp - 0x648], 0
mov word [ebp - 0x658], ax
jb 0x402a81
push dword [ebp - 0x670]
call esi
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043bd5c
mov esp, ebp
pop ebp
ret