Function at 0x140008780
Capabilities:
Get disk information
Get disk size

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x400]
sub rsp, 0x500
mov rax, qword [0x140148020]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov rdi, rcx
xor r14d, r14d
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1e0]
call fcn.1400a5270
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
mov rcx, rdi
call fcn.1400b7610
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
jne 0x14000887b
lea rbx, [r14 - 1]
test rdi, rdi
je 0x14000893a
mov r10, rbx
nop dword [rax + rax]
inc r10
cmp word [rdi + r10*2], r14w
jne 0x140008820
lea rsi, [0x1401114f0]
mov r8, rbx
inc r8
cmp word [rsi + r8*2], r14w
jne 0x140008834
cmp r10, r8
jb 0x14000893a
sub r10, r8
je 0x14000893a
mov r9, rdi
sub r9, rsi
mov rdx, r14
mov r11, r14
test r8, r8
je 0x14000887b
lea rcx, [r9 + rdx*2]
movzx eax, word [rsi + rdx*2]
cmp word [rcx + rsi], ax
jne 0x140008926
inc rdx
cmp rdx, r8
jb 0x140008861
mov dword [0x1401515f0], 0xbb9
cmp byte [0x140148e20], r14b
je 0x140008d0d
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov ecx, 0x60
call fcn.1400a2614
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x58], xmm1
mov r8d, 0x17
lea rdx, str.wm_install_invalid_path
lea rcx, [rbp - 0x68]
call fcn.140004fe0
nop
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x68]
call fcn.14007ea30
nop
lea rcx, [rbp - 0x68]
call fcn.1400053f0
nop
mov r8, qword [rsp + 0x78]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.1400050e0
mov edx, 0x60
mov rcx, qword [rsp + 0x78]
call fcn.1400a2510
jmp 0x140008d19
inc r11
add r9, 2
cmp r11, r10
jae 0x14000893a
mov rdx, r14
jmp 0x140008861
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1e0]
call fcn.1400a5270
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
mov rcx, rdi
call fcn.1400b7610
lea r9, [rbp - 0x40]
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x140008ba4
mov rax, qword [rbp - 0x48]
cmp rax, 0x12c00000
jb 0x140008ba4
lea rcx, [0x140116e4c]
mov qword [rsp + 0x50], rcx
lea rcx, [0x140125c98]
mov qword [rsp + 0x58], rcx
lea rcx, [0x140125ca0]
mov qword [rsp + 0x60], rcx
lea rcx, [0x140125ca8]
mov qword [rsp + 0x68], rcx
lea rcx, [0x140125cb0]
mov qword [rsp + 0x70], rcx
xorps xmm2, xmm2
test rax, rax
js 0x1400089fc
cvtsi2sd xmm2, rax
jmp 0x140008a11
mov rcx, rax
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2sd xmm2, rcx
addsd xmm2, xmm2
mov eax, r14d
movsd xmm0, qword [0x1401293f8]
comisd xmm2, xmm0
jbe 0x140008a41
movsd xmm1, qword [0x1401293c0]
nop word [rax + rax]
mulsd xmm2, xmm1
inc eax
cmp eax, 0x14
jae 0x140008a41
comisd xmm2, xmm0
ja 0x140008a30
movsxd r9, eax
mov r9, qword [rsp + r9*8 + 0x50]
movq r8, xmm2
lea rdx, str._.2f_s
lea rcx, [rbp - 0x68]
call fcn.1400838d0
lea rdx, [rbp - 0x68]
lea rcx, [0x140148f10]
call fcn.140004010
lea rcx, [rbp - 0x68]
call fcn.1400053f0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x30]
call fcn.1400a5270
mov r8, rdi
mov edx, 0x104
lea rcx, [rbp - 0x30]
call fcn.1400a96b0
cmp word [rbp - 0x30], r14w
je 0x140008adf
lea rcx, [rbp - 0x30]
mov rax, rbx
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], r14w
jne 0x140008ab0
test rax, rax
je 0x140008adf
nop
dec rax
movzx ecx, word [rbp + rax*2 - 0x30]
cmp cx, 0x2f
je 0x140008ad4
cmp cx, 0x5c
jne 0x140008adf
mov word [rbp + rax*2 - 0x30], r14w
test rax, rax
jne 0x140008ac0
lea rax, [rbp - 0x30]
mov rdx, rbx
inc rdx
cmp word [rax + rdx*2], r14w
jne 0x140008ae6
lea r11, str.Microsoft_PC_Manager
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [r11 + r8*2], r14w
jne 0x140008b00
cmp rdx, r8
jb 0x140008b3a
movsxd r9, r8d
test r8d, r8d
jle 0x140008b73
mov r10, rdx
sub r10, r8
add r10, r10
dec r9
lea rcx, [r10 + r9*2]
movzx eax, word [r11 + r9*2]
cmp word [rbp + rcx - 0x30], ax
jne 0x140008b3a
test r9, r9
jg 0x140008b20
jmp 0x140008b73
mov eax, 0x5c
mov word [rbp + rdx*2 - 0x30], ax
mov r9, r14
test r8, r8
je 0x140008b69
nop dword [rax]
lea eax, [r9 + rdx]
movsxd rcx, eax
movzx eax, word [r11 + r9*2]
mov word [rbp + rcx*2 - 0x2e], ax
inc r9
cmp r9, r8
jb 0x140008b50
lea rax, [r8 + rdx]
mov word [rbp + rax*2 - 0x2e], r14w
lea rax, [rbp - 0x30]
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], r14w
jne 0x140008b80
mov r8, rbx
lea rdx, [rbp - 0x30]
lea rcx, [0x140148ef0]
call fcn.1400040b0
mov al, 1
jmp 0x140008d1b
mov dword [0x1401515f0], 0xbba
cmp byte [0x140148e20], r14b
je 0x140008c24
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov ecx, 0x60
call fcn.1400a2614
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x58], xmm1
mov r8d, 0x14
lea rdx, str.wm_install_disk_full
lea rcx, [rbp - 0x68]
call fcn.140004fe0
nop
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x68]
call fcn.14007ea30
nop
lea rcx, [rbp - 0x68]
call fcn.1400053f0
nop
jmp 0x1400088fa
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1e0]
call fcn.1400a5270
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
mov rcx, rdi
call fcn.1400b7610
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rbp + 0x1e0]
inc rbx
cmp word [rax + rbx*2], r14w
jne 0x140008c80
mov r8, rbx
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x78]
call fcn.140004fe0
nop
lea rdx, str.TEXT_MSGBOX_11
lea rcx, [rbp - 0x68]
call fcn.140008d50
nop
lea r8, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae r8, qword [rsp + 0x78]
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rdx, qword [rbp - 0x68]
lea rcx, [rsp + 0x50]
call fcn.1400838d0
nop
cmp qword [rax + 0x18], 8
jb 0x140008ce3
mov rax, qword [rax]
mov rcx, rax
call fcn.140093a60
nop
lea rcx, [rsp + 0x50]
call fcn.1400053f0
nop
lea rcx, [rbp - 0x68]
call fcn.1400053f0
nop
lea rcx, [rsp + 0x78]
call fcn.1400053f0
jmp 0x140008d19
lea rcx, str.TEXT_MSGBOX_10
call fcn.140093a60
xor al, al
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.1400a24f0
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret