Function at 0x14010d0e3
Capabilities:
Get disk information

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x290
mov rsi, rdx
mov rbx, rcx
mov rax, qword [0x1401e5d38]
xor rax, rsp
mov qword [rsp + 0x288], rax
lea rdi, [rsp + 0x70]
mov rcx, rdi
call fcn.140001ad8
mov rcx, rdi
call fcn.14010c81c
mov ebp, eax
test byte [rdi], 1
je 0x14010d131
mov rcx, qword [rsp + 0x80]
call fcn.140153cd8
mov dil, 1
test bpl, bpl
jne 0x14010d3f1
xorps xmm0, xmm0
lea rdx, [rsp + 0x50]
movaps xmmword [rdx], xmm0
mov qword [rdx + 0x10], 0
mov rcx, rbx
call fcn.14010cb00
test al, al
je 0x14010d1ab
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x30]
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [section..rdata]
movaps xmmword [rdi], xmm0
mov rcx, rdi
mov rdx, rsi
call fcn.140001ad8
movzx r9d, byte [rdi]
test r9b, 1
jne 0x14010d1b2
cmp r9b, 2
jb 0x14010d427
mov eax, r9d
and eax, 0xfffffffe
cmp word [rsp + rax + 0x30], 0x5c
jne 0x14010d221
shr r9, 1
jmp 0x14010d1ce
xor edi, edi
jmp 0x14010d3e0
mov r9, qword [rsp + 0x38]
test r9, r9
je 0x14010d427
mov rax, qword [rsp + 0x40]
cmp word [rax + r9*2 - 2], 0x5c
jne 0x14010d22b
dec r9
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
lea rsi, [rsp + 0x30]
mov rdx, rsi
xor r8d, r8d
call fcn.14002e82c
test byte [rsi], 1
je 0x14010d1ff
mov rcx, qword [rsp + 0x40]
call fcn.140153cd8
mov rdx, qword [rsp + 0x80]
lea rdi, [rsp + 0x32]
mov qword [rdi + 0xe], rdx
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rdi - 2], xmm0
test byte [rdi - 2], 1
je 0x14010d226
jmp 0x14010d234
lea rdi, [rsp + 0x32]
mov rdx, rdi
jmp 0x14010d234
lea rdi, [rsp + 0x32]
mov rdx, qword [rdi + 0xe]
lea rsi, [rsp + 0x52]
test byte [rsi - 2], 1
mov rcx, rsi
je 0x14010d247
mov rcx, qword [rsp + 0x60]
call fcn.14016f658
test eax, eax
je 0x14010d2b0
lea r14, [rsp + 0x30]
mov rcx, r14
mov rdx, r14
call fcn.14010ce7f
mov ebx, eax
mov rcx, r14
call fcn.14010cf42
test al, al
jne 0x14010d2b8
test bl, bl
je 0x14010d2b8
xorps xmm0, xmm0
lea rdx, [rsp + 0x70]
movaps xmmword [rdx], xmm0
mov qword [rdx + 0x10], 0
lea rcx, [rsp + 0x50]
call fcn.14010d020
test al, al
je 0x14010d2fa
test byte [rsp + 0x30], 1
je 0x14010d29f
mov rdi, qword [rsp + 0x40]
test byte [rsp + 0x70], 1
je 0x14010d2fe
mov rcx, qword [rsp + 0x80]
jmp 0x14010d303
mov dil, 1
jmp 0x14010d3cf
test al, al
je 0x14010d3cd
mov qword [rsp + 0x280], 0
lea rcx, [rsp + 0x70]
mov r8d, 0x208
mov dl, 0xaa
call fcn.140157190
test byte [rsp + 0x30], 1
jne 0x14010d32e
lea rbx, [rsp + 0x30]
mov rcx, rbx
call fcn.140001bec
test byte [rbx], 1
sete al
jmp 0x14010d330
xor edi, edi
jmp 0x14010d311
lea rcx, [rsp + 0x72]
mov rdx, rdi
call fcn.14016f658
test eax, eax
sete dil
test byte [rsp + 0x70], 1
je 0x14010d3cf
mov rcx, qword [rsp + 0x80]
call fcn.140153cd8
jmp 0x14010d3cf
xor eax, eax
test al, al
jne 0x14010d339
mov rdi, qword [rsp + 0x40]
mov eax, dword [rdi]
lea rcx, [rsp + 0x280]
mov dword [rcx], eax
lea rdx, [rsp + 0x70]
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
xor edi, edi
cmp eax, 2
jb 0x14010d3cf
cmp eax, 0x104
je 0x14010d3cf
lea rcx, [rsp + 0x70]
call fcn.140178b34
mov edi, eax
test byte [rsp + 0x30], 1
jne 0x14010d383
lea rcx, [rsp + 0x30]
call fcn.140001bec
jmp 0x14010d388
mov rax, qword [rsp + 0x38]
lea rbx, [rdi + rax]
add rbx, 0xfffffffffffffffe
test byte [rsp + 0x50], 1
jne 0x14010d3a3
lea rcx, [rsp + 0x50]
call fcn.140001bec
jmp 0x14010d3a8
mov rax, qword [rsp + 0x58]
cmp rbx, rax
jne 0x14010d3cd
test byte [rsp + 0x50], 1
je 0x14010d3b9
mov rsi, qword [rsp + 0x60]
lea rdx, [rsp + 0x70]
mov rcx, rsi
mov r8, rdi
call fcn.14016f808
test eax, eax
je 0x14010d411
xor edi, edi
test byte [rsp + 0x30], 1
je 0x14010d3e0
mov rcx, qword [rsp + 0x40]
call fcn.140153cd8
test byte [rsp + 0x50], 1
je 0x14010d3f1
mov rcx, qword [rsp + 0x60]
call fcn.140153cd8
mov rcx, qword [rsp + 0x288]
xor rcx, rsp
call fcn.140154030
mov eax, edi
add rsp, 0x290
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
lea rcx, [rsp + 0x50]
lea r8, [rsp + 0x30]
mov rdx, rdi
call fcn.14010d454
mov edi, eax
jmp 0x14010d3cf
lea rax, str.string::back__:_string_is_empty
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude_string
lea r9, str._empty__
mov r8d, 0xd86
call fcn.140006d88
int3