Function at 0x140016dd0
Capabilities:
Get common file path

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x410]
sub rsp, 0x510
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x560], rbx
mov rax, qword [0x1400a3008]
xor rax, rsp
mov qword [rbp + 0x400], rax
mov r14, rdx
mov rsi, rcx
lea rax, str.CDirectShowCameraImp::Connect
mov qword [rsp + 0x30], rax
lea r15, [0x1400868d0]
mov qword [rsp + 0x28], r15
xor r13d, r13d
mov qword [rsp + 0x20], r13
lea r9d, [r13 + 2]
lea r8, [0x1400a73c8]
lea edx, [r13 + 0x50]
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
cmp byte [rsi + 0x38], r13b
jne 0x140017314
test r14, r14
je 0x140017314
lea rax, [rsp + 0x58]
mov qword [rsp + 0x50], rax
or rbx, 0xffffffffffffffff
mov rdi, rbx
inc rdi
cmp byte [r14 + rdi], r13b
jne 0x140016e72
inc edi
lea r8, [rsp + 0x58]
mov edx, edi
lea rcx, [rsp + 0x50]
call fcn.140002d00
movsxd rdx, edi
mov r9, rdx
mov r8, r14
mov rcx, qword [rsp + 0x50]
call fcn.140001490
test eax, eax
je 0x140016eda
cmp eax, 0xc
je 0x140016ecf
cmp eax, 0x16
je 0x140016ec4
cmp eax, 0x22
je 0x140016ec4
cmp eax, 0x50
je 0x140016eda
mov ecx, 0x80004005
call fcn.1400015b0
int3
mov ecx, 0x80070057
call fcn.1400015b0
int3
mov ecx, 0x8007000e
call fcn.1400015b0
int3
movaps xmm0, xmmword [rsp + 0x50]
movaps xmmword [rbp - 0x20], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movaps xmmword [rbp - 0x10], xmm1
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rbp], xmm0
movaps xmm1, xmmword [rbp - 0x80]
movaps xmmword [rbp + 0x10], xmm1
movaps xmm0, xmmword [rbp - 0x70]
movaps xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [rbp - 0x50]
movaps xmmword [rbp + 0x40], xmm0
movaps xmm1, xmmword [rbp - 0x40]
movaps xmmword [rbp + 0x50], xmm1
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp + 0x60], xmm0
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r13
mov r9d, 2
lea r8, [0x1400a73c8]
lea edx, [r9 + 0x53]
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
lea rax, [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
cmp rcx, rax
je 0x140016f6b
call fcn.14005fb6c
lea rax, [rbp - 0x18]
mov qword [rbp - 0x20], rax
mov r8d, 3
mov rdx, r14
lea rcx, [rbp - 0x20]
call fcn.140005bc0
nop
mov rdx, qword [rbp - 0x20]
cmp word [rdx], 0
jne 0x140016f95
mov rbx, r13
jmp 0x140016f9f
inc rbx
cmp word [rdx + rbx*2], 0
jne 0x140016f95
lea rdi, [rsi + 0x40]
mov r8, rbx
mov rcx, rdi
call fcn.140017e30
nop
lea rax, [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
cmp rcx, rax
je 0x140016fc1
call fcn.14005fb6c
cmp qword [rdi + 0x18], 8
jb 0x140016fcd
mov rbx, qword [rdi]
jmp 0x140016fd0
mov rbx, rdi
cmp qword [rdi + 0x18], 8
jb 0x140016fdc
mov rcx, qword [rdi]
jmp 0x140016fdf
mov rcx, rdi
mov rax, qword [rdi + 0x10]
lea rax, [rcx + rax*2]
cmp qword [rdi + 0x18], 8
jb 0x140016ff3
mov r12, qword [rdi]
jmp 0x140016ff6
mov r12, rdi
mov r14, r13
mov r15, rax
sub r15, r12
inc r15
shr r15, 1
cmp r12, rax
cmova r15, r13
test r15, r15
je 0x14001702d
sub r12, rbx
movzx ecx, word [rbx + r12]
call fcn.14005ff94
mov word [rbx], ax
lea rbx, [rbx + 2]
inc r14
cmp r14, r15
jne 0x140017014
mov rcx, rsi
call fcn.140017350
test al, al
je 0x140017048
cmp qword [rsi + 0x18], 0
jne 0x140017048
mov rcx, rsi
call fcn.1400174a0
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x14001709e
cmp qword [rdi + 0x18], 8
jb 0x14001705b
mov rdi, qword [rdi]
mov rax, qword [rcx]
mov r8, rdi
mov rdx, qword [rsi + 0x18]
call qword [rax + 0x18]
test eax, eax
jns 0x14001709e
mov dword [rsp + 0x30], eax
lea rax, str.Failed_at_m_pGraphBuilder__AddFilter._Error_Code__0x_08x
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
lea edx, [r9 + 0x66]
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
cmp qword [rsi + 8], 0
je 0x140017314
cmp qword [rsi + 0x20], 0
jne 0x140017314
lea rdi, [rsi + 0x28]
cmp qword [rdi], 0
jne 0x140017314
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1f0]
call fcn.14005db90
mov dword [rbp - 0x20], 0x2e
xor edx, edx
mov r8d, 0x204
lea rcx, [rbp - 0x1c]
call fcn.14005db90
lea rdx, [rbp - 0x20]
mov ecx, 0x103
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
lea r9, [rbp + 0x1f0]
xor r8d, r8d
lea rdx, str.Camera_
lea rcx, [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_GetTempFileNameW]
test eax, eax
je 0x140017131
lea rcx, [rsi + 0x60]
lea r8, [rbp + 0x1f0]
mov edx, 0x104
call fcn.1400679fc
mov rcx, qword [rsi + 8]
mov rax, qword [rcx]
lea r8, [rsi + 0x60]
mov qword [rsp + 0x20], rdi
lea r9, [rsi + 0x20]
lea rdx, [0x14007b158]
call qword [rax + 0x28]
test eax, eax
jns 0x140017185
mov dword [rsp + 0x30], eax
lea rax, str.Failed_at_m_pSampleCaptureGraphBuilder__SetOutputFileName._Error_Code__0x_08x
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
lea edx, [r9 + 0x79]
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x20]
mov r10, qword [rcx]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9, qword [rsi + 0x18]
lea r8, [0x14007b168]
lea rdx, [0x14007b1b8]
call qword [r10 + 0x38]
test eax, eax
jns 0x1400171e6
mov dword [rsp + 0x30], eax
lea rax, str.Failed_at_m_pSampleCaptureGraphBuilder__RenderStream._Error_Code__0x_08x
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
lea edx, [r9 + 0x7d]
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
movabs rax, 0x7fffffffffffffff
mov qword [rsp + 0x40], rax
mov rcx, qword [rsi + 8]
mov rax, qword [rcx]
mov word [rsp + 0x38], r13w
mov word [rsp + 0x30], r13w
mov qword [rsp + 0x28], r13
lea r8, [rsp + 0x40]
mov qword [rsp + 0x20], r8
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x14007b1b8]
call qword [rax + 0x40]
mov edi, eax
test eax, eax
jns 0x140017260
mov dword [rsp + 0x30], eax
lea rax, str.Failed_at_m_pSampleCaptureGraphBuilder__ControlStream._Error_Code__0x_08x
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
mov edx, 0x84
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
test edi, edi
setns al
mov byte [rsi + 0x39], al
mov rcx, qword [rsi + 0x10]
mov rax, qword [rcx]
lea r8, [rsi + 0x30]
lea rdx, [0x14007b128]
call qword [rax]
test eax, eax
jns 0x1400172b3
mov dword [rsp + 0x30], eax
lea rax, str.Failed_at_m_pGraphBuilder__QueryInterface._Error_Code__0x_08x
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
mov edx, 0x8a
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
cmp qword [rsi + 0x20], 0
je 0x1400172c6
cmp qword [rsi + 0x30], 0
mov ecx, 1
jne 0x1400172c9
mov ecx, r13d
mov byte [rsi + 0x38], cl
lea rdx, str.successful
lea rax, str.fail
test cl, cl
cmovne rax, rdx
mov qword [rsp + 0x30], rax
lea rax, str.CDirectShowCameraImp::Connect_is__s
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, 1
lea r8, [0x1400a73c8]
mov edx, 0x8e
lea rcx, str...SharedDirectShowCamera.cpp
call fcn.140002f50
movzx eax, byte [rsi + 0x38]
mov rcx, qword [rbp + 0x400]
xor rcx, rsp
call fcn.14003cd10
mov rbx, qword [rsp + 0x560]
add rsp, 0x510
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret