Function at 0x1400b3410
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xc8]
sub rsp, 0x1a0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14044f8c0]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov rdi, rcx
cmp qword [rcx + 0x148], 0
jne 0x1400b3498
xor eax, eax
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.1402ecc20
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp qword [rcx + 0x150], 0
je 0x1400b3461
mov dword [rcx + 0x140], 1
mov rcx, qword [rcx + 0x160]
xor esi, esi
lea r14, [rsi - 1]
test rcx, rcx
je 0x1400b34ee
mov qword [rdi + 0x160], rsi
mov qword [rdi + 0x168], rsi
mov qword [rdi + 0x170], rsi
mov qword [rdi + 0x178], rsi
mov qword [rdi + 0x184], r14
mov word [rdi + 0x180], si
call qword [sym.imp.GDI32.dll_DeleteObject]
movsd xmm6, qword [0x1403d25e0]
movsd xmm0, qword [0x140450f90]
ucomisd xmm0, xmm6
jp 0x1400b3523
jne 0x1400b3523
movsd xmm0, qword [0x140450f98]
ucomisd xmm0, xmm6
jp 0x1400b3523
jne 0x1400b3523
call fcn.140155310
mov r8d, 0x1d3
jmp 0x1400b352e
call fcn.140155310
mov r8d, 0x1d6
lea rbx, [rdi + 0x158]
mov dword [rsp + 0x20], esi
mov rdx, qword [rax + 0x10]
mov rcx, rbx
call fcn.140098820
lea rcx, [rdi + 0x4d8]
mov r8, rbx
mov edx, 0x1ac
call fcn.1400f8180
lea rcx, [rdi + 0x638]
mov r8, rbx
mov edx, 0x1af
call fcn.1400f8180
lea r15, [rdi + 0x988]
mov edx, SafeArrayDestroy
mov r8d, 0x190
mov rcx, r15
call fcn.14003e4b0
lea rbx, [rdi + 0x998]
mov edx, SafeArrayDestroy
mov r8d, 0x2bc
mov rcx, rbx
call fcn.14003e4b0
test r15, r15
mov r8, rsi
je 0x1400b35ad
mov r8, qword [r15 + 8]
mov edx, 0x30
lea r9d, [rdx - 0x2f]
mov rcx, qword [rdi + 0x7e0]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [rdi + 0x7a0]
mov edx, 0x5a5a5a
call fcn.140039e70
test rbx, rbx
mov r8, rsi
je 0x1400b35e0
mov r8, qword [rbx + 8]
mov edx, 0x30
lea r9d, [rdx - 0x2f]
mov rcx, qword [rdi + 0x8e0]
call qword [sym.imp.USER32.dll_SendMessageW]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmmword [rsp + 0x60], xmm0
call fcn.140162c14
mov rcx, rax
test rax, rax
je 0x1400b3a09
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov edx, 0x82
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea rcx, [rsp + 0x70]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400b3640
mov r8d, eax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x38]
call fcn.1400b1810
lea r15, str.MaxxAudioEQ64.dll
mov rax, r14
inc rax
cmp byte [r15 + rax], 0
jne 0x1400b3665
mov r13, r15
mov rbx, qword [rsp + 0x38]
sub r13, rbx
mov r12d, dword [rbx - 0x10]
mov dword [rsp + 0x30], r12d
test eax, eax
js 0x1400b3a14
movsxd rdx, eax
mov rcx, r15
call fcn.1402f31cc
mov r8, rax
mov qword [rsp + 0x40], rax
mov ecx, 0x7fffffff
sub ecx, eax
cmp ecx, r12d
jl 0x1400b3a1f
add r12d, eax
js 0x1400b39f3
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, r12d
or eax, ecx
jge 0x1400b36e0
mov edx, r12d
lea rcx, [rsp + 0x38]
call fcn.1400b1bb0
mov rbx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov eax, dword [rsp + 0x30]
cmp r13, rax
ja 0x1400b36ed
lea r15, [rbx + r13]
movsxd rdx, r8d
lea rcx, [rax + rbx]
mov r9d, r8d
mov r8, r15
call fcn.1400b1aa0
cmp r12d, dword [rbx - 0xc]
jg 0x1400b39fe
mov dword [rbx - 0x10], r12d
movsxd rax, r12d
mov byte [rax + rbx], 0
cmp qword [0x1404659b8], 0
jne 0x1400b375d
call fcn.1400b1d20
test eax, eax
jne 0x1400b3733
mov qword [0x1404659b8], rsi
jmp 0x1400b39d2
mov rax, qword [0x1404659a0]
test rax, rax
je 0x1400b374a
mov r8, rbx
xor edx, edx
xor ecx, ecx
call rax
jmp 0x1400b374d
mov rax, rsi
mov qword [0x1404659b8], rax
test rax, rax
je 0x1400b39d2
mov edx, 0x558
mov rcx, rdi
call fcn.14015ea34
test rax, rax
je 0x1400b378b
lea rdx, [rsp + 0x50]
mov rcx, qword [rax + 0x40]
call qword [sym.imp.USER32.dll_GetWindowRect]
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.140160bc4
movdqa xmm0, xmmword [0x1403d2f50]
movdqa xmmword [rsp + 0x60], xmm0
movsd xmm1, qword [0x140450f90]
ucomisd xmm1, xmm6
jp 0x1400b37c4
jne 0x1400b37c4
movsd xmm0, qword [0x140450f98]
ucomisd xmm0, xmm6
jp 0x1400b37c4
jne 0x1400b37c4
mov r8d, dword [rsp + 0x54]
mov edx, dword [rsp + 0x50]
jmp 0x1400b37f8
mulsd xmm1, qword [0x1403d2af8]
cvttsd2si eax, xmm1
mov r9d, dword [rsp + 0x50]
sub r9d, eax
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x54]
sub eax, ecx
sub eax, 0xf7
cdq
sub eax, edx
sar eax, 1
test eax, eax
cmovg esi, eax
lea r8d, [rcx + rsi]
mov edx, r9d
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_OffsetRect]
mov rbx, qword [rdi + 0x40]
mov rsi, qword [0x1404659b8]
call fcn.1400b1d20
test eax, eax
je 0x1400b3847
mov rax, qword [0x140465978]
test rax, rax
je 0x1400b3847
mov qword [rsp + 0x28], rdi
lea rcx, [0x1400b3d60]
mov qword [rsp + 0x20], rcx
mov r9d, 0x3e7
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, rsi
call rax
mov dword [rdi + 0x3c8], 1
mov rdx, qword [0x1404659b8]
mov rcx, qword [rdi + 0x3d0]
call fcn.1400b2e80
mov qword [rdi + 0x1b8], rdi
mov rax, qword [rdi + 0x150]
mov rdx, qword [rax + 0x28]
test rdx, rdx
je 0x1400b3897
lea rcx, [rdi + 0x1c0]
mov rax, r14
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400b3885
mov r8d, eax
call fcn.140016ad0
lea rbx, [rdi + 0x1e8]
lea rdx, [0x140395550]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x140395ef0]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x140395d88]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x140395d58]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x14039b0f0]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x1403952f8]
mov rcx, rbx
call fcn.1401555ec
lea rdx, [0x140395d88]
lea rcx, [rsp + 0x30]
call fcn.14003bcd0
nop
mov rax, qword [rsp + 0x30]
movzx ecx, word [rax]
cmp cx, word [0x140393240]
jne 0x1400b393e
lea rdx, [rax - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b3935
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rdi, 0x370
jmp 0x1400b3972
add rdi, 0x370
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.1401691e8
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b3972
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [0x140395d58]
lea rcx, [rsp + 0x40]
call fcn.14003bcd0
nop
mov rax, qword [rsp + 0x40]
movzx ecx, word [rax]
cmp cx, word [0x140393240]
jne 0x1400b399b
lea rdx, [rax - 0x18]
jmp 0x1400b39b2
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1401691e8
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b39c8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov esi, 1
mov rbx, qword [rsp + 0x38]
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], r14d
sub r14d, 1
jg 0x1400b39ec
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov eax, esi
jmp 0x1400b3463
mov ecx, 0x80070057
call fcn.140012800
int3
mov ecx, 0x80070057
call fcn.140012800
nop
mov ecx, 0x80004005
call fcn.140012800
nop
mov ecx, 0x80070057
call fcn.140012800
int3
mov ecx, 0x80070057
call fcn.140012800
int3