Function at 0x10080e0
Capabilities:
Check if file exists
Get disk size

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x38
push ebx
mov ebx, dword [ebp + 0xc]
xor eax, eax
cmp ebx, eax
push esi
push edi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
push 0xc0000000
jne 0x1008162
mov edi, dword [ebp + 8]
push edi
call dword [sym.imp.imdisk.cpl__ImDiskOpenDeviceByNumber_8]
mov esi, eax
cmp esi, 0xffffffff
jne 0x100824d
push 0x80000000
push edi
call dword [sym.imp.imdisk.cpl__ImDiskOpenDeviceByNumber_8]
mov esi, eax
cmp esi, 0xffffffff
jne 0x100824d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x1008235
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
push 0x10054a8
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edi, dword [sym.imp.imdisk.cpl__ImDiskOpenDeviceByMountPoint_8]
push ebx
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x100824d
push 0x80000000
push ebx
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x100824d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x91
ja 0x10081ed
je 0x100820f
sub eax, 1
je 0x10081c7
sub eax, 0x56
jne 0x10081fb
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
push 0x1004da8
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
pop esi
mov eax, 9
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [sym.imp.msvcrt.dll__iob]
add ecx, 0x40
push ecx
push 0x1004d14
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
pop esi
mov eax, 9
pop ebx
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x10b
je 0x100820f
cmp eax, 0x1126
je 0x100820f
push ebx
call fcn.010063b0
pop edi
pop esi
mov eax, 9
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [sym.imp.msvcrt.dll__iob]
push ebx
add edx, 0x40
push 0x100545c
push edx
call fcn.01006330
add esp, 0xc
pop edi
pop esi
mov eax, 9
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x1004824
call fcn.010063b0
pop edi
pop esi
mov eax, 2
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x10058d8
call dword [sym.imp.msvcrt.dll_puts]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_DeviceIoControl]
add esp, 4
push 0
lea eax, [ebp + 0xc]
push eax
push 0
push 0
push 0x10
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x20]
push ecx
push 0x7c0d0
push esi
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x14], edx
call edi
test eax, eax
jne 0x10082ab
push ebx
call fcn.010063b0
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, 3
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x10058b8
call dword [sym.imp.msvcrt.dll_puts]
add esp, 4
push 0
lea edx, [ebp + 0xc]
push edx
push 8
lea eax, [ebp - 8]
push eax
push 0
push 0
push 0x7405c
push esi
call edi
test eax, eax
jne 0x1008308
push ebx
call fcn.010063b0
mov ecx, dword [sym.imp.msvcrt.dll__iob]
push ebx
add ecx, 0x40
push 0x100542c
push ecx
call fcn.01006330
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, 2
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0
lea edx, [ebp + 0xc]
push edx
push 0x18
lea eax, [ebp - 0x38]
push eax
push 0
push 0
push 0x70000
push esi
call edi
test eax, eax
je 0x10082d5
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
push 0
push edx
push eax
push ecx
call fcn.01009b40
push 0
mov dword [ebp - 0xc], edx
lea edx, [ebp + 0xc]
push edx
push 0
push 0
push 8
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
push 0x900f0
push esi
call edi
test eax, eax
jne 0x100836d
push ebx
call fcn.010063b0
push 0x1005810
call dword [sym.imp.msvcrt.dll_puts]
add esp, 4
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 4]
cmp eax, 0x100
mov ecx, dword [ebp - 8]
jb 0x100838e
ja 0x1008387
test ecx, ecx
jb 0x100838e
mov edx, 0x100571c
jmp 0x10083fd
test eax, eax
ja 0x100839a
cmp ecx, 0x40000000
jb 0x10083a1
mov edx, 0x1005718
jmp 0x10083fd
test eax, eax
ja 0x10083ad
cmp ecx, 0x100000
jb 0x10083b4
mov edx, 0x1005714
jmp 0x10083fd
test eax, eax
ja 0x10083c0
cmp ecx, 0x400
jb 0x10083c7
mov edx, 0x1005710
jmp 0x10083fd
cmp ecx, 1
jne 0x10083f8
test eax, eax
jne 0x10083f8
mov edx, 0x1005708
fild qword [ebp - 8]
push edx
sub esp, 8
fstp qword [esp]
push 0x10057f8
call dword [sym.imp.msvcrt.dll_printf]
add esp, 0x10
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edx, 0x1005700
cmp eax, 0x100
jb 0x1008415
ja 0x100840a
test ecx, ecx
jb 0x1008415
fild qword [ebp - 8]
fmul qword [0x10056f8]
jmp 0x10083d8
test eax, eax
ja 0x1008421
cmp ecx, 0x40000000
jb 0x100842c
fild qword [ebp - 8]
fmul qword [0x10056f0]
jmp 0x10083d8
test eax, eax
ja 0x1008438
cmp ecx, 0x100000
jb 0x1008443
fild qword [ebp - 8]
fmul qword [0x10056e8]
jmp 0x10083d8
test eax, eax
ja 0x100844f
cmp ecx, 0x400
jb 0x10083d5
fild qword [ebp - 8]
fmul qword [0x10056e0]
jmp 0x10083d8