Function at 0x6405a0
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0xa8
mov rbp, rsp
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x90], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x98], rbp
nop
call fcn.006179b0
mov eax, dword [0x00698e7c]
add eax, dword [0x00699530]
mov ecx, dword [0x00699c1c]
add ecx, dword [0x0069a9dc]
cmp eax, ecx
jle 0x64064a
mov eax, dword [0x0069a9dc]
mov dword [0x00698e7c], eax
mov eax, dword [0x0069a980]
mov dword [0x00699db8], eax
mov eax, dword [0x0069a9cc]
add eax, dword [0x0069341c]
mov ecx, dword [0x00693904]
add ecx, dword [0x006942f8]
cmp eax, ecx
jle 0x64067c
mov dword [0x0069a9cc], 0x110
nop
lea rcx, [rbp + 0x88]
lea rdx, [0x00692475]
mov r8d, 0xb
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x90]
mov rdx, qword [rbp + 0x88]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x90]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
je 0x640777
call fcn.0063b390
cmp eax, dword [0x006931dc]
jle 0x6406e6
mov dword [0x006931dc], 0x76
mov dword [0x006932e0], 0x31c
mov eax, dword [0x006932e0]
sub eax, 0x1b0
mov dword [0x006935ec], eax
call fcn.00636ba0
cmp eax, dword [0x0069a9dc]
jle 0x640719
mov dword [0x0069a9dc], 0x64
mov eax, dword [0x006931d4]
mov dword [0x0069a500], eax
mov eax, dword [0x0069810c]
add eax, dword [0x00698e38]
mov ecx, dword [0x006994ec]
add ecx, dword [0x0069985c]
cmp eax, ecx
jle 0x64074d
mov eax, dword [0x0069985c]
mov dword [0x0069810c], eax
mov dword [0x00693524], 0x30c
mov eax, dword [0x00693524]
sub eax, 0x1b7
mov dword [0x00694290], eax
mov rcx, qword [0x00699ff0]
mov dl, 2
call fcn.005cae80
lea rcx, [rbp + 0x78]
lea rdx, [0x006926fa]
mov r8d, 0xb
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x80]
mov rdx, qword [rbp + 0x78]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x80]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
jne 0x640c3c
mov dword [0x00693524], 0x30c
mov eax, dword [0x00693524]
sub eax, 0x1b7
mov dword [0x00694290], eax
mov eax, dword [0x006990b4]
cmp eax, dword [0x00699644]
je 0x6407f9
mov eax, dword [0x006990b4]
mov dword [0x00699644], eax
mov eax, dword [0x00696aa4]
add eax, dword [0x006978ec]
mov ecx, dword [0x006989ac]
add ecx, dword [0x0069937c]
cmp eax, ecx
jle 0x64081a
call fcn.004096f0
mov eax, dword [0x00696114]
sub eax, dword [0x00695860]
mov dword [0x00695860], eax
mov eax, dword [0x006940d8]
add eax, 1
cmp dword [0x006940d8], eax
jne 0x6408aa
mov eax, dword [0x00699084]
test eax, eax
jge 0x64084c
call fcn.0040afc0
mov ecx, dword [0x0069a948]
test ecx, ecx
jge 0x64085b
call fcn.0040afc0
mov edx, dword [0x006940a4]
test edx, edx
jge 0x64086a
call fcn.0040afc0
mov r8d, dword [0x00695be0]
test r8d, r8d
jge 0x64087b
call fcn.0040afc0
mov r9d, dword [0x00696cac]
test r9d, r9d
jge 0x64088c
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.006187e0
mov eax, dword [0x006974c0]
mov dword [0x006968b0], eax
mov eax, dword [0x00699ddc]
mov dword [0x00699868], eax
mov eax, dword [0x00693924]
add eax, 1
cmp dword [0x00693924], eax
jne 0x6408ee
mov eax, dword [0x006934cc]
test eax, eax
jge 0x6408e7
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov rcx, qword [0x00699fc8]
mov dl, 2
call fcn.005cae80
cmp dword [0x006a88b4], 0x3d
jle 0x64095e
mov dword [0x006933c4], 0x310
mov eax, dword [0x006933c4]
sub eax, 0x1aa
mov dword [0x00693938], eax
mov eax, dword [0x006934c8]
mov dword [0x006931dc], eax
mov eax, dword [0x00696a8c]
mov dword [0x0069615c], eax
mov eax, dword [0x00696128]
sub eax, dword [0x00695874]
mov dword [0x00695874], eax
mov rcx, qword [0x006aaa70]
mov dl, 2
call fcn.005cae80
jmp 0x640c3c
mov eax, dword [0x00696abc]
add eax, dword [0x00697c84]
mov ecx, dword [0x00698e5c]
add ecx, dword [0x00699510]
cmp eax, ecx
jle 0x64097f
call fcn.004096f0
mov eax, dword [0x00696118]
mov dword [0x0069590c], eax
mov eax, dword [0x006934c8]
add eax, 1
cmp dword [0x006934c8], eax
jne 0x6409f3
mov eax, dword [0x0069a510]
test eax, eax
jge 0x6409ab
call fcn.0040afc0
mov ecx, dword [0x006940f8]
test ecx, ecx
jge 0x6409ba
call fcn.0040afc0
mov edx, dword [0x006995f0]
test edx, edx
jge 0x6409c9
call fcn.0040afc0
mov r8d, dword [0x00699d58]
test r8d, r8d
jge 0x6409da
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 eax, dword [0x00693204]
mov dword [0x0069a004], eax
mov eax, dword [0x0069a9b8]
add eax, dword [0x00693408]
mov ecx, dword [0x0069397c]
add ecx, dword [0x00695858]
cmp eax, ecx
jle 0x640a25
mov dword [0x0069a9b8], 0x15
mov eax, dword [0x00693438]
add eax, 1
cmp dword [0x00693438], eax
jne 0x640aa3
mov eax, dword [0x00699638]
test eax, eax
jge 0x640a45
call fcn.0040afc0
mov ecx, dword [0x0069a968]
test ecx, ecx
jge 0x640a54
call fcn.0040afc0
mov edx, dword [0x00696a7c]
test edx, edx
jge 0x640a63
call fcn.0040afc0
mov r8d, dword [0x00698984]
test r8d, r8d
jge 0x640a74
call fcn.0040afc0
mov r9d, dword [0x006990bc]
test r9d, r9d
jge 0x640a85
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 dword [0x006931dc], 0x317
mov eax, dword [0x006931dc]
sub eax, 0x1ad
mov dword [0x006934c8], eax
mov eax, dword [0x006933dc]
add eax, 1
cmp dword [0x006933dc], eax
jne 0x640b3d
mov eax, dword [0x00699c10]
test eax, eax
jge 0x640adf
call fcn.0040afc0
mov ecx, dword [0x00693500]
test ecx, ecx
jge 0x640aee
call fcn.0040afc0
mov edx, dword [0x00695870]
test edx, edx
jge 0x640afd
call fcn.0040afc0
mov r8d, dword [0x006968ac]
test r8d, r8d
jge 0x640b0e
call fcn.0040afc0
mov r9d, dword [0x00697e84]
test r9d, r9d
jge 0x640b1f
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 rcx, qword [0x00699fe8]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x0069a50c]
mov dword [0x00699bdc], eax
mov eax, dword [0x00696e68]
add eax, dword [0x006978f8]
mov ecx, dword [0x00698e50]
add ecx, dword [0x00699508]
cmp eax, ecx
jle 0x640b7f
mov eax, dword [0x00699508]
mov dword [0x00696e68], eax
mov eax, dword [0x006933e8]
add eax, dword [0x00693558]
mov ecx, dword [0x00699dcc]
add ecx, dword [0x006931e0]
cmp ecx, eax
jle 0x640ba5
mov dword [0x00699dcc], 0x151
mov ecx, dword [0x00699dcc]
add ecx, dword [0x006931e0]
cmp ecx, eax
jle 0x640bbf
mov dword [0x00699dcc], 0x151
mov eax, dword [0x00698968]
cmp eax, dword [0x00698e90]
je 0x640bd9
mov eax, dword [0x00698968]
mov dword [0x00698e90], eax
mov eax, dword [0x00696e84]
add eax, dword [0x00697e70]
mov ecx, dword [0x00698e6c]
add ecx, dword [0x006993a0]
cmp eax, ecx
jle 0x640c01
mov eax, dword [0x006993a0]
mov dword [0x00696e84], eax
call fcn.00619970
mov eax, dword [0x006961ac]
mov dword [0x00695914], eax
mov dword [0x006931f0], 0x2fc
mov eax, dword [0x006931f0]
sub eax, 0x1a0
mov dword [0x006934dc], eax
mov rcx, qword [0x006aaa70]
mov dl, 2
call fcn.005cae80
lea rcx, [rbp + 0x68]
lea rdx, [0x006926ee]
mov r8d, 0xb
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x68]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x70]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
jne 0x640d98
mov dword [0x006931f0], 0x2fc
mov eax, dword [0x006931f0]
sub eax, 0x1a0
mov dword [0x006934dc], eax
mov eax, dword [0x006980d4]
cmp eax, dword [0x00698b10]
je 0x640cb8
mov eax, dword [0x006980d4]
mov dword [0x00698b10], eax
mov eax, dword [0x00699d70]
add eax, dword [0x0069a698]
mov ecx, dword [0x0069320c]
add ecx, dword [0x00693414]
cmp eax, ecx
jle 0x640cde
mov dword [0x00699d70], 0x14
mov eax, dword [0x006974a8]
add eax, dword [0x00698af0]
mov ecx, dword [0x00698fd4]
add ecx, dword [0x0069960c]
cmp eax, ecx
jle 0x640d06
mov eax, dword [0x0069960c]
mov dword [0x006974a8], eax
mov rcx, qword [0x00699fe0]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x006974a8]
add eax, dword [0x00698af0]
mov ecx, dword [0x00698fd4]
add ecx, dword [0x0069960c]
cmp eax, ecx
jle 0x640d3c
mov eax, dword [0x0069960c]
mov dword [0x006974a8], eax
mov eax, dword [0x0069898c]
cmp eax, dword [0x00698f90]
je 0x640d56
mov eax, dword [0x0069898c]
mov dword [0x00698f90], eax
mov eax, dword [0x00696ac8]
mov dword [0x00696198], eax
mov eax, dword [0x00698128]
add eax, dword [0x00698e54]
mov ecx, dword [0x0069950c]
add ecx, dword [0x00699878]
cmp eax, ecx
jle 0x640d8a
mov eax, dword [0x00699878]
mov dword [0x00698128], eax
mov rcx, qword [0x00699fd8]
mov dl, 2
call fcn.005cae80
lea rcx, [rbp + 0x58]
lea rdx, [0x006926c4]
mov r8d, 0xc
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x58]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x60]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
jne 0x640f56
mov eax, dword [0x00699be8]
mov dword [0x006995e8], eax
mov rcx, qword [0x00699fe8]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x006933a4]
add eax, 1
cmp dword [0x006933a4], eax
jne 0x640e49
mov eax, dword [0x0069743c]
test eax, eax
jge 0x640e18
call fcn.0040afc0
mov ecx, dword [0x00693520]
test ecx, ecx
jge 0x640e27
call fcn.0040afc0
mov edx, dword [0x00695800]
test edx, edx
jge 0x640e36
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 [0x006962f0]
add eax, dword [0x00696cd4]
mov ecx, dword [0x006978cc]
add ecx, dword [0x00698988]
cmp eax, ecx
jle 0x640e6a
call fcn.004096f0
mov eax, dword [0x006995fc]
mov dword [0x00698fc4], eax
mov eax, dword [0x006995fc]
mov dword [0x00698fc4], eax
mov eax, dword [0x006980f8]
cmp eax, dword [0x00698b34]
je 0x640e9c
mov eax, dword [0x006980f8]
mov dword [0x00698b34], eax
mov eax, dword [0x006933bc]
add eax, 1
cmp dword [0x006933bc], eax
jne 0x640f1a
mov eax, dword [0x00696570]
test eax, eax
jge 0x640ebc
call fcn.0040afc0
mov ecx, dword [0x00699d64]
test ecx, ecx
jge 0x640ecb
call fcn.0040afc0
mov edx, dword [0x0069a9b8]
test edx, edx
jge 0x640eda
call fcn.0040afc0
mov r8d, dword [0x006934f0]
test r8d, r8d
jge 0x640eeb
call fcn.0040afc0
mov r9d, dword [0x00694118]
test r9d, r9d
jge 0x640efc
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.00624890
cmp eax, dword [0x00699de0]
jle 0x640f31
mov dword [0x00699de0], 0x44b
call fcn.00639830
cmp eax, dword [0x006931f8]
jle 0x640f48
mov dword [0x006931f8], 0x5a
mov rcx, qword [0x006aaa70]
mov dl, 2
call fcn.005cae80
lea rcx, [rbp + 0x48]
lea rdx, [0x006926d1]
mov r8d, 7
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x50]
mov rdx, qword [rbp + 0x48]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x50]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
jne 0x6410ab
call fcn.00627090
cmp eax, dword [0x0069a00c]
jle 0x640fb3
mov dword [0x0069a00c], 0x18
mov eax, dword [0x0069a954]
add eax, dword [0x00693288]
mov ecx, dword [0x00693518]
add ecx, dword [0x006940b4]
cmp eax, ecx
jle 0x640fd9
mov dword [0x0069a954], 0x10e
mov rcx, qword [0x00699fe8]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x006932f0]
add eax, 1
cmp dword [0x006932f0], eax
jne 0x641038
mov eax, dword [0x006965b0]
test eax, eax
jge 0x641007
call fcn.0040afc0
mov ecx, dword [0x00698970]
test ecx, ecx
jge 0x641016
call fcn.0040afc0
mov edx, dword [0x006990a8]
test edx, edx
jge 0x641025
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.0061e9e0
cmp eax, dword [0x00699d38]
jle 0x64104f
mov dword [0x00699d38], 0x421
call fcn.00636ba0
call fcn.00606240
mov dword [0x006933dc], 0x334
mov eax, dword [0x006933dc]
sub eax, 0x1bb
mov dword [0x0069354c], eax
mov eax, dword [0x006974a8]
add eax, dword [0x00698af0]
mov ecx, dword [0x00698fd4]
add ecx, dword [0x00699524]
cmp eax, ecx
jle 0x64109d
mov eax, dword [0x00699524]
mov dword [0x006974a8], eax
mov rcx, qword [0x006aaa70]
mov dl, 2
call fcn.005cae80
lea rcx, [rbp + 0x38]
lea rdx, [0x006926e1]
mov r8d, 0xc
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]
mov rdx, qword [0x006a8a10]
call fcn.00410520
test eax, eax
jne 0x641107
mov eax, dword [0x0069a040]
mov dword [0x00699c3c], eax
mov rcx, qword [0x00699fd0]
mov dl, 2
call fcn.005cae80
mov rcx, qword [0x006a8a10]
call fcn.005d6ef0
test al, al
je 0x6412b6
mov eax, dword [0x006965d0]
add eax, dword [0x00697468]
mov ecx, dword [0x00698100]
add ecx, dword [0x00698d38]
cmp eax, ecx
jle 0x64113c
call fcn.004096f0
mov rcx, qword [0x00699fc0]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x006962e0]
add eax, dword [0x00696a70]
mov ecx, dword [0x0069744c]
add ecx, dword [0x006980e4]
cmp eax, ecx
jle 0x641172
mov eax, dword [0x006980e4]
mov dword [0x006962e0], eax
mov dword [0x00699db4], 0x312
mov eax, dword [0x00699db4]
sub eax, 0x18c
mov dword [0x0069a97c], eax
call fcn.00614990
mov eax, dword [0x00693988]
add eax, 1
cmp dword [0x00693988], eax
jne 0x6411ba
mov eax, dword [0x006958f0]
test eax, eax
jge 0x6411b3
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov rcx, qword [0x00699fb0]
mov dl, 2
call fcn.005cae80
mov eax, dword [0x00697458]
add eax, dword [0x006980f0]
mov ecx, dword [0x00698f84]
add ecx, dword [0x006994d0]
cmp eax, ecx
jle 0x6411f0
mov eax, dword [0x006994d0]
mov dword [0x00697458], eax
mov dword [0x0069a96c], 0x2ef
mov eax, dword [0x0069a96c]
sub eax, 0x199
mov dword [0x006932a0], eax
mov dword [0x0069a96c], 0x2ef
mov eax, dword [0x0069a96c]
sub eax, 0x199
mov dword [0x006932a0], eax
mov eax, dword [0x00699898]
cmp eax, dword [0x0069a948]
je 0x641242
mov eax, dword [0x00699898]
mov dword [0x0069a948], eax
mov eax, dword [0x00699bdc]
mov dword [0x0069985c], eax
mov eax, dword [0x00696e64]
add eax, dword [0x006978f4]
mov ecx, dword [0x006989b4]
add ecx, dword [0x00698fb8]
cmp eax, ecx
jle 0x641276
mov eax, dword [0x00698fb8]
mov dword [0x00696e64], eax
mov eax, dword [0x0069a964]
mov dword [0x00699d9c], eax
mov eax, dword [0x00699dbc]
add eax, dword [0x006931cc]
mov ecx, dword [0x006933d8]
add ecx, dword [0x00693548]
cmp eax, ecx
jle 0x6412a8
mov dword [0x00699dbc], 0x63
mov rcx, qword [0x00699fb8]
mov dl, 2
call fcn.005cae80
call fcn.00619970
jmp 0x6412c5
nop
lea rcx, [rbp + 0x38]
call fcn.0040e970
lea rcx, [rbp + 0x40]
call fcn.0040e9c0
lea rcx, [rbp + 0x48]
call fcn.0040e970
lea rcx, [rbp + 0x50]
call fcn.0040e9c0
lea rcx, [rbp + 0x58]
call fcn.0040e970
lea rcx, [rbp + 0x60]
call fcn.0040e9c0
lea rcx, [rbp + 0x68]
call fcn.0040e970
lea rcx, [rbp + 0x70]
call fcn.0040e9c0
lea rcx, [rbp + 0x78]
call fcn.0040e970
lea rcx, [rbp + 0x80]
call fcn.0040e9c0
lea rcx, [rbp + 0x88]
call fcn.0040e970
lea rcx, [rbp + 0x90]
call fcn.0040e9c0
lea rsp, [rbp + 0xa8]
pop rbx
pop rbp
ret