Function at 0x14000e0f0
Capabilities:
Check if file exists

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rsp + 0x1c0], rbx
mov rax, qword [0x140040008]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rdx
mov rcx, rdx
call qword [sym.imp.ac1st22.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14000e156
mov rcx, rbx
call qword [sym.imp.ac1st22.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
xor al, al
jmp 0x14000e34d
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
call qword [sym.imp.ac1st22.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.14000e6a0
nop
mov qword [rsp + 0x60], 7
xor esi, esi
mov qword [rsp + 0x58], rsi
mov word [rsp + 0x48], si
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x70]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
call fcn.14000f9c0
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x14000e265
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14000e227
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ac1st22.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
lea rcx, [rdi + 8]
lea r8, [rsp + 0x30]
mov edx, dword [rcx + 0xc]
call fcn.14000fb40
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.ac1st22.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x70]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
call fcn.14000f9c0
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
je 0x14000e1d2
cmp dword [rdi + 0x14], 0
setg dil
mov rax, qword [rsp + 0x60]
cmp rax, 8
jb 0x14000e2e5
inc rax
mov rcx, qword [rsp + 0x48]
movabs rdx, 0x7fffffffffffffff
cmp rax, rdx
jbe 0x14000e296
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
add rax, rax
cmp rax, 0x1000
jb 0x14000e2df
test byte [rsp + 0x48], 0x1f
je 0x14000e2af
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x14000e2bf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
sub rcx, rax
cmp rcx, 8
jae 0x14000e2cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp rcx, 0x27
jbe 0x14000e2dc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rax
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonUndo::XElementButtonUndo]
mov qword [rsp + 0x60], 7
mov qword [rsp + 0x58], rsi
mov word [rsp + 0x48], si
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x70], rax
mov rcx, qword [rsp + 0x70]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0xb0]
mov dword [rsp + rdx + 0x6c], r8d
lea rcx, [rbp - 0x80]
call fcn.14000f220
lea rcx, [rbp - 0x78]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0x20]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
nop
mov rcx, rbx
call qword [sym.imp.ac1st22.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
movzx eax, dil
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.140024e80
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x190
pop rdi
pop rsi
pop rbp
ret