Function at 0x401000
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1ec
lea eax, [ebp - 0x1f8]
push eax
push 0x202
call dword [sym.imp.ws2_32.dll_WSAStartup]
test eax, eax
je 0x401065
mov esi, 1
test byte [section..data], 2
je 0x4018fb
call dword [sym.imp.ws2_32.dll_WSAGetLastError]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x4043cc
mov dword [esp + 8], str.wmain
mov dword [esp], 1
call sym._wine_dbg_log
add esp, 0x14
jmp 0x4018fb
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x40107c
call sym._NETSTAT_conn_header
call sym._NETSTAT_tcp_table
jmp 0x4018f9
mov esi, dword [ebp + 0xc]
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4018f9
mov dl, 1
mov ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ecx], 0x2d
jne 0x4010e4
mov edi, edx
movzx edx, word [ecx + 2]
cmp edx, 0x73
jne 0x4010bd
mov ecx, dword [esi + ebx*4]
inc ebx
xor edx, edx
test ecx, ecx
jne 0x4010a0
jmp 0x4010ed
cmp edx, 0x70
je 0x4010fc
cmp edx, 0x65
je 0x40113b
cmp edx, 0x61
jne 0x4011a4
call sym._NETSTAT_conn_header
call sym._NETSTAT_tcp_table
call sym._NETSTAT_udp_table
jmp 0x4018f9
test dl, 1
jne 0x4018f9
call sym._NETSTAT_tcp_stats
call sym._NETSTAT_udp_stats
jmp 0x4018f9
mov ecx, esi
mov esi, 1
cmp eax, ebx
je 0x4018fb
mov esi, ecx
mov ecx, dword [ecx + ebx*4]
call sym._NETSTAT_get_protocol
cmp eax, 7
je 0x4018ab
cmp eax, 5
jne 0x4018c2
mov eax, edi
test al, 1
jne 0x40106d
call sym._NETSTAT_tcp_stats
jmp 0x40106d
mov dword [ebp - 0x3c], 0x360
lea ebx, [ebp - 0x3c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x3c]
mov eax, dword fs:[0x18]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax + 0x30]
push ecx
push 0
push dword [eax + 0x18]
call dword [sym.imp.kernel32.dll_HeapAlloc]
mov esi, eax
push 0
push ebx
push eax
call sub.iphlpapi.dll_GetIfTable
test eax, eax
je 0x4011de
mov edi, eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax + 0x30]
push esi
push 0
push dword [eax + 0x18]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp edi, 0x7a
je 0x401150
jmp 0x4018f9
mov esi, 1
test byte [section..data], 1
je 0x4018fb
call sym._debugstr_w
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Unknown_option:__s_n
mov dword [esp + 8], str.wmain
mov dword [esp], 0
jmp 0x401058
mov dword [ebp - 0x38], esi
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 6
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
jne 0x401266
test byte [section..data], 1
je 0x40123e
mov eax, dword fs:[0x18]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push 0x405046
call sym._NETSTAT_wprintf
add esp, 4
push 0x404072
call sym._NETSTAT_wprintf
add esp, 4
push 0x404072
call sym._NETSTAT_wprintf
add esp, 4
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 8
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
jne 0x401312
test byte [section..data], 1
je 0x4012ea
mov eax, dword fs:[0x18]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, word [eax + 0x405046]
mov word [ebp + eax - 0x68], cx
add eax, 2
test cx, cx
jne 0x401320
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 7
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
jne 0x4013b9
test byte [section..data], 1
je 0x401391
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
lea eax, [ebp - 0x68]
push 0x405046
push eax
push str._____________________________19s__s_n_n
call sym._NETSTAT_wprintf
add esp, 0xc
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx]
test eax, eax
je 0x401488
add ecx, 0x254
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x30], 0
xor edi, edi
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x2c], 0
xor esi, esi
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x14]
add eax, dword [ecx - 0x28]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
add eax, dword [ecx - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x2c]
add eax, dword [ecx - 0x24]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
add esi, dword [ecx - 0xc]
mov dword [ebp - 0x34], esi
mov esi, dword [ebp - 0x20]
add esi, dword [ecx - 0x20]
mov dword [ebp - 0x20], esi
mov esi, dword [ebp - 0x1c]
add esi, dword [ecx - 8]
mov dword [ebp - 0x1c], esi
add ebx, dword [ecx - 0x1c]
mov dword [ebp - 0x40], ebx
add edx, dword [ecx - 4]
mov esi, dword [ebp - 0x30]
add esi, dword [ecx - 0x18]
mov dword [ebp - 0x30], esi
add edi, dword [ecx]
mov ebx, edi
mov esi, edx
mov edx, dword [ebp - 0x24]
add edx, dword [ecx - 0x14]
mov dword [ebp - 0x24], edx
mov edx, esi
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x40]
add ecx, 0x35c
dec eax
jne 0x40141b
jmp 0x4014c1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
xor esi, esi
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
xor edx, edx
xor ebx, ebx
xor edi, edi
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x28], edx
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 9
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
jne 0x40155b
test byte [section..data], 1
je 0x401533
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push eax
push ecx
push 0x405046
push str.__20s__14lu__15lu_n
call sym._NETSTAT_wprintf
add esp, 0x10
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 0xa
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
mov eax, dword [ebp - 0x34]
jne 0x4015fa
test byte [section..data], 1
je 0x4015d2
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
mov eax, dword [ebp - 0x34]
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push eax
push esi
push 0x405046
push str.__20s__14lu__15lu_n
call sym._NETSTAT_wprintf
add esp, 0x10
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 0xb
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
jne 0x4016a2
test byte [section..data], 1
je 0x40167a
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push ecx
push eax
push 0x405046
push str.__20s__14lu__15lu_n
call sym._NETSTAT_wprintf
add esp, 0x10
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 0xc
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
mov eax, dword [ebp - 0x28]
jne 0x401741
test byte [section..data], 1
je 0x401719
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
mov eax, dword [ebp - 0x28]
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push eax
push ebx
push 0x405046
push str.__20s__14lu__15lu_n
call sym._NETSTAT_wprintf
add esp, 0x10
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 0xd
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
jne 0x4017da
test byte [section..data], 1
je 0x4017b2
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push edi
push esi
push 0x405046
push str.__20s__14lu__15lu_n
call sym._NETSTAT_wprintf
add esp, 0x10
push 0
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push 0x800
push 0x405046
push 0xe
push eax
call dword [sym.imp.user32.dll_LoadStringW]
test eax, eax
mov eax, dword [ebp - 0x24]
jne 0x401879
test byte [section..data], 1
je 0x401851
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x34]
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.LoadString_failed_with__ld_n
mov dword [esp + 8], str.NETSTAT_load_message
mov dword [esp], 0
call sym._wine_dbg_log
mov eax, dword [ebp - 0x24]
add esp, 0x14
mov dword [0x405052], 0x21
mov dword [0x40504e], 0x640065
mov dword [0x40504a], 0x6c0069
mov dword [0x405046], 0x610046
push eax
push 0x405046
push str.__20s__14lu_n_n
call sym._NETSTAT_wprintf
add esp, 0xc
mov eax, dword fs:[0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x30]
push dword [ebp - 0x38]
push 0
push dword [eax + 0x18]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x4018f9
mov eax, edi
test al, 1
jne 0x4018b6
call sym._NETSTAT_udp_stats
call sym._NETSTAT_conn_header
call sym._NETSTAT_udp_table
jmp 0x4018f9
test byte [section..data], 1
je 0x4018f9
mov ecx, dword [esi + ebx*4]
call sym._debugstr_w
sub esp, 0x14
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Protocol_not_yet_implemented:__s_n
mov dword [esp + 8], str.wmain
mov dword [esp], 0
call sym._wine_dbg_log
add esp, 0x14
xor esi, esi
mov eax, esi
add esp, 0x1ec
pop esi
pop edi
pop ebx
pop ebp
ret