Function at 0x407fa0
Capabilities:
Accept command line arguments
Get hostname
Hide graphical window
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1ec
mov eax, dword [0x46f20c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x198]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
lea eax, [ebp - 0x194]
push eax
push 0x102
call sub.WS2_32.dll_WSAStartup
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push esi
lea eax, [ebp - 0x198]
push eax
push str.Share_Enum
call fcn.004018a0
add esp, 0xc
test eax, eax
jne 0x408013
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00409118
mov esp, ebp
pop ebp
ret 0x10
cmp dword [ebp - 0x198], 1
mov dword [0x4700b0], edi
mov dword [0x4702c8], 0xc8
jle 0x40803c
push dword [esi + 4]
call fcn.00438090
add esp, 4
mov dword [0x4702c8], eax
call fcn.00406ca0
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0x461494
push edi
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1d0], 0x30
mov dword [ebp - 0x1cc], 3
mov dword [ebp - 0x1c8], 0x405fd0
mov dword [ebp - 0x1bc], edi
mov dword [ebp - 0x1c0], 0x1e
call esi
push 0x461494
push edi
mov dword [ebp - 0x1b8], eax
call esi
push 0x7f00
push 0
mov dword [ebp - 0x1a4], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x1b4], eax
lea eax, [ebp - 0x1d0]
push eax
mov dword [ebp - 0x1b0], 0x10
mov dword [ebp - 0x1a8], 0x4614a4
call dword [sym.imp.USER32.dll_RegisterClassExW]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
test ax, ax
jne 0x4080e6
call esi
push 0
push 0x405fd0
push 0
push 0x4614c4
push edi
call dword [sym.imp.USER32.dll_CreateDialogParamW]
mov dword [0x4702cc], eax
test eax, eax
jne 0x40811d
call esi
pop edi
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00409118
mov esp, ebp
pop ebp
ret 0x10
push ebx
lea eax, [ebp - 0x19c]
mov dword [ebp - 0x19c], 0x104
push eax
push 0x4700bc
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push dword [ebp + 0x14]
push dword [0x4702cc]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [0x4702cc]
call dword [sym.imp.USER32.dll_UpdateWindow]
push str.ACCELERATORS
push edi
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov ebx, dword [sym.imp.USER32.dll_GetMessageW]
push 0
push 0
mov dword [ebp - 0x1a0], eax
lea eax, [ebp - 0x1ec]
push 0
push eax
call ebx
test eax, eax
je 0x4081e9
mov esi, dword [sym.imp.USER32.dll_TranslateMessage]
mov edi, dword [sym.imp.USER32.dll_DispatchMessageW]
nop dword [eax]
lea eax, [ebp - 0x1ec]
push eax
push dword [ebp - 0x1a0]
push dword [0x4702cc]
call dword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x4081d6
lea eax, [ebp - 0x1ec]
push eax
push dword [0x4702cc]
call dword [sym.imp.USER32.dll_IsDialogMessageW]
test eax, eax
jne 0x4081d6
lea eax, [ebp - 0x1ec]
push eax
call esi
lea eax, [ebp - 0x1ec]
push eax
call edi
push 0
push 0
push 0
lea eax, [ebp - 0x1ec]
push eax
call ebx
test eax, eax
jne 0x408190
mov ecx, dword [ebp - 4]
xor eax, eax
pop ebx
pop edi
xor ecx, ebp
pop esi
call fcn.00409118
mov esp, ebp
pop ebp
ret 0x10