Function at 0x604b80
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x308
mov rbp, rsp
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x58], rbp
mov qword [rbp + 0x320], rcx
mov byte [rbp + 0x328], dl
lea rcx, [rbp + 0x320]
call fcn.0040eaf0
lea rcx, [rbp + 0x80]
mov rdx, qword [0x00597950]
call fcn.004111e0
nop
mov dword [0x006932bc], 0x311
mov eax, dword [0x006932bc]
sub eax, 0x1aa
mov dword [0x006933f4], eax
call fcn.005e7c60
mov eax, dword [0x006932d0]
add eax, 1
cmp dword [0x006932d0], eax
jne 0x604c2d
mov eax, dword [0x00693978]
test eax, eax
jge 0x604c26
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x00693514]
add eax, 1
cmp dword [0x00693514], eax
jne 0x604c7e
mov eax, dword [0x006934bc]
test eax, eax
jge 0x604c4d
call fcn.0040afc0
mov ecx, dword [0x006940e0]
test ecx, ecx
jge 0x604c5c
call fcn.0040afc0
mov edx, dword [0x00695858]
test edx, edx
jge 0x604c6b
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 [0x00693924]
add eax, 1
cmp dword [0x00693924], eax
jne 0x604ce6
mov eax, dword [0x006931dc]
test eax, eax
jge 0x604c9e
call fcn.0040afc0
mov ecx, dword [0x00693568]
test ecx, ecx
jge 0x604cad
call fcn.0040afc0
mov edx, dword [0x00694138]
test edx, edx
jge 0x604cbc
call fcn.0040afc0
mov r8d, dword [0x006958cc]
test r8d, r8d
jge 0x604ccd
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
call fcn.006011a0
cmp eax, dword [0x006932c4]
jle 0x604cfd
mov dword [0x006932c4], 0x6c
mov eax, dword [0x00693294]
mov dword [0x006978c4], eax
nop
mov eax, dword [0x00693294]
mov dword [0x006978c4], eax
mov eax, dword [0x00696318]
cmp eax, dword [0x00696a88]
je 0x604d30
mov eax, dword [0x00696318]
mov dword [0x00696a88], eax
mov eax, dword [0x006934e0]
add eax, dword [0x00693950]
mov ecx, dword [0x00697e8c]
add ecx, dword [0x00693300]
cmp ecx, eax
jle 0x604d56
mov dword [0x00697e8c], 0x77
mov ecx, dword [0x00697e8c]
add ecx, dword [0x00693300]
cmp ecx, eax
jle 0x604d70
mov dword [0x00697e8c], 0x77
mov eax, dword [0x00696600]
cmp eax, dword [0x00696e54]
je 0x604d8a
mov eax, dword [0x00696600]
mov dword [0x00696e54], eax
mov eax, dword [0x00696a84]
add eax, dword [0x00697440]
mov ecx, dword [0x00695bf8]
add ecx, dword [0x006961ac]
cmp ecx, eax
jle 0x604db2
mov ecx, dword [0x00697440]
mov dword [0x00695bf8], ecx
mov ecx, dword [0x00695bf8]
add ecx, dword [0x006961ac]
cmp ecx, eax
jle 0x604dce
mov eax, dword [0x00697440]
mov dword [0x00695bf8], eax
mov eax, dword [0x006965d4]
cmp eax, dword [0x00696cc0]
je 0x604de8
mov eax, dword [0x006965d4]
mov dword [0x00696cc0], eax
mov eax, dword [0x006934c8]
add eax, 1
cmp dword [0x006934c8], eax
jne 0x604e0f
mov eax, dword [0x006932c8]
test eax, eax
jge 0x604e08
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x320]
lea r8, [0x00605230]
call fcn.00410100
mov rcx, qword [rbp + 0x70]
mov edx, 0x1ff
lea r8, [rbp + 0x80]
call fcn.005ff840
mov dword [rbp + 0x7c], eax
cmp dword [rbp + 0x7c], 0
jne 0x604fe1
mov eax, dword [rbp + 0x88]
and eax, 0x10
cmp eax, 0x10
jne 0x604e99
mov rcx, qword [rbp + 0x90]
lea rdx, [0x0060523c]
call fcn.00410520
test eax, eax
je 0x604e85
mov rcx, qword [rbp + 0x90]
lea rdx, [0x00605244]
call fcn.00410520
test eax, eax
jne 0x604e99
lea rcx, [rbp + 0x80]
call fcn.005ffa80
mov dword [rbp + 0x7c], eax
jmp 0x604fd7
mov eax, dword [rbp + 0x88]
and eax, 0x10
cmp eax, 0x10
jne 0x604f59
lea rcx, [rbp + 0x50]
lea rdx, [rbp + 0xd4]
mov r8d, 0x104
call fcn.0040ff40
lea rcx, [rbp + 0x70]
mov edx, 3
mov r8, qword [rbp + 0x320]
mov r9, qword [rbp + 0x50]
lea rax, [0x00605250]
mov qword [rsp + 0x20], rax
call fcn.00410400
mov rcx, qword [rbp + 0x70]
movzx rdx, byte [rbp + 0x328]
call fcn.00604b80
lea rcx, [rbp + 0x48]
lea rdx, [rbp + 0xd4]
mov r8d, 0x104
call fcn.0040ff40
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x320]
mov r8, qword [rbp + 0x48]
call fcn.00410100
mov rcx, qword [rbp + 0x70]
call fcn.00410050
mov rbx, rax
mov rcx, rbx
mov edx, 0x20
call qword [0x006a8d88]
mov rcx, rbx
call qword [0x006a8d98]
lea rcx, [rbp + 0x80]
call fcn.005ffa80
mov dword [rbp + 0x7c], eax
jmp 0x604fd7
lea rcx, [rbp + 0x40]
lea rdx, [rbp + 0xd4]
mov r8d, 0x104
call fcn.0040ff40
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x320]
mov r8, qword [rbp + 0x40]
call fcn.00410100
mov rcx, qword [rbp + 0x70]
call fcn.00410050
mov rbx, rax
mov rcx, rbx
mov edx, 0x20
call qword [0x006a8d88]
cmp byte [rbp + 0x328], 0
je 0x604fbf
lea rcx, [rbp + 0x38]
mov rdx, rbx
call fcn.0040fee0
mov rcx, qword [rbp + 0x38]
call fcn.00604560
jmp 0x604fc8
mov rcx, rbx
call qword [0x006a8cf0]
lea rcx, [rbp + 0x80]
call fcn.005ffa80
mov dword [rbp + 0x7c], eax
cmp dword [rbp + 0x7c], 0
je 0x604e49
nop
call fcn.005f3a60
cmp eax, dword [0x00697e70]
jle 0x604ff9
mov dword [0x00697e70], 0x37
mov dword [0x00693208], 0x2f1
mov eax, dword [0x00693208]
sub eax, 0x19b
mov dword [0x006933f0], eax
mov eax, dword [0x00696ca0]
add eax, dword [0x00697498]
mov ecx, dword [0x00696160]
add ecx, dword [0x006965b4]
cmp ecx, eax
jle 0x60503d
mov ecx, dword [0x00697498]
mov dword [0x00696160], ecx
mov ecx, dword [0x00696160]
add ecx, dword [0x006965b4]
cmp ecx, eax
jle 0x605059
mov eax, dword [0x00697498]
mov dword [0x00696160], eax
mov eax, dword [0x0069617c]
cmp eax, dword [0x006968ac]
je 0x605073
mov eax, dword [0x0069617c]
mov dword [0x006968ac], eax
mov rcx, qword [rbp + 0xa0]
call qword [0x006a8d08]
mov rcx, qword [rbp + 0x320]
call fcn.00410050
mov rbx, rax
mov rcx, rbx
mov edx, 0x20
call qword [0x006a8d88]
mov rcx, rbx
call qword [0x006a8d98]
test eax, eax
setne al
mov byte [rbp + 0x2ff], al
jmp 0x60510e
mov eax, dword [0x00693430]
add eax, 1
cmp dword [0x00693430], eax
jne 0x60515f
mov eax, dword [0x006958f0]
test eax, eax
jge 0x60512e
call fcn.0040afc0
mov ecx, dword [0x006978f0]
test ecx, ecx
jge 0x60513d
call fcn.0040afc0
mov edx, dword [0x006933a0]
test edx, edx
jge 0x60514c
call fcn.0040afc0
mov r8d, ecx
mov r9d, edx
mov ecx, eax
mov edx, r8d
mov r8d, r9d
call sub.kernel32.dll_GetDiskFreeSpaceExW
mov dword [0x006978f4], 0x2f4
mov eax, dword [0x006978f4]
sub eax, 0x18d
mov dword [0x006932c4], eax
nop
lea rcx, [rbp + 0x38]
mov edx, 4
call fcn.0040ea60
lea rcx, [rbp + 0x70]
call fcn.0040e9c0
lea rcx, [rbp + 0x80]
mov rdx, qword [0x00597950]
call fcn.00411390
lea rcx, [rbp + 0x320]
call fcn.0040e9c0
movzx rax, byte [rbp + 0x2ff]
lea rsp, [rbp + 0x308]
pop rbx
pop rbp
ret