Function at 0x407a18
Capabilities:
Create thread
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7f0
mov eax, dword [0x41f044]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push eax
push ebx
push ebx
push ebx
mov dword [0x421d50], eax
mov eax, connect
push eax
push ebx
push eax
push 0xcf0000
push 0x421c88
push 0x421bc0
push ebx
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
jne 0x407a66
xor eax, eax
jmp 0x407ce5
xor eax, eax
mov esi, 0x206
push esi
mov word [ebp - 0x65c], ax
lea eax, [ebp - 0x65a]
push ebx
push eax
call fcn.00410730
add esp, 0xc
xor eax, eax
push esi
mov word [ebp - 0x24c], ax
lea eax, [ebp - 0x24a]
push ebx
push eax
call fcn.00410730
add esp, 0xc
xor eax, eax
push esi
mov word [ebp - 0x454], ax
lea eax, [ebp - 0x452]
push ebx
push eax
call fcn.00410730
add esp, 0xc
xor eax, eax
movzx ecx, word [eax + 0x41d4cc]
mov word [ebp + eax - 0x24c], cx
add eax, 2
cmp cx, bx
jne 0x407abb
xor eax, eax
movzx ecx, word [ebp + eax - 0x24c]
mov word [ebp + eax - 0x454], cx
add eax, 2
cmp cx, bx
jne 0x407ad4
lea edi, [ebp - 0x454]
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, bx
jne 0x407af5
mov esi, 0x41d4dc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x24c]
push eax
movsd dword es:[edi], dword [esi]
mov esi, dword [sym.imp.KERNEL32.dll_OpenEventW]
push ebx
mov edi, 0x20000
push edi
call esi
cmp eax, ebx
je 0x407b72
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x454]
push eax
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [ebp - 0x7f0], ebx
jmp 0x407b63
cmp dword [ebp - 0x7f0], 5
jge 0x407b72
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
inc dword [ebp - 0x7f0]
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x24c]
push eax
push ebx
push edi
call esi
cmp eax, ebx
jne 0x407b42
lea eax, [ebp - 0x7ec]
push eax
push 0x101
call dword [sym.imp.WS2_32.dll_WSAStartup]
push 1
mov ebx, 0x4223a0
call fcn.00403e42
xor ebx, ebx
pop ecx
test eax, eax
jne 0x407c5e
push 0x3a
mov word [ebp - 0x44], ax
lea eax, [ebp - 0x42]
push ebx
push eax
call fcn.00410730
add esp, 0xc
lea edi, [ebp - 0x44]
call fcn.00407791
xor eax, eax
movzx ecx, word [ebp + eax - 0x44]
mov word [eax + 0x422548], cx
add eax, 2
cmp cx, bx
jne 0x407bb8
push 0x41d4e8
push 0x40
push 0x4223a4
call fcn.00409022
add esp, 0xc
push 0x51
pop eax
push 0x41d504
push 0x10
push 0x422426
mov word [0x422424], ax
call fcn.00409022
add esp, 0xc
push 0x41d510
push 0x40
push 0x422446
call fcn.00409022
mov eax, 0x2b66
add esp, 0xc
mov word [0x4224c6], ax
xor eax, eax
movzx ecx, word [ebp + eax - 0x44]
mov word [eax + 0x422528], cx
add eax, 2
cmp cx, bx
jne 0x407c1e
mov edi, 0x422528
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, bx
jne 0x407c3a
mov esi, 0x41d52c
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov esi, dword [sym.imp.KERNEL32.dll_OpenEventW]
mov dword [0x422568], 5
call fcn.00407e6d
lea edi, [ebp - 0x65c]
call fcn.00407791
xor eax, eax
movzx ecx, word [ebp + eax - 0x65c]
mov word [eax + 0x4225a0], cx
add eax, 2
cmp cx, bx
jne 0x407c70
mov edi, 0x4225a0
push edi
push ebx
push 0x20000
call esi
cmp eax, ebx
je 0x407ca5
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x407a5f
push edi
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
test eax, eax
je 0x407a5f
mov ebx, 0x421f60
call fcn.00408bee
mov eax, dword [0x42256c]
mov dword [0x421f68], eax
xor eax, eax
push eax
push eax
push eax
push 0x407dcf
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x41ff18], eax
xor eax, eax
inc eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00409013
leave
ret