Function at 0x401e30
Capabilities:
Access peb ldr_data
Get process heap flags
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea eax, [ebp - 0x1a8]
push ebx
sub esp, 0x21c
mov dword [esp + 4], eax
mov dword [esp], 0x202
call dword [sym.imp.ws2_32.dll_WSAStartup]
mov dword [ebp - 0x1e0], eax
sub esp, 8
test eax, eax
jne 0x402268
cmp dword [ebp + 8], 1
je 0x402394
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x4021e7
xor edi, edi
cmp word [ecx], 0x2d
jne 0x402450
movzx eax, word [ecx + 2]
cmp ax, 0x70
je 0x4022e8
ja 0x4021f8
cmp ax, 0x61
je 0x402288
cmp ax, 0x65
jne 0x4022a8
mov dword [ebp - 0x1d4], 0x360
mov eax, 0x360
lea esi, [ebp - 0x1d4]
mov ebx, dword fs:[0x18]
mov edx, ebx
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1dc], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
sub esp, 0xc
mov edi, eax
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [sym.imp.iphlpapi.dll_GetIfTable]
mov edx, dword [ebp - 0x1dc]
sub esp, 0xc
test eax, eax
mov ebx, eax
jne 0x402230
mov dword [ebp - 0x1dc], eax
mov eax, 6
lea ebx, [ebp - 0x1ce]
call sym._NETSTAT_load_message
mov dword [esp], eax
call dbg.NETSTAT_wprintf
mov dword [esp], 0x404468
call dbg.NETSTAT_wprintf
mov dword [esp], 0x404468
call dbg.NETSTAT_wprintf
mov eax, 8
call sym._NETSTAT_load_message
mov edx, dword [ebp - 0x1dc]
mov esi, eax
xor eax, eax
lea esi, [esi]
lea esi, [esi]
movzx ecx, word [esi + eax]
mov word [ebx + eax], cx
add eax, 2
test cx, cx
jne 0x401f70
mov eax, 7
mov dword [ebp - 0x200], edx
call sym._NETSTAT_load_message
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp], str._____________________________19s__s_n_n
call dbg.NETSTAT_wprintf
mov eax, dword [edi]
mov dword [ebp - 0x204], eax
test eax, eax
je 0x402464
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x208], edi
lea eax, [edi + 0x22c]
mov dword [ebp - 0x1dc], 0
xor esi, esi
xor ecx, ecx
mov edi, edx
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1fc], ebx
lea esi, [esi]
lea esi, [esi]
mov edx, dword [eax + 4]
add ecx, 1
mov ebx, dword [eax]
add eax, 0x35c
add dword [ebp - 0x1e4], edx
mov edx, dword [eax - 0x340]
add dword [ebp - 0x1ec], edx
mov edx, dword [eax - 0x354]
add dword [ebp - 0x1f0], edx
mov edx, dword [eax - 0x33c]
add dword [ebp - 0x1f4], edx
mov edx, dword [eax - 0x350]
add dword [ebp - 0x1f8], edx
mov edx, dword [eax - 0x338]
add dword [ebp - 0x1e8], edx
mov edx, dword [eax - 0x34c]
add dword [ebp - 0x1dc], edx
mov edx, dword [ebp - 0x204]
add dword [ebp - 0x200], ebx
add edi, dword [eax - 0x334]
mov ebx, dword [eax - 0x344]
add esi, dword [eax - 0x348]
add dword [ebp - 0x1fc], ebx
cmp ecx, edx
jne 0x402020
mov dword [ebp - 0x204], edi
mov ebx, dword [ebp - 0x1fc]
mov edi, dword [ebp - 0x208]
mov edx, dword [ebp - 0x200]
mov eax, 9
mov dword [ebp - 0x1fc], edx
call sym._NETSTAT_load_message
mov dword [esp + 0xc], ebx
mov edx, dword [ebp - 0x1fc]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], str.__20s__14lu__15lu_n
call dbg.NETSTAT_wprintf
mov eax, 0xa
call sym._NETSTAT_load_message
mov ebx, dword [ebp - 0x1ec]
mov dword [esp + 0xc], ebx
mov ebx, dword [ebp - 0x1e4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], str.__20s__14lu__15lu_n
call dbg.NETSTAT_wprintf
mov eax, 0xb
call sym._NETSTAT_load_message
mov ebx, dword [ebp - 0x1f4]
mov dword [esp + 0xc], ebx
mov ebx, dword [ebp - 0x1f0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], str.__20s__14lu__15lu_n
call dbg.NETSTAT_wprintf
mov eax, 0xc
call sym._NETSTAT_load_message
mov ebx, dword [ebp - 0x1e8]
mov dword [esp + 0xc], ebx
mov ebx, dword [ebp - 0x1f8]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], str.__20s__14lu__15lu_n
call dbg.NETSTAT_wprintf
mov eax, 0xd
call sym._NETSTAT_load_message
mov ebx, dword [ebp - 0x204]
mov dword [esp + 0xc], ebx
mov ebx, dword [ebp - 0x1dc]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], str.__20s__14lu__15lu_n
call dbg.NETSTAT_wprintf
mov eax, 0xe
call sym._NETSTAT_load_message
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], str.__20s__14lu_n_n
call dbg.NETSTAT_wprintf
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
sub esp, 0xc
mov eax, dword [ebp - 0x1e0]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ax, 0x73
jne 0x4022a8
add dword [ebp + 0xc], 4
mov eax, dword [ebp + 0xc]
mov edi, 1
sub dword [ebp + 8], 1
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x401e7e
call dbg.NETSTAT_tcp_stats
call dbg.NETSTAT_udp_stats
jmp 0x4021e7
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword [edx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
sub esp, 0xc
cmp ebx, 0x7a
jne 0x4021e7
mov eax, dword [ebp - 0x1d4]
mov edx, dword [ebp - 0x1dc]
jmp 0x401ece
test byte [0x403004], 2
jne 0x402358
mov dword [ebp - 0x1e0], 1
jmp 0x4021e7
call dbg.NETSTAT_conn_header
call dbg.NETSTAT_tcp_table
call dbg.NETSTAT_udp_table
mov eax, dword [ebp - 0x1e0]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [0x403004], 1
je 0x402275
mov eax, ecx
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0xc], str.Unknown_option:__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], global___func__
mov dword [esp + 4], global___dbch
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0
jmp 0x402275
cmp dword [ebp + 8], 2
je 0x402275
mov eax, dword [ebp + 0xc]
mov esi, dword [sym.imp.ucrtbase.dll__wcsicmp]
mov ebx, dword [eax + 8]
mov dword [esp + 4], 0x4044dc
mov dword [esp], ebx
call esi
test eax, eax
jne 0x4023b0
test byte [0x403004], 1
je 0x4021e7
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 8]
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0xc], str.Protocol_not_yet_implemented:__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], global___func__
mov dword [esp + 4], global___dbch
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0
jmp 0x4021e7
call dword [sym.imp.ws2_32.dll_WSAGetLastError]
mov dword [esp + 0xc], str.WSAStartup_failed:__d_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], global___func__
mov dword [esp + 4], global___dbch
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0
jmp 0x402275
test edi, edi
je 0x402394
call dbg.NETSTAT_tcp_stats
call dbg.NETSTAT_conn_header
call dbg.NETSTAT_tcp_table
mov eax, dword [ebp - 0x1e0]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], str.IPv6
mov dword [esp], ebx
call esi
test eax, eax
je 0x40230f
mov dword [esp + 4], str.ICMP
mov dword [esp], ebx
call esi
test eax, eax
je 0x40230f
mov dword [esp + 4], str.ICMPv6
mov dword [esp], ebx
call esi
test eax, eax
je 0x40230f
mov dword [esp + 4], 0x4044ac
mov dword [esp], ebx
call esi
test eax, eax
je 0x40238b
mov dword [esp + 4], str.TCPv6
mov dword [esp], ebx
call esi
test eax, eax
je 0x40230f
mov dword [esp + 4], 0x404498
mov dword [esp], ebx
call esi
test eax, eax
je 0x402438
mov dword [esp + 4], str.UDPv6
mov dword [esp], ebx
call esi
jmp 0x40230f
test edi, edi
jne 0x40245d
call dbg.NETSTAT_conn_header
call dbg.NETSTAT_udp_table
jmp 0x4021e7
test edi, edi
jne 0x40221d
jmp 0x4021e7
call dbg.NETSTAT_udp_stats
jmp 0x40243c
mov dword [ebp - 0x204], 0
xor esi, esi
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e4], 0
jmp 0x4020bf