Function at 0x5e8170
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x58
mov rbp, rsp
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x80], r8
lea rcx, [rbp + 0x78]
call fcn.0040eaf0
mov rcx, qword [rbp + 0x80]
call fcn.0040eab0
nop
mov eax, dword [0x006931c8]
mov dword [0x00696aac], eax
mov eax, dword [0x00695d74]
cmp eax, dword [0x006962d0]
je 0x5e81d4
mov eax, dword [0x00695d74]
mov dword [0x006962d0], eax
mov eax, dword [0x00696ab8]
mov dword [0x006965b4], eax
mov eax, dword [0x006933b0]
add eax, 1
cmp dword [0x006933b0], eax
jne 0x5e8231
mov eax, dword [0x0069616c]
test eax, eax
jge 0x5e8200
call fcn.0040afc0
mov ecx, dword [0x006968b4]
test ecx, ecx
jge 0x5e820f
call fcn.0040afc0
mov edx, dword [0x00693204]
test edx, edx
jge 0x5e821e
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.005e3480
cmp eax, dword [0x00696cc0]
jle 0x5e824d
mov dword [0x00696cc0], 0x2d
call fcn.005d62d0
mov eax, dword [0x006933a8]
add eax, 1
cmp dword [0x006933a8], eax
jne 0x5e82d0
mov eax, dword [0x0069413c]
test eax, eax
jge 0x5e8272
call fcn.0040afc0
mov ecx, dword [0x006958e8]
test ecx, ecx
jge 0x5e8281
call fcn.0040afc0
mov edx, dword [0x00695d84]
test edx, edx
jge 0x5e8290
call fcn.0040afc0
mov r8d, dword [0x00696574]
test r8d, r8d
jge 0x5e82a1
call fcn.0040afc0
mov r9d, dword [0x00696a78]
test r9d, r9d
jge 0x5e82b2
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 [0x00693428]
add eax, 1
cmp dword [0x00693428], eax
jne 0x5e8338
mov eax, dword [0x00693440]
test eax, eax
jge 0x5e82f0
call fcn.0040afc0
mov ecx, dword [0x00694110]
test ecx, ecx
jge 0x5e82ff
call fcn.0040afc0
mov edx, dword [0x00695810]
test edx, edx
jge 0x5e830e
call fcn.0040afc0
mov r8d, dword [0x00695904]
test r8d, r8d
jge 0x5e831f
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
xor ebx, ebx
mov rax, qword [rbp + 0x80]
test rax, rax
je 0x5e8349
mov ebx, dword [rax - 4]
lea rcx, [rbp + 0x48]
mov rdx, qword [rbp + 0x78]
call fcn.004108b0
lea rcx, [rbp + 0x40]
mov rdx, qword [rbp + 0x80]
lea r8, [0x005e8464]
call fcn.00410b70
mov eax, ebx
add eax, eax
add eax, 2
test eax, eax
jge 0x5e837d
call fcn.0040afc0
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x48]
mov r8d, 7
mov r9, qword [rbp + 0x40]
mov dword [rsp + 0x20], eax
call fcn.005e55d0
mov byte [rbp + 0x3f], al
mov eax, dword [0x0069341c]
add eax, 1
cmp dword [0x0069341c], eax
jne 0x5e83c3
mov eax, dword [0x006965f4]
test eax, eax
jge 0x5e83bc
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x00695818]
add eax, dword [0x0069590c]
mov ecx, dword [0x00695c18]
add ecx, dword [0x006961ac]
cmp eax, ecx
jle 0x5e83eb
mov eax, dword [0x006961ac]
mov dword [0x00695818], eax
nop
lea rcx, [rbp + 0x40]
mov edx, 2
call fcn.0040ea00
lea rcx, [rbp + 0x78]
call fcn.0040e9c0
lea rcx, [rbp + 0x80]
call fcn.0040e920
movzx rax, byte [rbp + 0x3f]
lea rsp, [rbp + 0x58]
pop rbx
pop rbp
ret