Function at 0x180070ce4
Capabilities:
Get file size
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x330
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x1800f18c0]
xor rax, rsp
mov qword [rsp + 0x320], rax
mov r12, rdx
mov r13, rcx
call sym.VKD.dll_public:_static_class_DuiLib::CDuiString_const____ptr64___cdecl_DuiLib::CPaintManagerUI::GetResourcePath_void_
mov rdx, rax
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::constructor_class_DuiLib::CDuiString_const____ptr64____ptr64
nop
call sym.VKD.dll_public:_static_class_DuiLib::CDuiString_const____ptr64___cdecl_DuiLib::CPaintManagerUI::GetResourceZip_void_
mov rcx, rax
call sym.VKD.dll_public:_bool___cdecl_DuiLib::CDuiString::IsEmpty_void_const___ptr64
test al, al
je 0x180070e14
mov rdx, r12
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_class_DuiLib::CDuiString_const____ptr64___cdecl_DuiLib::CDuiString::operator_wchar_t_const____ptr64____ptr64
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_wchar_t_const____ptr64___cdecl_DuiLib::CDuiString::operator_wchar_t_const____ptr64_void_const___ptr64
mov rcx, rax
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x180070d9c
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
test eax, eax
jne 0x180070dbc
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
and dword [rsp + 0x40], 0
mov rbp, rbx
mov rcx, rbx
call fcn.18002d8d0
mov rdi, rax
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, ebx
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rsp + 0x40], ebx
je 0x180070f1d
mov rcx, rdi
call fcn.180088960
nop
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
call sym.VKD.dll_public:_static_class_DuiLib::CDuiString_const____ptr64___cdecl_DuiLib::CPaintManagerUI::GetResourceZip_void_
mov rdx, rax
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_class_DuiLib::CDuiString_const____ptr64___cdecl_DuiLib::CDuiString::operator_class_DuiLib::CDuiString_const____ptr64____ptr64
call sym.VKD.dll_public:_static_bool___cdecl_DuiLib::CPaintManagerUI::IsCachedResourceZip_void_
test al, al
je 0x180070e39
call sym.VKD.dll_public:_static_void____ptr64___cdecl_DuiLib::CPaintManagerUI::GetResourceZipHandle_void_
mov rbx, rax
jmp 0x180070e54
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_wchar_t_const____ptr64___cdecl_DuiLib::CDuiString::operator_wchar_t_const____ptr64_void_const___ptr64
mov rcx, rax
xor edx, edx
lea r8d, [rdx + 2]
call fcn.18007bc3c
mov rbx, rax
test rbx, rbx
jne 0x180070e68
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
mov r8b, 1
mov rdx, r12
mov rcx, rbx
call fcn.180079f38
test eax, eax
je 0x180070e9b
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
mov esi, dword [rsp + 0x31c]
test esi, esi
jne 0x180070eb2
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
mov rbp, rsi
mov rcx, rsi
call fcn.18002d8d0
mov rdi, rax
mov dword [rsp + 0x20], 3
mov r9d, esi
mov r8, rax
mov edx, dword [rsp + 0x48]
mov rcx, rbx
call fcn.18007bcd0
test eax, eax
je 0x180070f0b
cmp eax, 0x600
je 0x180070f0b
mov rcx, rdi
call fcn.180088960
call sym.VKD.dll_public:_static_bool___cdecl_DuiLib::CPaintManagerUI::IsCachedResourceZip_void_
test al, al
jne 0x180070eff
mov rcx, rbx
call fcn.18007bd08
nop
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
jmp 0x180070f30
call sym.VKD.dll_public:_static_bool___cdecl_DuiLib::CPaintManagerUI::IsCachedResourceZip_void_
test al, al
jne 0x180070f1d
mov rcx, rbx
call fcn.18007bd08
nop
lea rcx, [rsp + 0x60]
call sym.VKD.dll_public:_void___cdecl_DuiLib::CDuiString::destructor_void____ptr64
test rdi, rdi
jne 0x180070fc4
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x180070fc0
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
test eax, eax
je 0x180070fc0
and dword [rsp + 0x44], 0
mov rbp, rbx
mov rcx, rbx
call fcn.18002d8d0
mov rdi, rax
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov r8d, ebx
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rsp + 0x44], ebx
je 0x180070fbb
mov rcx, rdi
call fcn.180088960
xor edi, edi
test rdi, rdi
jne 0x180070fc4
xor eax, eax
jmp 0x180070fe0
mov r8, rbp
mov rdx, rdi
mov rcx, r13
call sym.VKD.dll_private:_class_Gdiplus::Image____ptr64___cdecl_DuiLib::CGifAnimUI::LoadGifFromMemory_void____ptr64__unsigned_long_long_unsigned___int64_____ptr64
mov rbx, rax
mov rcx, rdi
call fcn.180088960
mov rax, rbx
mov rcx, qword [rsp + 0x320]
xor rcx, rsp
call fcn.180087cc0
mov rbx, qword [rsp + 0x370]
add rsp, 0x330
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret