Function at 0x618090
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x88
mov rbp, rsp
mov qword [rbp + 0x58], rbp
mov qword [rbp + 0xa0], rcx
mov eax, dword [0x00698ae4]
mov dword [0x00697c88], eax
mov eax, dword [0x00698aec]
add eax, dword [0x006932cc]
mov ecx, dword [0x00693418]
add ecx, dword [0x00693900]
cmp eax, ecx
jle 0x6180d9
mov dword [0x00698aec], 0x109
call fcn.005fbed0
call fcn.00615620
cmp eax, dword [0x00693200]
jle 0x6180f5
mov dword [0x00693200], 0x5b
nop
mov dword [rbp + 0x68], 1
mov dword [rbp + 0x6c], 0x1388
mov eax, dword [0x00695d88]
add eax, dword [0x00696570]
mov ecx, dword [0x00696ab8]
add ecx, dword [0x00697494]
cmp eax, ecx
jle 0x61812c
mov eax, dword [0x00697494]
mov dword [0x00695d88], eax
mov dword [rbp + 0x70], 0x3e8
call fcn.005fd9c0
mov eax, dword [0x00698108]
mov dword [0x00697470], eax
mov ecx, 2
mov edx, 1
mov r8d, 6
call qword [0x006a92d8]
mov qword [rbp + 0x78], rax
lea rcx, [rbp + 0x78]
lea rdx, [rbp + 0xa0]
call fcn.00617b00
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x74]
sub eax, 4
test eax, eax
je 0x618427
sub eax, 1
test eax, eax
jne 0x618644
mov eax, dword [0x00698108]
mov dword [0x00697470], eax
mov eax, dword [0x006965f8]
cmp eax, dword [0x00696e6c]
je 0x6181b3
mov eax, dword [0x006965f8]
mov dword [0x00696e6c], eax
call fcn.005fbed0
mov rcx, qword [rbp + 0xa0]
lea rdx, [rbp + 0x78]
call fcn.00616ee0
test al, al
je 0x61834e
mov rcx, qword [rbp + 0xa0]
mov edx, 0x98000004
lea r8, [rbp + 0x68]
mov r9d, 0xc
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x64]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
call qword [0x006a9330]
mov rcx, qword [rbp + 0x78]
mov edx, 0x98000004
lea r8, [rbp + 0x68]
mov r9d, 0xc
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x64]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
call qword [0x006a9330]
mov rcx, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x78]
call fcn.00616c40
mov rcx, qword [rbp + 0x78]
call qword [0x006a92c0]
mov rcx, qword [rbp + 0xa0]
call qword [0x006a92c0]
mov eax, dword [0x00698b20]
mov dword [0x006980e4], eax
mov eax, dword [0x00698b20]
mov dword [0x006980e4], eax
mov eax, dword [0x00696a8c]
cmp eax, dword [0x00697468]
je 0x6182ba
mov eax, dword [0x00696a8c]
mov dword [0x00697468], eax
mov eax, dword [0x006932a8]
mov dword [0x006989a8], eax
mov eax, dword [0x006932a8]
mov dword [0x006989a8], eax
mov eax, dword [0x00696ca8]
cmp eax, dword [0x006974c0]
je 0x6182ec
mov eax, dword [0x00696ca8]
mov dword [0x006974c0], eax
mov eax, dword [0x00697e84]
mov dword [0x00697430], eax
mov eax, dword [0x00697e84]
mov dword [0x00697430], eax
mov eax, dword [0x00696a74]
cmp eax, dword [0x00697450]
je 0x61831e
mov eax, dword [0x00696a74]
mov dword [0x00697450], eax
mov eax, dword [0x00693448]
add eax, 1
cmp dword [0x00693448], eax
jne 0x61874a
mov eax, dword [0x00693950]
test eax, eax
jge 0x618342
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
jmp 0x61874a
mov rcx, qword [rbp + 0x78]
call qword [0x006a92c0]
mov rcx, qword [rbp + 0xa0]
call qword [0x006a92c0]
mov eax, dword [0x00698b18]
mov dword [0x00698138], eax
mov eax, dword [0x00695bd0]
add eax, dword [0x006961a4]
mov ecx, dword [0x006968a0]
add ecx, dword [0x00696e8c]
cmp eax, ecx
jle 0x618399
mov eax, dword [0x00696e8c]
mov dword [0x00695bd0], eax
mov eax, dword [0x006931d0]
mov dword [0x00698990], eax
mov eax, dword [0x006931d0]
mov dword [0x00698990], eax
mov eax, dword [0x00696898]
cmp eax, dword [0x00696e84]
je 0x6183cb
mov eax, dword [0x00696898]
mov dword [0x00696e84], eax
mov eax, dword [0x00695948]
add eax, dword [0x00696154]
mov ecx, dword [0x006965c8]
add ecx, dword [0x00696cd4]
cmp eax, ecx
jle 0x6183ec
call fcn.004096f0
mov eax, dword [0x006931b8]
mov dword [0x00698114], eax
mov eax, dword [0x00698d3c]
add eax, dword [0x006933b0]
mov ecx, dword [0x00693520]
add ecx, dword [0x006940bc]
cmp eax, ecx
jle 0x61874a
mov dword [0x00698d3c], 0x15a
jmp 0x61874a
mov rcx, qword [rbp + 0xa0]
mov edx, 0x98000004
lea r8, [rbp + 0x68]
mov r9d, 0xc
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x64]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
call qword [0x006a9330]
mov rcx, qword [rbp + 0x78]
mov edx, 0x98000004
lea r8, [rbp + 0x68]
mov r9d, 0xc
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x64]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
call qword [0x006a9330]
mov rcx, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x78]
call fcn.00616c40
mov rcx, qword [rbp + 0x78]
call qword [0x006a92c0]
mov rcx, qword [rbp + 0xa0]
call qword [0x006a92c0]
mov eax, dword [0x00695bec]
add eax, dword [0x006962d4]
mov ecx, dword [0x006968bc]
add ecx, dword [0x00697440]
cmp eax, ecx
jle 0x618507
mov eax, dword [0x00697440]
mov dword [0x00695bec], eax
mov eax, dword [0x00693530]
add eax, 1
cmp dword [0x00693530], eax
jne 0x618585
mov eax, dword [0x00696304]
test eax, eax
jge 0x618527
call fcn.0040afc0
mov ecx, dword [0x00696e78]
test ecx, ecx
jge 0x618536
call fcn.0040afc0
mov edx, dword [0x00697c88]
test edx, edx
jge 0x618545
call fcn.0040afc0
mov r8d, dword [0x00698d3c]
test r8d, r8d
jge 0x618556
call fcn.0040afc0
mov r9d, dword [0x006933b0]
test r9d, r9d
jge 0x618567
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 [0x00693208]
mov dword [0x00698ae4], eax
mov eax, dword [0x006933ec]
add eax, 1
cmp dword [0x006933ec], eax
jne 0x6185f9
mov eax, dword [0x006940f8]
test eax, eax
jge 0x6185b1
call fcn.0040afc0
mov ecx, dword [0x00695c04]
test ecx, ecx
jge 0x6185c0
call fcn.0040afc0
mov edx, dword [0x006962ec]
test edx, edx
jge 0x6185cf
call fcn.0040afc0
mov r8d, dword [0x00696c9c]
test r8d, r8d
jge 0x6185e0
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
mov dword [0x006932d0], 0x310
mov eax, dword [0x006932d0]
sub eax, 0x1a9
mov dword [0x0069341c], eax
mov eax, dword [0x006931d4]
add eax, dword [0x006933dc]
mov ecx, dword [0x0069354c]
add ecx, dword [0x006940e8]
cmp eax, ecx
jle 0x61874a
mov dword [0x006931d4], 0x97
jmp 0x61874a
mov rcx, qword [rbp + 0x78]
call qword [0x006a92c0]
mov rcx, qword [rbp + 0xa0]
call qword [0x006a92c0]
mov eax, dword [0x006931d4]
add eax, dword [0x006933dc]
mov ecx, dword [0x0069354c]
add ecx, dword [0x006940e8]
cmp eax, ecx
jle 0x618681
mov dword [0x006931d4], 0x97
mov eax, dword [0x00696570]
cmp eax, dword [0x00696ab8]
je 0x61869b
mov eax, dword [0x00696570]
mov dword [0x00696ab8], eax
call fcn.005fd9c0
cmp eax, dword [0x00698b08]
jle 0x6186b2
mov dword [0x00698b08], 0x1f
mov eax, dword [0x0069590c]
add eax, dword [0x00695c00]
mov ecx, dword [0x006962e8]
add ecx, dword [0x006965ec]
cmp eax, ecx
jle 0x6186d3
call fcn.004096f0
mov eax, dword [0x006932e8]
add eax, 1
cmp dword [0x006932e8], eax
jne 0x61874a
mov eax, dword [0x006932e0]
test eax, eax
jge 0x6186f3
call fcn.0040afc0
mov ecx, dword [0x00693970]
test ecx, ecx
jge 0x618702
call fcn.0040afc0
mov edx, dword [0x00696570]
test edx, edx
jge 0x618711
call fcn.0040afc0
mov r8d, ecx
mov r9d, edx
mov ecx, eax
mov edx, r8d
mov r8d, r9d
call sub.kernel32.dll_GetDiskFreeSpaceExW
jmp 0x61874a
call fcn.005e9c80
mov eax, dword [0x00693424]
add eax, 1
cmp dword [0x00693424], eax
jne 0x6187b7
mov eax, dword [0x006965e4]
test eax, eax
jge 0x61876f
call fcn.0040afc0
mov ecx, dword [0x006980e4]
test ecx, ecx
jge 0x61877e
call fcn.0040afc0
mov edx, dword [0x006932a4]
test edx, edx
jge 0x61878d
call fcn.0040afc0
mov r8d, dword [0x00693500]
test r8d, r8d
jge 0x61879e
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
lea rsp, [rbp + 0x88]
pop rbx
pop rbp
ret