Function at 0x639c40
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x48
mov rbp, rsp
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x30], 0
nop
mov dword [0x006933f0], 0x320
mov eax, dword [0x006933f0]
sub eax, 0x1b2
mov dword [0x00693944], eax
mov dword [0x006933f0], 0x320
mov eax, dword [0x006933f0]
sub eax, 0x1b2
mov dword [0x00693944], eax
mov eax, dword [0x00698984]
cmp eax, dword [0x0069909c]
je 0x639cb4
mov eax, dword [0x00698984]
mov dword [0x0069909c], eax
mov eax, dword [0x006998a0]
mov dword [0x00699548], eax
mov eax, dword [0x006998a0]
mov dword [0x00699548], eax
mov eax, dword [0x006980f8]
cmp eax, dword [0x00698b20]
je 0x639ce6
mov eax, dword [0x006980f8]
mov dword [0x00698b20], eax
lea rcx, [rbp + 0x30]
lea rdx, [0x0069271f]
mov r8d, 0xc
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x38]
mov rdx, qword [rbp + 0x30]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x38]
call fcn.00410050
mov rcx, rax
call qword [0x006a8b70]
mov rbx, rax
lea rcx, [rbp + 0x28]
lea rdx, [0x0069275b]
mov r8d, 0x13
mov r9d, 0x2d
call fcn.00597b20
mov rcx, qword [rbp + 0x28]
call fcn.0040fbe0
mov rcx, rbx
mov rdx, rax
call qword [0x006a8c48]
mov rcx, rax
lea rdx, [0x00639950]
mov r8b, 2
call fcn.005cab20
mov qword [0x00699fe8], rax
test rax, rax
je 0x639e8e
mov eax, dword [0x00699d34]
add eax, dword [0x006932dc]
mov ecx, dword [0x0069354c]
add ecx, dword [0x00694298]
cmp eax, ecx
jle 0x639da4
mov dword [0x00699d34], 0xb
call fcn.005a2d10
cmp eax, dword [0x00693434]
jle 0x639dbb
mov dword [0x00693434], 0xc7
mov eax, dword [0x00699d34]
add eax, dword [0x006932dc]
mov ecx, dword [0x0069354c]
add ecx, dword [0x00694298]
cmp eax, ecx
jle 0x639de1
mov dword [0x00699d34], 0xb
mov eax, dword [0x00698ae4]
cmp eax, dword [0x00699374]
je 0x639dfb
mov eax, dword [0x00698ae4]
mov dword [0x00699374], eax
mov eax, dword [0x00699dc4]
add eax, dword [0x006933fc]
mov ecx, dword [0x00693950]
add ecx, dword [0x0069580c]
cmp eax, ecx
jle 0x639e21
mov dword [0x00699dc4], 0x106
mov dword [0x00693304], 0x30a
mov eax, dword [0x00693304]
sub eax, 0x1a7
mov dword [0x006935f0], eax
mov eax, dword [0x0069409c]
add eax, 1
cmp dword [0x0069409c], eax
jne 0x639e8e
mov eax, dword [0x00698fd0]
test eax, eax
jge 0x639e5d
call fcn.0040afc0
mov ecx, dword [0x00699a7c]
test ecx, ecx
jge 0x639e6c
call fcn.0040afc0
mov edx, dword [0x006931f8]
test edx, edx
jge 0x639e7b
call fcn.0040afc0
mov r8d, ecx
mov r9d, edx
mov ecx, eax
mov edx, r8d
mov r8d, r9d
call sub.kernel32.dll_GetDiskFreeSpaceExW
mov eax, dword [0x006968ac]
add eax, dword [0x0069749c]
mov ecx, dword [0x006989a8]
add ecx, dword [0x006990c0]
cmp eax, ecx
jle 0x639eb6
mov eax, dword [0x006990c0]
mov dword [0x006968ac], eax
mov eax, dword [0x00699894]
mov dword [0x0069953c], eax
mov eax, dword [0x006965d4]
add eax, dword [0x00696cc8]
mov ecx, dword [0x00697e8c]
add ecx, dword [0x00698af4]
cmp eax, ecx
jle 0x639ee3
call fcn.004096f0
mov eax, dword [0x006932f8]
mov dword [0x00699d50], eax
mov eax, dword [0x006932f8]
mov dword [0x00699d50], eax
mov eax, dword [0x00698f88]
cmp eax, dword [0x00699540]
je 0x639f15
mov eax, dword [0x00698f88]
mov dword [0x00699540], eax
nop
lea rcx, [rbp + 0x28]
mov edx, 2
call fcn.0040ea30
lea rcx, [rbp + 0x38]
call fcn.0040e9c0
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret