Function at 0x409100
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x449c66
mov eax, dword fs:[0]
push eax
sub esp, 0x1d8
mov eax, dword [0x460590]
xor eax, esp
mov dword [esp + 0x1d0], eax
push ebx
push esi
push edi
mov eax, dword [0x460590]
xor eax, esp
push eax
lea eax, [esp + 0x1e8]
mov dword fs:[0], eax
mov ebx, edx
push 0
mov esi, ecx
push 0x451c5c
mov ecx, ebx
mov dword [esp + 0x1c], ebx
call fcn.00402090
push ebx
call fcn.00408160
mov edi, dword [ebx]
mov ecx, str.00_00_00_00_00_00
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40918b
test dx, dx
je 0x409187
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40918b
add eax, 4
add ecx, 4
test dx, dx
jne 0x409165
xor eax, eax
jmp 0x409190
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
test al, al
jne 0x40919f
cmp dword [edi - 0xc], 0
jne 0x4091a5
push ebx
call fcn.00408310
mov esi, dword [ebx]
mov ecx, str.00_00_00_00_00_00
mov eax, esi
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4091d8
test dx, dx
je 0x4091d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4091d8
add eax, 4
add ecx, 4
test dx, dx
jne 0x4091b0
xor edi, edi
xor eax, eax
jmp 0x4091df
sbb eax, eax
sbb eax, 0xffffffff
xor edi, edi
cmp eax, edi
sete al
test al, al
jne 0x4091f1
cmp dword [esi - 0xc], edi
jne 0x40933c
mov dword [esp + 0x18], vtable.CArray_struct_stNetPcInfo__struct_stNetPcInfo__.0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], edi
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x1f4], edi
call fcn.00408730
lea esi, [esp + 0x2c]
call fcn.00408ee0
mov byte [esp + 0x1f0], 1
mov edi, dword [esp + 0x20]
xor ebx, ebx
test edi, edi
jle 0x4092fc
mov esi, dword [esp + 0x1c]
add esi, 8
test ebx, ebx
jl 0x409382
cmp ebx, edi
jge 0x409382
lea ecx, [esi - 8]
push ecx
lea ecx, [esp + 0x30]
call fcn.00401f40
lea edx, [esi - 4]
push edx
lea ecx, [esp + 0x34]
call fcn.00401f40
push esi
lea ecx, [esp + 0x38]
call fcn.00401f40
lea eax, [esi + 4]
push eax
lea ecx, [esp + 0x3c]
call fcn.00401f40
lea ecx, [esi + 8]
push ecx
lea ecx, [esp + 0x40]
call fcn.00401f40
lea edx, [esi + 0xc]
push edx
lea ecx, [esp + 0x44]
call fcn.00401f40
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0x48]
call fcn.00401f40
lea ecx, [esi + 0x14]
push ecx
lea ecx, [esp + 0x4c]
call fcn.00401f40
mov edx, dword [esp + 0x30]
cmp dword [edx - 0xc], 0
je 0x4092f0
mov edi, dword [esp + 0x3c]
cmp dword [edi - 0xc], 0
jl 0x40936b
push str.VMware
push edi
call fcn.00432892
add esp, 8
test eax, eax
je 0x40936b
sub eax, edi
sar eax, 1
cmp eax, 0xffffffff
je 0x40936b
mov edi, dword [esp + 0x20]
inc ebx
add esi, 0x20
cmp ebx, edi
jl 0x409240
lea eax, [esp + 0x2c]
call fcn.00409000
mov dword [esp + 0x1f0], 0xffffffff
mov ebx, dword [esp + 0x1c]
test ebx, ebx
je 0x409338
test edi, edi
jle 0x40932f
mov esi, ebx
mov edi, edi
mov eax, esi
call fcn.00409000
add esi, 0x20
sub edi, 1
jne 0x409320
push ebx
call fcn.00413702
add esp, 4
mov ebx, dword [esp + 0x14]
mov esi, dword [ebx]
mov ecx, str.00_00_00_00_00_00
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x409387
test dx, dx
je 0x409367
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x409387
add eax, 4
add ecx, 4
test dx, dx
jne 0x409345
xor eax, eax
jmp 0x40938c
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x30]
push eax
call fcn.00401f40
mov edi, dword [esp + 0x20]
jmp 0x4092fc
call fcn.004142f0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x409396
cmp dword [esi - 0xc], 0
jne 0x4093ad
lea ecx, [esp + 0x4c]
push ecx
push 2
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x4093ad
push ebx
call fcn.00408450
mov esi, dword [ebx]
mov ecx, str.00_00_00_00_00_00
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4093dc
test dx, dx
je 0x4093d8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4093dc
add eax, 4
add ecx, 4
test dx, dx
jne 0x4093b6
xor eax, eax
jmp 0x4093e1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4093eb
cmp dword [esi - 0xc], 0
jne 0x4093f1
push ebx
call fcn.00408240
mov eax, dword [ebx]
mov esi, dword [eax - 0xc]
mov edx, 1
sub edx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or edx, eax
jge 0x40940f
push esi
mov ecx, ebx
call fcn.00402140
mov edx, dword [ebx]
lea ecx, [esi + 1]
push ecx
push edx
call fcn.00433bd6
add esp, 8
test esi, esi
jl 0x409458
mov eax, dword [ebx]
cmp esi, dword [eax - 8]
jg 0x409458
mov dword [eax - 0xc], esi
mov eax, dword [ebx]
xor ecx, ecx
mov word [eax + esi*2], cx
mov ecx, dword [esp + 0x1e8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1d0]
xor ecx, esp
call fcn.004323db
mov esp, ebp
pop ebp
ret
push 0x80070057
call fcn.00401000
int3