Function at 0x429010
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1bc
mov eax, dword [0x4a7ea0]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x4ab080], 0
push ebx
push esi
mov ebx, ecx
jne 0x429079
lea eax, [ebp - 0x194]
push eax
push 0x101
call sub.WSOCK32.dll_WSAStartup
test eax, eax
je 0x42905e
push 0x12010
push str.Winsock_Error
push str.Couldnt_initialize_Winsock.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x429079
push 0x485ad0
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 [0x4ab40c], 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.00409420
test eax, eax
jne 0x4290e8
call fcn.0040b300
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 [0x4ab07b], 0
pop edi
jne 0x429364
cmp dword [ebp + 0x10], 1
jne 0x429364
mov ecx, ebx
call fcn.00429ed0
cmp eax, 1
jne 0x429369
mov ecx, ebx
call fcn.00429380
mov esi, eax
cmp esi, 1
jne 0x429350
cmp byte [0x4ab078], 0
je 0x429350
cmp byte [0x4ab39f], al
jne 0x429350
push ebx
push 0x4ab078
call fcn.00409fc0
add esp, 8
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004520a4
mov esp, ebp
pop ebp
ret 0xc
mov eax, 1
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.004520a4
mov esp, ebp
pop ebp
ret 0xc