Function at 0x4e3120
Capabilities:
Capture webcam image

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x10
test eax, eax
push ebx
mov ebx, ecx
push ebp
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
push esi
push edi
mov dword [ebx + 0x228], eax
je 0x4e3470
mov eax, dword [ebx + 0x230]
test eax, eax
jne 0x4e3470
mov eax, dword [ebx + 4]
push 0xe800
push 0x5600194c
push 0
push 0x135
push eax
call fcn.00411430
add esp, 0x14
mov dword [ebx + 0x230], eax
mov eax, dword [ebx + 0x270]
mov ecx, dword [ebx + 0x230]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetParent]
push 0
push 0xa
lea ecx, [esp + 0x20]
call fcn.00510680
push ecx
mov edx, esp
push 0x105
push edx
call fcn.004bc8d0
mov eax, dword [ebx + 0x230]
add esp, 8
push 0x8069
push eax
call fcn.00518840
mov ecx, dword [0x546560]
add esp, 8
mov edi, esp
mov edx, 0x54ece0
test edx, edx
mov dword [edi], ecx
je 0x4e3216
mov eax, edx
shr eax, 0x10
jne 0x4e31e1
xor ecx, ecx
mov cx, dx
push ecx
mov ecx, edi
call fcn.00413c90
jmp 0x4e3216
push 0x54ece0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
test esi, esi
je 0x4e3216
push esi
mov ecx, edi
call fcn.00405530
test eax, eax
je 0x4e3216
mov edi, dword [edi]
lea ecx, [esi + esi]
mov eax, ecx
mov esi, 0x54ece0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x230]
push 0x859c
push ecx
call fcn.00518840
lea edx, [esp + 0x30]
push 0x4e24
push edx
call fcn.004bc8d0
add esp, 0x14
lea ecx, [esp + 0x24]
push 0
push 0x54732c
call fcn.00405c70
mov edi, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
cmp eax, 0xffffffff
je 0x4e331e
test eax, eax
jge 0x4e3260
xor eax, eax
jmp 0x4e326d
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx - 8]
cmp eax, ecx
jle 0x4e326d
mov eax, ecx
mov edx, dword [0x546560]
push 0
push 0
push eax
lea eax, [esp + 0x20]
lea ecx, [esp + 0x30]
push eax
mov dword [esp + 0x24], edx
call fcn.004126b0
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x14]
call fcn.00405440
lea ecx, [esp + 0x14]
call fcn.00405700
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
cmp ecx, eax
je 0x4e32f3
mov edx, dword [ecx - 0xc]
test edx, edx
jge 0x4e32c1
mov edx, dword [0x546564]
add ecx, 0xfffffff4
cmp ecx, edx
jne 0x4e32c8
mov ecx, dword [eax - 0xc]
test ecx, ecx
jge 0x4e32d8
mov edx, dword [eax - 8]
push eax
push edx
lea ecx, [esp + 0x2c]
call fcn.00405870
jmp 0x4e32ef
lea ecx, [esp + 0x24]
call fcn.00412670
mov eax, dword [esp + 0x10]
mov dword [esp + 0x24], eax
add eax, 0xfffffff4
push eax
call edi
mov eax, dword [esp + 0x10]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e331e
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x4e331e
mov edx, dword [esp + 0x10]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
mov eax, dword [esp + 0x24]
push ecx
mov esi, esp
mov ecx, dword [eax - 0xc]
test ecx, ecx
jl 0x4e333a
mov dword [esi], eax
mov eax, dword [esp + 0x28]
add eax, 0xfffffff4
push eax
call edi
jmp 0x4e335c
mov ecx, dword [0x546560]
mov dword [esi], ecx
mov eax, dword [esp + 0x28]
test eax, eax
mov edi, eax
je 0x4e3353
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push edi
push eax
mov ecx, esi
call fcn.00405870
mov edx, dword [ebx + 0x230]
push 0xe124
push edx
call fcn.00518840
mov eax, dword [ebx + 0x230]
add esp, 0xc
push 1
push 0xe124
push 0x404
push eax
call ebp
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
neg ecx
sbb ecx, ecx
and ecx, edx
call fcn.0046fbf0
push ecx
mov ecx, esp
push eax
push ecx
call fcn.0050faf0
mov edx, dword [ebx + 0x230]
add esp, 8
push 0xe120
push edx
call fcn.00518840
add esp, 8
mov eax, esp
push 0x7e6
push eax
call fcn.004bc8d0
mov ecx, dword [ebx + 0x230]
add esp, 8
push 0xb37b
push ecx
call fcn.00518840
add esp, 0xc
lea ecx, [esp + 0x18]
push 0
push 1
call fcn.00510bb0
push eax
call fcn.00529320
mov edx, dword [ebx + 0x230]
add esp, 8
mov edi, eax
push 0
push 0
push 0x431
push edx
call ebp
mov esi, eax
mov eax, dword [ebx + 0x230]
push 0
push 0xe120
push 0x419
push eax
call ebp
push edi
push eax
push esi
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
mov ecx, dword [ebx + 0x230]
push esi
push 0
push 0x430
push ecx
call ebp
mov eax, dword [esp + 0x24]
mov ecx, dword [0x546564]
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4e3467
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x4e3467
mov eax, dword [esp + 0x24]
add eax, 0xfffffff4
push eax
call fcn.00531732
add esp, 4
lea ecx, [esp + 0x18]
call fcn.0050fe40
mov edi, dword [0x5551d0]
xor ecx, ecx
mov edx, dword [ebx + 0x230]
test edi, edi
sete cl
and ecx, 0xffff
push ecx
push 0xe124
push 0x404
push edx
call ebp
mov eax, dword [ebx + 0x228]
mov ecx, dword [ebx + 0x230]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, ebx
call fcn.004e34d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4