Function at 0x427f00
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1bc
mov eax, dword [0x4a9d30]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x4ace90], 0
push ebx
push esi
mov ebx, ecx
jne 0x427f69
lea eax, [ebp - 0x194]
push eax
push 0x101
call sub.WSOCK32.dll_WSAStartup
test eax, eax
je 0x427f4e
push 0x12010
push str.Winsock_Error
push str.Couldnt_initialize_Winsock.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x427f69
push 0x486a50
mov dword [ebx + 0x76], 1
call sub.WSOCK32.dll_getprotobyname
mov dword [ebx + 0x72], eax
mov dword [ebx + 0x7a], 1
mov eax, dword [ebp + 0xc]
xorps xmm0, xmm0
mov ecx, dword [ebp + 8]
mov dword [0x4ad21c], 0
mov dword [ebx + 0x36], eax
mov eax, dword [ebx + 0xa3]
movdqu xmmword [ebp - 0x1bc], xmm0
mov dword [ebx + 0x32], ecx
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1bc], 0xb
movq qword [ebp - 0x19c], xmm0
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXForm
call fcn.004088e0
test eax, eax
jne 0x427fd8
call fcn.0040a7b0
mov dword [ebp - 0x1a8], eax
lea eax, [ebp - 0x1bc]
push edi
mov edi, dword [sym.imp.USER32.dll_RegisterClassA]
push eax
mov dword [ebp - 0x1a4], 0
call edi
mov eax, dword [ebx + 0xa3]
xorps xmm0, xmm0
mov esi, dword [sym.imp.USER32.dll_LoadCursorA]
movdqu xmmword [ebp - 0x1bc], xmm0
push 0x7f00
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebx + 0x32]
movq qword [ebp - 0x19c], xmm0
push 0
mov dword [ebp - 0x1bc], 0xb
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXPrompt
call esi
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1bc]
push eax
call edi
mov eax, dword [ebx + 0xa3]
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x1bc], xmm0
push 0x7f00
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebx + 0x32]
movq qword [ebp - 0x19c], xmm0
push 0
mov dword [ebp - 0x1bc], 0xb
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXCombo
call esi
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1bc]
push eax
call edi
mov eax, dword [ebx + 0xa3]
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x1bc], xmm0
push 0x7f00
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebx + 0x32]
movq qword [ebp - 0x19c], xmm0
push 0
mov dword [ebp - 0x1bc], 0xb
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXLabel
call esi
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1bc]
push eax
call edi
mov eax, dword [ebx + 0xa3]
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x1bc], xmm0
push 0x7f00
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebx + 0x32]
movq qword [ebp - 0x19c], xmm0
push 0
mov dword [ebp - 0x1bc], 0xb
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXPicture
call esi
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1bc]
push eax
call edi
xorps xmm0, xmm0
mov eax, dword [ebx + 0xa3]
movdqu xmmword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebx + 0x32]
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x1ac], eax
lea eax, [ebp - 0x1bc]
movq qword [ebp - 0x19c], xmm0
push eax
mov dword [ebp - 0x1bc], 0xb
mov dword [ebp - 0x1a0], 0x10
mov dword [ebp - 0x198], str.XXList
mov dword [ebp - 0x1a4], 0
call edi
cmp byte [0x4ace8b], 0
pop edi
jne 0x428254
cmp dword [ebp + 0x10], 1
jne 0x428254
mov ecx, ebx
call fcn.00428db0
cmp eax, 1
jne 0x428259
mov ecx, ebx
call fcn.00428270
mov esi, eax
cmp esi, 1
jne 0x428240
cmp byte [0x4ace88], 0
je 0x428240
cmp byte [0x4ad1a7], al
jne 0x428240
push ebx
push 0x4ace88
call fcn.00409470
add esp, 8
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, 1
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc