Function at 0x5cec00
Capabilities:
Get disk size

Disassembly:
push rbp
sub rsp, 0x180
mov rbp, rsp
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], rbp
mov dword [rbp + 0x190], ecx
nop
mov eax, dword [0x0069580c]
add eax, dword [0x006958dc]
mov ecx, dword [0x006940d4]
add ecx, dword [0x006942a0]
cmp ecx, eax
jle 0x5cec46
mov ecx, dword [0x006958dc]
mov dword [0x006940d4], ecx
mov ecx, dword [0x006940d4]
add ecx, dword [0x006942a0]
cmp ecx, eax
jle 0x5cec62
mov eax, dword [0x006958dc]
mov dword [0x006940d4], eax
mov eax, dword [0x006942a4]
cmp eax, dword [0x00695840]
je 0x5cec7c
mov eax, dword [0x006942a4]
mov dword [0x00695840], eax
mov eax, dword [0x0069397c]
add eax, dword [0x0069410c]
mov ecx, dword [0x006942d8]
add ecx, dword [0x00695844]
cmp eax, ecx
jle 0x5cec9d
call fcn.004096f0
mov eax, dword [0x0069397c]
add eax, dword [0x0069410c]
mov ecx, dword [0x006942d8]
add ecx, dword [0x00695844]
cmp eax, ecx
jle 0x5cecbe
call fcn.004096f0
mov eax, dword [0x006942a4]
cmp eax, dword [0x00695810]
je 0x5cecd8
mov eax, dword [0x006942a4]
mov dword [0x00695810], eax
mov byte [rbp + 0x17b], 0
mov eax, dword [0x006940ec]
add eax, dword [0x006942b8]
mov ecx, dword [0x00695828]
add ecx, dword [0x006958c8]
cmp eax, ecx
jle 0x5ced07
mov eax, dword [0x006958c8]
mov dword [0x006940ec], eax
call fcn.005cad30
mov eax, dword [0x00693920]
add eax, dword [0x006940dc]
mov ecx, dword [0x006942a8]
add ecx, dword [0x00695814]
cmp eax, ecx
jle 0x5ced2d
call fcn.004096f0
mov eax, dword [0x006933c4]
add eax, 1
cmp dword [0x006933c4], eax
jne 0x5ced5d
mov ecx, dword [0x00693404]
mov edx, dword [0x00693568]
mov r8d, dword [0x006940cc]
mov r9d, dword [0x00694298]
call sub.advapi32.dll_CryptDuplicateKey
mov eax, dword [0x006933d0]
add eax, 1
cmp dword [0x006933d0], eax
jne 0x5ced8d
mov ecx, dword [0x006940f0]
mov edx, dword [0x00695828]
mov r8d, dword [0x006958c8]
mov r9d, dword [0x006931d8]
call sub.advapi32.dll_CryptDuplicateKey
call fcn.005cc790
cmp eax, dword [0x006931e0]
jle 0x5ceda4
mov dword [0x006931e0], 0x2f
mov eax, dword [0x006931d0]
mov dword [0x006958a4], eax
call fcn.005cb700
mov eax, dword [0x006931d0]
mov dword [0x006958a4], eax
mov eax, dword [0x00694288]
cmp eax, dword [0x006957f4]
je 0x5ceddb
mov eax, dword [0x00694288]
mov dword [0x006957f4], eax
cmp dword [rbp + 0x190], 0
je 0x5cf1c0
nop
mov eax, dword [0x006940cc]
add eax, dword [0x00694294]
mov ecx, dword [0x00695804]
add ecx, dword [0x00695888]
cmp eax, ecx
jle 0x5cee11
mov eax, dword [0x00695888]
mov dword [0x006940cc], eax
mov eax, dword [0x006932f8]
add eax, 1
cmp dword [0x006932f8], eax
jne 0x5cee2d
mov ecx, dword [0x00693208]
call sub.kernel32.dll_SetConsoleKeyShortcuts
call fcn.005cc640
cmp eax, dword [0x006931d8]
jle 0x5cee44
mov dword [0x006931d8], 0x2c
mov eax, dword [0x00693914]
mov dword [0x00693518], eax
mov eax, dword [0x00693914]
mov dword [0x00693518], eax
mov eax, dword [0x00695810]
cmp eax, dword [0x006958e0]
je 0x5cee76
mov eax, dword [0x00695810]
mov dword [0x006958e0], eax
call fcn.005c9c20
mov eax, dword [0x00695898]
mov dword [0x00695814], eax
mov eax, dword [0x006940ac]
add eax, dword [0x00694130]
mov ecx, dword [0x006942fc]
add ecx, dword [0x0069583c]
cmp eax, ecx
jle 0x5ceeaf
mov eax, dword [0x0069583c]
mov dword [0x006940ac], eax
mov ecx, 2
xor edx, edx
call qword [0x006a8be8]
mov dword [rbp + 0x174], eax
mov eax, dword [0x006932fc]
add eax, 1
cmp dword [0x006932fc], eax
jne 0x5ceeec
mov ecx, dword [0x00694130]
mov edx, dword [0x00693300]
mov r8d, dword [0x006934c8]
call sub.kernel32.dll_GetDiskFreeSpaceExW
mov eax, dword [0x006933c8]
add eax, 1
cmp dword [0x006933c8], eax
jne 0x5cef1c
mov ecx, dword [0x00695924]
mov edx, dword [0x0069353c]
mov r8d, dword [0x00693964]
mov r9d, dword [0x00694124]
call sub.advapi32.dll_CryptDuplicateKey
mov eax, dword [0x00693924]
add eax, dword [0x006940b8]
mov ecx, dword [0x0069413c]
add ecx, dword [0x006942dc]
cmp eax, ecx
jle 0x5cef3d
call fcn.004096f0
mov eax, dword [0x006940a8]
mov dword [0x00693914], eax
mov eax, dword [0x006931d8]
mov dword [0x006958f4], eax
mov eax, dword [0x0069397c]
add eax, dword [0x0069410c]
mov ecx, dword [0x006942d8]
add ecx, dword [0x00695844]
cmp eax, ecx
jle 0x5cef7d
mov eax, dword [0x00695844]
mov dword [0x0069397c], eax
call fcn.005cce40
cmp eax, dword [0x00693208]
jle 0x5cef94
mov dword [0x00693208], 0x39
mov eax, dword [0x006932f8]
add eax, 1
cmp dword [0x006932f8], eax
jne 0x5cefce
mov ecx, dword [0x006940d4]
mov edx, dword [0x006942f8]
mov r8d, dword [0x00695894]
mov r9d, dword [0x00695934]
mov eax, dword [0x006932a4]
mov dword [rsp + 0x20], eax
call sub.kernel32.dll_LockFile
call fcn.005ccda0
cmp eax, dword [0x006931f4]
jle 0x5cefe5
mov dword [0x006931f4], 0x28
mov eax, dword [rbp + 0x174]
cmp rax, 0xffffffffffffffff
je 0x5cf1ba
mov dword [rbp + 0x40], 0x130
mov ecx, dword [rbp + 0x174]
lea rdx, [rbp + 0x40]
call qword [0x006a8ca8]
test eax, eax
je 0x5cf05e
lea rcx, [rbp + 0x30]
lea rdx, [rbp + 0x6c]
mov r8d, 0x104
call fcn.00410800
cmp qword [rbp + 0x30], 0
je 0x5cf049
cmp dword [rbp + 0x48], 0
je 0x5cf049
mov eax, dword [rbp + 0x48]
movsxd rcx, dword [rbp + 0x190]
cmp rax, rcx
jne 0x5cf049
mov byte [rbp + 0x17b], 1
jmp 0x5cf05d
mov ecx, dword [rbp + 0x174]
lea rdx, [rbp + 0x40]
call qword [0x006a8cb0]
test eax, eax
jne 0x5cf010
nop
mov ecx, dword [rbp + 0x174]
call qword [0x006a8bc0]
jmp 0x5cf1ba
call fcn.005c89f0
nop
lea rcx, [rbp + 0x30]
call fcn.0040e920
movzx rax, byte [rbp + 0x17b]
lea rsp, [rbp + 0x180]
pop rbp
ret