Function at 0x1400b8d70
Capabilities:
Get common file path

Disassembly:
sub edx, 0x211c0110
je 0x1400b8c13
sub edx, 1
je 0x1400b8c01
sub edx, 1
je 0x1400b8bef
cmp edx, 1
je 0x1400b8bdd
mov eax, 1
ret
mov r8d, 3
mov rdx, r9
add rcx, 0xffffffffffffffc0
jmp 0x1400b8d70
mov r8d, 2
mov rdx, r9
add rcx, 0xffffffffffffffc0
jmp 0x1400b8d70
mov r8d, 1
mov rdx, r9
add rcx, 0xffffffffffffffc0
jmp 0x1400b8d70
xor r8d, r8d
mov rdx, r9
add rcx, 0xffffffffffffffc0
jmp 0x1400b8d70
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x260
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rsp + 0x2b8], rbx
mov rax, qword [0x1401ea158]
xor rax, rsp
mov qword [rsp + 0x250], rax
mov r15d, r8d
mov dword [rsp + 0x48], r15d
mov r14, rdx
mov rsi, rcx
cmp qword [rcx + 0xd0], 0
jne 0x1400b8dc5
xor eax, eax
jmp 0x1400b92de
cmp qword [rcx + 0x20], 0
jne 0x1400b8dd3
xor eax, eax
jmp 0x1400b92de
mov rcx, rdx
call fcn.14012e558
mov r13, rax
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400b92de
mov r12, r15
mov rax, qword [rsi + r15*8 + 0x148]
or rbp, 0xffffffffffffffff
test rax, rax
jne 0x1400b9110
mov qword [rsi + r15*8 + 0x148], r14
call fcn.14012a060
mov rdx, rax
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b8e2b
mov ecx, 0x80004005
call fcn.140002cb0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
mov edx, 0x82
lea rcx, [rsp + 0x140]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
xor eax, eax
mov rcx, rbp
lea rdi, [rsp + 0x140]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
test ecx, ecx
jne 0x1400b8eca
lea rdx, [rbx - 0x18]
mov rdi, qword [rdx]
cmp dword [rdx + 8], eax
je 0x1400b8f54
cmp dword [rdx + 0x10], eax
jge 0x1400b8e9c
cmp dword [rbx - 0xc], eax
jge 0x1400b8e92
mov ecx, 0x80070057
call fcn.140002cb0
int3
mov dword [rbx - 0x10], eax
mov byte [rbx], al
jmp 0x1400b8f54
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b8eb3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
jmp 0x1400b8f54
mov r13d, dword [rbx - 0x10]
lea r15, [rsp + 0x140]
sub r15, rbx
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x1400b8efb
mov edx, edi
lea rcx, [rsp + 0x40]
call fcn.1400b7a00
mov rbx, qword [rsp + 0x40]
cmp r15, r13
ja 0x1400b8f17
movsxd r13, edi
lea r8, [r15 + rbx]
mov r9, r13
mov rdx, r13
mov rcx, rbx
call fcn.140144e50
jmp 0x1400b8f30
movsxd r13, edi
mov r9, r13
lea r8, [rsp + 0x140]
mov rdx, r13
mov rcx, rbx
call fcn.140144ee0
test edi, edi
js 0x1400b9105
cmp edi, dword [rbx - 0xc]
jg 0x1400b9105
mov dword [rbx - 0x10], edi
mov byte [r13 + rbx], 0
mov r13, qword [rsp + 0x50]
mov r15d, dword [rsp + 0x48]
lea rdx, [rsp + 0x60]
mov rcx, qword [r13 + 0x40]
call qword [sym.imp.USER32.dll_GetClientRect]
cmp dword [rsi + 0x130], 0
je 0x1400b8f7f
lea rdx, str.MaxxAudioRealtek464.dll
lea rcx, [rsp + 0x40]
call fcn.1400ba0d0
jmp 0x1400b8fac
cmp dword [rsi + 0x12c], 0
je 0x1400b8f9b
lea rdx, str.MaxxAudioRealtek364.dll
lea rcx, [rsp + 0x40]
call fcn.1400ba0d0
jmp 0x1400b8fac
lea rdx, str.MaxxAudioRealtek264.dll
lea rcx, [rsp + 0x40]
call fcn.1400ba0d0
lea rax, [rsi + r12*4]
lea rdx, [r12 + rax + 0x188]
mov rbx, qword [rsp + 0x40]
mov r9, rbx
xor r8d, r8d
mov rcx, rsi
call fcn.1400b70f0
mov qword [rsi + r12*8 + 0xd8], rax
test rax, rax
jne 0x1400b8ff8
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x1400b8ff1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x1400b92de
xor edx, edx
mov r8d, 0xc8
lea rcx, [rsp + 0x70]
call fcn.140148fe0
mov rdx, qword [rsi + 0x20]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0xc7
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, ebp
mov r8, qword [rdx + 0x118]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
xor eax, eax
mov rcx, rbp
lea rdi, [rsp + 0x70]
repne scasb al, byte [rdi]
not rcx
mov rax, qword [0x140206bb0]
test rax, rax
je 0x1400b9078
mov r9d, ecx
lea r8, [rsp + 0x70]
mov edx, 1
mov rcx, qword [rsi + r12*8 + 0xd8]
call rax
mov eax, dword [rsi + 0xfc]
lea r9d, [rax + r15 + 0x3e7]
mov rax, qword [0x140206c40]
test rax, rax
je 0x1400b90b0
xor ecx, ecx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x60]
mov rdx, r14
mov rcx, qword [rsi + r12*8 + 0xd8]
call rax
mov eax, dword [rsi + 0xfc]
lea edx, [rax + r15 + 0x3e7]
mov rcx, r13
call fcn.140133cfc
mov rdi, rax
test rax, rax
je 0x1400b90e8
mov rcx, r13
call fcn.140133f90
mov edx, eax
mov rcx, rdi
call fcn.140133fc0
mov qword [rsi + r12*8 + 0x168], rdi
lea rdx, [rbx - 0x18]
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b913b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1400b913b
mov ecx, 0x80070057
call fcn.140002cb0
nop
cmp rax, r14
je 0x1400b913b
mov rax, qword [rsi + r15*8 + 0x168]
test rax, rax
jne 0x1400b9126
xor ecx, ecx
jmp 0x1400b912a
mov rcx, qword [rax + 0x40]
mov rdx, r14
call qword [sym.imp.USER32.dll_SetParent]
mov qword [rsi + r15*8 + 0x148], r14
xor r14d, r14d
mov edi, r14d
lea edx, [r14 + 5]
mov rcx, qword [r13 + 0x40]
call qword [sym.imp.USER32.dll_GetWindow]
mov rcx, rax
call fcn.14012e514
test rax, rax
je 0x1400b917f
nop
add edi, 1
mov edx, 2
mov rcx, qword [rax + 0x40]
call qword [sym.imp.USER32.dll_GetWindow]
mov rcx, rax
call fcn.14012e514
test rax, rax
jne 0x1400b9160
mov ecx, r14d
cmp edi, 1
seta cl
mov rax, qword [rsi + 0xd0]
test byte [rax + 0x530], 0x40
je 0x1400b92d9
test ecx, ecx
je 0x1400b92d9
call fcn.14012a060
mov rdx, rax
mov ecx, r14d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b91c4
mov ecx, 0x80004005
call fcn.140002cb0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov rax, qword [rsi + 0x20]
mov ecx, r14d
cmp dword [rax + 0x160], ecx
sete cl
lea r8, [rsp + 0x48]
mov edx, 1
call fcn.140078a70
mov rdi, qword [rsp + 0x48]
test eax, eax
je 0x1400b9230
mov rcx, qword [rsi + 0x20]
add rcx, 0x118
mov rdx, rdi
call fcn.140005200
test eax, eax
jne 0x1400b9230
mov rax, qword [0x140206bd0]
test rax, rax
je 0x1400b9230
mov r8d, ebp
mov edx, ebp
mov rcx, qword [rsi + r12*8 + 0xd8]
call rax
mov edx, 5
mov rcx, qword [r13 + 0x40]
call qword [sym.imp.USER32.dll_GetWindow]
mov rcx, rax
call fcn.14012e514
mov rbx, rax
test rax, rax
je 0x1400b92c0
mov r12d, 0x40
mov rcx, rbx
call fcn.140133eb0
mov ecx, dword [rsi + 0xfc]
lea edx, [rcx + r15 + 0x3e7]
mov ecx, r14d
cmp eax, edx
sete cl
mov eax, 0x80
test ecx, ecx
cmovne eax, r12d
or eax, 0x207
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140134028
mov edx, 2
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_GetWindow]
mov rcx, rax
call fcn.14012e514
mov rbx, rax
test rax, rax
jne 0x1400b9255
lea rdx, [rdi - 0x18]
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x1400b92d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, 1
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.140144dc0
mov rbx, qword [rsp + 0x2b8]
add rsp, 0x260
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret