Function at 0x409480
Capabilities:
Capture webcam image

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x40d2d8
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push esi
mov esi, ecx
push 0
push 0
mov eax, dword [esi + 0x52c]
push 0x18b
push eax
call ebx
test eax, eax
je 0x409aa6
push ebp
push edi
lea ecx, [esp + 0x18]
call sub.MFC42u.DLL_CString::CString
mov ebp, dword [esp + 0x34]
mov ecx, dword [esi + 0x52c]
push 0
push ebp
push 0x199
push ecx
mov dword [esp + 0x3c], 0
call ebx
lea edx, [esp + 0x18]
mov edi, eax
push edx
push ebp
lea ecx, [esi + 0x50c]
mov dword [esp + 0x28], edi
call sub.MFC42u.DLL_CListBox::GetText
push 0x3a
lea ecx, [esp + 0x1c]
call sub.MFC42u.DLL_CString::Find
push eax
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x20]
call sub.MFC42u.DLL_CString::Left
mov eax, dword [eax]
push eax
call dword [sym.imp.MSVCRT.dll__wtoi]
mov ebp, eax
add esp, 4
lea ecx, [esp + 0x34]
mov dword [esp + 0x1c], ebp
call fcn.0040c28a
mov ecx, dword [esi + 0x4ec]
push 0
push ebp
push 0x14e
push ecx
call ebx
mov eax, dword [0x41172c]
lea edx, [edi + edi*8]
mov ebp, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
push 0
lea edi, [eax + edx*4]
mov eax, dword [0x41171c]
lea ecx, [esp + 0x18]
push 4
lea edx, [edi + 0x10]
push ecx
push edx
push eax
call ebp
mov ecx, dword [esp + 0x14]
push 1
push ecx
push 0x3fa
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x18]
push 4
lea eax, [edi + 0x14]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x14]
push 1
push edx
push 0x3fb
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov ecx, dword [0x411730]
push 0
lea eax, [esp + 0x14]
push 1
push eax
mov edx, dword [esp + 0x28]
mov eax, dword [0x41171c]
add ecx, edx
push ecx
push eax
call ebp
mov ecx, dword [esp + 0x10]
push 1
and ecx, 0xff
push ecx
push 0x418
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 0x1e]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x10]
and edx, 0xff
and edx, 0x80000001
jns 0x409607
dec edx
or edx, 0xfffffffe
inc edx
je 0x40960d
dec byte [esp + 0x10]
mov dl, byte [esp + 0x10]
push 0
shr dl, 1
mov byte [esp + 0x14], dl
mov eax, dword [esp + 0x14]
and eax, 0xff
push eax
mov eax, dword [esi + 0x4ac]
push 0x14e
push eax
call ebx
mov eax, dword [0x41171c]
push 0
lea ecx, [esp + 0x14]
push 1
lea edx, [edi + 6]
push ecx
push edx
push eax
call ebp
mov ecx, dword [esp + 0x10]
push 1
and ecx, 0xff
push ecx
push 0x419
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 7]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x10]
push 1
and edx, 0xff
mov ecx, esi
push edx
push 0x41a
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
cmp dword [esp + 0x20], 0xf
jb 0x4098c4
mov edx, dword [0x41171c]
push 0
lea eax, [esp + 0x18]
push 3
lea ecx, [edi + 8]
push eax
push ecx
push edx
mov dword [esp + 0x28], 0
call ebp
mov edx, dword [0x41171c]
push 0
lea eax, [esp + 0x14]
push 1
lea ecx, [edi + 0xe]
push eax
push ecx
push edx
call ebp
mov al, byte [esp + 0x10]
cmp al, 3
jne 0x4096ee
mov eax, dword [esi + 0x46c]
push 0
push 0
push 0x14e
push eax
call ebx
push 0
jmp 0x4098bd
cmp al, 1
jne 0x40970b
mov ecx, dword [esi + 0x46c]
push 0
push 1
push 0x14e
push ecx
call ebx
push 1
jmp 0x4098bd
cmp al, 2
jne 0x409728
mov edx, dword [esi + 0x46c]
push 0
push 2
push 0x14e
push edx
call ebx
push 2
jmp 0x4098bd
mov ecx, dword [esp + 0x14]
mov edx, dword [0x411724]
cmp ecx, edx
jae 0x40977a
test al, al
jne 0x40977a
mov eax, dword [esi + 0x46c]
push 0
push 3
push 0x14e
push eax
call ebx
mov ecx, dword [esp + 0x14]
lea edx, [esi + 0x40c]
push ecx
push edx
mov ecx, 0x411658
call fcn.00402af0
push 0
push eax
mov eax, dword [esi + 0x42c]
push 0x14e
push eax
call ebx
push 3
jmp 0x4098bd
cmp ecx, 0xff
jb 0x4097fc
test al, al
jne 0x4097fc
mov ecx, dword [esi + 0x46c]
push 0
push 4
push 0x14e
push ecx
call ebx
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 9]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x10]
push 1
and edx, 0xff
mov ecx, esi
push edx
push 0x41c
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov edx, dword [0x41171c]
push 0
lea eax, [esp + 0x14]
push 1
lea ecx, [edi + 0xa]
push eax
push ecx
push edx
call ebp
mov eax, dword [esp + 0x10]
push 1
and eax, 0xff
mov ecx, esi
push eax
push 0x41d
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
push 4
jmp 0x4098bd
cmp ecx, edx
jae 0x409841
cmp al, 4
jne 0x409841
mov ecx, dword [esi + 0x46c]
push 0
push 5
push 0x14e
push ecx
call ebx
mov edx, dword [esp + 0x14]
lea eax, [esi + 0x40c]
push edx
push eax
mov ecx, 0x411658
call fcn.00402af0
mov ecx, dword [esi + 0x42c]
push 0
push eax
push 0x14e
push ecx
call ebx
push 5
jmp 0x4098bd
cmp ecx, 0xff
jb 0x4098c4
cmp al, 4
jne 0x4098c4
mov edx, dword [esi + 0x46c]
push 0
push 6
push 0x14e
push edx
call ebx
mov edx, dword [0x41171c]
push 0
lea eax, [esp + 0x14]
push 1
lea ecx, [edi + 9]
push eax
push ecx
push edx
call ebp
mov eax, dword [esp + 0x10]
push 1
and eax, 0xff
mov ecx, esi
push eax
push 0x41c
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
mov eax, dword [0x41171c]
push 0
lea ecx, [esp + 0x14]
push 1
lea edx, [edi + 0xa]
push ecx
push edx
push eax
call ebp
mov ecx, dword [esp + 0x10]
push 1
and ecx, 0xff
push ecx
push 0x41d
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetDlgItemInt
push 6
mov ecx, esi
call fcn.0040bf00
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 0xd]
push edx
push eax
push ecx
call ebp
mov al, byte [esp + 0x10]
push 0
test al, 2
jne 0x4098f6
mov edx, dword [esi + 0x20]
push 0
push 0xf1
push 0x41e
push edx
jmp 0x409906
mov eax, dword [esi + 0x20]
push 1
push 0xf1
push 0x41e
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
mov eax, dword [0x41171c]
push 0
lea ecx, [esp + 0x14]
push 1
lea edx, [edi + 0xf]
push ecx
push edx
push eax
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x36c]
and eax, 0xff
push 0
push eax
push 0x14e
push ecx
call ebx
mov ecx, dword [0x41171c]
push 0
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 0x18]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.0040c0c0
and eax, 0xff
push 0
push eax
mov eax, dword [esi + 0x32c]
push 0x14e
push eax
call ebx
mov eax, dword [0x41171c]
push 0
lea ecx, [esp + 0x14]
push 1
lea edx, [edi + 0x19]
push ecx
push edx
push eax
call ebp
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, esi
call fcn.0040c0c0
mov edx, dword [esi + 0x2ec]
and eax, 0xff
push 0
push eax
push 0x14e
push edx
call ebx
mov edx, dword [0x41171c]
push 0
lea eax, [esp + 0x14]
push 1
lea ecx, [edi + 0x1a]
push eax
push ecx
push edx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, esi
push eax
call fcn.0040c0c0
mov ecx, dword [esi + 0x2ac]
and eax, 0xff
push 0
push eax
push 0x14e
push ecx
call ebx
push 0
mov ecx, dword [0x41171c]
lea edx, [esp + 0x14]
push 1
lea eax, [edi + 0x1b]
push edx
push eax
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.0040c0c0
and eax, 0xff
push 0
push eax
mov eax, dword [esi + 0x26c]
push 0x14e
push eax
call ebx
mov eax, dword [0x41171c]
push 0
lea ecx, [esp + 0x14]
push 1
lea edx, [edi + 0x1c]
push ecx
push edx
push eax
call ebp
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, esi
call fcn.0040c0c0
mov edx, dword [esi + 0x22c]
and eax, 0xff
push 0
push eax
push 0x14e
push edx
call ebx
mov ecx, dword [0x41171c]
push 0
lea eax, [esp + 0x14]
push 1
add edi, 0x1d
push eax
push edi
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.0040c0c0
and eax, 0xff
push 0
push eax
mov eax, dword [esi + 0x1ec]
push 0x14e
push eax
call ebx
mov ecx, esi
call fcn.0040bde0
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xffffffff
call fcn.0040c28a
pop edi
pop ebp
mov ecx, dword [esp + 0x1c]
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x20
ret 4