Function at 0x1000519ec
Capabilities:
Get disk size

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rbx, r8
mov dil, dl
mov rsi, rcx
mov rcx, qword [0x1001653b8]
lea r14, [0x1001653b8]
cmp rcx, r14
je 0x100051a41
bt dword [rcx + 0x1c], 9
jae 0x100051a41
cmp byte [rcx + 0x19], 4
jb 0x100051a41
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1ae
call fcn.10001c854
xor r13d, r13d
mov rcx, rbx
mov byte [rsp + 0x88], r13b
mov r15, r13
mov qword [rsp + 0x30], r13
call fcn.100144c6c
cmp dil, r13b
je 0x100051a87
or dword [rbx + 0x58], 3
lea rcx, [rsp + 0x30]
call fcn.1000a1088
mov r15, qword [rsp + 0x30]
cmp eax, r13d
mov edi, eax
jl 0x100051ef1
mov rsi, r15
jmp 0x100051bc4
lea r8, [rsp + 0x78]
xor edx, edx
mov rcx, rsi
mov byte [rsp + 0x78], r13b
call fcn.10011f374
cmp eax, r13d
jge 0x100051ad5
mov rcx, qword [0x1001653b8]
cmp rcx, r14
je 0x100051ad5
bt dword [rcx + 0x1c], 9
jae 0x100051ad5
cmp byte [rcx + 0x19], 3
jb 0x100051ad5
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1af
mov r9, rsi
mov dword [rsp + 0x20], eax
call fcn.10001ddb0
cmp byte [rsp + 0x78], r13b
je 0x100051ae1
bts dword [rbx + 0x58], 8
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rsi
repne scasw ax, word [rdi]
mov r8, rbx
not rcx
lea rdx, [rcx - 1]
mov rcx, rsi
call fcn.10009c8bc
cmp eax, r13d
mov edi, eax
jge 0x100051b23
lea r8, [0x1000045d8]
lea rcx, [0x100005e40]
mov edx, 0x21df
call fcn.10009a050
jmp 0x100051ee5
mov rdx, qword [rbx]
lea rcx, [0x100166a40]
cmp rdx, qword [rcx]
jne 0x100051b41
mov rdx, qword [rbx + 8]
cmp rdx, qword [rcx + 8]
jne 0x100051b41
mov eax, r13d
jmp 0x100051b46
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, r13d
jne 0x100051b50
bts dword [rbx + 0x58], 0xa
lea rdx, [rbx + 0x10]
mov rcx, rsi
call fcn.100134f00
cmp eax, r13d
mov edi, eax
jge 0x100051ba9
mov rcx, qword [0x1001653b8]
cmp rcx, r14
je 0x100051eec
bt dword [rcx + 0x1c], 9
jae 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b0
mov dword [rsp + 0x20], eax
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov r9, rsi
call fcn.10001ddb0
jmp 0x100051ee5
mov rcx, qword [rbx + 0x10]
lea rdx, [rbx + 0x18]
xor r8d, r8d
call fcn.10009bac4
cmp eax, r13d
mov edi, eax
jl 0x100051ef1
lea rdx, [rbx + 0x50]
mov rcx, rsi
call fcn.100136604
cmp eax, r13d
mov edi, eax
jge 0x100051c03
mov rcx, qword [0x1001653b8]
cmp rcx, r14
je 0x100051eec
bt dword [rcx + 0x1c], 9
jae 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b1
jmp 0x100051b8d
lea rdx, [rbx + 0x38]
mov rcx, rsi
call fcn.100136d80
cmp eax, r13d
jge 0x100051c48
mov rcx, qword [0x1001653b8]
cmp rcx, r14
je 0x100051c48
test byte [rcx + 0x1c], 1
je 0x100051c48
cmp byte [rcx + 0x19], 3
jb 0x100051c48
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1b2
mov r9, rsi
mov dword [rsp + 0x20], eax
call fcn.10001ddb0
mov r14d, dword [rbx + 0x38]
lea rdx, [rbx + 0x20]
mov rcx, rsi
shr r14d, 0xb
and r14b, 1
call fcn.100136b44
cmp eax, r13d
mov edi, eax
jge 0x100051ca1
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051eec
bt dword [rcx + 0x1c], 9
jae 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b3
mov dword [rsp + 0x20], edi
jmp 0x100051b91
mov rcx, qword [rbx + 0x20]
lea rdx, [rbx + 0x28]
xor r8d, r8d
call fcn.10009bac4
cmp eax, r13d
mov edi, eax
jl 0x100051ef1
lea rdx, [rbx + 0x30]
mov rcx, rsi
call fcn.10013610c
cmp eax, r13d
mov edi, eax
jge 0x100051d18
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051eec
bt dword [rcx + 0x1c], 9
jae 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b4
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov r9d, edi
call fcn.10001c878
jmp 0x100051ee5
lea rdx, [rsp + 0x88]
mov rcx, rsi
call fcn.1001359e4
cmp eax, r13d
mov edi, eax
jge 0x100051d42
cmp eax, 0x80780076
jne 0x100051de8
mov qword [rbx + 0x30], r13
mov byte [rbx + 0x56], r13b
mov al, byte [rsp + 0x88]
lea rdx, [rbx + 0x40]
mov rcx, rsi
mov byte [rbx + 0x56], al
call fcn.100135c9c
mov edi, eax
test eax, eax
jns 0x100051da5
cmp eax, 0x80070005
jne 0x100051ee2
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051da1
bt dword [rcx + 0x1c], 9
jae 0x100051da1
cmp byte [rcx + 0x19], 3
jb 0x100051da1
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1b6
mov r9, rsi
call fcn.10001db08
and qword [rbx + 0x40], r13
cmp qword [rbx + 0x30], r13
je 0x100051e67
test r14b, r14b
jne 0x100051e67
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x88]
mov rcx, rsi
mov qword [rbx + 0x48], r13
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
cmp eax, r13d
jne 0x100051e1d
mov rcx, rsi
call fcn.100134b20
mov edi, eax
jmp 0x100051e2c
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051eec
test byte [rcx + 0x1c], 1
je 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b5
jmp 0x100051c98
mov rax, qword [rsp + 0x88]
mov edi, r13d
mov qword [rbx + 0x48], rax
cmp edi, r13d
jge 0x100051e6f
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051eec
bt dword [rcx + 0x1c], 9
jae 0x100051eec
cmp byte [rcx + 0x19], 3
jb 0x100051eec
mov edx, 0x1b7
jmp 0x100051d00
mov rax, qword [rbx + 0x40]
mov qword [rbx + 0x48], rax
lea r8, [rbx + 0x5c]
lea rdx, [rbx + 0x60]
mov rcx, rsi
mov byte [rbx + 0x54], r13b
mov byte [rbx + 0x55], r13b
call fcn.10009cdf4
mov edi, eax
test eax, eax
jns 0x100051f5f
cmp eax, 0x80070005
jne 0x100051ee2
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051ed0
bt dword [rcx + 0x1c], 9
jae 0x100051ed0
cmp byte [rcx + 0x19], 3
jb 0x100051ed0
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1b8
mov r9, rsi
call fcn.10001db08
and qword [rbx + 0x60], 0
xor r13d, r13d
mov word [rbx + 0x5c], r13w
mov edi, r13d
jmp 0x100051ee5
xor r13d, r13d
mov rcx, qword [0x1001653b8]
cmp edi, r13d
jge 0x100051f00
mov rcx, rbx
call fcn.100144c6c
mov rcx, qword [0x1001653b8]
cmp r15, r13
je 0x100051f15
mov rcx, r15
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100051f43
bt dword [rcx + 0x1c], 9
jae 0x100051f43
cmp byte [rcx + 0x19], 4
jb 0x100051f43
mov rcx, qword [rcx + 0x10]
lea r8, [0x100003cb8]
mov edx, 0x1b9
call fcn.10001c854
lea r11, [rsp + 0x40]
mov eax, edi
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
xor r13d, r13d
jmp 0x100051ef9