Function at 0x140043920
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xd0
mov rax, qword [0x14007b040]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov rdi, rcx
mov qword [rbp - 0x31], rcx
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xor eax, eax
xor ecx, ecx
cpuid
mov dword [rbp - 5], ebx
mov dword [rbp - 1], ecx
mov dword [rsp + 0x20], eax
mov r9d, edx
lea r8, str._08X_08X
lea edx, [rsi + 0x21]
lea rcx, [rbp + 0x27]
call fcn.140046150
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
mov qword [rbp + 0x17], rsi
mov qword [rbp + 0x1f], rsi
lea rax, [rbp + 0x27]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], sil
jne 0x1400439a0
lea rdx, [rbp + 0x27]
lea rcx, [rbp + 7]
call fcn.140046540
nop
mov dword [rbp - 0x31], esi
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x31]
xor r8d, r8d
xor edx, edx
lea rcx, [0x14006c89c]
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
jne 0x140043a26
lea rdx, str.Error_getting_HD_C:_
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140045e20
lea rdx, [0x140045ff0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov rax, rsi
mov qword [rbp - 0x19], rax
mov edx, 0xf
mov qword [rbp - 0x11], rdx
mov byte [rbp - 0x29], al
jmp 0x140043a73
mov r9d, dword [rbp - 0x31]
lea r8, [0x14006b9f4]
mov edx, 0xa
lea rcx, [rbp - 9]
call fcn.1400461c0
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rsi
mov qword [rbp - 0x11], rsi
lea rax, [rbp - 9]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140043a52
mov r8, rbx
lea rdx, [rbp - 9]
lea rcx, [rbp - 0x29]
call fcn.140046540
mov rdx, qword [rbp - 0x11]
mov rax, qword [rbp - 0x19]
cmp qword [rbp + 0x17], 0
je 0x140043b37
test rax, rax
je 0x140043b37
lea r8, [rbp - 0x29]
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.140045cc0
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 0xf
jbe 0x140043ad4
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043ace
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043b7a
call fcn.14005fd4c
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0xf
jbe 0x140043b0f
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043b0a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043bc5
call fcn.14005fd4c
mov rax, rdi
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.14005fcf0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
cmp rdx, 0xf
jbe 0x140043b87
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043b81
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140043b81
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14005fd4c
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0xf
jbe 0x140043b0f
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043b0a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140043b0a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3