Function at 0x140007740
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x108
mov edx, dword [rsp + 0x130]
lea rcx, str.CameraStart:deviceIdx_d_n
call fcn.140002e20
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x120]
call fcn.14000ebc0
mov qword [rsp + 0x30], rax
cmp dword [rsp + 0x130], 0
jl 0x1400077a4
mov rax, qword [rsp + 0x30]
mov eax, dword [rax]
cmp dword [rsp + 0x130], eax
jl 0x1400077ab
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0x28
mov qword [rsp + 0x20], rax
lea r9, [0x14008c128]
mov r8d, 1
xor edx, edx
lea rcx, [0x14008c168]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
je 0x1400077ec
lea rcx, [0x140087e38]
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0x30
mov qword [rsp + 0x20], rax
lea r9, [0x14008c118]
mov r8d, 1
xor edx, edx
lea rcx, [0x14008c178]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
je 0x14000782d
lea rcx, [0x140087e58]
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x28]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x28]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x30]
call qword [rax + 0x18]
test eax, eax
je 0x140007865
lea rcx, str.ICaptureGraphBuilder2.SetFiltergraph___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0x38
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x30]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x30]
mov qword [rsp + 0x50], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0x58], rcx
mov r8, rax
lea rdx, [0x14008c0d8]
mov rax, qword [rsp + 0x50]
mov rcx, rax
mov rax, qword [rsp + 0x58]
call qword [rax]
test eax, eax
je 0x1400078bd
lea rcx, str.IGraphBuilder.QueryInterface___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
movsxd rax, dword [rsp + 0x130]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x10]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
jne 0x1400078f2
lea rcx, str.IMoniker__NULL
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0x40
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x20], rax
lea r9, [0x14008c108]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x60]
call qword [rax + 0x40]
test eax, eax
je 0x14000793d
lea rcx, str.IMoniker.BindToObject___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
movsxd rax, dword [rsp + 0x130]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 8]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x30]
mov r8, qword [rsp + 0x30]
mov r8, qword [r8 + 0x30]
mov qword [rsp + 0x68], r8
mov rdx, qword [rdx]
mov qword [rsp + 0x70], rdx
mov r8, qword [rcx + rax*8]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x40]
mov rax, qword [rsp + 0x68]
mov rcx, rax
mov rax, qword [rsp + 0x70]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x30]
add rax, 0x48
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x28]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x78], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x28], rax
lea rax, [0x14008c138]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x40]
lea r8, [0x14008c148]
lea rdx, [0x14008c1c8]
mov rax, qword [rsp + 0x78]
mov rcx, rax
mov rax, qword [rsp + 0x80]
call qword [rax + 0x30]
test eax, eax
je 0x140007aa6
lea rcx, str.Warning:Couldnt_find_preview_pin_using_SmartTee_n
call fcn.140002e20
mov rax, qword [rsp + 0x30]
add rax, 0x48
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x28]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x88], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x28], rax
lea rax, [0x14008c138]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x40]
lea r8, [0x14008c148]
lea rdx, [0x14008c1b8]
mov rax, qword [rsp + 0x88]
mov rcx, rax
mov rax, qword [rsp + 0x90]
call qword [rax + 0x30]
test eax, eax
je 0x140007a87
lea rcx, [0x140087f40]
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
lea rcx, [0x14008c1b8]
lea rdi, [rax + 0xd0]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
jmp 0x140007ac3
mov rax, qword [rsp + 0x30]
lea rcx, [0x14008c1c8]
lea rdi, [rax + 0xd0]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
add rax, 0xe8
mov rcx, qword [rsp + 0x30]
add rcx, 0xd0
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x28]
mov rdi, qword [rsp + 0x30]
mov rdi, qword [rdi + 0x28]
mov rdx, qword [rdx]
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x28], rax
lea rax, [0x14008c0f8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x40]
lea r8, [0x14008c148]
mov rdx, rcx
mov rcx, rdi
mov rax, qword [rsp + 0x98]
call qword [rax + 0x30]
test eax, eax
je 0x140007b40
lea rcx, str.ICaptureGraphBuilder2.FindInterface___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0xf0
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xe8]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xe8]
mov qword [rsp + 0xa0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xa8], rcx
mov rdx, rax
mov rax, qword [rsp + 0xa0]
mov rcx, rax
mov rax, qword [rsp + 0xa8]
call qword [rax + 0x60]
test eax, eax
je 0x140007ba6
lea rcx, str.IPin.EnumMediaTypes___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0x50
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x48]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x48]
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xb8], rcx
mov rdx, rax
mov rax, qword [rsp + 0xb0]
mov rcx, rax
mov rax, qword [rsp + 0xb8]
call qword [rax + 0x20]
test eax, eax
je 0x140007c04
lea rcx, str.IAMStreamConfig.GetFormat___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x50]
cmp qword [rax + 0x50], 0
jne 0x140007c27
lea rcx, str.IAMStreamConfig.GetFormat___returned_NULL_pbFormat_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x50]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rax + 0x50]
mov qword [rcx + 0xb0], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rax + 0x34]
mov dword [rcx + 0xe0], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rax + 0x38]
mov dword [rcx + 0xe4], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rax + 0x40]
mov dword [rcx + 0x110], eax
cmp dword [rsp + 0x138], 0xffffffff
je 0x140007ca2
cmp dword [rsp + 0x140], 0xffffffff
jne 0x140007cc6
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xe0]
mov dword [rsp + 0x138], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xe4]
mov dword [rsp + 0x140], eax
mov rcx, qword [rsp + 0x30]
call fcn.14000edb0
xor eax, eax
cmp eax, 1
je 0x140007edd
mov rax, qword [rsp + 0x30]
add rax, 0x50
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xf0]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xf0]
mov qword [rsp + 0xc0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xc8], rcx
xor r9d, r9d
mov r8, rax
mov edx, 1
mov rax, qword [rsp + 0xc0]
mov rcx, rax
mov rax, qword [rsp + 0xc8]
call qword [rax + 0x18]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
je 0x140007d5e
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x18], 0
je 0x140007d4b
jmp 0x140007edd
lea rcx, str.Camera:Error:Unable_to_enumerate_compatible_video_mode_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x50]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rax + 0x50]
mov qword [rcx + 0xb0], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
mov eax, dword [rax + 0x34]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb0]
movzx eax, word [rax + 0x3e]
mov dword [rsp + 0x44], eax
mov r9d, dword [rsp + 0x44]
mov r8d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x3c]
lea rcx, str.Camera:enumerate:size_dx_d___dbpp__n
call fcn.140002e20
cmp dword [rsp + 0x44], 0x18
je 0x140007de5
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x50]
call fcn.14000efb0
jmp 0x140007cd0
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x18], 0
je 0x140007e61
mov ecx, 0x10
call fcn.14005e044
mov rcx, qword [rsp + 0x30]
movsxd rcx, dword [rcx + 0x1c]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x20]
mov qword [rdx + rcx*8], rax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x20]
mov r9d, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
lea rdx, str._dx_d
mov rcx, qword [rcx + rax*8]
call fcn.140002e80
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x1c]
inc eax
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x1c], eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x50]
call fcn.14000efb0
jmp 0x140007cd0
mov eax, dword [rsp + 0x138]
cmp dword [rsp + 0x3c], eax
jne 0x140007eca
mov eax, dword [rsp + 0x140]
cmp dword [rsp + 0x40], eax
jne 0x140007eca
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x3c]
mov dword [rax + 0xe0], ecx
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0xe4], ecx
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x48]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x48]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x50]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x50]
call fcn.14000efb0
jmp 0x140007edd
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x50]
call fcn.14000efb0
jmp 0x140007cd0
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x48]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x48]
mov rax, qword [rax]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x48], 0
mov rax, qword [rsp + 0x30]
add rax, 0xb8
mov qword [rsp + 0x20], rax
lea r9, [0x14008c108]
mov r8d, 1
xor edx, edx
lea rcx, [0x140088318]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
je 0x140007f45
lea rcx, [0x140088080]
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x30]
mov rax, qword [rax]
lea r8, str.Sample_Grabber
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xb8]
call qword [rax + 0x18]
test eax, eax
je 0x140007f87
lea rcx, [0x1400880c0]
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0xc0
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xb8]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xb8]
mov qword [rsp + 0xd0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xd8], rcx
mov r8, rax
lea rdx, [0x140088308]
mov rax, qword [rsp + 0xd0]
mov rcx, rax
mov rax, qword [rsp + 0xd8]
call qword [rax]
test eax, eax
je 0x140007ff3
lea rcx, str.IBaseFilter.QueryInterface___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xc0]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xc0]
mov rax, qword [rax]
xor edx, edx
call qword [rax + 0x18]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xc0]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xc0]
mov rax, qword [rax]
mov edx, 1
call qword [rax + 0x30]
mov rax, qword [rsp + 0x30]
add rax, 0x58
mov r8d, 0x58
xor edx, edx
mov rcx, rax
call fcn.14005ae40
mov rax, qword [rsp + 0x30]
lea rcx, [0x14008c148]
lea rdi, [rax + 0x58]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
lea rcx, [0x14008c158]
lea rdi, [rax + 0x68]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
lea rcx, [0x14008c1a8]
lea rdi, [rax + 0x84]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
add rax, 0x58
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xc0]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xc0]
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xe8], rcx
mov rdx, rax
mov rax, qword [rsp + 0xe0]
mov rcx, rax
mov rax, qword [rsp + 0xe8]
call qword [rax + 0x20]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
je 0x14000810f
mov edx, dword [rsp + 0x38]
lea rcx, str.ISampleGrabber.SetMediaType___failed_:_Result0x_x_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0xc8
mov qword [rsp + 0x20], rax
lea r9, [0x14008c108]
mov r8d, 1
xor edx, edx
lea rcx, [0x140088328]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
je 0x140008152
lea rcx, str.CoCreateInstance___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x30]
mov rax, qword [rax]
lea r8, str.NullRenderer
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0xc8]
call qword [rax + 0x18]
test eax, eax
je 0x140008194
lea rcx, str.IGraphBuilder.AddFilter___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
add rax, 0xd0
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x28]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0xf0], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0xf8], rcx
mov rdi, qword [rsp + 0x30]
mov rdi, qword [rdi + 0xc8]
mov qword [rsp + 0x28], rdi
mov rdi, qword [rsp + 0x30]
mov rdi, qword [rdi + 0xb8]
mov qword [rsp + 0x20], rdi
mov rdi, qword [rsp + 0x30]
mov r9, qword [rdi + 0x40]
lea r8, [0x14008c148]
mov rdx, rax
mov rax, qword [rsp + 0xf0]
mov rcx, rax
mov rax, qword [rsp + 0xf8]
call qword [rax + 0x38]
test eax, eax
je 0x140008226
lea rcx, str.ICaptureGraphBuilder2.RenderStream___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x18], 0
jne 0x1400082a5
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x38]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rax]
call qword [rax + 0x38]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 1
jne 0x14000825c
mov dword [rsp + 0x38], 0
cmp dword [rsp + 0x38], 0
je 0x140008276
lea rcx, str.IMediaControl.Run___failed_n
call fcn.140002e20
xor al, al
jmp 0x14000836d
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax + 0x110]
mov rax, qword [rsp + 0x30]
mov r8d, dword [rax + 0xe4]
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 0xe0]
lea rcx, str.Camera_Size:_dx_d__Compression_x__n
call fcn.140002e20
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rax + 0xe0]
imul eax, dword [rcx + 0xe4]
shl eax, 2
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x100], eax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0x100]
mov rcx, rax
call fcn.14005e044
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 0xf8], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x40]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x40]
mov rax, qword [rax]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x40], 0
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xb8]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xb8]
mov rax, qword [rax]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xb8], 0
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0xc8]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0xc8]
mov rax, qword [rax]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xc8], 0
mov al, 1
add rsp, 0x108
pop rdi
pop rsi
ret