Function at 0x1000fd9a0
Capabilities:
Get disk information

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xaa0
mov qword [rsp + 0x188], 0xfffffffffffffffe
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0xa90], rax
mov byte [rsp + 0x40], r9b
mov rsi, r8
mov qword [rsp + 0x180], r8
mov r12, rdx
mov r13, rcx
lea rax, [0x10003b560]
mov qword [r11 - 0xa00], rax
lea rax, [0x10003bbd0]
mov qword [r11 - 0x9f8], rax
lea rax, [0x10003b540]
mov qword [r11 - 0x9f0], rax
mov dword [rsp + 0xf0], 0x229
mov dword [rsp + 0xf4], 4
mov dword [rsp + 0xf8], 0xff
xor ebx, ebx
mov word [rsp + 0x178], bx
mov byte [rsp + 0x17a], bl
mov byte [rsp + 0x17b], 1
xor edx, edx
lea r8d, [rbx + 0x78]
lea rcx, [r11 - 0x9d8]
call sub.msvcrt.dll_memset
xor r8d, r8d
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x190]
call fcn.1000e7c38
nop
mov qword [rsp + 0xd0], rbx
lea rdi, [0x10000d468]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], rbx
mov dword [rsp + 0xbc], ebx
mov dword [rsp + 0xb8], 0x20019
lea r8, [0x100004970]
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0xb8]
call fcn.100101fec
cmp al, bl
jne 0x1000fdae8
lea rcx, [rsp + 0xb8]
call fcn.100102ef8
nop
lea rcx, [rsp + 0x190]
call fcn.1000e7d24
jmp 0x1000fe0af
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x88], rbx
mov dword [rsp + 0x90], ebx
mov dword [rsp + 0x94], ebx
mov dword [rsp + 0x98], ebx
mov qword [rsp + 0xa8], rbx
mov byte [rsp + 0xb0], bl
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x88]
call fcn.100103234
mov edi, dword [rsp + 0x94]
cmp edi, dword [rsp + 0x90]
jae 0x1000fe080
mov r14, qword [rsp + 0xb18]
mov r15, qword [rsp + 0xb10]
mov qword [rsp + 0x70], rbx
lea rax, [0x10000d468]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x5c], ebx
mov dword [rsp + 0x58], 0x20019
lea rcx, [rsp + 0x88]
call fcn.100102f3c
mov rdx, rax
mov rcx, r13
call fcn.1000ffb5c
cmp al, bl
je 0x1000fdba2
lea rcx, [rsp + 0x58]
call fcn.100102ef8
jmp 0x1000fe061
lea rcx, [rsp + 0x88]
call fcn.100102f3c
mov qword [rsp + 0x20], rax
lea r9, [0x100004970]
lea r8, [0x10000a068]
mov edx, 0x104
lea rcx, [rsp + 0x460]
call fcn.100052590
mov dword [rsp + 0x198], eax
cmp eax, ebx
jl 0x1000fe057
lea r8, [rsp + 0x460]
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x58]
call fcn.100101fec
cmp al, bl
je 0x1000fe057
lea rax, [0x10000d468]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
xor r9d, r9d
lea r8, [rsp + 0x50]
lea rdx, [0x1000049e8]
lea rcx, [rsp + 0x58]
call fcn.10010248c
cmp al, bl
jne 0x1000fdc62
mov rcx, qword [rsp + 0x50]
cmp rcx, rbx
je 0x1000fdc42
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x50], rbx
lea rax, [0x10000d450]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x58]
call fcn.100102ef8
jmp 0x1000fe061
mov r8d, 0x104
lea rdx, [rsp + 0x250]
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetVolumePathNameW]
xor ecx, ecx
cmp eax, ecx
jne 0x1000fdd5c
lea rax, [0x10003b560]
mov qword [rsp + 0xd8], rax
lea rax, [0x10003bbd0]
mov qword [rsp + 0xe0], rax
lea rax, [0x10003b540]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf0], 0x246
mov dword [rsp + 0xf4], 4
mov dword [rsp + 0xf8], 0xff
mov word [rsp + 0x178], cx
mov byte [rsp + 0x17a], cl
mov byte [rsp + 0x17b], 1
xor edx, edx
lea r8d, [rcx + 0x78]
lea rcx, [rsp + 0x100]
call sub.msvcrt.dll_memset
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, [0x10003bc20]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x190]
call fcn.1000e8e14
nop
xor eax, eax
cmp rbx, rax
je 0x1000fdd3a
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
lea rax, [0x10000d450]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x58]
call fcn.100102ef8
jmp 0x1000fe061
mov r8d, 0x104
lea rdx, [rsp + 0x880]
lea rcx, [rsp + 0x250]
call qword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x1000fdef1
lea rax, [0x10003b560]
mov qword [rsp + 0xd8], rax
lea rax, [0x10003bbd0]
mov qword [rsp + 0xe0], rax
lea rax, [0x10003b540]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf0], 0x24d
mov dword [rsp + 0xf4], 4
mov dword [rsp + 0xf8], 0xff
mov word [rsp + 0x178], cx
mov byte [rsp + 0x17a], cl
mov byte [rsp + 0x17b], 1
xor edx, edx
lea r8d, [rcx + 0x78]
lea rcx, [rsp + 0x100]
call sub.msvcrt.dll_memset
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x250]
lea r8, [0x10003bc70]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x190]
call fcn.1000e8e14
lea rax, [0x10003b560]
mov qword [rsp + 0xd8], rax
lea rax, [0x10003bbd0]
mov qword [rsp + 0xe0], rax
lea rax, [0x10003b540]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf0], 0x24e
mov dword [rsp + 0xf4], 4
mov dword [rsp + 0xf8], 0xff
xor eax, eax
mov word [rsp + 0x178], ax
mov byte [rsp + 0x17a], al
mov byte [rsp + 0x17b], 1
xor edx, edx
lea r8d, [rax + 0x78]
lea rcx, [rsp + 0x100]
call sub.msvcrt.dll_memset
lea r8, [0x10003bce0]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x190]
call fcn.1000e8e14
nop
xor eax, eax
cmp rbx, rax
je 0x1000fdecf
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
lea rax, [0x10000d450]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x58]
call fcn.100102ef8
jmp 0x1000fe061
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x20], rax
mov r9, rbx
lea r8, [0x10000a068]
mov edx, 0x104
lea rcx, [rsp + 0x670]
call fcn.100052590
mov dword [rsp + 0x198], eax
xor ecx, ecx
cmp eax, ecx
jge 0x1000fdf54
cmp rbx, rcx
je 0x1000fdf32
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
lea rax, [0x10000d450]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x58]
call fcn.100102ef8
jmp 0x1000fe061
mov qword [rsp + 0x80], rcx
lea rax, [0x1000391a8]
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x670]
lea rcx, [rsp + 0x78]
call fcn.1000f7224
mov r11, qword [r12 + 0x20]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], r11
mov rsi, qword [rsp + 0x80]
mov qword [rsp + 0x28], rsi
mov rax, qword [rsp + 0xb08]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov dl, byte [r12]
lea rcx, [rsp + 0x200]
call fcn.1000fb574
nop
mov al, byte [rsp + 0xb00]
mov byte [rsp + 0x30], al
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
mov r9, qword [rsp + 0xb20]
mov r8b, byte [rsp + 0x40]
lea rdx, [rsp + 0x200]
mov rcx, r13
call fcn.1000fe9c4
nop
lea rcx, [rsp + 0x200]
call fcn.1000fd914
nop
xor ecx, ecx
cmp rsi, rcx
je 0x1000fe00e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LocalFree]
xor ecx, ecx
mov qword [rsp + 0x80], rcx
lea rax, [0x10000d450]
mov qword [rsp + 0x78], rax
cmp rbx, rcx
je 0x1000fe030
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor ebx, ebx
mov qword [rsp + 0x50], rbx
lea rax, [0x10000d450]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x58]
call fcn.100102ef8
mov rsi, qword [rsp + 0x180]
jmp 0x1000fe061
lea rcx, [rsp + 0x58]
call fcn.100102ef8
cmp edi, dword [rsp + 0x90]
jae 0x1000fe080
inc edi
mov dword [rsp + 0x94], edi
cmp edi, dword [rsp + 0x90]
jb 0x1000fdb55
mov rcx, qword [rsp + 0xa8]
cmp rcx, rbx
je 0x1000fe094
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
lea rcx, [rsp + 0xb8]
call fcn.100102ef8
nop
lea rcx, [rsp + 0x190]
call fcn.1000e7d24
mov rcx, qword [rsp + 0xa90]
xor rcx, rsp
call fcn.1001303c0
add rsp, 0xaa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret