Function at 0x1403117d0
Capabilities:
Capture webcam image

Disassembly:
push rbx
push rdi
push r12
sub rsp, 0x150
mov rax, qword [0x1406836b8]
xor rax, rsp
mov qword [rsp + 0x120], rax
cmp dword [rcx + 0x110], 0
mov r12, rdx
mov edi, r8d
mov rbx, rcx
jne 0x140311a49
mov rcx, qword [rcx + 8]
mov edx, 0x7531
mov qword [rsp + 0x140], r13
call qword [sym.imp.USER32.dll_GetDlgItem]
mov r13, rax
test rax, rax
je 0x140311a41
mov qword [rsp + 0x148], rsi
lea r9, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x130], r15
mov edx, 0x418
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
lea r9, [rsp + 0x20]
xor r8d, r8d
mov edx, 0x40e
mov rcx, r13
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [rsp + 0x20]
xor esi, esi
mov r15d, esi
cmp eax, dword [rsp + 0x40]
jae 0x14031187f
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0x60]
mov r15, qword [rax + rcx*8]
test r12, r12
je 0x1403119b8
cmp word [r12], si
je 0x1403119b8
mov rax, qword [rbx + 0x130]
test rax, rax
jne 0x1403118d2
mov eax, dword [rbx + 0x128]
lea ecx, [rax + rax*4]
shl ecx, 3
movsxd rdx, ecx
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov qword [rbx + 0x130], rax
test rax, rax
je 0x1403119ce
mov qword [rsp + 0x188], rbp
mov rdx, rdi
mov rcx, r12
mov qword [rsp + 0x138], r14
mov dword [rbx + 0x138], esi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcslwr_s]
mov ebp, 1
mov r14d, esi
cmp dword [rbx + 0x128], esi
jle 0x140311995
mov rdi, rsi
nop dword [rax + rax]
mov rax, qword [rbx + 0x120]
mov rdx, qword [rdi + rax]
cmp word [rdx], si
je 0x14031192f
mov r8, r12
mov rcx, rbx
call fcn.140311a70
test eax, eax
je 0x140311981
mov rdx, qword [rbx + 0x120]
add rdx, rdi
mov rax, qword [rdx]
cmp word [rax], si
je 0x140311945
mov ebp, esi
jmp 0x14031194e
test ebp, ebp
jne 0x140311981
mov ebp, 1
movsxd rax, dword [rbx + 0x138]
movups xmm0, xmmword [rdx]
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x130]
movups xmmword [rax + rcx*8], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movsd xmm0, qword [rdx + 0x20]
movsd qword [rax + rcx*8 + 0x20], xmm0
inc dword [rbx + 0x138]
inc r14d
add rdi, 0x28
cmp r14d, dword [rbx + 0x128]
jl 0x140311910
mov eax, dword [rbx + 0x138]
mov r14, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x188]
mov dword [rsp + 0x40], eax
mov rax, qword [rbx + 0x130]
jmp 0x1403119c9
mov eax, dword [rbx + 0x128]
mov dword [rsp + 0x40], eax
mov rax, qword [rbx + 0x120]
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x419
mov rcx, r13
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [rsp + 0x20], esi
test r15, r15
je 0x140311a1b
mov r8d, dword [rsp + 0x40]
mov edx, esi
test r8d, r8d
je 0x140311a1b
mov r9, qword [rsp + 0x60]
nop
mov eax, edx
lea rcx, [rax + rax*4]
cmp qword [r9 + rcx*8], r15
je 0x140311a15
inc edx
cmp edx, r8d
jb 0x140311a00
jmp 0x140311a1b
mov esi, edx
mov dword [rsp + 0x20], edx
mov r9d, dword [rsp + 0x24]
mov edx, 0x40f
mov r8d, esi
mov rcx, r13
call qword [sym.imp.USER32.dll_SendMessageW]
mov r15, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x148]
mov r13, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.14039bbb0
add rsp, 0x150
pop r12
pop rdi
pop rbx
ret