Function at 0x40de40
Capabilities:
Create thread
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x864
mov eax, dword [0x428044]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
mov eax, dword [ebp + 8]
mov dword [0x42ad50], eax
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0
push 0
push 0
push connect
push 0
push connect
push 0xcf0000
push 0x42ac88
push 0x42abc0
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [ebp - 0x3ac], eax
cmp dword [ebp - 0x3ac], 0
jne 0x40dea1
xor eax, eax
jmp 0x40e3cd
xor edx, edx
mov word [ebp - 0x5b8], dx
push 0x206
push 0
lea eax, [ebp - 0x5b6]
push eax
call fcn.00417ec0
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x7c0], cx
push 0x206
push 0
lea edx, [ebp - 0x7be]
push edx
call fcn.00417ec0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x210], ax
push 0x206
push 0
lea ecx, [ebp - 0x20e]
push ecx
call fcn.00417ec0
add esp, 0xc
mov dword [ebp - 0x808], str.GolfTmp
lea edx, [ebp - 0x7c0]
mov dword [ebp - 0x80c], edx
mov eax, dword [ebp - 0x80c]
mov dword [ebp - 0x810], eax
mov ecx, dword [ebp - 0x808]
mov dx, word [ecx]
mov word [ebp - 0x812], dx
mov eax, dword [ebp - 0x80c]
mov cx, word [ebp - 0x812]
mov word [eax], cx
mov edx, dword [ebp - 0x808]
add edx, 2
mov dword [ebp - 0x808], edx
mov eax, dword [ebp - 0x80c]
add eax, 2
mov dword [ebp - 0x80c], eax
cmp word [ebp - 0x812], 0
jne 0x40df20
lea ecx, [ebp - 0x7c0]
mov dword [ebp - 0x818], ecx
lea edx, [ebp - 0x210]
mov dword [ebp - 0x81c], edx
mov eax, dword [ebp - 0x81c]
mov dword [ebp - 0x820], eax
mov ecx, dword [ebp - 0x818]
mov dx, word [ecx]
mov word [ebp - 0x822], dx
mov eax, dword [ebp - 0x81c]
mov cx, word [ebp - 0x822]
mov word [eax], cx
mov edx, dword [ebp - 0x818]
add edx, 2
mov dword [ebp - 0x818], edx
mov eax, dword [ebp - 0x81c]
add eax, 2
mov dword [ebp - 0x81c], eax
cmp word [ebp - 0x822], 0
jne 0x40df8c
lea ecx, [ebp - 0x210]
add ecx, 0xfffffffe
mov dword [ebp - 0x828], ecx
mov edx, dword [ebp - 0x828]
mov ax, word [edx + 2]
mov word [ebp - 0x82a], ax
add dword [ebp - 0x828], 2
cmp word [ebp - 0x82a], 0
jne 0x40dfe3
mov edi, dword [ebp - 0x828]
mov ecx, dword [0x4222b0]
mov dword [edi], ecx
mov edx, dword [0x4222b4]
mov dword [edi + 4], edx
mov eax, dword [0x4222b8]
mov dword [edi + 8], eax
mov dword [ebp - 0x3a8], 0
lea ecx, [ebp - 0x7c0]
push ecx
push 0
push 0x20000
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov dword [ebp - 0x3a8], eax
cmp dword [ebp - 0x3a8], 0
je 0x40e0da
mov edx, dword [ebp - 0x3a8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x210]
push eax
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x7c8], 0
lea ecx, [ebp - 0x7c0]
push ecx
push 0
push 0x20000
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov dword [ebp - 0x3a8], eax
cmp dword [ebp - 0x3a8], 0
je 0x40e0da
cmp dword [ebp - 0x7c8], 5
jge 0x40e0da
mov edx, dword [ebp - 0x3a8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x7c8]
add eax, 1
mov dword [ebp - 0x7c8], eax
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x40e085
lea ecx, [ebp - 0x3a0]
push ecx
push 0x101
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov dword [ebp - 0x3a4], 0
mov dword [ebp - 0x7c4], 0
push 1
push 0x42b3a0
call fcn.00405960
add esp, 8
mov dword [ebp - 0x3a4], eax
cmp dword [ebp - 0x3a4], 0
jne 0x40e2c3
xor edx, edx
mov word [ebp - 0x804], dx
push 0x3a
push 0
lea eax, [ebp - 0x802]
push eax
call fcn.00417ec0
add esp, 0xc
lea ecx, [ebp - 0x804]
push ecx
call fcn.0040da10
add esp, 4
lea edx, [ebp - 0x804]
mov dword [ebp - 0x830], edx
mov dword [ebp - 0x834], 0x42b548
mov eax, dword [ebp - 0x834]
mov dword [ebp - 0x838], eax
mov ecx, dword [ebp - 0x830]
mov dx, word [ecx]
mov word [ebp - 0x83a], dx
mov eax, dword [ebp - 0x834]
mov cx, word [ebp - 0x83a]
mov word [eax], cx
mov edx, dword [ebp - 0x830]
add edx, 2
mov dword [ebp - 0x830], edx
mov eax, dword [ebp - 0x834]
add eax, 2
mov dword [ebp - 0x834], eax
cmp word [ebp - 0x83a], 0
jne 0x40e16f
push 0x4222e4
push 0x42b3a4
call fcn.00410770
add esp, 8
mov ecx, 0x51
mov word [0x42b424], cx
push 0x422300
push 0x42b426
call fcn.00410790
add esp, 8
push 0x42230c
push 0x42b446
call fcn.00410770
add esp, 8
mov edx, 0x2b66
mov word [0x42b4c6], dx
lea eax, [ebp - 0x804]
mov dword [ebp - 0x840], eax
mov dword [ebp - 0x844], 0x42b528
mov ecx, dword [ebp - 0x844]
mov dword [ebp - 0x848], ecx
mov edx, dword [ebp - 0x840]
mov ax, word [edx]
mov word [ebp - 0x84a], ax
mov ecx, dword [ebp - 0x844]
mov dx, word [ebp - 0x84a]
mov word [ecx], dx
mov eax, dword [ebp - 0x840]
add eax, 2
mov dword [ebp - 0x840], eax
mov ecx, dword [ebp - 0x844]
add ecx, 2
mov dword [ebp - 0x844], ecx
cmp word [ebp - 0x84a], 0
jne 0x40e227
mov edx, 0x42b528
add edx, 0xfffffffe
mov dword [ebp - 0x850], edx
mov eax, dword [ebp - 0x850]
mov cx, word [eax + 2]
mov word [ebp - 0x852], cx
add dword [ebp - 0x850], 2
cmp word [ebp - 0x852], 0
jne 0x40e27d
mov edi, dword [ebp - 0x850]
mov edx, dword [0x422328]
mov dword [edi], edx
mov ax, word [0x42232c]
mov word [edi + 4], ax
mov ecx, dword [0x428f14]
mov dword [0x42b568], ecx
call fcn.0040e6b0
lea edx, [ebp - 0x5b8]
push edx
call fcn.0040da10
add esp, 4
lea eax, [ebp - 0x5b8]
mov dword [ebp - 0x858], eax
mov dword [ebp - 0x85c], 0x42b5a0
mov ecx, dword [ebp - 0x85c]
mov dword [ebp - 0x860], ecx
mov edx, dword [ebp - 0x858]
mov ax, word [edx]
mov word [ebp - 0x862], ax
mov ecx, dword [ebp - 0x85c]
mov dx, word [ebp - 0x862]
mov word [ecx], dx
mov eax, dword [ebp - 0x858]
add eax, 2
mov dword [ebp - 0x858], eax
mov ecx, dword [ebp - 0x85c]
add ecx, 2
mov dword [ebp - 0x85c], ecx
cmp word [ebp - 0x862], 0
jne 0x40e2f9
push 0x42b5a0
push 0
push 0x20000
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov dword [ebp - 0x3a8], eax
cmp dword [ebp - 0x3a8], 0
je 0x40e373
mov edx, dword [ebp - 0x3a8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x40e3cd
push 0x42b5a0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [ebp - 0x3a8], eax
cmp dword [ebp - 0x3a8], 0
jne 0x40e397
xor eax, eax
jmp 0x40e3cd
push 0x42af60
call fcn.0040ff10
add esp, 4
mov eax, dword [0x42b56c]
mov dword [0x42af68], eax
push 0
push 0
push 0
push 0x40e560
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x428f18], eax
mov eax, 1
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004107a7
mov esp, ebp
pop ebp
ret