Function at 0x100019d18
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
sub rsp, 0x4b0
mov rax, qword [0x10001f110]
xor rax, rsp
mov qword [rsp + 0x4a0], rax
mov rsi, rdx
mov rbx, rcx
mov rcx, qword [0x10001f120]
lea r12, [0x10001f120]
cmp rcx, r12
je 0x100019d77
bt dword [rcx + 0x1c], 0x1d
jae 0x100019d77
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000059b0]
mov edx, 0x12
mov r9, rbx
call fcn.10001856c
lea rdx, [0x1000072f8]
lea rcx, [rsp + 0x30]
mov r9d, 1
mov r8d, 0x1f8
call fcn.100018130
lea r11, [0x100005960]
xor ebp, ebp
mov edi, 0x208
lea rcx, [rsp + 0x82]
xor edx, edx
mov r8, rdi
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x70], rbp
mov word [rsp + 0x80], bp
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x292]
mov r8, rdi
xor edx, edx
mov word [rsp + 0x290], bp
call sub.msvcrt.dll_memset
lea eax, [rdi - 0xa]
cmp rbx, rbp
jne 0x100019df7
mov ebx, 0x80070057
mov word [rsp + 0x36], ax
jmp 0x100019ff1
mov word [rsp + 0x34], ax
cmp rsi, rbp
jne 0x100019e08
mov eax, 0x1ff
jmp 0x100019de8
mov eax, 0x200
lea rcx, [rsp + 0x68]
mov rdx, rbx
mov dword [rsp + 0x30], ebp
mov word [rsp + 0x34], ax
call fcn.10001b8e4
mov ebx, eax
mov dword [rsp + 0x30], eax
cmp eax, ebp
mov eax, 0x203
jge 0x100019e3c
mov word [rsp + 0x36], ax
jmp 0x100019ff5
mov word [rsp + 0x34], ax
mov eax, 0x204
cmp dword [rsp + 0x70], ebp
je 0x100019de8
lea rcx, [rsp + 0x68]
mov edx, 0x5c
mov dword [rsp + 0x30], ebp
mov word [rsp + 0x34], ax
call fcn.10001bb84
mov ebx, eax
mov dword [rsp + 0x30], eax
cmp eax, ebp
mov eax, 0x206
jl 0x100019e32
mov rdi, qword [rsp + 0x68]
mov ebx, 0x105
lea rdx, [rsp + 0x80]
mov r8d, ebx
mov rcx, rdi
mov word [rsp + 0x34], ax
call qword [sym.imp.KERNEL32.dll_GetVolumePathNameW]
cmp eax, ebp
jne 0x100019ef8
call fcn.100019754
mov ebx, eax
mov dword [rsp + 0x30], eax
mov eax, 0x20c
mov word [rsp + 0x36], ax
mov rcx, qword [0x10001f120]
cmp rcx, r12
je 0x100019ff5
bt dword [rcx + 0x1c], 0x19
jae 0x100019ff5
mov dword [rsp + 0x28], ebx
mov edx, 0x13
lea r9, [0x100007320]
mov qword [rsp + 0x20], rdi
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000059b0]
call fcn.100019670
mov ebx, dword [rsp + 0x30]
jmp 0x100019ff5
mov eax, 0x20c
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x80]
mov r8d, ebx
mov dword [rsp + 0x30], ebp
mov word [rsp + 0x34], ax
call qword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
cmp eax, ebp
jne 0x100019f75
call fcn.100019754
mov ebx, eax
mov dword [rsp + 0x30], eax
mov eax, 0x213
mov word [rsp + 0x36], ax
mov rcx, qword [0x10001f120]
cmp rcx, r12
je 0x100019ff5
bt dword [rcx + 0x1c], 0x19
jae 0x100019ff5
lea rax, [rsp + 0x80]
mov dword [rsp + 0x28], ebx
mov edx, 0x14
mov qword [rsp + 0x20], rax
lea r9, [0x100007360]
jmp 0x100019edf
mov eax, 0x213
lea rcx, [rsp + 0x290]
mov r8d, ebx
mov rdx, rsi
mov dword [rsp + 0x30], ebp
mov word [rsp + 0x34], ax
call qword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
cmp eax, ebp
jne 0x100019fe5
call fcn.100019754
mov ebx, eax
mov dword [rsp + 0x30], eax
mov eax, 0x219
mov word [rsp + 0x36], ax
mov rcx, qword [0x10001f120]
cmp rcx, r12
je 0x100019ff5
bt dword [rcx + 0x1c], 0x19
jae 0x100019ff5
lea rax, [rsp + 0x290]
mov dword [rsp + 0x28], ebx
mov edx, 0x15
mov qword [rsp + 0x20], rax
lea r9, [0x1000073c0]
jmp 0x100019edf
mov eax, 0x219
mov ebx, ebp
mov word [rsp + 0x34], ax
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x68]
call fcn.10001ae4c
lea rcx, [rsp + 0x30]
call fcn.100018248
mov eax, ebx
mov rcx, qword [rsp + 0x4a0]
xor rcx, rsp
call fcn.10001c420
lea r11, [rsp + 0x4b0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret