Function at 0x140066580
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x14008b180]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov r13, rcx
mov eax, dword [0x140073c9c]
mov dword [rbp + 0x27], eax
movzx eax, word [0x140073ca0]
mov word [rbp + 0x2b], ax
xor eax, eax
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x19], xmm1
mov esi, eax
mov qword [rbp - 9], rax
mov eax, 0x41
mov word [rbp - 0x21], ax
mov rdi, qword [rbp - 0x11]
cmp rdi, rsi
je 0x1400665f8
mov word [rdi], ax
add rdi, 2
mov qword [rbp - 0x11], rdi
jmp 0x140066614
lea r8, [rbp - 0x21]
mov rdx, rdi
lea rcx, [rbp - 0x19]
call fcn.140065ec0
mov rsi, qword [rbp - 9]
mov rdi, qword [rbp - 0x11]
movzx eax, word [rbp - 0x21]
inc ax
mov word [rbp - 0x21], ax
cmp ax, 0x5a
jbe 0x1400665e6
mov eax, 0x61
mov word [rbp - 0x21], ax
nop word [rax + rax]
cmp rdi, rsi
je 0x140066642
mov word [rdi], ax
add rdi, 2
mov qword [rbp - 0x11], rdi
jmp 0x14006665e
lea r8, [rbp - 0x21]
mov rdx, rdi
lea rcx, [rbp - 0x19]
call fcn.140065ec0
mov rsi, qword [rbp - 9]
mov rdi, qword [rbp - 0x11]
movzx eax, word [rbp - 0x21]
inc ax
mov word [rbp - 0x21], ax
cmp ax, 0x7a
jbe 0x140066630
mov ecx, 0x208
call fcn.140067d70
mov rbx, rax
mov qword [rbp + 0x1f], rax
mov r15, qword [rbp - 0x19]
mov r14, r15
cmp r15, rdi
je 0x1400667a1
movzx r12d, word [r14]
mov word [rbp + 0x27], r12w
mov r8d, 0x104
mov rdx, rbx
lea rcx, [rbp + 0x27]
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
test eax, eax
je 0x14006678e
xor eax, eax
mov qword [rbp - 1], rax
mov qword [rbp + 0xf], rax
mov qword [rbp + 0x17], 7
mov word [rbp - 1], ax
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rbx + r8*2], ax
jne 0x1400666d0
mov rdx, rbx
lea rcx, [rbp - 1]
call fcn.14002d2e0
nop
lea rcx, [rbp - 1]
cmp qword [rbp + 0x17], 8
cmovae rcx, qword [rbp - 1]
mov rax, qword [rbp + 0xf]
cmp word [rcx + rax*2 - 2], 0x5c
je 0x14006670f
mov edx, 0x5c
lea rcx, [rbp - 1]
call fcn.140018070
lea rcx, [r13 + 0x50]
movups xmm0, xmmword [rbp - 1]
movups xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [rbp + 0xf]
movups xmmword [rbp - 0x49], xmm1
xor eax, eax
mov qword [rbp + 0xf], rax
mov qword [rbp + 0x17], 7
mov word [rbp - 1], ax
mov word [rbp - 0x39], r12w
lea r8, [rbp - 0x59]
lea rdx, [rbp - 0x31]
call fcn.140065d00
nop
lea rcx, [rbp - 0x59]
call fcn.140003670
nop
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x14006678e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140066789
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006679a
call fcn.140067440
add r14, 2
cmp r14, rdi
jmp 0x140066686
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
test rbx, rbx
je 0x1400667b4
mov edx, 2
mov rcx, rbx
call fcn.140067440
nop
test r15, r15
je 0x1400667f5
sub rsi, r15
sar rsi, 1
add rsi, rsi
mov rax, r15
cmp rsi, 0x1000
jb 0x1400667ea
add rsi, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400667ea
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rdx, rsi
mov rcx, r15
call fcn.140067440
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1400673e0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret