Function at 0x140028410
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x260
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov rax, qword [0x1400e2bd8]
xor rax, rsp
mov qword [rsp + 0x250], rax
mov rbx, rcx
mov qword [rsp + 0x30], rcx
xor edi, edi
mov dword [rsp + 0x20], edi
call fcn.1400578a4
mov rcx, rax
test rax, rax
setne dil
test edi, edi
jne 0x140028471
mov ecx, 0x80004005
call fcn.1400120e0
int3
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rbx], rax
lea rdx, [0x1400b70b8]
test rdx, 0xffffffffffff0000
jne 0x1400284ad
movzx edi, dx
mov ecx, edi
call fcn.140057890
test rax, rax
je 0x1400284c9
mov r8d, edi
mov rdx, rax
mov rcx, rbx
call fcn.140011810
jmp 0x1400284c9
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
mov rcx, rbx
call fcn.140011e40
nop
mov r12d, 1
mov dword [rsp + 0x20], r12d
mov edx, 0x104
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x40]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140011e40
cmp dword [0x1400ecde8], 0
jne 0x14002862e
cmp dword [0x1400ecddc], 0
jne 0x14002862e
cmp dword [0x1400ece54], 0
je 0x14002853d
lea rdx, str.Drivers_rtwaves30vsd.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
cmp dword [0x1400ecdf0], 0
jne 0x14002861a
cmp dword [0x1400ecdec], 0
jne 0x14002861a
cmp dword [0x1400ecdfc], 0
jne 0x14002861a
cmp dword [0x1400ece00], 0
jne 0x14002861a
cmp dword [0x1400ecdf8], 0
jne 0x140028606
cmp dword [0x1400ecdf4], 0
jne 0x140028606
cmp dword [0x1400ece04], 0
je 0x1400285a4
lea rdx, str.Drivers_rtwavesvolpro.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
cmp dword [0x1400ece0c], 0
jne 0x1400285f2
cmp dword [0x1400ece14], 0
jne 0x1400285f2
cmp dword [0x1400ece08], 0
jne 0x1400285f2
cmp dword [0x1400ece10], 0
jne 0x1400285f2
cmp dword [0x1400ece20], 0
jne 0x1400285de
cmp dword [0x1400ece24], 0
je 0x1400286b1
lea rdx, str.Drivers_rtwaves60.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
lea rdx, str.Drivers_rtwavesmapro.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
lea rdx, str.Drivers_rtwavesvp.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
lea rdx, str.Drivers_rtwaves40.dat
mov rcx, rbx
call fcn.140011090
jmp 0x1400286b1
xor eax, eax
or rcx, 0xffffffffffffffff
lea rbp, str.Drivers_rtwaves30.dat
mov rdi, rbp
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov rax, qword [rbx]
mov rsi, rbp
sub rsi, rax
sar rsi, 1
mov r13d, dword [rax - 0x10]
lea edi, [r13 + rcx - 1]
sub r12d, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, r12d
jge 0x140028675
mov edx, edi
mov rcx, rbx
call fcn.140011a30
mov rax, qword [rbx]
cmp rsi, r13
ja 0x140028681
lea rbp, [rax + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rax + r13*2]
mov r9, rdx
mov r8, rbp
call fcn.140082af0
test edi, edi
js 0x1400286b6
mov rcx, qword [rbx]
cmp edi, dword [rcx - 0xc]
jg 0x1400286b6
mov dword [rcx - 0x10], edi
movsxd rdx, edi
mov rcx, qword [rbx]
mov word [rcx + rdx*2], 0
mov rax, rbx
jmp 0x1400286c1
mov ecx, 0x80070057
call fcn.1400120e0
nop
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.140082430
lea r11, [rsp + 0x260]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret