Function at 0x140001a40
Capabilities:
Get disk size

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov rax, qword [0x1400d7840]
xor rax, rbp
mov qword [rbp - 8], rax
mov ecx, dword [0x1400dac38]
mov eax, dword [0x1400dac34]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [rbp - 0x3a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [rbp - 0x39], al
mov dword [rbp - 0x40], 0x80956816
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x44], eax
sub eax, 0x80956816
je 0x140001c51
jmp 0x140001aaa
mov eax, dword [rbp - 0x44]
sub eax, 0x94ee312c
je 0x140002078
jmp 0x140001abd
mov eax, dword [rbp - 0x44]
sub eax, 0xa4908bed
je 0x140001d67
jmp 0x140001ad0
mov eax, dword [rbp - 0x44]
sub eax, 0xa492084e
je 0x140001ca9
jmp 0x140001ae3
mov eax, dword [rbp - 0x44]
sub eax, 0xb39c0240
je 0x140001dca
jmp 0x140001af6
mov eax, dword [rbp - 0x44]
sub eax, 0xb566854a
je 0x140001dd6
jmp 0x140001b09
mov eax, dword [rbp - 0x44]
sub eax, 0xbd84f979
je 0x140001e4c
jmp 0x140001b1c
mov eax, dword [rbp - 0x44]
sub eax, 0xcb23f68c
je 0x140001d0c
jmp 0x140001b2f
mov eax, dword [rbp - 0x44]
sub eax, 0xd7959dd0
je 0x140001e9b
jmp 0x140001b42
mov eax, dword [rbp - 0x44]
sub eax, 0xd9485316
je 0x140002094
jmp 0x140001b55
mov eax, dword [rbp - 0x44]
sub eax, 0xe385f170
je 0x140001f77
jmp 0x140001b68
mov eax, dword [rbp - 0x44]
sub eax, 0xef4bf77d
je 0x140001e64
jmp 0x140001b7b
mov eax, dword [rbp - 0x44]
sub eax, 0xef5e4f82
je 0x140001d18
jmp 0x140001b8e
mov eax, dword [rbp - 0x44]
sub eax, 0x337b7255
je 0x140001ed5
jmp 0x140001ba1
mov eax, dword [rbp - 0x44]
sub eax, 0x33a2ad7e
je 0x140001f24
jmp 0x140001bb4
mov eax, dword [rbp - 0x44]
sub eax, 0x3f071225
je 0x140001f83
jmp 0x140001bc7
mov eax, dword [rbp - 0x44]
sub eax, 0x4374591c
je 0x14000206c
jmp 0x140001bda
mov eax, dword [rbp - 0x44]
sub eax, 0x47107a0d
je 0x140001e31
jmp 0x140001bed
mov eax, dword [rbp - 0x44]
sub eax, 0x480be397
je 0x14000204e
jmp 0x140001c00
mov eax, dword [rbp - 0x44]
sub eax, 0x4f0529ce
je 0x140001ebf
jmp 0x140001c13
mov eax, dword [rbp - 0x44]
sub eax, 0x5303064f
je 0x140001e70
jmp 0x140001c26
mov eax, dword [rbp - 0x44]
sub eax, 0x59079a35
je 0x140002084
jmp 0x140001c39
mov eax, dword [rbp - 0x44]
sub eax, 0x63dfd7ac
je 0x140001fff
jmp 0x140001c4c
jmp 0x14000209b
mov r11b, byte [rbp - 0x3a]
mov r10b, byte [rbp - 0x39]
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and r11b, cl
mov r9b, r8b
and r9b, 0
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x4374591c
mov ecx, 0xa492084e
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov eax, 0x10
call fcn.1400a2340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
mov edx, eax
sub edx, 0xdb949392
sub edx, 1
add edx, 0xdb949392
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x4374591c
mov ecx, 0xcb23f68c
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov dword [rbp - 0x40], 0xef5e4f82
jmp 0x14000209b
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
mov edx, eax
sub edx, 0x26785545
sub edx, 1
add edx, 0x26785545
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x94ee312c
mov ecx, 0xa4908bed
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov eax, 0x10
call fcn.1400a2340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
mov edx, eax
add edx, 0x1fcc0ff6
sub edx, 1
sub edx, 0x1fcc0ff6
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x94ee312c
mov ecx, 0xb39c0240
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov dword [rbp - 0x40], 0xb566854a
jmp 0x14000209b
mov eax, 0x10
mov qword [rbp - 0x50], rax
call fcn.1400a2340
sub rsp, rax
mov rax, qword [rbp - 0x50]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1400a2340
sub rsp, rax
mov r9, rsp
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x28]
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
add rsp, 0x20
mov edx, eax
mov eax, 0x5303064f
mov ecx, 0x47107a0d
cmp edx, 0
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
shr rax, 0x1e
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x40], 0xbd84f979
jmp 0x14000209b
mov rax, qword [rbp - 0x20]
mov ecx, eax
mov rax, qword [rbp - 0x38]
mov dword [rax], ecx
mov dword [rbp - 0x40], 0xef4bf77d
jmp 0x14000209b
mov dword [rbp - 0x40], 0x337b7255
jmp 0x14000209b
lea rcx, [0x1400d8c30]
lea rdx, str.Error:_Unable_to_retrieve_disk_information.
sub rsp, 0x20
call fcn.140005000
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x40], 0xd7959dd0
jmp 0x14000209b
mov rcx, qword [rbp - 0x18]
lea rdx, [0x140007920]
sub rsp, 0x20
call fcn.1400074a0
add rsp, 0x20
mov dword [rbp - 0x40], 0x4f0529ce
jmp 0x14000209b
mov rax, qword [rbp - 0x38]
mov dword [rax], 0xffffffff
mov dword [rbp - 0x40], 0x337b7255
jmp 0x14000209b
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
mov edx, eax
add edx, 0x23f53572
sub edx, 1
sub edx, 0x23f53572
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x59079a35
mov ecx, 0x33a2ad7e
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov rax, qword [rbp - 0x38]
mov eax, dword [rax]
mov dword [rbp - 0xc], eax
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x59079a35
mov ecx, 0xe385f170
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov dword [rbp - 0x40], 0x3f071225
jmp 0x14000209b
mov ecx, dword [0x1400dac38]
mov eax, dword [0x1400dac34]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xd9485316
mov ecx, 0x63dfd7ac
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov eax, dword [0x1400dac38]
mov ecx, dword [0x1400dac34]
mov edx, eax
add edx, 0xc9b93512
sub edx, 1
sub edx, 0xc9b93512
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xd9485316
mov ecx, 0x480be397
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x14000209b
mov eax, dword [rbp - 0xc]
mov dword [rbp - 0x54], eax
mov rcx, qword [rbp - 8]
xor rcx, rbp
sub rsp, 0x20
call fcn.1400a23a0
mov eax, dword [rbp - 0x54]
mov rsp, rbp
pop rbp
ret
mov dword [rbp - 0x40], 0xa492084e
jmp 0x14000209b
mov dword [rbp - 0x40], 0xa4908bed
jmp 0x14000209b
mov rax, qword [rbp - 0x38]
mov dword [rbp - 0x40], 0x33a2ad7e
jmp 0x14000209b
mov dword [rbp - 0x40], 0x63dfd7ac
jmp 0x140001a94