Function at 0x43c87c
Capabilities:
Capture webcam image
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
push ebx
push esi
push edi
xor edi, edi
push edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebp + 0x10]
push 0x419
push dword [ebp + 8]
call esi
lea ecx, [ebp - 0x40]
push ecx
push eax
push 0x41d
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_ClientToScreen]
mov eax, 0x4c37a8
push 0x4b51fc
neg eax
sbb eax, eax
lea ecx, [ebp - 0x14]
and eax, 0x4c37ac
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.00403927
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov dword [ebp + 8], eax
lea eax, [ebp - 4]
push 0xf
push eax
call fcn.00461770
cmp dword [0x4b4130], edi
pop ecx
pop ecx
jne 0x43c922
lea eax, [ebp + 0x10]
push 0xc5
push eax
call fcn.00461770
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.00403a8c
lea ecx, [ebp + 0x10]
call fcn.004038fb
push dword [ebp - 4]
mov esi, dword [sym.imp.USER32.dll_AppendMenuW]
mov ebx, 0x2b67
push ebx
push edi
push dword [ebp + 8]
call esi
cmp dword [0x4b4130], edi
je 0x43cae0
lea eax, [ebp + 0x10]
push 0x15f91
push eax
call fcn.00460aba
pop ecx
pop ecx
push dword [eax]
push 0x808d
push edi
push dword [ebp + 8]
call esi
lea ecx, [ebp + 0x10]
call fcn.004038fb
push edi
mov ebx, 0x800
push edi
push ebx
push dword [ebp + 8]
call esi
push dword [ebp + 0xc]
lea eax, [ebp - 0x1c]
push dword [ebp + 8]
push eax
call fcn.0043fe51
add esp, 0xc
lea ecx, [ebp - 8]
push 0x4b51fc
call fcn.00403927
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
push 0x4b2a74
push dword [ebp - 8]
call fcn.0044ad72
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
push 0x4b54c0
push dword [ebp - 8]
mov dword [ebp + 0x10], eax
call fcn.0044ad72
add esp, 0x28
mov dword [ebp - 0x18], eax
push 0xa
pop eax
cmp dword [ebp + 0x10], eax
jle 0x43c9cc
mov dword [ebp + 0x10], eax
mov eax, dword [0x4b0550]
cmp dword [ebp + 0x10], 1
mov dword [ebp - 0x28], eax
jl 0x43c9fe
push edi
push edi
push ebx
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x18]
push str.Default__:_my_Surfok_:_
neg eax
sbb eax, eax
push 0x1388
and al, 0xf8
add eax, 8
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp + 0x10]
push 1
pop ebx
inc eax
cmp eax, ebx
mov dword [ebp - 0x24], eax
jle 0x43cab7
push 0x4bd614
lea ecx, [ebp + 0x10]
call fcn.00403927
push 0x4bd614
lea ecx, [ebp - 0xc]
call fcn.00403927
mov eax, dword [0x4b0550]
push ebx
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push 0x4b1ab0
push eax
call fcn.00403d66
push dword [ebp + 0x10]
lea eax, [ebp - 0x20]
push dword [ebp - 0x10]
push dword [ebp - 8]
push eax
call fcn.0044ae7c
add esp, 0x1c
lea ecx, [ebp + 0x10]
push eax
call fcn.00403a8c
lea ecx, [ebp - 0x20]
call fcn.004038fb
push 0x3d
push edi
push dword [ebp + 0x10]
lea eax, [ebp - 0xc]
push eax
call fcn.0048eeb4
add esp, 0x10
cmp dword [ebp - 0x18], ebx
jne 0x43ca83
push 8
pop eax
jmp 0x43ca85
xor eax, eax
push dword [ebp - 0xc]
lea ecx, [ebx + 0x1388]
push ecx
push eax
push dword [ebp + 8]
call esi
lea ecx, [ebp - 0x10]
call fcn.004038fb
lea ecx, [ebp - 0xc]
call fcn.004038fb
lea ecx, [ebp + 0x10]
call fcn.004038fb
inc ebx
cmp ebx, dword [ebp - 0x24]
jl 0x43ca10
mov eax, dword [ebp - 0x18]
push 8
add eax, 0x1388
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_CheckMenuItem]
lea ecx, [ebp - 0x28]
call fcn.004038fb
lea ecx, [ebp - 8]
call fcn.004038fb
mov ebx, 0x2b67
push edi
push dword [ebp + 0xc]
push edi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push 0x102
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_TrackPopupMenu]
mov esi, eax
cmp esi, 0x1388
jl 0x43cb28
cmp esi, 0x1392
jg 0x43cb28
add esi, 0xffffec78
push edi
push esi
push 0x4b54c0
push dword [ebp - 0x14]
call fcn.0044ad31
add esp, 0x10
jmp 0x43cdc2
cmp esi, ebx
jne 0x43cb58
xor eax, eax
cmp dword [0x4b4130], edi
sete al
push eax
push ecx
mov ecx, esp
push 0x4b28f0
mov dword [0x4b4130], eax
call fcn.0040a4e8
call fcn.004351fc
pop ecx
mov edi, ebx
pop ecx
jmp 0x43cdc2
mov eax, dword [0x4b4140]
cmp esi, eax
jl 0x43cd78
add eax, 0x80
cmp esi, eax
jg 0x43cd78
push str.Search
lea ecx, [ebp - 0x10]
call fcn.0040a4e8
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
push 0x4b54c0
push dword [ebp - 0x10]
call fcn.0044ad72
mov ecx, dword [0x4b0550]
add esp, 0x14
mov dword [ebp - 0xc], ecx
push eax
lea eax, [ebp - 0xc]
push 0x4b1ab0
push eax
call fcn.00403d66
mov eax, dword [0x4b0550]
push eax
mov dword [ebp + 8], eax
push dword [ebp - 0xc]
lea eax, [ebp + 0x10]
push dword [ebp - 0x10]
push eax
call fcn.0044ae7c
add esp, 0x1c
lea ecx, [ebp + 8]
push eax
call fcn.00403a8c
lea ecx, [ebp + 0x10]
call fcn.004038fb
mov eax, dword [ebp + 8]
cmp dword [eax - 8], edi
je 0x43ccfa
push edi
push 0x3d
lea ecx, [ebp + 8]
call fcn.0040ac50
cmp eax, 0xffffffff
je 0x43ccfa
mov ecx, dword [ebp + 8]
inc eax
mov ecx, dword [ecx - 8]
sub ecx, eax
push ecx
push eax
lea eax, [ebp - 8]
lea ecx, [ebp + 8]
push eax
call fcn.0040acb2
sub esi, dword [0x4b4140]
mov eax, dword [esi*4 + 0x4c3ab4]
lea esi, [esi*4 + 0x4c3ab4]
cmp dword [eax - 0xc], edi
jl 0x43cc37
mov dword [ebp + 0x10], eax
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x43cc49
mov eax, dword [0x4b0550]
lea ecx, [ebp + 0x10]
mov dword [ebp + 0x10], eax
push dword [esi]
call fcn.0040a70f
lea eax, [ebp + 0x10]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045f402
pop ecx
pop ecx
push eax
lea ecx, [ebp + 0x10]
call fcn.00403a8c
lea ecx, [ebp - 0x28]
call fcn.004038fb
push dword [ebp + 0x10]
lea ecx, [ebp - 8]
push 0x4b0e24
call fcn.004040f7
push str.ref
lea ecx, [ebp - 0x18]
call fcn.00403927
lea eax, [ebp - 0x20]
push eax
call fcn.0045eb8c
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0045f402
add esp, 0xc
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00403b20
mov eax, dword [eax]
lea ecx, [ebp - 8]
push eax
push dword [eax - 8]
call fcn.00403bd8
lea ecx, [ebp - 0x28]
call fcn.004038fb
lea ecx, [ebp - 0x24]
call fcn.004038fb
lea ecx, [ebp - 0x20]
call fcn.004038fb
lea ecx, [ebp - 0x18]
call fcn.004038fb
push 5
push edi
push edi
push dword [ebp - 8]
push str.open
push dword [ebp + 0xc]
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp + 0x10]
call fcn.004038fb
lea ecx, [ebp - 8]
jmp 0x43cd46
push 5
push edi
push edi
push ecx
mov ecx, esp
push 0x4bd614
call fcn.00403927
sub esi, dword [0x4b4140]
push ecx
mov ecx, esp
lea eax, [esi*4 + 0x4c3ab4]
push eax
call fcn.004038b5
lea eax, [ebp + 0x10]
push eax
call fcn.0045ebca
add esp, 0xc
mov ecx, eax
call fcn.0043a2eb
push eax
push str.open
push dword [ebp + 0xc]
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp + 0x10]
call fcn.004038fb
lea ecx, [ebp + 8]
call fcn.004038fb
lea ecx, [ebp - 0xc]
call fcn.004038fb
lea ecx, [ebp - 0x10]
call fcn.004038fb
lea ecx, [ebp - 4]
call fcn.004038fb
lea ecx, [ebp - 0x14]
call fcn.004038fb
push 1
pop eax
jmp 0x43cdd4
cmp esi, 0x808d
jne 0x43cdc2
lea ecx, [ebp - 0x68]
call fcn.0043a1fd
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov esi, eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x60]
push eax
push 0x4c7a88
call fcn.0040827d
push edi
push 0x40b2b4
push esi
push 0x113
push dword [0x4c7a90]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
lea ecx, [ebp - 0x68]
call fcn.0043a2dd
lea ecx, [ebp - 4]
call fcn.004038fb
lea ecx, [ebp - 0x14]
call fcn.004038fb
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret