Function at 0x140028740
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 0x1400287a1
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 0x1400287dd
movzx edi, dx
mov ecx, edi
call fcn.140057890
test rax, rax
je 0x1400287f9
mov r8d, edi
mov rdx, rax
mov rcx, rbx
call fcn.140011810
jmp 0x1400287f9
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 ebp, 1
mov dword [rsp + 0x20], ebp
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 [0x1400ece14], 0
je 0x1400288d2
xor eax, eax
or rcx, 0xffffffffffffffff
lea r12, str.Drivers_rtwavesmaprocap.dat
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov rax, qword [rbx]
mov rsi, r12
sub rsi, rax
sar rsi, 1
mov r13d, dword [rax - 0x10]
lea edi, [r13 + rcx - 1]
sub ebp, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, ebp
jge 0x140028886
mov edx, edi
mov rcx, rbx
call fcn.140011a30
mov rax, qword [rbx]
cmp rsi, r13
ja 0x140028892
lea r12, [rax + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rax + r13*2]
mov r9, rdx
mov r8, r12
call fcn.140082af0
test edi, edi
js 0x1400288c7
mov rax, qword [rbx]
cmp edi, dword [rax - 0xc]
jg 0x1400288c7
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rbx]
mov word [rax + rcx*2], 0
jmp 0x1400289f1
mov ecx, 0x80070057
call fcn.1400120e0
int3
cmp dword [0x1400ece20], 0
je 0x140028970
xor eax, eax
or rcx, 0xffffffffffffffff
lea r12, str.Drivers_rtwavesvp3cap.dat
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov rax, qword [rbx]
mov rsi, r12
sub rsi, rax
sar rsi, 1
mov r13d, dword [rax - 0x10]
lea edi, [r13 + rcx - 1]
sub ebp, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, ebp
jge 0x140028924
mov edx, edi
mov rcx, rbx
call fcn.140011a30
mov rax, qword [rbx]
cmp rsi, r13
ja 0x140028930
lea r12, [rax + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rax + r13*2]
mov r9, rdx
mov r8, r12
call fcn.140082af0
test edi, edi
js 0x140028965
mov rax, qword [rbx]
cmp edi, dword [rax - 0xc]
jg 0x140028965
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rbx]
mov word [rax + rcx*2], 0
jmp 0x1400289f1
mov ecx, 0x80070057
call fcn.1400120e0
int3
xor eax, eax
or rcx, 0xffffffffffffffff
lea r12, str.Drivers_rtwavesvpcap.dat
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov rax, qword [rbx]
mov rsi, r12
sub rsi, rax
sar rsi, 1
mov r13d, dword [rax - 0x10]
lea edi, [r13 + rcx - 1]
sub ebp, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, ebp
jge 0x1400289b5
mov edx, edi
mov rcx, rbx
call fcn.140011a30
mov rax, qword [rbx]
cmp rsi, r13
ja 0x1400289c1
lea r12, [rax + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rax + r13*2]
mov r9, rdx
mov r8, r12
call fcn.140082af0
test edi, edi
js 0x1400289f6
mov rcx, qword [rbx]
cmp edi, dword [rcx - 0xc]
jg 0x1400289f6
mov dword [rcx - 0x10], edi
movsxd rdx, edi
mov rcx, qword [rbx]
mov word [rcx + rdx*2], 0
mov rax, rbx
jmp 0x140028a01
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