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

Disassembly:
push ebp
lea ebp, [esp - 0x214]
sub esp, 0x294
mov eax, dword [0x721bb0]
push ebx
push esi
push edi
push pe_nt_image_headers32
mov dword [ebp + 0x210], eax
xor ebx, ebx
lea eax, [ebp + 0x110]
mov edi, ecx
push ebx
push eax
mov dword [ebp], edi
call fcn.00698530
push 0x6d05b8
mov esi, 0x10712a0
push esi
call fcn.00697a00
add esp, 0x14
test eax, eax
je 0x5c1f9c
lea eax, [ebp + 0x110]
push esi
push eax
call fcn.00697a90
lea eax, [ebp + 0x110]
push 0x6d5828
push eax
call fcn.00697aa0
add esp, 0x10
lea eax, [edi + 0x10]
push eax
lea eax, [ebp + 0x110]
push eax
call fcn.00697aa0
lea eax, [ebp + 0x110]
push eax
call fcn.00697970
lea eax, [ebp + eax + 0x110]
add esp, 0xc
cmp dword [ebp + 0x220], ebx
mov byte [eax - 1], 0x73
mov byte [eax - 2], 0x64
mov byte [eax - 3], 0x64
lea eax, [ebp + 0x110]
je 0x5c21ce
push 0x6d60d0
push eax
call fcn.00694dfa
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
mov dword [ebp + 8], esi
jne 0x5c201b
lea eax, [ebp + 0x110]
push eax
lea eax, [ebp + 0x10]
push str.File_not_found__s
push eax
call fcn.006935d4
add esp, 0xc
push ebx
push ebx
lea eax, [ebp + 0x10]
push eax
push ebx
call dword [sym.imp.user32.dll_MessageBoxA]
push esi
push 1
lea eax, [ebp - 4]
push 4
push eax
mov dword [ebp + 4], ebx
call fcn.00694ff9
push esi
push 1
lea eax, [ebp - 0x80]
push 0x7c
push eax
call fcn.00694ff9
add esp, 0x20
cmp dword [ebp - 0x80], 0x7c
je 0x5c2058
push str.CTexture:ReadDDSTexture___This_is_not_dds_format
lea ecx, [ebp + 0xc]
call fcn.005c0cbe
lea ecx, [ebp + 0xc]
call fcn.0061b397
mov eax, dword [ebp - 0x68]
cmp eax, ebx
mov edx, dword [ebp - 0x74]
mov esi, dword [ebp - 0x78]
mov dword [ebp + 0x220], eax
mov dword [edi + 0x110], edx
mov dword [edi + 0x114], esi
jne 0x5c2081
mov dword [ebp + 0x220], 1
mov eax, dword [ebp - 0x30]
mov ecx, 0x31545844
cmp eax, ecx
je 0x5c2130
mov ecx, 0x32545844
cmp eax, ecx
je 0x5c2130
mov ecx, 0x33545844
cmp eax, ecx
je 0x5c2130
mov ecx, 0x34545844
cmp eax, ecx
je 0x5c2130
mov ecx, 0x35545844
cmp eax, ecx
je 0x5c2130
cmp dword [ebp - 0x34], 0x41
jne 0x5c20da
cmp dword [ebp - 0x2c], 0x20
jne 0x5c2109
cmp dword [ebp - 0x1c], 0xff000000
jne 0x5c2267
push 0x15
jmp 0x5c212f
cmp dword [ebp - 0x34], 0x40
jne 0x5c2267
cmp dword [ebp - 0x2c], 0x18
jne 0x5c20ee
push 0x14
jmp 0x5c212f
cmp dword [ebp - 0x2c], 0x10
jne 0x5c2267
cmp dword [ebp - 0x24], 0x7e0
jne 0x5c2267
push 0x17
jmp 0x5c212f
cmp dword [ebp - 0x2c], 0x10
jne 0x5c2267
cmp dword [ebp - 0x1c], 0x8000
jne 0x5c2120
push 0x19
jmp 0x5c212f
cmp dword [ebp - 0x1c], 0xf000
jne 0x5c2267
push 0x1a
pop ecx
mov eax, dword [0x10713a0]
mov edi, dword [eax]
lea ebx, [ebp + 4]
push ebx
mov ebx, dword [ebp + 0x220]
push 1
push ecx
mov ecx, dword [0x10713a4]
push 0
shr esi, cl
sub ebx, ecx
push ebx
shr edx, cl
push esi
push edx
push eax
call dword [edi + 0x50]
test eax, eax
jge 0x5c2172
push str.CTexture:ReadDDSTexture___CreateTexture_is_failed
lea ecx, [ebp + 0xc]
call fcn.005c0cbe
lea ecx, [ebp + 0xc]
call fcn.0061b397
push dword [ebp + 8]
mov ecx, dword [ebp]
push dword [ebp + 0x220]
push dword [ebp + 4]
call fcn.005c1c19
test eax, eax
jge 0x5c21bd
mov esi, dword [sym.imp.user32.dll_MessageBoxA]
xor edi, edi
push edi
push edi
push str.LoadAllMipSurface_Load_Failed
push edi
call esi
push edi
push edi
lea eax, [ebp + 0x110]
push eax
push edi
call esi
push str.CTexture:ReadDDSTexture___LoadAllMipSurfaces_is_failed
lea ecx, [ebp + 0xc]
call fcn.005c0cbe
lea ecx, [ebp + 0xc]
call fcn.0061b397
push dword [ebp + 8]
call fcn.00694b22
pop ecx
mov ecx, dword [ebp + 4]
jmp 0x5c225f
push ebx
push 0x80
push 3
push ebx
push 1
push 0x80000000
push eax
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x5c2211
lea eax, [ebp + 0x110]
push eax
lea eax, [ebp + 0x10]
push str.File_not_found__s
push eax
call fcn.006935d4
add esp, 0xc
push ebx
push ebx
lea eax, [ebp + 0x10]
push eax
push ebx
call dword [sym.imp.user32.dll_MessageBoxA]
push ebx
push esi
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
push ebx
mov edi, eax
lea eax, [ebp + 0x220]
push eax
push edi
push dword [0x10713a8]
push esi
call dword [sym.imp.KERNEL32.DLL_ReadFile]
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov eax, dword [0x10713a8]
mov dword [eax], 0x20534444
lea eax, [ebp + 8]
push eax
push edi
push dword [0x10713a8]
mov dword [ebp + 8], ebx
push dword [0x10713a0]
call fcn.0052f935
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x21c]
mov dword [eax], ecx
mov ecx, dword [ebp + 0x210]
pop edi
pop esi
pop ebx
call fcn.00692fc7
add ebp, 0x214
leave
ret 8