Function at 0x1402bb04c
Capabilities:
Get disk size

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov qword [rbp - 0x21], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov rax, qword [0x14049e510]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rbx, r8
mov rsi, rcx
mov qword [rbp - 0x19], rcx
xor r12d, r12d
mov dword [rbp - 0x49], r12d
lea rax, [0x140386498]
mov qword [rcx + 8], rax
lea rax, vtable.CommonUtil::IRefObject.0
mov qword [rcx + 0x40], rax
mov dword [rbp - 0x49], 1
lea rax, vtable.IPhysicalVolume.1.0
mov qword [rcx], rax
mov rax, qword [rcx + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.IPhysicalVolume.0
mov qword [rcx + rsi + 8], rax
lea rax, vtable.CommonUtil::CRefObjectFor_class_IPhysicalVolume_.1.0
mov qword [rsi], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.CommonUtil::CRefObjectFor_class_IPhysicalVolume_.0
mov qword [rcx + rsi + 8], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rcx + rsi + 4], edx
mov dword [rsi + 0x10], r12d
lea rax, vtable.RealVolume.1.0
mov qword [rsi], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.RealVolume.0
mov qword [rcx + rsi + 8], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x38]
mov dword [rcx + rsi + 4], edx
or r13, 0xffffffffffffffff
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x20], r12
mov qword [rsi + 0x28], r12
mov qword [rbp - 0x31], r12
mov edi, r12d
mov qword [rbp - 0x51], r12
xor eax, eax
mov qword [rbp + 7], rax
mov dword [rbp + 0xf], eax
mov word [rbp + 0x13], ax
mov rax, r13
inc rax
cmp word [r8 + rax*2], r12w
jne 0x1402bb154
mov r14d, 7
cmp rax, 2
jne 0x1402bb1aa
cmp word [r8 + 2], 0x3a
jne 0x1402bb1aa
lea r8, str.._
mov edx, r14d
lea rcx, [rbp + 7]
call fcn.140046064
test eax, eax
js 0x1402bb342
mov r8, rbx
mov edx, r14d
lea rcx, [rbp + 7]
call fcn.1400460e8
test eax, eax
js 0x1402bb342
lea rcx, [rbp + 7]
jmp 0x1402bb1f2
lea rdx, [rbp - 0x51]
call fcn.1402bacac
test eax, eax
jns 0x1402bb1eb
mov rdx, rbx
lea rcx, [rbp - 0x39]
call fcn.1402bbbd8
mov rdi, qword [rax]
mov qword [rax], r12
mov rcx, qword [rbp - 0x51]
mov qword [rbp - 0x51], rdi
test rcx, rcx
je 0x1402bb1db
call fcn.1402e0244
mov rcx, qword [rbp - 0x39]
test rcx, rcx
je 0x1402bb1ef
call fcn.1402e0244
jmp 0x1402bb1ef
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov r8d, r14d
mov edx, 0x81
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x39], rax
cmp rax, r13
je 0x1402bb34d
mov dword [rbp - 0x59], r12d
xor eax, eax
mov qword [rbp - 0x11], rax
mov qword [rbp - 9], rax
mov qword [rbp - 1], rax
mov qword [rsp + 0x38], r12
lea rax, [rbp - 0x59]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], DispGetParam
lea rax, [rbp - 0x11]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x70000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1402bb35a
mov r14d, dword [rbp + 3]
test r14d, r14d
je 0x1402bb367
mov r15, r12
mov dword [rbp - 0x59], r12d
xor eax, eax
mov qword [rbp - 0x41], rax
mov qword [rsp + 0x38], r12
lea rax, [rbp - 0x59]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 8
lea rax, [rbp - 0x41]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x7405c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x1402bb2cf
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
jmp 0x1402bb2db
mov rax, qword [rbp - 0x41]
cqo
idiv r14
mov r15, rax
mov dword [rbp - 0x31], 1
mov dword [rbp - 0x2d], r14d
mov qword [rbp - 0x29], r15
movups xmm0, xmmword [rbp - 0x31]
movdqu xmmword [rsi + 0x20], xmm0
mov rcx, qword [rsi + 0x18]
cmp rcx, r13
je 0x1402bb306
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x18], rbx
test rdi, rdi
je 0x1402bb318
mov rcx, rdi
call fcn.1402e0244
nop
mov rax, rsi
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1402dfdb0
mov rbx, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80070057
call fcn.1402bba04
nop
call fcn.1402bb790
mov ecx, eax
call fcn.1402bba04
int3
call fcn.1402bb790
mov ecx, eax
call fcn.1402bba04
int3
mov ecx, 0x80004005
call fcn.1402bba04
int3