Function at 0x5f7fd0
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x78
mov rbp, rsp
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x48], rbp
mov qword [rbp + 0x90], rcx
mov qword [rbp + 0x98], rdx
mov rcx, qword [rbp + 0x90]
call fcn.0040eab0
mov rcx, qword [rbp + 0x98]
call fcn.0040eab0
nop
mov eax, dword [0x0069592c]
add eax, dword [0x00695d98]
mov ecx, dword [0x006961ac]
add ecx, dword [0x006965f4]
cmp eax, ecx
jle 0x5f803c
mov eax, dword [0x006965f4]
mov dword [0x0069592c], eax
nop
lea rcx, [rbp + 0x38]
lea rdx, [0x006930b9]
mov r8d, 4
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.00410050
xor ecx, ecx
mov rdx, rax
call qword [0x006a9210]
mov qword [rbp + 0x60], rax
mov dword [0x006932f8], 0x32c
mov eax, dword [0x006932f8]
sub eax, 0x1b7
mov dword [0x00693428], eax
mov eax, dword [0x00696e70]
mov dword [0x006968b0], eax
mov eax, dword [0x00695c00]
add eax, dword [0x0069615c]
mov ecx, dword [0x006965a4]
add ecx, dword [0x00696a74]
cmp eax, ecx
jle 0x5f80d3
mov eax, dword [0x00696a74]
mov dword [0x00695c00], eax
call fcn.005e6a00
mov eax, dword [0x00695c00]
add eax, dword [0x0069615c]
mov ecx, dword [0x006965a4]
add ecx, dword [0x00696a74]
cmp eax, ecx
jle 0x5f8100
mov eax, dword [0x00696a74]
mov dword [0x00695c00], eax
mov eax, dword [0x00696124]
cmp eax, dword [0x00696324]
je 0x5f811a
mov eax, dword [0x00696124]
mov dword [0x00696324], eax
mov eax, dword [0x0069581c]
add eax, dword [0x00695924]
mov ecx, dword [0x00695d94]
add ecx, dword [0x00696308]
cmp eax, ecx
jle 0x5f813b
call fcn.004096f0
mov eax, dword [0x006934e8]
add eax, 1
cmp dword [0x006934e8], eax
jne 0x5f8162
mov eax, dword [0x00695810]
test eax, eax
jge 0x5f815b
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x00695d84]
add eax, dword [0x006962f8]
mov ecx, dword [0x006965dc]
add ecx, dword [0x00696cc0]
cmp eax, ecx
jle 0x5f818a
mov eax, dword [0x00696cc0]
mov dword [0x00695d84], eax
cmp qword [rbp + 0x60], 0
je 0x5f8600
mov eax, dword [0x006942dc]
mov dword [0x006940ac], eax
mov eax, dword [0x00693428]
add eax, 1
cmp dword [0x00693428], eax
jne 0x5f821f
mov eax, dword [0x00695874]
test eax, eax
jge 0x5f81c1
call fcn.0040afc0
mov ecx, dword [0x0069615c]
test ecx, ecx
jge 0x5f81d0
call fcn.0040afc0
mov edx, dword [0x00696e90]
test edx, edx
jge 0x5f81df
call fcn.0040afc0
mov r8d, dword [0x00693294]
test r8d, r8d
jge 0x5f81f0
call fcn.0040afc0
mov r9d, dword [0x006934b8]
test r9d, r9d
jge 0x5f8201
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
call fcn.005ea870
cmp eax, dword [0x00693280]
jle 0x5f8236
mov dword [0x00693280], 0x58
mov eax, dword [0x006932f8]
add eax, 1
cmp dword [0x006932f8], eax
jne 0x5f825d
mov eax, dword [0x006933e4]
test eax, eax
jge 0x5f8256
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x006932fc]
add eax, 1
cmp dword [0x006932fc], eax
jne 0x5f82ae
mov eax, dword [0x0069340c]
test eax, eax
jge 0x5f827d
call fcn.0040afc0
mov ecx, dword [0x00693968]
test ecx, ecx
jge 0x5f828c
call fcn.0040afc0
mov edx, dword [0x0069582c]
test edx, edx
jge 0x5f829b
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 [0x00696ccc]
mov dword [0x006965ec], eax
mov eax, dword [0x00695d94]
add eax, dword [0x00696308]
mov ecx, dword [0x00696a6c]
add ecx, dword [0x00696cd0]
cmp eax, ecx
jle 0x5f82e2
mov eax, dword [0x00696cd0]
mov dword [0x00695d94], eax
mov eax, dword [0x0069587c]
add eax, dword [0x00695934]
mov ecx, dword [0x00696114]
add ecx, dword [0x00696318]
cmp eax, ecx
jle 0x5f8303
call fcn.004096f0
mov rcx, qword [rbp + 0x90]
call fcn.00410730
mov rcx, qword [rbp + 0x60]
mov edx, 0x10001
xor r8, r8
mov r9d, 0x80007
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
call qword [0x006a9218]
mov qword [rbp + 0x58], rax
cmp qword [rbp + 0x58], 0
je 0x5f84d6
mov eax, dword [0x00696a94]
mov dword [0x00696574], eax
mov eax, dword [0x00696a94]
mov dword [0x00696574], eax
mov eax, dword [0x00696148]
cmp eax, dword [0x00696590]
je 0x5f8378
mov eax, dword [0x00696148]
mov dword [0x00696590], eax
mov eax, dword [0x00695c0c]
add eax, dword [0x00696164]
mov ecx, dword [0x006965ac]
add ecx, dword [0x00696c90]
cmp eax, ecx
jle 0x5f83a0
mov eax, dword [0x00696c90]
mov dword [0x00695c0c], eax
call fcn.005e3480
mov rax, qword [rbp + 0x58]
mov rcx, qword [rax + 8]
mov rax, qword [rbp + 0x58]
mov edx, dword [rax + 0x10]
mov r8, qword [rbp + 0x98]
call fcn.005f6ab0
mov byte [rbp + 0x6f], al
mov eax, dword [0x00695800]
mov dword [0x00694138], eax
call fcn.005e5470
mov eax, dword [0x006940c4]
sub eax, dword [0x00693550]
mov dword [0x00693550], eax
call fcn.005e7100
call fcn.005e9c80
cmp eax, dword [0x006931dc]
jle 0x5f8402
mov dword [0x006931dc], 0x47
mov eax, dword [0x0069320c]
mov dword [0x006974a0], eax
mov eax, dword [0x00695bf8]
add eax, dword [0x00696308]
mov ecx, dword [0x00696a6c]
add ecx, dword [0x0069746c]
cmp eax, ecx
jle 0x5f8436
mov eax, dword [0x0069746c]
mov dword [0x00695bf8], eax
mov eax, dword [0x00693500]
add eax, dword [0x00693964]
mov ecx, dword [0x006931dc]
add ecx, dword [0x006933b8]
cmp ecx, eax
jle 0x5f845c
mov dword [0x006931dc], 0x57
mov ecx, dword [0x006931dc]
add ecx, dword [0x006933b8]
cmp ecx, eax
jle 0x5f8476
mov dword [0x006931dc], 0x57
mov eax, dword [0x0069611c]
cmp eax, dword [0x00696320]
je 0x5f8490
mov eax, dword [0x0069611c]
mov dword [0x00696320], eax
mov rcx, qword [rbp + 0x58]
call qword [0x006a9250]
call fcn.005e7700
call fcn.005e4a50
mov eax, dword [0x006958c4]
mov dword [0x006942d4], eax
mov eax, dword [0x006958c4]
mov dword [0x006942d4], eax
mov eax, dword [0x006962d8]
cmp eax, dword [0x00696894]
je 0x5f84d6
mov eax, dword [0x006962d8]
mov dword [0x00696894], eax
mov eax, dword [0x006933b4]
add eax, 1
cmp dword [0x006933b4], eax
jne 0x5f8527
mov eax, dword [0x006942e8]
test eax, eax
jge 0x5f84f6
call fcn.0040afc0
mov ecx, dword [0x0069630c]
test ecx, ecx
jge 0x5f8505
call fcn.0040afc0
mov edx, dword [0x00696ac0]
test edx, edx
jge 0x5f8514
call fcn.0040afc0
mov r8d, ecx
mov r9d, edx
mov ecx, eax
mov edx, r8d
mov r8d, r9d
call sub.kernel32.dll_GetDiskFreeSpaceExW
call fcn.005dda90
call fcn.005e8470
cmp eax, dword [0x006974bc]
jle 0x5f8543
mov dword [0x006974bc], 0x33
mov eax, dword [0x00697440]
mov dword [0x00696a90], eax
mov eax, dword [0x00697440]
mov dword [0x00696a90], eax
mov eax, dword [0x00696158]
cmp eax, dword [0x006965a0]
je 0x5f8575
mov eax, dword [0x00696158]
mov dword [0x006965a0], eax
mov eax, dword [0x00693514]
add eax, 1
cmp dword [0x00693514], eax
jne 0x5f859c
mov eax, dword [0x00696170]
test eax, eax
jge 0x5f8595
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x00693300]
mov dword [0x006931b4], eax
mov eax, dword [0x00693300]
mov dword [0x006931b4], eax
mov eax, dword [0x006962d4]
cmp eax, dword [0x00696890]
je 0x5f85ce
mov eax, dword [0x006962d4]
mov dword [0x00696890], eax
mov rcx, qword [rbp + 0x60]
xor edx, edx
call qword [0x006a9258]
mov eax, dword [0x006974d4]
add eax, dword [0x006932f0]
mov ecx, dword [0x006934c4]
add ecx, dword [0x0069392c]
cmp eax, ecx
jle 0x5f8600
mov dword [0x006974d4], 0x65
call fcn.005ea1d0
cmp eax, dword [0x006931fc]
jle 0x5f8617
mov dword [0x006931fc], 0x4f
mov eax, dword [0x006934c8]
add eax, 1
cmp dword [0x006934c8], eax
jne 0x5f8695
mov eax, dword [0x006931e8]
test eax, eax
jge 0x5f8637
call fcn.0040afc0
mov ecx, dword [0x0069355c]
test ecx, ecx
jge 0x5f8646
call fcn.0040afc0
mov edx, dword [0x0069411c]
test edx, edx
jge 0x5f8655
call fcn.0040afc0
mov r8d, dword [0x00695884]
test r8d, r8d
jge 0x5f8666
call fcn.0040afc0
mov r9d, dword [0x00696a84]
test r9d, r9d
jge 0x5f8677
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 [0x00695bfc]
add eax, dword [0x00696154]
mov ecx, dword [0x0069659c]
add ecx, dword [0x00696abc]
cmp eax, ecx
jle 0x5f86bd
mov eax, dword [0x00696abc]
mov dword [0x00695bfc], eax
mov eax, dword [0x006942dc]
mov dword [0x006940ac], eax
mov eax, dword [0x0069395c]
sub eax, dword [0x00693544]
mov dword [0x00693544], eax
call fcn.005ea870
cmp eax, dword [0x00693278]
jle 0x5f86fc
mov dword [0x00693278], 0x56
jmp 0x5f86fc
call fcn.005e3fc0
mov eax, dword [0x006974d4]
add eax, dword [0x006932f0]
mov ecx, dword [0x00693420]
add ecx, dword [0x00693564]
cmp eax, ecx
jle 0x5f8727
mov dword [0x006974d4], 0xf4
mov eax, dword [0x00696e70]
mov dword [0x006968b0], eax
mov dword [0x006932bc], 0x313
mov eax, dword [0x006932bc]
sub eax, 0x1ab
mov dword [0x00693438], eax
mov dword [0x006932bc], 0x313
mov eax, dword [0x006932bc]
sub eax, 0x1ab
mov dword [0x00693438], eax
mov eax, dword [0x00696580]
cmp eax, dword [0x00696cb0]
je 0x5f8785
mov eax, dword [0x00696580]
mov dword [0x00696cb0], eax
nop
lea rcx, [rbp + 0x38]
call fcn.0040e970
lea rcx, [rbp + 0x40]
call fcn.0040e9c0
lea rcx, [rbp + 0x90]
mov edx, 2
call fcn.0040ea00
movzx rax, byte [rbp + 0x6f]
lea rsp, [rbp + 0x78]
pop rbx
pop rbp
ret