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

Disassembly:
push rbx
sub rsp, 0x280
mov rax, qword [0x180026010]
xor rax, rsp
mov qword [rsp + 0x270], rax
mov rbx, rdx
lea rcx, [rsp + 0x5a]
xor edx, edx
mov r8d, 0xfa
call fcn.180006530
mov ecx, dword [0x18009d0a0]
test ecx, ecx
jne 0x18000158e
xor edx, edx
mov qword [rsp + 0x290], rdi
mov r8d, 0x104
lea rcx, [rsp + 0x160]
call fcn.180006530
xor edi, edi
lea rcx, [rsp + 0x160]
mov edx, 0x104
mov dword [rsp + 0x40], edi
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x180001580
lea rdx, [0x180022e2c]
lea rcx, [rsp + 0x160]
call fcn.1800055c0
test rax, rax
je 0x180001580
mov dword [rsp + 0x38], edi
lea r9, [rsp + 0x40]
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x160]
mov byte [rax + 1], dil
xor r8d, r8d
mov qword [rsp + 0x28], rdi
xor edx, edx
mov qword [rsp + 0x20], rdi
mov dword [0x18009d0a0], edi
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
mov ecx, dword [0x18009d0a0]
test eax, eax
cmovne ecx, dword [rsp + 0x40]
mov dword [0x18009d0a0], ecx
jmp 0x180001586
mov ecx, dword [0x18009d0a0]
mov rdi, qword [rsp + 0x290]
imul r8d, ecx, 0x19660d
mov eax, 0x51eb851f
add r8d, 0x3c6ef35c
mul r8d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r8b
imul r8d, r8d, 0x19660d
sub al, cl
add al, 0x61
add r8d, 0x3c6ef35c
mov byte [rsp + 0x50], al
mov eax, 0x51eb851f
mul r8d
imul r9d, r8d, 0x19660d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r8b
add r9d, 0x3c6ef35c
imul r8d, r9d, 0x19660d
sub al, cl
add al, 0x61
mov byte [rsp + 0x51], al
mov eax, 0x51eb851f
mul r9d
add r8d, 0x3c6ef35c
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r9b
imul r9d, r8d, 0x19660d
sub al, cl
add al, 0x61
add r9d, 0x3c6ef35c
mov byte [rsp + 0x52], al
mov eax, 0x51eb851f
mul r8d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r8b
imul r8d, r9d, 0x19660d
sub al, cl
add al, 0x61
add r8d, 0x3c6ef35c
mov byte [rsp + 0x53], al
mov eax, 0x51eb851f
mul r9d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r9b
imul r9d, r8d, 0x19660d
sub al, cl
add al, 0x61
add r9d, 0x3c6ef35c
mov byte [rsp + 0x54], al
mov eax, 0x51eb851f
mul r8d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r8b
imul r8d, r9d, 0x19660d
sub al, cl
add al, 0x61
add r8d, 0x3c6ef35c
mov byte [rsp + 0x55], al
mov eax, 0x51eb851f
mul r9d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r9b
sub al, cl
add al, 0x61
mov byte [rsp + 0x56], al
mov eax, 0x51eb851f
mul r8d
shr edx, 3
movsx eax, dl
imul ecx, eax, 0x19
movzx eax, r8b
imul r9d, r8d, 0x19660d
sub al, cl
add al, 0x61
add r9d, 0x3c6ef35c
mov byte [rsp + 0x57], al
mov eax, 0x51eb851f
mul r9d
imul r8d, r9d, 0x19660d
mov eax, 0x51eb851f
shr edx, 3
movsx ecx, dl
imul edx, ecx, 0x19
movzx ecx, r9b
add r8d, 0x3c6ef35c
sub cl, dl
mul r8d
add cl, 0x61
shr edx, 3
movsx eax, dl
mov byte [rsp + 0x58], cl
imul ecx, eax, 0x19
lea rax, [rsp + 0x50]
sub r8b, cl
lea rcx, [rsp + 0x50]
add r8b, 0x61
mov byte [rsp + 0x59], r8b
sub rbx, rcx
nop word [rax + rax]
movzx ecx, byte [rax]
mov byte [rbx + rax], cl
lea rax, [rax + 1]
test cl, cl
jne 0x180001750
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.180003e90
add rsp, 0x280
pop rbx
ret