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

Disassembly:
push 0x518
mov eax, 0x101db849
call fcn.1005d8df
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.100355ae
mov esi, eax
test esi, esi
je 0x10035eac
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 0x10035b69
push ebx
call fcn.100802ff
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x450]
call fcn.100026f0
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 0x1026dd78
lea ecx, [ebp - 0x450]
call fcn.100218da
test eax, eax
jne 0x10035be6
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 0x10035bc8
push ebx
call fcn.100802ff
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x450]
call fcn.100026f0
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 0x10035e81
test eax, eax
je 0x10035e81
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.10002590
mov ebx, 0x208
mov byte [ebp - 4], 3
push ebx
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.10078730
push ebx
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.10078730
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 0x10035c9d
lea eax, [ebp - 0x218]
push eax
call fcn.100802ff
pop ecx
push eax
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x438]
call fcn.100026f0
mov ebx, str.Face_
mov byte [ebp - 4], 4
push ebx
call fcn.100802ff
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x438]
call fcn.100042e0
push 0xffffffffffffffff
xor ebx, ebx
lea eax, [ebp - 0x468]
push ebx
push eax
lea ecx, [ebp - 0x438]
call fcn.10004410
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.10061bf5
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 0x10035d39
cmp dword [ebp - 0x424], 8
lea eax, [ebp - 0x438]
cmovae eax, dword [ebp - 0x438]
push eax
call fcn.1007229f
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 0x10035e63
lea ecx, [ebp - 0x51d]
call fcn.100750f0
push 1
lea ecx, [ebp - 0x51d]
mov byte [ebp - 4], 5
call fcn.1004174e
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.10002590
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.10002590
lea eax, [ebp - 0x498]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x480]
push eax
lea ecx, [ebp - 0x51d]
call fcn.1007572d
push ebx
push 1
lea ecx, [ebp - 0x480]
call fcn.10002630
push ebx
push 1
lea ecx, [ebp - 0x498]
call fcn.10002630
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.10002630
push ebx
push 1
lea ecx, [ebp - 0x468]
call fcn.10002630
jmp 0x10035e99
sub esp, 0x18
lea eax, [ebp - 0x450]
mov ecx, esp
push eax
call fcn.10004100
mov ecx, edi
call fcn.1003a444
mov eax, dword [edi + 0x39c]
test eax, eax
je 0x10035eac
push 1
push eax
call dword [sym.imp.USER32.dll_SwitchToThisWindow]
push ebx
push 1
lea ecx, [ebp - 0x450]
call fcn.10002630
call fcn.1005d89a
ret 8