Function at 0x435d30
Capabilities:
Unmount volume via ioctl

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x160
mov eax, dword [0x443868]
mov dword [ebp - 0x134], eax
mov ecx, dword [0x44386c]
mov dword [ebp - 0x130], ecx
mov edx, dword [0x443870]
mov dword [ebp - 0x12c], edx
mov ax, word [0x443874]
mov word [ebp - 0x128], ax
mov byte [ebp - 0x122], 1
mov byte [ebp - 0x13d], 0
mov byte [ebp - 0x121], 0
lea ecx, [ebp - 0x120]
push ecx
movzx edx, word [ebp + 8]
push edx
call fcn.00437810
test eax, eax
jne 0x435dae
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x443878
call fcn.004396b0
add esp, 8
xor eax, eax
jmp 0x436439
cmp dword [ebp - 0x11c], 1
je 0x435dcb
push 0x4438bc
call fcn.004396b0
add esp, 4
xor eax, eax
jmp 0x436439
mov ax, word [ebp + 8]
mov word [ebp - 0x12c], ax
push 0
push 0x80
push 3
push 0
push 3
push 0xc0000000
lea ecx, [ebp - 0x134]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0xffffffff
jne 0x435e1f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4438ec
call fcn.004396b0
add esp, 8
xor eax, eax
jmp 0x436439
push 0x443918
push 0x443928
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x138], eax
push 0
lea edx, [ebp - 0x13c]
push edx
push 0
push 0
push 0
push 0
push 0x90018
mov eax, dword [ebp - 0x84]
push eax
call dword [ebp - 0x138]
test eax, eax
jne 0x435f6a
cmp dword [ebp + 0x10], 0
je 0x435f05
push 0
lea ecx, [ebp - 0x13c]
push ecx
push 0
push 0
push 0
push 0
push 0x90020
mov edx, dword [ebp - 0x84]
push edx
call dword [ebp - 0x138]
test eax, eax
jne 0x435ed9
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
push eax
push 0x443944
call fcn.004396b0
add esp, 8
mov ecx, dword [ebp - 0x84]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x148]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
mov byte [ebp - 0x13d], 1
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x90018
mov ecx, dword [ebp - 0x84]
push ecx
call dword [ebp - 0x138]
jmp 0x435f6a
movzx edx, byte [ebp - 0x122]
test edx, edx
je 0x435f29
mov byte [ebp - 0x122], 0
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x435dcb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x14c]
push ecx
push 0x44397c
call fcn.004396b0
add esp, 8
mov edx, dword [ebp - 0x84]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
mov ecx, dword [ebp - 0x120]
push ecx
push str.DpShadow
push 0x4439ac
push 0x40
lea edx, [ebp - 0x80]
push edx
call fcn.00421c63
add esp, 0x14
push 0
push 0x80
push 3
push 0
push 3
push 0xc0000000
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 0xffffffff
jne 0x43601c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x150], eax
mov ecx, dword [ebp - 0x150]
push ecx
lea edx, [ebp - 0x80]
push edx
push 0x4439c0
call fcn.004396b0
add esp, 0xc
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x9001c
mov ecx, dword [ebp - 0x84]
push ecx
call dword [ebp - 0x138]
mov edx, dword [ebp - 0x84]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x150]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
push 0
lea ecx, [ebp - 0x13c]
push ecx
push 0
push 0
push 0
push 0
push 0x90018
mov edx, dword [ebp - 0x144]
push edx
call dword [ebp - 0x138]
test eax, eax
jne 0x436109
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x90020
mov ecx, dword [ebp - 0x144]
push ecx
call dword [ebp - 0x138]
test eax, eax
jne 0x4360df
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x154], eax
mov edx, dword [ebp - 0x154]
push edx
push 0x4439f8
call fcn.004396b0
add esp, 8
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x9001c
mov ecx, dword [ebp - 0x84]
push ecx
call dword [ebp - 0x138]
mov edx, dword [ebp - 0x144]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x154]
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
mov byte [ebp - 0x121], 1
push 0
lea edx, [ebp - 0x13c]
push edx
push 0
push 0
push 0
push 0
push 0x90018
mov eax, dword [ebp - 0x144]
push eax
call dword [ebp - 0x138]
push 0
lea ecx, [ebp - 0x13c]
push ecx
push 0
push 0
push 0
push 0
push 0x90020
mov edx, dword [ebp - 0x144]
push edx
call dword [ebp - 0x138]
test eax, eax
jne 0x4361d7
movzx eax, byte [ebp - 0x121]
test eax, eax
jne 0x4361d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x158]
push ecx
push str.Dismount_Volume3_failed__d
call fcn.004396b0
add esp, 8
push 0
lea edx, [ebp - 0x13c]
push edx
push 0
push 0
push 0
push 0
push 0x9001c
mov eax, dword [ebp - 0x144]
push eax
call dword [ebp - 0x138]
push 0
lea ecx, [ebp - 0x13c]
push ecx
push 0
push 0
push 0
push 0
push 0x9001c
mov edx, dword [ebp - 0x84]
push edx
call dword [ebp - 0x138]
mov eax, dword [ebp - 0x144]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x84]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x158]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x90020
mov ecx, dword [ebp - 0x84]
push ecx
call dword [ebp - 0x138]
test eax, eax
jne 0x4362a5
movzx edx, byte [ebp - 0x13d]
test edx, edx
jne 0x4362a5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x15c]
push eax
push str.Dismount_Volume4_failed__d
call fcn.004396b0
add esp, 8
push 0
lea ecx, [ebp - 0x13c]
push ecx
push 0
push 0
push 0
push 0
push 0x9001c
mov edx, dword [ebp - 0x144]
push edx
call dword [ebp - 0x138]
push 0
lea eax, [ebp - 0x13c]
push eax
push 0
push 0
push 0
push 0
push 0x9001c
mov ecx, dword [ebp - 0x84]
push ecx
call dword [ebp - 0x138]
mov edx, dword [ebp - 0x144]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x15c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x436439
jmp 0x47c9fa
mov esp, ebp
pop ebp
ret 0x10