Function at 0x63cb70
Capabilities:
Get disk size

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
mov rbp, rsp
mov rsi, rcx
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x48], rbp
lea rdi, [rbp + 0x80]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
nop
call fcn.00612df0
mov eax, dword [0x00699894]
mov dword [0x006994b4], eax
call fcn.006179b0
mov eax, dword [0x00696ca0]
add eax, dword [0x00697e6c]
mov ecx, dword [0x00698adc]
add ecx, dword [0x00699374]
cmp eax, ecx
jle 0x63cbdf
mov eax, dword [0x00699374]
mov dword [0x00696ca0], eax
mov eax, dword [0x00696588]
add eax, dword [0x00696e70]
mov ecx, dword [0x006978f0]
add ecx, dword [0x00698d3c]
cmp eax, ecx
jle 0x63cc00
call fcn.004096f0
mov eax, dword [0x00697430]
add eax, dword [0x0069813c]
mov ecx, dword [0x00698fb8]
add ecx, dword [0x006995d8]
cmp eax, ecx
jle 0x63cc28
mov eax, dword [0x006995d8]
mov dword [0x00697430], eax
mov eax, dword [0x006965dc]
mov dword [0x00695d80], eax
mov eax, dword [0x006965dc]
mov dword [0x00695d80], eax
mov eax, dword [0x00698adc]
cmp eax, dword [0x00699374]
je 0x63cc5a
mov eax, dword [0x00698adc]
mov dword [0x00699374], eax
lea rcx, [rbp + 0x38]
lea rdx, [0x006927fd]
mov r8d, 0xc
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x40]
mov rdx, qword [rbp + 0x38]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x40]
call fcn.005a2dd0
mov qword [rbp + 0x68], rax
nop
mov eax, dword [0x006940c4]
add eax, 1
cmp dword [0x006940c4], eax
jne 0x63cd14
mov eax, dword [0x00697440]
test eax, eax
jge 0x63ccb6
call fcn.0040afc0
mov ecx, dword [0x00699d38]
test ecx, ecx
jge 0x63ccc5
call fcn.0040afc0
mov edx, dword [0x006933a4]
test edx, edx
jge 0x63ccd4
call fcn.0040afc0
mov r8d, dword [0x00694114]
test r8d, r8d
jge 0x63cce5
call fcn.0040afc0
mov r9d, dword [0x00695ba8]
test r9d, r9d
jge 0x63ccf6
call fcn.0040afc0
mov r10d, ecx
mov r11d, edx
mov ebx, r8d
mov dword [rsp + 0x20], r9d
mov ecx, eax
mov edx, r10d
mov r8d, r11d
mov r9d, ebx
call sub.kernel32.dll_LockFile
mov eax, dword [0x006932c8]
mov dword [0x00699d70], eax
mov eax, dword [0x006965a8]
mov dword [0x00695c04], eax
mov byte [rbp + 0x7f], 0
mov dword [rbp + 0x74], 0
mov eax, dword [0x006965a8]
mov dword [0x00695c04], eax
mov eax, dword [0x00698af4]
cmp eax, dword [0x0069938c]
je 0x63cd5d
mov eax, dword [0x00698af4]
mov dword [0x0069938c], eax
mov eax, dword [0x006940b4]
add eax, 1
cmp dword [0x006940b4], eax
jne 0x63cdae
mov eax, dword [0x00697450]
test eax, eax
jge 0x63cd7d
call fcn.0040afc0
mov ecx, dword [0x00698fd8]
test ecx, ecx
jge 0x63cd8c
call fcn.0040afc0
mov edx, dword [0x00699870]
test edx, edx
jge 0x63cd9b
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 [0x00694288]
add eax, 1
cmp dword [0x00694288], eax
jne 0x63cdd5
mov eax, dword [0x0069a04c]
test eax, eax
jge 0x63cdce
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x00696ac0]
add eax, dword [0x006978f0]
mov ecx, dword [0x00698d3c]
add ecx, dword [0x006990bc]
cmp eax, ecx
jle 0x63cdfd
mov eax, dword [0x006990bc]
mov dword [0x00696ac0], eax
call fcn.00616be0
mov rcx, qword [0x006a8af0]
mov rax, qword [0x006a8af0]
mov rax, qword [rax]
call qword [rax]
mov ecx, 0x80000000
lea rcx, [rcx + rax]
mov edx, 0xffffffff
cmp rcx, rdx
jbe 0x63ce2f
call fcn.0040afc0
mov dword [rbp + 0x78], eax
cmp dword [rbp + 0x78], 0
jle 0x63cec4
mov rcx, qword [0x006a8af0]
mov edx, dword [rbp + 0x74]
xor r8, r8
mov rax, qword [0x006a8af0]
mov rax, qword [rax]
call qword [rax + 0x48]
mov rcx, qword [0x006a8af0]
lea rdx, [rbp + 0x58]
mov r8d, 0x10
call fcn.004fab00
mov eax, dword [rbp + 0x80]
cmp eax, dword [rbp + 0x58]
jne 0x63ceb2
mov rcx, qword [0x006a8af0]
mov edx, dword [rbp + 0x74]
xor r8, r8
mov rax, qword [0x006a8af0]
mov rax, qword [rax]
call qword [rax + 0x48]
mov rcx, qword [0x006a8af0]
lea rdx, [rbp + 0x80]
mov r8d, 0x10
call fcn.004fbd70
mov byte [rbp + 0x7f], 1
jmp 0x63cec4
add dword [rbp + 0x74], 0x10
sub dword [rbp + 0x78], 0x10
cmp dword [rbp + 0x78], 0
jg 0x63ce3c
nop
jmp 0x63cf99
mov eax, dword [0x00699dd4]
mov dword [0x00699878], eax
mov eax, dword [0x00699390]
cmp eax, dword [0x00699864]
je 0x63cfbf
mov eax, dword [0x00699390]
mov dword [0x00699864], eax
call fcn.00619970
mov eax, dword [0x006932f8]
mov dword [0x00699da0], eax
mov eax, dword [0x006932f8]
mov dword [0x00699da0], eax
mov eax, dword [0x006994e4]
cmp eax, dword [0x00699c3c]
je 0x63cff6
mov eax, dword [0x006994e4]
mov dword [0x00699c3c], eax
mov rcx, qword [rbp + 0x68]
call fcn.005a2ff0
call fcn.0062d580
cmp eax, dword [0x00693204]
jle 0x63d016
mov dword [0x00693204], 0x79
nop
lea rcx, [rbp + 0x38]
call fcn.0040e970
lea rcx, [rbp + 0x40]
call fcn.0040e9c0
movzx rax, byte [rbp + 0x7f]
lea rsp, [rbp + 0x98]
pop rbx
pop rsi
pop rdi
pop rbp
ret