Function at 0x180062310
Capabilities:
Get disk information

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x60], r8
mov qword [rbp - 0x58], rdx
mov qword [rbp - 0x50], rcx
mov rax, qword [0x1800eb0a8]
xor rax, rbp
mov qword [rbp + 0x38], rax
mov ecx, dword [0x18184c8a4]
mov eax, dword [0x18184c8a0]
mov edx, ecx
add edx, 0x69e911fd
sub edx, 1
sub edx, 0x69e911fd
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [rbp - 0x42], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [rbp - 0x41], al
mov dword [rbp - 0x48], 0x3a703856
mov eax, dword [rbp - 0x48]
mov dword [rbp - 0x64], eax
sub eax, 0x88fff224
je 0x180062aac
jmp 0x180062391
mov eax, dword [rbp - 0x64]
sub eax, 0x8f9a81b9
je 0x180062aa0
jmp 0x1800623a4
mov eax, dword [rbp - 0x64]
sub eax, 0x947a70e3
je 0x180062775
jmp 0x1800623b7
mov eax, dword [rbp - 0x64]
sub eax, 0xa0b14578
je 0x180062590
jmp 0x1800623ca
mov eax, dword [rbp - 0x64]
sub eax, 0xa26ce0b7
je 0x180062a16
jmp 0x1800623dd
mov eax, dword [rbp - 0x64]
sub eax, 0xabf8eafd
je 0x1800626a3
jmp 0x1800623f0
mov eax, dword [rbp - 0x64]
sub eax, 0xae6d9738
je 0x180062a8a
jmp 0x180062403
mov eax, dword [rbp - 0x64]
sub eax, 0xcac28219
je 0x180062881
jmp 0x180062416
mov eax, dword [rbp - 0x64]
sub eax, 0xd142125a
je 0x180062ac1
jmp 0x180062429
mov eax, dword [rbp - 0x64]
sub eax, 0xd18d79fd
je 0x1800626d9
jmp 0x18006243c
mov eax, dword [rbp - 0x64]
sub eax, 0xebced227
je 0x18006283e
jmp 0x18006244f
mov eax, dword [rbp - 0x64]
sub eax, 0x79c9844
je 0x180062859
jmp 0x180062462
mov eax, dword [rbp - 0x64]
sub eax, 0x163625dd
je 0x180062995
jmp 0x180062475
mov eax, dword [rbp - 0x64]
sub eax, 0x22caaa18
je 0x180062ae0
jmp 0x180062488
mov eax, dword [rbp - 0x64]
sub eax, 0x2625f9d1
je 0x1800628a8
jmp 0x18006249b
mov eax, dword [rbp - 0x64]
sub eax, 0x28a6873f
je 0x180062697
jmp 0x1800624ae
mov eax, dword [rbp - 0x64]
sub eax, 0x342ea79e
je 0x1800628be
jmp 0x1800624c1
mov eax, dword [rbp - 0x64]
sub eax, 0x3a703856
je 0x180062538
jmp 0x1800624d4
mov eax, dword [rbp - 0x64]
sub eax, 0x49f0b350
je 0x180062aec
jmp 0x1800624e7
mov eax, dword [rbp - 0x64]
sub eax, 0x53622724
je 0x1800628ca
jmp 0x1800624fa
mov eax, dword [rbp - 0x64]
sub eax, 0x5baf2126
je 0x1800626f4
jmp 0x18006250d
mov eax, dword [rbp - 0x64]
sub eax, 0x6d31b0b0
je 0x180062b67
jmp 0x180062520
mov eax, dword [rbp - 0x64]
sub eax, 0x7d17091f
je 0x180062a7e
jmp 0x180062533
jmp 0x180062b87
mov r11b, byte [rbp - 0x42]
mov r10b, byte [rbp - 0x41]
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, 0x22caaa18
mov ecx, 0xa0b14578
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov eax, 0x10
mov qword [rbp - 0x70], rax
call fcn.1800e0a50
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.1800e0a50
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.1800e0a50
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.1800e0a50
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1800e0a50
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rcx, rsp
mov qword [rbp - 0x20], rcx
call fcn.1800e0a50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x18], rax
mov eax, 0x200
call fcn.1800e0a50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x10], rax
mov ecx, dword [0x18184c8a4]
mov eax, dword [0x18184c8a0]
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, 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, 0x22caaa18
mov ecx, 0x28a6873f
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov dword [rbp - 0x48], 0xabf8eafd
jmp 0x180062b87
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
mov eax, 0x200
call fcn.1800e0a50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 8], rax
mov rax, qword [rbp - 0x38]
mov qword [rax], rdx
mov rax, qword [rbp - 0x30]
mov qword [rax], rcx
mov dword [rbp - 0x48], 0xd18d79fd
jmp 0x180062b87
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov rax, qword [rbp - 0x28]
mov dword [rbp - 0x48], 0x5baf2126
jmp 0x180062b87
mov ecx, dword [0x18184c8a4]
mov eax, dword [0x18184c8a0]
mov edx, ecx
sub edx, 0x3f05227
sub edx, 1
add edx, 0x3f05227
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, 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, 0x49f0b350
mov ecx, 0x947a70e3
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180035250
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x20]
mov dword [rax], ecx
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
mov edx, 0x200
sub rsp, 0x20
call fcn.1800379c0
add rsp, 0x20
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov dword [rax + 0x20], 0x16
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
mov rax, qword [rbp - 0x20]
mov edx, dword [rax]
sub rsp, 0x20
call fcn.180039340
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x18]
mov dword [rax], ecx
mov rax, qword [rbp - 0x18]
cmp dword [rax], 0
sete al
and al, 1
mov byte [rbp + 7], al
mov eax, dword [0x18184c8a4]
mov ecx, dword [0x18184c8a0]
mov edx, eax
add edx, 0x4d6b5f01
sub edx, 1
sub edx, 0x4d6b5f01
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, 0x49f0b350
mov ecx, 0xebced227
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov dl, byte [rbp + 7]
mov eax, 0x53622724
mov ecx, 0x79c9844
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov qword [rbp + 8], rax
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x20
mov dword [rbp + 0x14], eax
mov dword [rbp - 0x48], 0xcac28219
jmp 0x180062b87
mov rcx, qword [rbp + 8]
mov edx, dword [rbp + 0x14]
lea r8, [0x1800e2938]
sub rsp, 0x20
call fcn.18003a480
add rsp, 0x20
mov dword [rbp - 0x48], 0x2625f9d1
jmp 0x180062b87
mov rax, qword [rbp - 0x40]
mov dword [rax], 0xffffffff
mov dword [rbp - 0x48], 0x342ea79e
jmp 0x180062b87
mov dword [rbp - 0x48], 0x88fff224
jmp 0x180062b87
mov rcx, qword [rbp - 0x10]
xor edx, edx
mov r8d, 0x200
sub rsp, 0x20
call sub.msvcrt.dll_memset
add rsp, 0x20
mov rcx, qword [rbp - 8]
xor edx, edx
mov r8d, 0x200
sub rsp, 0x20
call sub.msvcrt.dll_memset
add rsp, 0x20
mov rax, qword [rbp - 8]
mov qword [rbp - 0x78], rax
sub rsp, 0x20
call fcn.180098c70
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x78]
mov word [rax], cx
sub rsp, 0x20
call fcn.180098db0
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x78]
mov word [rax + 2], cx
mov rax, qword [rbp - 0x18]
mov edx, dword [rax]
mov r9, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
sub rsp, 0x30
mov rax, rsp
mov dword [rax + 0x20], edx
mov r8d, 0x100
mov rdx, r8
call fcn.18002ec00
add rsp, 0x30
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call sub.msvcrt.dll_wcslen
add rsp, 0x20
shl rax, 1
mov qword [rbp + 0x20], rax
mov rax, qword [rbp - 0x10]
mov qword [rbp + 0x28], rax
mov dword [rbp - 0x48], 0x163625dd
jmp 0x180062b87
mov ecx, dword [0x18184c8a4]
mov eax, dword [0x18184c8a0]
mov edx, ecx
sub edx, 0xff542aa1
sub edx, 1
add edx, 0xff542aa1
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, 0x6d31b0b0
mov ecx, 0xa26ce0b7
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.180038700
add rsp, 0x20
mov eax, dword [0x18184c8a4]
mov ecx, dword [0x18184c8a0]
mov edx, eax
sub edx, 0x78456512
sub edx, 1
add edx, 0x78456512
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, 0x6d31b0b0
mov ecx, 0x7d17091f
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x48], eax
jmp 0x180062b87
mov dword [rbp - 0x48], 0xae6d9738
jmp 0x180062b87
mov rax, qword [rbp - 0x40]
mov dword [rax], 0
mov dword [rbp - 0x48], 0x8f9a81b9
jmp 0x180062b87
mov dword [rbp - 0x48], 0x88fff224
jmp 0x180062b87
mov rax, qword [rbp - 0x40]
mov eax, dword [rax]
mov dword [rbp + 0x34], eax
mov dword [rbp - 0x48], 0xd142125a
jmp 0x180062b87
mov eax, dword [rbp + 0x34]
mov dword [rbp - 0x7c], eax
mov rcx, qword [rbp + 0x38]
xor rcx, rbp
sub rsp, 0x20
call fcn.1800e09d0
mov eax, dword [rbp - 0x7c]
lea rsp, [rbp + 0x40]
pop rbp
ret
mov dword [rbp - 0x48], 0xa0b14578
jmp 0x180062b87
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180035250
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x20]
mov dword [rax], ecx
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
mov edx, 0x200
sub rsp, 0x20
call fcn.1800379c0
add rsp, 0x20
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov dword [rax + 0x20], 0x16
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
mov rax, qword [rbp - 0x20]
mov edx, dword [rax]
sub rsp, 0x20
call fcn.180039340
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x18]
mov dword [rax], ecx
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x48], 0x947a70e3
jmp 0x180062b87
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.180038700
add rsp, 0x20
mov dword [rbp - 0x48], 0xa26ce0b7
jmp 0x18006237b