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

Disassembly:
push 0x2c4
mov eax, 0x1029bc81
call fcn.1010062a
mov dword [ebp - 0x2d0], ecx
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x94]
push sym.nsDui.dll_class_DuiLib::CDuiString_DuiLib::CPaintManagerUI::m_pStrResourcePath
mov dword [ebp - 0x2c8], ebx
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::constructor_class_DuiLib::CDuiString_const__
xor edi, edi
mov dword [ebp - 4], edi
mov eax, dword [sym.nsDui.dll_class_DuiLib::CDuiString_DuiLib::CPaintManagerUI::m_pStrResourceZip]
cmp word [eax], di
jne 0x100c3333
test ebx, ebx
je 0x100c329f
push ebx
lea ecx, [ebp - 0x94]
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::Append_wchar_t_const__
push edi
push 0x80
push 3
push edi
push 1
push accept
push dword [ebp - 0x94]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x100c32d6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_
jmp 0x100c3409
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
test esi, esi
je 0x100c32c2
push esi
mov dword [ebp - 0x2cc], edi
call fcn.10100009
pop ecx
push 0
mov edi, eax
lea eax, [ebp - 0x2cc]
push eax
push esi
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x2cc], esi
je 0x100c33f4
push edi
call fcn.100ff9f0
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_
jmp 0x100c3407
push eax
lea ecx, [ebp - 0x94]
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::Append_wchar_t_const__
cmp byte [sym.nsDui.dll_bool_DuiLib::CPaintManagerUI::m_bCachedResourceZip], 0
je 0x100c3350
mov ebx, dword [sym.nsDui.dll_void__DuiLib::CPaintManagerUI::m_hResourceZip]
jmp 0x100c3362
mov ecx, dword [ebp - 0x94]
xor edx, edx
push 2
call fcn.100ab32b
pop ecx
mov ebx, eax
test ebx, ebx
je 0x100c32c2
mov edx, dword [ebp - 0x2c8]
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x2cc]
push eax
push ecx
mov ecx, ebx
call fcn.100ab390
add esp, 0xc
test eax, eax
jne 0x100c32c2
mov esi, dword [ebp - 0x98]
test esi, esi
je 0x100c32c2
push esi
call fcn.10100009
mov edx, dword [ebp - 0x2cc]
mov edi, eax
push esi
push edi
mov ecx, ebx
call fcn.100ab490
add esp, 0xc
test eax, eax
je 0x100c33e4
cmp eax, 0x600
je 0x100c33e4
push edi
call fcn.100ff9f0
cmp byte [sym.nsDui.dll_bool_DuiLib::CPaintManagerUI::m_bCachedResourceZip], 0
pop ecx
jne 0x100c331f
mov ecx, ebx
call fcn.100ab4c3
jmp 0x100c331f
cmp byte [sym.nsDui.dll_bool_DuiLib::CPaintManagerUI::m_bCachedResourceZip], 0
jne 0x100c33f4
mov ecx, ebx
call fcn.100ab4c3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call sym.nsDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_
test edi, edi
jne 0x100c347b
xor edi, edi
push edi
push 0x80
push 3
push edi
push 1
push accept
push dword [ebp - 0x2c8]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x100c3477
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
test esi, esi
je 0x100c3477
push esi
mov dword [ebp - 0x2c8], edi
call fcn.10100009
pop ecx
push 0
mov edi, eax
lea eax, [ebp - 0x2c8]
push eax
push esi
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x2c8], esi
je 0x100c3473
push edi
call fcn.100ff9f0
pop ecx
xor edi, edi
test edi, edi
jne 0x100c347b
xor eax, eax
jmp 0x100c3496
mov ecx, dword [ebp - 0x2d0]
push esi
push edi
call sym.nsDui.dll_private:_class_Gdiplus::Image____thiscall_DuiLib::CGifAnimUI::LoadGifFromMemory_void___unsigned_int_
push 1
push edi
mov esi, eax
call fcn.100fffd8
pop ecx
pop ecx
mov eax, esi
call fcn.101005d4
ret 4