Function at 0x1400e3020
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rax, qword [0x140400788]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov rbx, rdx
mov r14, rcx
test r8b, r8b
je 0x1400e30d2
add rcx, 0xd58
call fcn.140092630
test al, al
je 0x1400e30d2
lea rdi, [r14 + 0xdd8]
mov r9, qword [rdi + 8]
mov rdx, qword [rdi]
mov rcx, r9
sub rcx, rdx
sar rcx, 6
mov r8, qword [r14 + 0xdf0]
lea rax, [r8 + 1]
cmp rax, rcx
jae 0x1400e30aa
inc r8
shl r8, 6
add r8, rdx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1400e4990
mov rdx, rbx
mov rcx, rdi
call fcn.1400e62c0
mov rax, qword [rdi + 8]
sub rax, qword [rdi]
sar rax, 6
dec rax
mov qword [r14 + 0xdf0], rax
mov rcx, r14
call fcn.1400e4df0
lea rdi, [r14 + 0xd58]
cmp rdi, rbx
je 0x1400e30f4
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
sub r8, rdx
sar r8, 5
mov rcx, rdi
call fcn.140091050
lea rdx, [rbx + 0x18]
lea rcx, [rdi + 0x18]
call fcn.1400132bc
movzx eax, byte [rbx + 0x38]
mov byte [rdi + 0x38], al
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.140092b50
nop
mov rdx, rax
mov rcx, qword [r14 + 0xce8]
call fcn.1400d4660
nop
lea rcx, [rsp + 0x30]
call fcn.140011870
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140093020
mov rdi, rax
lea r12, [r14 + 0xd98]
xor esi, esi
cmp r12, rax
je 0x1400e317a
mov rcx, r12
call fcn.140092430
mov rcx, qword [rdi]
mov qword [r12], rcx
mov rcx, qword [rdi + 8]
mov qword [r12 + 8], rcx
mov rax, qword [rdi + 0x10]
mov qword [r12 + 0x10], rax
mov qword [rdi], rsi
mov qword [rdi + 8], rsi
mov qword [rdi + 0x10], rsi
lea rcx, [rsp + 0x30]
call fcn.140092430
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.140092b50
mov rbx, qword [rax + 0x10]
lea rcx, [rsp + 0x30]
call fcn.140011870
test rbx, rbx
jne 0x1400e3311
xor edx, edx
mov rcx, qword [r14 + 0xcf8]
call fcn.14014d7e0
xor edx, edx
mov rcx, qword [r14 + 0xcf8]
call fcn.14014e190
mov rcx, qword [r14 + 0xcf8]
call fcn.140149cc0
lea rdx, [rbp - 0x50]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
test eax, eax
je 0x1400e32cd
lea rdi, [rbp - 0x50]
cmp word [rbp - 0x50], si
je 0x1400e32cd
lea r15, vtable.tgui::Any::Derived_bool_.0
nop dword [rax]
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
mov rdx, rdi
lea rcx, [rsp + 0x30]
call fcn.140089560
nop
mov ecx, 0x10
call fcn.140249824
mov qword [rsp + 0x20], rax
test rax, rax
je 0x1400e3235
mov qword [rax], r15
mov byte [rax + 8], 1
jmp 0x1400e3238
mov rax, rsi
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x70]
call fcn.140091e10
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140092b50
nop
mov rbx, qword [r14 + 0xcf8]
mov rdx, rax
mov rcx, rbx
call fcn.140144400
mov rdx, rax
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14014d860
nop
lea rcx, [rsp + 0x50]
call fcn.140011870
nop
lea rcx, [rbp - 0x78]
call fcn.140011870
lea rcx, [rsp + 0x70]
call fcn.140022c08
nop
lea rcx, [rsp + 0x30]
call fcn.140011870
mov rax, 0xffffffffffffffff
nop
lea rax, [rax + 1]
cmp word [rdi + rax*2], 0
jne 0x1400e32b0
lea rdi, [rdi + rax*2]
add rdi, 2
cmp word [rdi], 0
jne 0x1400e3200
mov rbx, qword [r12]
mov rdi, qword [r12 + 8]
cmp rbx, rdi
je 0x1400e3580
nop
lea rcx, [rbx + 0x38]
call fcn.140011870
lea rcx, [rbx + 0x20]
call fcn.140022c08
mov rcx, rbx
call fcn.140011870
add rbx, 0x78
cmp rbx, rdi
jne 0x1400e32e0
mov rax, qword [r12]
mov qword [r12 + 8], rax
jmp 0x1400e3580
cmp byte [r14 + 0xdf9], sil
je 0x1400e343a
mov rsi, qword [r14 + 0xda0]
mov rbx, qword [r12]
cmp rbx, rsi
je 0x1400e343a
cmp byte [rbx + 0x60], 0
je 0x1400e3341
add rbx, 0x78
cmp rbx, rsi
jne 0x1400e3332
cmp rbx, rsi
je 0x1400e343a
lea rdi, [rbx + 0x78]
cmp rdi, rsi
je 0x1400e3395
cmp byte [rdi + 0x60], 0
je 0x1400e338c
mov rdx, rdi
mov rcx, rbx
call fcn.1400132a4
lea rdx, [rdi + 0x20]
lea rcx, [rbx + 0x20]
call fcn.140092540
movzx eax, byte [rdi + 0x60]
mov byte [rbx + 0x60], al
mov rax, qword [rdi + 0x68]
mov qword [rbx + 0x68], rax
mov rax, qword [rdi + 0x70]
mov qword [rbx + 0x70], rax
add rbx, 0x78
add rdi, 0x78
cmp rdi, rsi
jne 0x1400e3353
cmp rbx, rsi
je 0x1400e343a
mov r13, qword [r14 + 0xda0]
cmp rsi, r13
je 0x1400e33fa
lea rdi, [rsi + 0x60]
mov r15, rbx
sub r15, rsi
lea rdx, [rdi - 0x60]
mov rcx, rbx
call fcn.1400132a4
lea rdx, [rdi - 0x40]
lea rcx, [rdi - 0x40]
add rcx, r15
call fcn.140092540
movzx eax, byte [rdi]
mov byte [r15 + rdi], al
mov rax, qword [rdi + 8]
mov qword [r15 + rdi + 8], rax
mov rax, qword [rdi + 0x10]
mov qword [r15 + rdi + 0x10], rax
add rbx, 0x78
lea rdi, [rdi + 0x78]
lea rax, [rdi - 0x60]
cmp rax, r13
jne 0x1400e33b4
mov r15, qword [r14 + 0xda0]
mov rsi, rbx
cmp rbx, r15
je 0x1400e3433
nop dword [rax]
lea rcx, [rsi + 0x38]
call fcn.140011870
lea rcx, [rsi + 0x20]
call fcn.140022c08
mov rcx, rsi
call fcn.140011870
add rsi, 0x78
cmp rsi, r15
jne 0x1400e3410
mov qword [r14 + 0xda0], rbx
lea rbx, [r14 + 0xdb0]
mov rdi, qword [rbx]
mov rsi, qword [rbx + 8]
cmp rdi, rsi
je 0x1400e346b
nop dword [rax]
mov rcx, rdi
call fcn.14011f910
add rdi, 0xe0
cmp rdi, rsi
jne 0x1400e3450
mov rax, qword [rbx]
mov qword [rbx + 8], rax
mov rcx, qword [r14 + 0xe20]
mov rax, qword [rcx]
call qword [rax + 0x18]
test al, al
je 0x1400e3552
mov rcx, qword [r12 + 8]
sub rcx, qword [r12]
movabs rax, 0x8888888888888889
imul rcx
lea r8, [rcx + rdx]
sar r8, 6
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rcx, qword [rbx + 0x10]
sub rcx, qword [rbx]
movabs rax, 0x4924924924924925
imul rcx
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r8, rdx
jbe 0x1400e34ed
movabs rax, 0x124924924924924
cmp r8, rax
ja 0x1400e35aa
mov rdx, r8
mov rcx, rbx
call fcn.1400e2c00
mov rdi, qword [r12]
mov rsi, qword [r12 + 8]
cmp rdi, rsi
je 0x1400e3552
nop dword [rax + rax]
mov rcx, qword [r14 + 0xe20]
mov rax, qword [rcx]
mov r8, rdi
lea rdx, [rbp - 0x50]
call qword [rax + 0x20]
nop
mov rcx, qword [rbx + 8]
cmp rcx, qword [rbx + 0x10]
je 0x1400e3531
mov rdx, rax
call fcn.14011f550
add qword [rbx + 8], 0xe0
jmp 0x1400e3540
mov r8, rax
mov rdx, rcx
mov rcx, rbx
call fcn.1400dbc00
nop
lea rcx, [rbp - 0x50]
call fcn.14011f910
add rdi, 0x78
cmp rdi, rsi
jne 0x1400e3500
mov rcx, qword [r14 + 0xe20]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + 0x28]
xor edx, edx
mov rcx, qword [r14 + 0xcf8]
call fcn.14014e4f0
mov rcx, r14
call fcn.1400e8d10
mov rcx, r14
call fcn.1400ea220
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.1402499e0
mov rbx, qword [rsp + 0x320]
add rsp, 0x2d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140022d60
int3