Function at 0x10035cde
Capabilities:
Check if file exists
Get common file path

Disassembly:
push 0x518
mov eax, 0x101dcfc4
call fcn.1005d984
mov edi, ecx
mov edx, dword [ebp + 8]
xor ebx, ebx
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebp - 0x43c], 7
mov dword [ebp - 0x440], ebx
mov word [ebp - 0x450], cx
push eax
push edx
mov ecx, edi
mov dword [ebp - 4], ebx
call fcn.10035795
mov esi, eax
test esi, esi
je 0x10036093
mov edx, dword [esi]
lea eax, [ebp - 0x51c]
push eax
mov ecx, esi
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 1
call dword [sym.imp.DuiLib32.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
mov ebx, eax
xor eax, eax
cmp word [ebx], ax
je 0x10035d50
push ebx
call fcn.1008133f
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x450]
call fcn.10002750
xor ebx, ebx
lea ecx, [ebp - 0x51c]
mov byte [ebp - 4], bl
call dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
push 0x10270410
lea ecx, [ebp - 0x450]
call fcn.100218cf
test eax, eax
jne 0x10035dcd
mov eax, dword [esi]
lea ecx, [ebp - 0x51c]
push ecx
mov ecx, esi
call dword [eax + 0x98]
mov ecx, eax
mov byte [ebp - 4], 2
call dword [sym.imp.DuiLib32.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
mov ebx, eax
xor eax, eax
cmp word [ebx], ax
je 0x10035daf
push ebx
call fcn.1008133f
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x450]
call fcn.10002750
xor ebx, ebx
lea ecx, [ebp - 0x51c]
mov byte [ebp - 4], bl
call dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
mov eax, dword [edi + 0x3b8]
cmp eax, 1
je 0x10036068
test eax, eax
je 0x10036068
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc4]
mov ecx, eax
call dword [sym.imp.DuiLib32.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
push eax
lea ecx, [ebp - 0x468]
call fcn.100025f0
mov ebx, 0x208
mov byte [ebp - 4], 3
push ebx
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.10079740
push ebx
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.10079740
add esp, 0x18
lea eax, [ebp - 0x420]
mov ebx, 0x104
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push ebx
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
and dword [ebp - 0x428], 0
xor eax, eax
mov dword [ebp - 0x424], 7
mov word [ebp - 0x438], ax
cmp word [ebp - 0x218], ax
je 0x10035e84
lea eax, [ebp - 0x218]
push eax
call fcn.1008133f
pop ecx
push eax
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x438]
call fcn.10002750
mov ebx, str.Face_
mov byte [ebp - 4], 4
push ebx
call fcn.1008133f
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x438]
call fcn.10004340
push 0xffffffffffffffff
xor ebx, ebx
lea eax, [ebp - 0x468]
push ebx
push eax
lea ecx, [ebp - 0x438]
call fcn.10004470
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.10061f53
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
pop ecx
cmovae eax, dword [ebp - 0x438]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x10035f20
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.1007309d
pop ecx
cmp dword [ebp - 0x424], 8
lea ecx, [ebp - 0x438]
cmovae ecx, dword [ebp - 0x438]
push ecx
mov eax, esp
mov dword [eax], ecx
lea ecx, [ebp - 0x468]
cmp dword [ebp - 0x454], 8
cmovae ecx, dword [ebp - 0x468]
push ecx
mov eax, esp
mov dword [eax], ecx
call dword [sym.imp.DuiLib32.dll_public:_static_int___cdecl_DuiLib::CRenderEngine::SaveFileFrmZip_class_DuiLib::STRINGorID__class_DuiLib::STRINGorID_]
pop ecx
pop ecx
test eax, eax
je 0x1003604a
lea ecx, [ebp - 0x51d]
call fcn.100760f0
push 1
lea ecx, [ebp - 0x51d]
mov byte [ebp - 4], 5
call fcn.10043816
mov eax, dword [esi]
lea ecx, [ebp - 0x51c]
push ecx
mov ecx, esi
call dword [eax + 0x98]
mov ecx, eax
mov byte [ebp - 4], 6
call dword [sym.imp.DuiLib32.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::GetData_void_const]
push eax
lea ecx, [ebp - 0x498]
call fcn.100025f0
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
lea ecx, [ebp - 0x480]
mov byte [ebp - 4], 7
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.100025f0
lea eax, [ebp - 0x498]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x480]
push eax
lea ecx, [ebp - 0x51d]
call fcn.1007672d
push ebx
push 1
lea ecx, [ebp - 0x480]
call fcn.10002690
push ebx
push 1
lea ecx, [ebp - 0x498]
call fcn.10002690
lea ecx, [ebp - 0x51c]
call dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
mov esi, dword [sym.imp.USER32.dll_keybd_event]
push ebx
push ebx
push ebx
mov ebx, 0xa2
push ebx
call esi
xor eax, eax
push eax
push eax
push eax
push 0x56
call esi
xor eax, eax
push eax
push 2
push eax
push 0x56
call esi
xor eax, eax
push eax
push 2
push eax
push ebx
call esi
lea ecx, [ebp - 0x51d]
call sym.Plugin.dll_CleanUpPluginSystemManager
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x438]
call fcn.10002690
push ebx
push 1
lea ecx, [ebp - 0x468]
call fcn.10002690
jmp 0x10036080
sub esp, 0x18
lea eax, [ebp - 0x450]
mov ecx, esp
push eax
call fcn.10004160
mov ecx, edi
call fcn.1003a665
mov eax, dword [edi + 0x39c]
test eax, eax
je 0x10036093
push 1
push eax
call dword [sym.imp.USER32.dll_SwitchToThisWindow]
push ebx
push 1
lea ecx, [ebp - 0x450]
call fcn.10002690
call fcn.1005d93f
ret 8