Function at 0x1006bf0
Capabilities:
Check if file exists
Unmount volume via ioctl

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x18
push esi
push edi
mov edi, dword [ebp + 0xc]
test edi, edi
jne 0x1006c63
mov edi, dword [ebp + 8]
push 0xc0000000
push edi
call sub.imdisk.cpl__ImDiskOpenDeviceByNumber_8
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006e4a
push 0x80000000
push edi
call sub.imdisk.cpl__ImDiskOpenDeviceByNumber_8
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006e4a
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x1006e33
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
push 0x1004544
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov eax, edi
lea edx, [eax + 2]
jmp 0x1006c70
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1006c70
sub eax, edx
sar eax, 1
cmp eax, 2
jne 0x1006c90
xor eax, eax
cmp word [edi + 2], 0x3a
sete al
jmp 0x1006ce9
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1006c95
sub eax, edx
sar eax, 1
cmp eax, 3
jne 0x1006d5f
mov ecx, 0x1003f64
lea eax, [edi + 2]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1006cdb
test dx, dx
je 0x1006cd7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1006cdb
add eax, 4
add ecx, 4
test dx, dx
jne 0x1006cb5
xor eax, eax
jmp 0x1006ce0
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
je 0x1006d5f
mov ecx, dword [0x100453c]
mov edx, dword [0x1004534]
mov eax, dword [0x1004538]
push 0
push 0x20000000
push 3
push 0
push 3
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x18], edx
mov dx, word [0x1004540]
mov dword [ebp - 0x14], eax
mov ax, word [edi]
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
push 0xc0000000
lea ecx, [ebp - 0x18]
push ecx
mov word [ebp - 0xc], dx
mov word [ebp - 0x10], ax
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006e4a
push 0
push 0x20000000
push 3
push 0
push 3
push 0x80000000
lea edx, [ebp - 0x18]
push edx
call edi
jmp 0x1006c25
push 0xc0000000
push edi
call sub.imdisk.cpl__ImDiskOpenDeviceByMountPoint_8
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006e4a
push 0x80000000
push edi
call sub.imdisk.cpl__ImDiskOpenDeviceByMountPoint_8
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006e4a
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x91
ja 0x1006ded
je 0x1006e0e
sub eax, 1
je 0x1006dc8
sub eax, 0x56
jne 0x1006dfb
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
push 0x1003e38
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
mov eax, 9
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [sym.imp.msvcrt.dll__iob]
add ecx, 0x40
push ecx
push 0x1003da4
call dword [sym.imp.msvcrt.dll_fputs]
add esp, 8
pop edi
mov eax, 9
pop esi
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x10b
je 0x1006e0e
cmp eax, 0x1126
je 0x1006e0e
push edi
call fcn.01005400
pop edi
mov eax, 9
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [sym.imp.msvcrt.dll__iob]
push edi
add edx, 0x40
push 0x10044f8
push edx
call fcn.01005380
add esp, 0xc
pop edi
mov eax, 9
pop esi
mov esp, ebp
pop ebp
ret 0x10
push 0x1003bd4
call fcn.01005400
pop edi
mov eax, 2
pop esi
mov esp, ebp
pop ebp
ret 0x10
push esi
call fcn.01005470
test eax, eax
jne 0x1006e68
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
mov eax, 5
pop esi
mov esp, ebp
pop ebp
ret 0x10
test byte [ebp + 0x10], 3
mov edi, dword [sym.imp.msvcrt.dll_puts]
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_DeviceIoControl]
je 0x1006eff
push 0x10044ac
call edi
add esp, 4
push esi
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
push 0x1004498
call edi
add esp, 4
push 0
lea ecx, [ebp + 8]
push ecx
push 0
push 0
push 0
push 0
push 0x90018
push esi
call ebx
test eax, eax
je 0x1006ed8
push 0x1004460
call edi
add esp, 4
push 0
lea edx, [ebp + 8]
push edx
push 0
push 0
push 0
push 0
push 0x90020
push esi
call ebx
test eax, eax
jne 0x1006eff
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x1006ee4
mov eax, 0x1004558
push eax
call fcn.01005400
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop ebx
pop edi
mov eax, 2
pop esi
mov esp, ebp
pop ebp
ret 0x10
push 0x1004788
call edi
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
add esp, 4
push 0
lea edx, [ebp + 8]
push edx
push 8
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 8
mov dword [ebp - 4], ecx
mov ecx, eax
push ecx
push 0x83722014
push esi
call ebx
test eax, eax
jne 0x1006f3b
mov edx, dword [ebp + 0xc]
push edx
call fcn.01005400
cmp dword [ebp - 8], 0
push esi
je 0x1006f71
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 0xc]
mov ecx, dword [sym.imp.msvcrt.dll__iob]
push eax
add ecx, 0x40
push 0x1004750
push ecx
call fcn.01005380
add esp, 0xc
pop ebx
pop edi
mov eax, 3
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x10042d8
call edi
add esp, 4
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 0x10