Function at 0x140096cf0
Capabilities:
Get disk size

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0xd8]
sub rsp, 0x1b0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1403a0088]
xor rax, rsp
mov qword [rbp + 0x90], rax
mov r15, rdx
mov rsi, rcx
mov ecx, 0x7b0
call fcn.140125dd0
mov rbx, rax
mov qword [rsp + 0x40], rax
xor edx, edx
mov r8d, 0x7b0
mov rcx, rax
call fcn.1402767a0
mov rcx, rbx
call fcn.1400c85a0
nop
mov qword [rsi + 0xca0], rax
mov rcx, qword [rax + 0x788]
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x118]
mov rcx, qword [rsi + 0xca0]
mov rax, qword [rcx]
mov rdx, r15
call qword [rax + 0x1f8]
mov rcx, qword [rsi + 0xca0]
mov rax, qword [rcx]
mov edx, 0x20
call qword [rax + Ordinal_301]
xor r12d, r12d
mov qword [rsp + 0x58], r12
mov ebx, r12d
mov qword [rsp + 0x60], r12
xor edx, edx
mov r8d, 0x88
lea rcx, [rsp + 0x70]
call fcn.1402767a0
lea rdi, [r15 + 0x34]
cmp qword [rdi + 0x18], 8
jb 0x140096dd6
mov r8, qword [rdi]
jmp 0x140096dd9
mov r8, rdi
lea rdx, [rsp + 0x70]
call fcn.140096ab0
nop
mov rcx, qword [rsi + 0xca0]
mov rax, qword [rcx]
mov r8, qword [rsp + 0x70]
lea rdx, [0x14032fd10]
call qword [rax + 0x290]
cmp qword [rdi + 0x18], 8
jb 0x140096e0c
mov rcx, qword [rdi]
jmp 0x140096e0f
mov rcx, rdi
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x58]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x140096e2f
mov rbx, qword [rsp + 0x58]
sub rbx, qword [rsp + 0x60]
mov rax, qword [rsi + 0xca0]
mov r14, qword [rax + 0x770]
mov rcx, qword [rax + 0x790]
movups xmm0, xmmword [0x1403452e0]
movups xmmword [rcx + 0x5b8], xmm0
mov byte [rcx + 0x5dc], 1
call fcn.1400db4e0
mov rax, qword [rsi + 0xca0]
mov rcx, qword [rax + 0x778]
mov rax, qword [rcx]
mov edx, reloc.WS2_32.dll_send
call qword [rax + Ordinal_301]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, qword [rsi + 0xdf8]
call fcn.14004d640
mov r8, rax
cmp qword [rdi + 0x18], 8
jb 0x140096e9f
mov rdx, qword [rdi]
jmp 0x140096ea2
mov rdx, rdi
lea rcx, [rsi + 0x58]
mov byte [rsp + 0x28], 1
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
mov r9d, dword [rsp + 0x40]
call fcn.1400c1220
xor edx, edx
mov r8d, 0x88
lea rcx, [rbp]
call fcn.1402767a0
lea rax, [rbp + 8]
mov qword [rbp], rax
mov word [rbp + 8], r12w
cmp qword [rdi + 0x18], 8
jb 0x140096ee5
mov rdi, qword [rdi]
mov r8, rdi
lea rdx, str.file_s_dest0_5_22_24
lea rcx, [rbp]
call fcn.1400c3460
mov rax, qword [rsi + 0xca0]
mov rdx, qword [rbp]
mov rcx, qword [rax + 0x790]
call fcn.1400da490
mov rax, qword [rsi + 0xca0]
mov rdi, qword [rax + 0x790]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x200]
test al, al
je 0x140096f4c
mov byte [rdi + 0x178], 1
mov rcx, rdi
call fcn.1400db4e0
mov rax, qword [rdi + 0x58]
test rax, rax
je 0x140096f4c
mov byte [rax + 0x1dd], 1
mov rax, qword [rsi + 0xca0]
mov rcx, qword [rax + 0x778]
mov rax, qword [rcx]
mov r8b, 1
xor edx, edx
call qword [rax + 0x390]
mov ecx, 0x678
call fcn.140125dd0
mov rdi, rax
mov qword [rsp + 0x40], rax
xor edx, edx
mov r8d, 0x678
mov rcx, rax
call fcn.1402767a0
mov rcx, rdi
call fcn.1400ccf10
mov rdi, rax
mov r8, qword [rax]
mov edx, 0xa
mov rcx, rax
call qword [r8 + Ordinal_301]
mov r8, qword [rdi]
mov edx, 0x3c
mov rcx, rdi
call qword [r8 + 0x118]
mov r9, qword [rdi]
lea r8, [0x14032fcc8]
lea rdx, [0x14032fd48]
mov rcx, rdi
call qword [r9 + 0x290]
mov rax, qword [rdi]
lea r8, [0x14032fd40]
lea rdx, [0x14032fd38]
mov rcx, rdi
call qword [rax + 0x290]
mov rax, qword [rdi]
lea r8, [0x14031ef44]
lea rdx, [0x14032fd58]
mov rcx, rdi
call qword [rax + 0x290]
xorps xmm0, xmm0
cvtsi2sd xmm0, rbx
movsd xmm2, qword [0x14035d108]
test rbx, rbx
jns 0x140097021
addsd xmm0, xmm2
mov rax, qword [rsp + 0x58]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
test rax, rax
jns 0x140097037
addsd xmm1, xmm2
divsd xmm0, xmm1
mulsd xmm0, qword [0x14035d0b8]
cvtpd2ps xmm6, xmm0
movss dword [r15 + 0x10], xmm6
cvttss2si eax, xmm6
cmp eax, dword [rdi + 0x5ec]
je 0x140097083
cmp eax, dword [rdi + 0x5e8]
jl 0x140097083
cmp eax, dword [rdi + 0x5e4]
jg 0x140097083
mov dword [rdi + 0x5ec], eax
mov rcx, rdi
call fcn.1400db4e0
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x310]
mov rax, qword [rdi]
lea r8, [0x14032fdd0]
lea rdx, [0x14032fda8]
mov rcx, rdi
call qword [rax + 0x290]
mov rax, qword [rdi]
lea r8, [0x14032fd60]
lea rdx, [0x14032fdb8]
mov rcx, rdi
call qword [rax + 0x290]
add r14, 0x5a8
mov rax, qword [r14]
mov rdx, rdi
mov rcx, r14
call qword [rax + 0x20]
mov ecx, 0x5e0
call fcn.140125dd0
mov rbx, rax
mov qword [rsp + 0x40], rax
xor edx, edx
mov r8d, 0x5e0
mov rcx, rax
call fcn.1402767a0
mov rcx, rbx
call fcn.1400cc280
mov rbx, rax
xorps xmm0, xmm0
comiss xmm6, xmm0
jbe 0x140097118
cvtps2pd xmm2, xmm6
movq r8, xmm2
lea rdx, [0x14032fe38]
lea rcx, [rsp + 0x70]
call fcn.1400c3460
mov r8, qword [rbx]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call qword [r8 + 0x58]
mov rax, qword [rbx]
mov edx, 0x3c
mov rcx, rbx
call qword [rax + 0x118]
mov rax, qword [rbx]
lea r8, [0x14032fe28]
lea rdx, [0x14032fe18]
mov rcx, rbx
call qword [rax + 0x290]
mov rax, qword [r14]
mov rdx, rbx
mov rcx, r14
call qword [rax + 0x20]
mov ecx, 0x5e0
call fcn.140125dd0
mov rbx, rax
mov qword [rsp + 0x40], rax
xor edx, edx
mov r8d, 0x5e0
mov rcx, rax
call fcn.1402767a0
mov rcx, rbx
call fcn.1400cc280
mov rbx, rax
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140097219
mov rax, rcx
lea r8, [0x14043bd30]
cmp rcx, 0x400
jl 0x1400971cb
nop dword [rax]
cqo
and edx, 0x3ff
add rax, rdx
sar rax, 0xa
add r8, 8
cmp rax, 0x400
jge 0x1400971b0
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
movss xmm1, dword [0x14035d110]
comiss xmm0, xmm1
jb 0x1400971f9
movss xmm2, dword [0x14035d080]
nop dword [rax + rax]
mulss xmm0, xmm2
comiss xmm0, xmm1
jae 0x1400971f0
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
mov r9, qword [r8]
movq r8, xmm2
lea rdx, [0x14032fe98]
lea rcx, [rsp + 0x70]
call fcn.1400c3460
mov rax, qword [rbx]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call qword [rax + 0x58]
mov rax, qword [rbx]
mov edx, 0x3c
mov rcx, rbx
call qword [rax + 0x118]
mov rax, qword [rbx]
lea r8, [0x14032fe88]
lea rdx, [0x14032fe78]
mov rcx, rbx
call qword [rax + 0x290]
mov rax, qword [r14]
mov rdx, rbx
mov rcx, r14
call qword [rax + 0x20]
mov rcx, qword [rsi + 0xcd0]
mov rax, qword [rcx]
mov rdx, r15
call qword [rax + 0x1f8]
mov rcx, qword [rsi + 0xcd0]
mov rax, qword [rcx]
mov rdx, qword [rsi + 0xca0]
call qword [rax + 0x438]
nop
lea rax, [rbp + 8]
mov rcx, qword [rbp]
cmp rcx, rax
je 0x14009729c
call fcn.14027b988
nop
lea rax, [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
cmp rcx, rax
je 0x1400972b0
call fcn.14027b988
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.140125a70
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret