Function at 0x14007abf0
Capabilities:
Get common file path
Get disk information

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rdi, rcx
lea rcx, [rax + 0x10]
call fcn.14005b560
mov edx, 5
lea rcx, [rsp + 0x40]
call fcn.140063580
nop
mov edx, 0x14
lea rcx, [rsp + 0x50]
call fcn.140063580
nop
lea rcx, [rsp + 0x58]
call fcn.140063500
nop
xor r13d, r13d
mov r14d, r13d
mov r15d, r13d
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x108], r13d
mov dword [rsp + 0x78], 2
mov esi, 0x2a
mov rax, qword [rsp + 0xf8]
cmp si, word [rax]
jne 0x14007adda
lea ebx, [rsi - 0x21]
lea r11d, [r13 + 0x20]
nop
mov r8d, 4
lea rdx, [rsp + 0xf8]
lea rcx, str.vol
call fcn.14005b600
test eax, eax
je 0x14007acb9
mov r14d, 1
jmp 0x14007adc9
mov r8d, 7
lea rdx, [rsp + 0xf8]
lea rcx, str.setvol
call fcn.14005b600
test eax, eax
je 0x14007ace2
mov r14d, 2
jmp 0x14007adc9
mov r8d, 5
lea rdx, [rsp + 0xf8]
lea rcx, str.idle
call fcn.14005b600
test eax, eax
je 0x14007ad0b
mov r15d, 1
jmp 0x14007adc9
mov r8d, 6
lea rdx, [rsp + 0xf8]
lea rcx, str.idlec
call fcn.14005b600
test eax, eax
je 0x14007ad34
mov r15d, 2
jmp 0x14007adc9
mov r8d, 6
lea rdx, [rsp + 0xf8]
lea rcx, str.rsort
call fcn.14005b600
test eax, eax
je 0x14007ad5c
mov dword [rsp + 0x48], 1
jmp 0x14007adc9
mov r8d, 3
lea rdx, [rsp + 0xf8]
lea rcx, [0x1401502d0]
call fcn.14005b600
test eax, eax
je 0x14007ad87
mov dword [rsp + 0x108], 0x100
jmp 0x14007adc9
mov rcx, qword [rsp + 0xf8]
movzx eax, word [rcx]
test ax, ax
je 0x14007adbc
cmp bx, ax
ja 0x14007ada2
cmp ax, 0xd
jbe 0x14007adb4
cmp r11w, ax
je 0x14007adb4
add rcx, 2
mov ax, word [rcx]
test ax, ax
jne 0x14007ad97
mov qword [rsp + 0xf8], rcx
lea rcx, [rsp + 0xf8]
call fcn.14005b560
mov rax, qword [rsp + 0xf8]
cmp si, word [rax]
je 0x14007ac90
mov esi, 0x3d
mov r8d, esi
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov rbx, qword [rsp + 0x40]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x40], r13
cmp byte [rdi + 0xba], 0
jne 0x14007ae37
test byte [rdi + 0xf], 0xf
jne 0x14007ae37
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rdx, rbx
mov rcx, rdi
call fcn.14006d6c0
nop
lea rcx, [rsp + 0x60]
call fcn.14005b520
jmp 0x14007ae7e
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rdx, rbx
mov rcx, rdi
call fcn.14006bc40
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x40], rbx
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rcx, rdi
call fcn.14006bc40
nop
lea rcx, [rsp + 0x60]
call fcn.14005b520
mov rbx, qword [rsp + 0xf8]
cmp si, word [rbx]
jne 0x14007aeac
add rbx, 2
mov qword [rsp + 0xf8], rbx
xor r8d, r8d
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov rdi, qword [rsp + 0x40]
cmp word [rdi], 0
jne 0x14007aee1
lea rcx, [rsp + 0x58]
call fcn.14005b520
nop
lea rcx, [rsp + 0x50]
call fcn.14005b520
nop
lea rcx, [rsp + 0x40]
call fcn.14005b520
mov eax, 0x80070057
jmp 0x14007b36c
lea rcx, [rsp + 0x78]
call fcn.140062e90
cmp dword [rax], r14d
jne 0x14007af4d
mov edx, 2
lea rcx, [rsp + 0x40]
call fcn.1400635c0
mov r11d, 0x3a
mov rcx, qword [rsp + 0x40]
mov word [rcx + 2], r11w
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelW]
test eax, eax
jne 0x14007af25
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
lea rcx, [rsp + 0x58]
call fcn.14005b520
nop
lea rcx, [rsp + 0x50]
call fcn.14005b520
nop
lea rcx, [rsp + 0x40]
call fcn.14005b520
mov eax, r13d
jmp 0x14007b36c
mov rcx, qword [rsp + 0x50]
call fcn.14002e004
mov rcx, rax
call fcn.1400697b0
mov rsi, rax
mov edx, 0x517
lea rcx, [rsp + 0x90]
call fcn.140063580
nop
mov rbx, qword [rsp + 0x90]
lea r12, [rbx + 0x412]
cmp r14d, 1
jne 0x14007b263
mov word [r12], r13w
mov word [rbx], r13w
cmp word [rsi], 0
je 0x14007afe0
movzx eax, word [rsi + 2]
test ax, ax
je 0x14007afb3
cmp ax, 0x3a
jne 0x14007afe0
cmp word [rsi + 4], 0
jne 0x14007afe0
mov edx, 6
lea rcx, [rsp + 0x50]
call fcn.1400635c0
mov rsi, qword [rsp + 0x50]
mov r11d, 0x3a
mov word [rsi + 2], r11w
mov eax, 0x5c
mov word [rsi + 4], ax
mov word [rsi + 6], r13w
mov dword [rsp + 0x108], r13d
mov dword [rsp + 0x60], r13d
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x38], 0x104
mov qword [rsp + 0x30], r12
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x108]
mov r8d, 0x208
mov rdx, rbx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
test eax, eax
jne 0x14007b03a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
mov qword [rsp + 0xf8], rdi
lea rcx, [rsp + 0x80]
call fcn.140063500
nop
lea rcx, [rsp + 0x70]
call fcn.140063500
nop
lea rcx, [rsp + 0x88]
call fcn.140063500
nop
lea rcx, [rsp + 0x98]
call fcn.140063500
nop
lea rcx, [rsp + 0x68]
call fcn.140063500
nop
mov r8d, 0x2c
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov r11, qword [rsp + 0xf8]
cmp word [r11], 0
je 0x14007b177
add r11, 2
mov qword [rsp + 0xf8], r11
mov r8d, 0x2c
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov r11, qword [rsp + 0xf8]
cmp word [r11], 0
je 0x14007b177
add r11, 2
mov qword [rsp + 0xf8], r11
mov r8d, 0x2c
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov r11, qword [rsp + 0xf8]
cmp word [r11], 0
je 0x14007b177
add r11, 2
mov qword [rsp + 0xf8], r11
mov r8d, 0x2c
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov r11, qword [rsp + 0xf8]
cmp word [r11], 0
je 0x14007b177
add r11, 2
mov qword [rsp + 0xf8], r11
mov r8d, 0x2c
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0xf8]
call fcn.140066780
mov r8, rbx
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0xf0]
mov rcx, rbx
call fcn.140061290
lea r9, str._08lX
mov r8, qword [rsp + 0x70]
mov edx, dword [rsp + 0x108]
mov rcx, rbx
call fcn.140065e50
mov r8, qword [rsp + 0x88]
mov edx, dword [rsp + 0x60]
mov rcx, rbx
call fcn.140065eb0
lea r9, str.0x_lX
mov r8, qword [rsp + 0x68]
mov edx, dword [rsp + 0x48]
mov rcx, rbx
call fcn.140065e50
mov r8, r12
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.140061290
nop
lea rcx, [rsp + 0x68]
call fcn.14005b520
nop
lea rcx, [rsp + 0x98]
call fcn.14005b520
nop
lea rcx, [rsp + 0x88]
call fcn.14005b520
nop
lea rcx, [rsp + 0x70]
call fcn.14005b520
nop
lea rcx, [rsp + 0x80]
call fcn.14005b520
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
nop
lea rcx, [rsp + 0x58]
call fcn.14005b520
nop
lea rcx, [rsp + 0x50]
call fcn.14005b520
nop
lea rcx, [rsp + 0x40]
call fcn.14005b520
mov eax, r13d
jmp 0x14007b36c
mov r9b, 1
cmp word [rsi], 0
jne 0x14007b270
mov al, 0x7c
jmp 0x14007b29f
mov rdx, rsi
lea rcx, [0x1401502c8]
call fcn.14005c550
test al, al
je 0x14007b287
mov al, 0x20
jmp 0x14007b29f
mov rdx, rsi
lea rcx, [0x140140438]
call fcn.14005c550
test al, al
je 0x14007b2c7
mov al, 0x20
xor r9b, r9b
mov ecx, dword [rsp + 0x108]
or ecx, dword [rsp + 0x48]
movsx r8d, r9b
movsx edx, al
mov dword [rsp + 0x20], ecx
mov r9d, r15d
lea rcx, [rsp + 0x58]
call fcn.140069650
mov rsi, rax
jmp 0x14007b328
cmp word [rsi + 2], 0x3a
jne 0x14007b2d5
mov word [rsi + 4], r13w
jmp 0x14007b328
mov word [rbx + 0x61c], r13w
lea rdx, [rbx + 0x61c]
mov ecx, 0x208
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov edx, 5
lea rcx, [rsp + 0x58]
call fcn.1400635c0
movzx r11d, word [rbx + 0x61c]
mov rsi, qword [rsp + 0x58]
mov word [rsi], r11w
mov r11d, 0x3a
mov word [rsi + 2], r11w
mov word [rsi + 4], r13w
mov r8, rsi
mov rdx, rdi
mov rcx, qword [rsp + 0xf0]
call fcn.140061290
nop
lea rcx, [rsp + 0x90]
call fcn.14005b520
nop
lea rcx, [rsp + 0x58]
call fcn.14005b520
nop
lea rcx, [rsp + 0x50]
call fcn.14005b520
nop
lea rcx, [rsp + 0x40]
call fcn.14005b520
xor eax, eax
mov rbx, qword [rsp + 0x100]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret