Function at 0x4ab670
Capabilities:
Capture webcam image

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52cc96
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x94
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x18], ecx
xor eax, eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xa0], 0x28
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x9c], 1
call fcn.00489e10
cmp eax, 0x1d6
jl 0x4ab70e
or dword [ebp - 0x9c], 0x100
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x98], ebx
add eax, 8
mov edx, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x7c], edx
call fcn.004aba5c
test eax, eax
je 0x4ab90e
lea edx, [ebp - 0xa0]
push edx
push 0
push 0x404
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x4ab90e
mov ecx, dword [ebp - 0x18]
push 0
push 0xa
call fcn.0043069c
cmp eax, 0xffffffff
je 0x4ab90e
call fcn.00489e10
cmp eax, 0x1d6
jl 0x4ab8d4
call fcn.004aba5c
test eax, eax
je 0x4ab791
xor edx, edx
push edx
push edx
push 0x31
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, eax
jmp 0x4ab793
xor edx, edx
test edx, edx
je 0x4aba4c
push 0
mov dword [ebp - 0x40], edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], 0
push edx
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, 0x5428bc
test eax, eax
je 0x4ab7cb
mov eax, 0x5428bc
jmp 0x4ab7d0
mov eax, 0x542830
push dword [0x543670]
push 0
push eax
lea ecx, [ebp - 0x44]
call fcn.00431a04
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0x44]
push 0
push eax
push edx
lea ecx, [ebp - 0x70]
call fcn.0045f828
mov dword [ebp - 4], 2
lea eax, [ebp - 0x44]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x44]
mov eax, dword [edx - 0xc]
lea ecx, [edx - 0xc]
cmp eax, 0xffffffff
je 0x4ab833
add eax, 0xffffffff
mov dword [edx - 0xc], eax
jne 0x4ab833
push ecx
call dword [sym.imp.MSVCR80.dll_free]
pop ecx
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x70]
call fcn.0045f664
mov dword [ebp - 4], 4
mov edx, dword [ebp - 0x20]
mov ecx, dword [edx - 8]
test ecx, ecx
je 0x4aba42
xor eax, eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x38]
push eax
push ecx
push edx
push dword [ebp - 0x24]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x18]
lea ebx, [ebp - 0x1c]
push ebx
cmp eax, edx
lea ecx, [ebp - 0x70]
jl 0x4ab87b
mov edx, eax
mov dword [ebp - 0x18], edx
call fcn.0045f664
mov dword [ebp - 4], 5
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x20]
call fcn.00430810
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 6
mov dword [ebp - 4], 4
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx - 0xc]
lea ecx, [edx - 0xc]
cmp eax, 0xffffffff
je 0x4ab8c8
add eax, 0xffffffff
mov dword [edx - 0xc], eax
jne 0x4ab8c8
push ecx
call dword [sym.imp.MSVCR80.dll_free]
pop ecx
mov edx, dword [ebp - 0x20]
mov ecx, dword [edx - 8]
test ecx, ecx
jne 0x4ab859
jmp 0x4ab927
mov ecx, dword [ebp - 0x18]
push 1
push 0x54d07c
push 0x5428bc
call fcn.004302c0
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
mov dword [ebp - 0x7c], edx
call fcn.004aba5c
test eax, eax
je 0x4ab90e
lea edx, [ebp - 0xa0]
push edx
push 0
push 0x404
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
call fcn.004aba5c
test eax, eax
je 0x4ab942
xor edx, edx
push edx
push edx
push 0x419
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x4ab944
xor eax, eax
mov edx, dword [ebp - 0x18]
cmp edx, eax
jle 0x4ab966
call fcn.004aba5c
test eax, eax
je 0x4ab966
mov edx, dword [ebp - 0x18]
push edx
push 0
push 0x418
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0x20]
mov dword [ebp - 0x48], eax
mov dword [ebp - 4], 7
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x20]
mov eax, dword [edx - 0xc]
lea ecx, [edx - 0xc]
cmp eax, 0xffffffff
je 0x4ab998
add eax, 0xffffffff
mov dword [edx - 0xc], eax
jne 0x4ab998
push ecx
call dword [sym.imp.MSVCR80.dll_free]
pop ecx
lea eax, [ebp - 0x70]
mov dword [ebp - 0x54], eax
mov dword [ebp - 4], 8
mov dword [ebp - 4], 9
mov dword [ebp - 4], 0xa
lea eax, [ebp - 0x64]
mov dword [ebp - 0x50], eax
mov dword [ebp - 4], 0xb
mov dword [ebp - 4], 9
mov edx, dword [ebp - 0x64]
mov eax, dword [edx - 0xc]
lea ecx, [edx - 0xc]
cmp eax, 0xffffffff
je 0x4ab9e5
add eax, 0xffffffff
mov dword [edx - 0xc], eax
jne 0x4ab9e5
push ecx
call dword [sym.imp.MSVCR80.dll_free]
pop ecx
lea eax, [ebp - 0x68]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 4], 0xc
mov dword [ebp - 4], 8
mov edx, dword [ebp - 0x68]
mov eax, dword [edx - 0xc]
lea ecx, [edx - 0xc]
cmp eax, 0xffffffff
je 0x4aba17
add eax, 0xffffffff
mov dword [edx - 0xc], eax
jne 0x4aba17
push ecx
call dword [sym.imp.MSVCR80.dll_free]
pop ecx
mov dword [ebp - 4], 0
mov dword [ebp - 0x70], 0x588888
lea ecx, [ebp - 0x70]
call fcn.0042eb08
mov dword [ebp - 4], 0xffffffff
push dword [ebp - 0x24]
call dword [sym.imp.GDI32.dll_DeleteDC]
jmp 0x4ab90e
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x4ab927
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
mov edx, eax
jmp 0x4ab79b