Function at 0x14001c860
Capabilities:
Set current directory

Disassembly:
push rbx
sub rsp, 0x350
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rax, qword [0x140109010]
xor rax, rsp
mov qword [rsp + 0x340], rax
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x130]
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x104
lea rdx, [rsp + 0x130]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x14001cabb
mov edx, 0x104
lea rcx, [rsp + 0x130]
call qword [sym.imp.api_ms_win_core_path_l1_1_0.dll_PathCchRemoveFileSpec]
test eax, eax
jne 0x14001cabb
lea rcx, [rsp + 0x130]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
jne 0x14001c95f
lea rcx, [rsp + 0x30]
call fcn.1400124e0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.SetCurrentDirectory_fail__error_code:
lea rcx, [rsp + 0x40]
call fcn.1400138a0
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400b7d10]
call fcn.1400138a0
mov rcx, rax
lea rdx, str.PathSetInit
call fcn.140013a90
mov rcx, rax
lea rdx, [0x1400b7d0c]
call fcn.1400138a0
call qword [sym.imp.LogHelper.dll_public:_static_class_HwLogger____ptr64___cdecl_HwLogger::GetInstance_void_]
mov rcx, rax
lea r8, [rsp + 0x30]
mov edx, 4
call qword [sym.imp.LogHelper.dll_public:_void___cdecl_HwLogger::Log_enum_LOG_MESSAGE_LEVEL__class_std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64____ptr64]
nop
jmp 0x14001cb31
call qword [sym.imp.ProductAdaptMgr.dll_public:_static_class_MBASoftShelf____ptr64___cdecl_MBASoftShelf::GetInstance_void_]
mov rcx, rax
call qword [sym.imp.ProductAdaptMgr.dll_public:_bool___cdecl_MBASoftShelf::IsWhiteLogoMachineType_void____ptr64]
mov edx, 0x104
lea rcx, [rsp + 0x130]
test al, al
je 0x14001ca13
lea r8, str.res_values_whitelogo_
call qword [sym.imp.api_ms_win_core_path_l1_1_0.dll_PathCchAppend]
test eax, eax
je 0x14001ca9f
lea rcx, [rsp + 0x30]
call fcn.1400124e0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.fail_to_append_values_path._error
lea rcx, [rsp + 0x40]
call fcn.140013a90
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400b7d10]
call fcn.1400138a0
mov rcx, rax
lea rdx, str.PathSetInit
call fcn.140013a90
mov rcx, rax
lea rdx, [0x1400b7d0c]
call fcn.1400138a0
call qword [sym.imp.LogHelper.dll_public:_static_class_HwLogger____ptr64___cdecl_HwLogger::GetInstance_void_]
mov rcx, rax
lea r8, [rsp + 0x30]
mov edx, 4
call qword [sym.imp.LogHelper.dll_public:_void___cdecl_HwLogger::Log_enum_LOG_MESSAGE_LEVEL__class_std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64____ptr64]
nop
jmp 0x14001cb31
lea r8, str.res_values_
call qword [sym.imp.api_ms_win_core_path_l1_1_0.dll_PathCchAppend]
test eax, eax
je 0x14001ca9f
lea rcx, [rsp + 0x30]
call fcn.1400124e0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.fail_to_append_values_path._error
lea rcx, [rsp + 0x40]
call fcn.140013a90
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400b7d10]
call fcn.1400138a0
mov rcx, rax
lea rdx, str.PathSetInit
call fcn.140013a90
mov rcx, rax
lea rdx, [0x1400b7d0c]
call fcn.1400138a0
call qword [sym.imp.LogHelper.dll_public:_static_class_HwLogger____ptr64___cdecl_HwLogger::GetInstance_void_]
mov rcx, rax
lea r8, [rsp + 0x30]
mov edx, 4
call qword [sym.imp.LogHelper.dll_public:_void___cdecl_HwLogger::Log_enum_LOG_MESSAGE_LEVEL__class_std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64____ptr64]
nop
jmp 0x14001cb31
call qword [sym.imp.DuiLib.dll_public:_static_class_DuiLib::UICulture____ptr64___cdecl_DuiLib::UICulture::GetInstance_void_]
mov r8, qword [rax]
lea rdx, [rsp + 0x130]
mov rcx, rax
call qword [r8]
jmp 0x14001cb3b
lea rcx, [rsp + 0x30]
call fcn.1400124e0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.fail_to_get_cur_module_path._error
lea rcx, [rsp + 0x40]
call fcn.140013a90
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400b7d10]
call fcn.1400138a0
mov rcx, rax
lea rdx, str.PathSetInit
call fcn.140013a90
mov rcx, rax
lea rdx, [0x1400b7d0c]
call fcn.1400138a0
call qword [sym.imp.LogHelper.dll_public:_static_class_HwLogger____ptr64___cdecl_HwLogger::GetInstance_void_]
mov rcx, rax
lea r8, [rsp + 0x30]
mov edx, 4
call qword [sym.imp.LogHelper.dll_public:_void___cdecl_HwLogger::Log_enum_LOG_MESSAGE_LEVEL__class_std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______ptr64____ptr64]
nop
lea rcx, [rsp + 0x30]
call fcn.14000e840
mov rcx, qword [rsp + 0x340]
xor rcx, rsp
call fcn.140093940
add rsp, 0x350
pop rbx
ret