Function at 0x14001d180
Capabilities:
Get disk size

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x14036a3c8]
xor rax, rsp
mov qword [rbp + 0x70], rax
movzx r13d, dl
lea rcx, [rsp + 0x68]
call fcn.140034160
nop
mov rcx, rax
call fcn.14001da70
mov rdx, qword [rax]
xor ebx, ebx
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], 7
mov word [rbp + 0x50], bx
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop dword [rax]
inc r8
cmp word [rdx + r8*2], bx
jne 0x14001d1f0
lea rcx, [rbp + 0x50]
call fcn.14000a410
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d222
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
lea rcx, [rsp + 0x70]
call fcn.140031f00
nop
mov rcx, rax
call fcn.14001da70
mov rdx, qword [rax]
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], bx
mov r8, rsi
nop
inc r8
cmp word [rdx + r8*2], 0
jne 0x14001d250
lea rcx, [rbp + 0x30]
call fcn.14000a410
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d283
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
cmp qword [rbp + 0x60], 1
jb 0x14001d879
cmp qword [rbp + 0x40], 1
jb 0x14001d879
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x20], rbx
mov r9d, 7
mov qword [rbp + 0x28], r9
mov word [rbp + 0x10], bx
lea rax, [rbp + 0x50]
cmp qword [rbp + 0x68], 8
cmovae rax, qword [rbp + 0x50]
movzx edx, word [rax]
mov word [rbp + 0x10], dx
mov ecx, 2
mov qword [rbp + 0x20], rcx
mov dword [rbp + 0x12], 0x3a
mov qword [rbp - 0x10], rbx
mov qword [rbp], rbx
mov qword [rbp + 8], r9
mov word [rbp - 0x10], bx
lea rax, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae rax, qword [rbp + 0x30]
movzx r8d, word [rax]
mov word [rbp - 0x10], r8w
mov qword [rbp], rcx
mov dword [rbp - 0xe], 0x3a
cmp dx, r8w
jb 0x14001d333
mov rax, rbx
ja 0x14001d333
cmp rcx, 1
je 0x14001d57e
dec rcx
add rax, 2
movzx edx, word [rbp + rax + 0x10]
movzx r8d, word [rbp + rax - 0x10]
cmp dx, r8w
jae 0x14001d30f
xor r12b, r12b
xor dil, dil
nop dword [rax]
lea rcx, [rbp + 0x10]
cmp r9, 8
cmovae rcx, qword [rbp + 0x10]
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
jne 0x14001d37e
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
lea rcx, str.GetDiskFreeSpaceEx_failed_
call fcn.140036e10
mov r15, qword [rsp + 0x78]
shr r15, 0x14
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rcx, qword [rbp - 0x10]
lea r9, [rbp - 0x80]
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
jne 0x14001d3c5
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
lea rcx, str.GetDiskFreeSpaceEx_failed_
call fcn.140036e10
mov r14, qword [rbp - 0x80]
shr r14, 0x14
call fcn.140004c80
test rax, rax
je 0x14001d9e7
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
lea r8, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r8, qword [rbp + 0x10]
mov qword [rsp + 0x38], 0x1c7
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x28a
mov r9, r15
lea rdx, str.Disk_info:_system_free__s_:_I64dMB__system_benchmark:_I64dMB__install_free__s_:_I64dMB__install_benchmark::_I64dMB
lea rcx, [rsp + 0x40]
call fcn.14000d000
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
mov rcx, qword [rsp + 0x40]
call fcn.140036e10
cmp r15, 0x28a
jae 0x14001d65c
test r12b, r12b
jne 0x14001d586
cmp r14, 0x1c7
jae 0x14001d586
call fcn.140004c80
test rax, rax
je 0x14001d9ba
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea r11, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r11, qword [rbp - 0x10]
lea r10, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r10, qword [rbp + 0x10]
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r9, qword [rbp - 0x10]
lea r8, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r8, qword [rbp + 0x10]
lea rdx, [0x140364608]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae rdx, qword [0x140364608]
mov qword [rsp + 0x38], 0x1c7
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], 0x28a
mov qword [rsp + 0x20], r10
lea rcx, [rsp + 0x48]
call fcn.14000d000
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.140036e10
test r13b, r13b
jne 0x14001d781
lea r8, [0x1403645a8]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae r8, qword [0x1403645a8]
mov r9d, 1
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 1
sete dil
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d74f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
jmp 0x14001d74f
mov r12b, 1
jmp 0x14001d336
call fcn.140004c80
test rax, rax
je 0x14001d9c5
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea r9, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r9, qword [rbp + 0x10]
lea r8, [rbp + 0x10]
cmovae r8, qword [rbp + 0x10]
lea rdx, [0x1403645c8]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae rdx, qword [0x1403645c8]
mov qword [rsp + 0x20], 0x28a
lea rcx, [rsp + 0x50]
call fcn.14000d000
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.140036e10
test r13b, r13b
jne 0x14001d783
lea r8, [0x1403645a8]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae r8, qword [0x1403645a8]
mov r9d, 1
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 1
sete dil
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d74f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
jmp 0x14001d74f
cmp r14, 0x1c7
jae 0x14001d738
call fcn.140004c80
test rax, rax
je 0x14001d9d6
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r9, qword [rbp - 0x10]
lea r8, [rbp - 0x10]
cmovae r8, qword [rbp - 0x10]
lea rdx, [0x1403645e8]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae rdx, qword [0x1403645e8]
mov qword [rsp + 0x20], 0x1c7
lea rcx, [rsp + 0x58]
call fcn.14000d000
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
mov rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.140036e10
test r13b, r13b
jne 0x14001d785
lea r8, [0x1403645a8]
cmp qword [reloc.WS2_32.dll_getsockopt], 8
cmovae r8, qword [0x1403645a8]
mov r9d, 1
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 1
sete dil
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d736
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
xor ebx, ebx
cmp r15, 0x28a
jb 0x14001d74f
movzx edi, dil
cmp r14, 0x1c7
cmovae edi, ebx
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d76d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
test dil, dil
je 0x14001d858
mov r9, qword [rbp + 0x28]
xor ebx, ebx
jmp 0x14001d340
jmp 0x14001d785
jmp 0x14001d785
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d79f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14001d7bb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov bl, 1
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14001d7fd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d7f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d9d0
call fcn.140240d18
xor eax, eax
mov qword [rbp], rax
mov qword [rbp + 8], 7
mov word [rbp - 0x10], ax
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x14001d907
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d84e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d9e1
call fcn.140240d18
jmp 0x14001d907
cmp r15, 0x28a
jb 0x14001d7bb
cmp r14, 0x1c7
jb 0x14001d7bb
xor bl, bl
jmp 0x14001d7bd
call fcn.140004c80
mov rcx, rax
test rax, rax
je 0x14001d9f2
mov rax, qword [rax]
call qword [rax + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rbp + 0x30]
movaps xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rbp + 0x40]
movaps xmmword [rbp - 0x40], xmm1
movups xmm0, xmmword [rbp + 0x50]
movaps xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rbp + 0x60]
movaps xmmword [rbp - 0x20], xmm1
lea r9, [rbp - 0x50]
lea r8, [rbp - 0x30]
lea rdx, str.Get_Path_Failed._systemFolderPath__s___installationFolderPath__s_
lea rcx, [rsp + 0x60]
call fcn.14000d000
lea r8, [0x140281a50]
lea rdx, str.IsDiskFull
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140036e10
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14001d905
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
xor bl, bl
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x14001d948
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d942
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d9fd
call fcn.140240d18
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 8
jb 0x14001d984
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d97f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d9b4
call fcn.140240d18
movzx eax, bl
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140240e30
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1402480bc
nop
mov ecx, 0x80004005
call fcn.140004b00
nop
mov ecx, 0x80004005
call fcn.140004b00
nop
call fcn.1402480bc
nop
mov ecx, 0x80004005
call fcn.140004b00
nop
call fcn.1402480bc
nop
mov ecx, 0x80004005
call fcn.140004b00
nop
mov ecx, 0x80004005
call fcn.140004b00
nop
call fcn.1402480bc
int3