Function at 0x4289e0
Capabilities:
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x1ec
mov byte [ebp - 0x1ad], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 6
mov dword [esp + 4], 1
mov dword [esp], 2
mov dword [ebp - 0x1b1], 0x54534554
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0xa4f
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
mov esi, dword fs:[0x18]
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xa53
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_failed_n
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xa55
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov edi, eax
call fcn.00465a80
xor eax, eax
cmp edi, 0x2736
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_10038__received__d_n
mov dword [esp], eax
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xa58
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov dword [esp], ebx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_failed_n
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xa5b
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov edi, eax
call fcn.00465a80
xor eax, eax
cmp edi, 0x2726
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_10022__received__d_n
mov dword [esp], eax
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xa5e
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea eax, [ebp - 0x18c]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov dword [esp + 4], 0xffffffff
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_failed_n
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xa61
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov edi, eax
call fcn.00465a80
xor eax, eax
cmp edi, 0x2726
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_10022__received__d_n
mov dword [esp], eax
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xa64
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea eax, [ebp - 0x18c]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x20]
mov dword [esp], 0
mov dword [esp + 4], eax
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_failed_n
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xa67
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov edi, eax
call fcn.00465a80
xor eax, eax
cmp edi, 0x2736
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_10038__received__d_n
mov dword [esp], eax
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xa6a
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov dword [esp + 8], 0
mov eax, dword [esi + 0x20]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_failed_n
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xa6d
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov edi, eax
call fcn.00465a80
xor eax, eax
cmp edi, 0x271e
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_10014__received__d_n
lea edi, [ebp - 0x18c]
mov dword [esp], eax
call fcn.00465cf0
xor eax, eax
mov ecx, 0x5d
rep stosd dword es:[edi], eax
mov dword [esp + 4], 0xa71
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea ecx, [ebp - 0x18c]
mov dword [esp + 8], ecx
mov eax, dword [esi + 0x20]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa74
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x130]
mov dword [esp + 8], 6
mov dword [esp + 4], str.expected_protocol__d__received__d_n
cmp eax, 6
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa76
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x130]
mov dword [esp + 8], 2
mov dword [esp + 4], str.expected_family__d__received__d_n
mov dword [esp + 0xc], eax
xor eax, eax
cmp dword [ebp - 0x140], 2
sete al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa78
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x134]
mov dword [esp + 8], 1
mov dword [esp + 4], str.expected_type__d__received__d_n
cmp eax, 1
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
lea ecx, [ebp - 0x18c]
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov edi, eax
mov dword [esp + 4], 0xa7c
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp edi, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp], edi
lea edi, [ebp - 0x18c]
call sub.ws2_32.dll_closesocket
sub esp, 4
mov dword [esp], ebx
call sub.ws2_32.dll_closesocket
sub esp, 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x11
mov dword [esp + 4], 2
mov dword [esp], 2
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0xa84
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
call fcn.00465cf0
xor eax, eax
mov ecx, 0x5d
rep stosd dword es:[edi], eax
mov dword [esp + 4], 0xa87
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea ecx, [ebp - 0x18c]
mov dword [esp + 8], ecx
mov eax, dword [esi + 0x20]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa8a
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x130]
mov dword [esp + 8], 0x11
mov dword [esp + 4], str.expected_protocol__d__received__d_n
cmp eax, 0x11
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa8c
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x130]
mov dword [esp + 8], 2
mov dword [esp + 4], str.expected_family__d__received__d_n
mov dword [esp + 0xc], eax
xor eax, eax
cmp dword [ebp - 0x140], 2
sete al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa8e
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x134]
mov dword [esp + 8], 2
mov dword [esp + 4], str.expected_type__d__received__d_n
cmp eax, 2
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp], str.127.0.0.1
mov edx, 2
xor eax, eax
mov word [ebp - 0x1ac], dx
mov dword [ebp - 0x1aa], 0
mov dword [ebp - 0x1a6], 0
mov dword [ebp - 0x1a2], 0
mov word [ebp - 0x19e], ax
call sub.ws2_32.dll_inet_addr
sub esp, 4
mov dword [ebp - 0x1a8], eax
mov dword [esp + 4], 0xa94
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea edx, [ebp - 0x1ac]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], 0x10
call sub.ws2_32.dll_bind
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.bind_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa9a
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x1bc], 0x10
call fcn.00465a80
lea edx, [ebp - 0x1ac]
lea ecx, [ebp - 0x1bc]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sub.ws2_32.dll_getsockname
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.getsockname_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xa9c
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
movzx eax, word [ebp - 0x1aa]
mov dword [esp + 4], str.socket_port_should_be___0_n
mov dword [esp], eax
call fcn.00465cf0
lea ecx, [ebp - 0x18c]
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov edi, eax
mov dword [esp + 4], 0xa9f
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp edi, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
call fcn.00465cf0
lea eax, [ebp - 0x1c0]
mov dword [esp], edi
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x1c4]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x1008
mov dword [esp + 4], 0xffff
mov dword [ebp - 0x1c0], 4
call sub.ws2_32.dll_getsockopt
sub esp, 0x14
mov dword [ebp - 0x1cc], eax
mov dword [esp + 4], 0xaa3
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
call sub.ws2_32.dll_WSAGetLastError
mov edx, dword [ebp - 0x1cc]
mov dword [esp + 4], str.getsockopt_failed_with__d_n
mov dword [esp + 8], eax
xor eax, eax
test edx, edx
sete al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xaa4
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
mov eax, dword [ebp - 0x1c4]
mov dword [esp + 8], 2
mov dword [esp + 4], str.Wrong_socket_type__expected__d_received__d_n
cmp eax, 2
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
lea edx, [ebp - 0x19c]
mov dword [esp], ebx
mov dword [esp + 8], edx
mov dword [esp + 4], 0x8004667e
mov dword [ebp - 0x19c], 0
call sub.ws2_32.dll_ioctlsocket
lea ecx, [ebp - 0x1ac]
lea edx, [ebp - 0x1b1]
mov dword [ebp - 0x1bc], 0x10
sub esp, 0xc
mov dword [esp + 0x10], ecx
mov dword [esp + 4], edx
mov dword [esp], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 5
call sub.ws2_32.dll_sendto
sub esp, 0x18
mov dword [ebp - 0x1c0], eax
mov dword [esp + 4], 0xaac
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
call sub.ws2_32.dll_WSAGetLastError
mov edx, dword [ebp - 0x1c0]
mov dword [esp + 4], str.got__d__err__d__n
mov dword [esp + 0xc], eax
xor eax, eax
cmp edx, 5
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00465cf0
lea ecx, [ebp - 0x1bc]
mov dword [esp], edi
lea edx, [ebp - 0x1ac]
mov dword [esp + 0x14], ecx
lea ecx, [ebp - 0x19c]
mov dword [esp + 4], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 5
mov dword [ebp - 0x1bc], 0x10
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0
call sub.ws2_32.dll_recvfrom
sub esp, 0x18
mov dword [ebp - 0x1c0], eax
mov dword [esp + 4], 0xab2
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
call sub.ws2_32.dll_WSAGetLastError
mov edx, dword [ebp - 0x1c0]
mov dword [esp + 4], str.got__d__err__d__n
mov dword [esp + 0xc], eax
xor eax, eax
cmp edx, 5
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xab4
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov byte [ebp - 0x198], 0
call fcn.00465a80
lea edx, [ebp - 0x1b1]
lea ecx, [ebp - 0x19c]
mov dword [esp + 4], edx
mov dword [esp], ecx
call dword [sym.imp.msvcrt.dll_strcmp]
lea edx, [ebp - 0x19c]
lea ecx, [ebp - 0x1b1]
mov dword [esp + 4], str.expected__s__received__s_n
test eax, eax
mov dword [esp + 0xc], edx
sete al
mov dword [esp + 8], ecx
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp], edi
lea edi, [ebp - 0x18c]
call sub.ws2_32.dll_closesocket
sub esp, 4
mov dword [esp], ebx
call sub.ws2_32.dll_closesocket
sub esp, 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x11
mov dword [esp + 4], 2
mov dword [esp], 2
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov ebx, eax
mov dword [ebp - 0x1cc], eax
mov dword [esp + 4], 0xabc
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
call fcn.00465cf0
xor eax, eax
mov ecx, 0x5d
rep stosd dword es:[edi], eax
mov dword [esp + 4], 0xabf
mov edi, ebx
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea eax, [ebp - 0x18c]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x20]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.ws2_32.dll_WSADuplicateSocketA
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.WSADuplicateSocketA_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
lea eax, [ebp - 0x18c]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.ws2_32.dll_WSASocketA
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0xac3
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.WSASocketA_should_have_succeeded_n
setne al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp], str.127.0.0.1
xor ecx, ecx
mov eax, 2
mov word [ebp - 0x19e], cx
mov dword [ebp - 0x1aa], 0
mov dword [ebp - 0x1a6], 0
mov dword [ebp - 0x1a2], 0
mov word [ebp - 0x1ac], ax
call sub.ws2_32.dll_inet_addr
sub esp, 4
mov dword [ebp - 0x1a8], eax
mov dword [esp + 4], 0xac8
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea eax, [ebp - 0x1ac]
mov dword [esp], edi
mov dword [esp + 8], 0x10
mov dword [esp + 4], eax
call sub.ws2_32.dll_bind
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.bind_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xace
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x1bc], 0x10
call fcn.00465a80
lea eax, [ebp - 0x1bc]
mov dword [esp], edi
mov dword [esp + 8], eax
lea eax, [ebp - 0x1ac]
mov dword [esp + 4], eax
call sub.ws2_32.dll_getsockname
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str.getsockname_should_have_worked_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esp + 4], 0xad0
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
movzx eax, word [ebp - 0x1aa]
mov dword [esp + 4], str.socket_port_should_be___0_n
mov dword [esp], eax
call fcn.00465cf0
lea eax, [ebp - 0x1b8]
mov dword [esp], edi
mov dword [esp + 8], eax
mov dword [esp + 4], 0x8004667e
mov dword [ebp - 0x1b8], 0
call sub.ws2_32.dll_ioctlsocket
lea eax, [ebp - 0x1ac]
mov dword [ebp - 0x1bc], 0x10
sub esp, 0xc
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x1b1]
mov dword [esp], edi
mov edi, 0x470694
mov dword [esp + 0x14], 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 5
mov dword [esp + 4], eax
call sub.ws2_32.dll_sendto
sub esp, 0x18
mov dword [ebp - 0x1c0], eax
mov dword [esp + 4], 0xad6
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
call sub.ws2_32.dll_WSAGetLastError
mov edx, dword [ebp - 0x1c0]
mov dword [esp + 4], str.got__d__err__d__n
mov dword [esp + 0xc], eax
xor eax, eax
cmp edx, 5
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00465cf0
mov dword [esi + 0x34], 0xdeadbeef
mov ecx, 5
mov esi, dword [str.windows]
mov dword [ebp - 0x1bc], 0x10
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00465e60
jmp 0x429849
mov dword [esp + 4], 0xadc
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
call fcn.00465a80
lea eax, [ebp - 0x1bc]
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x1ac]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x19c]
mov dword [esp + 8], 5
mov dword [esp + 4], eax
mov dword [esp], ebx
call sub.ws2_32.dll_recvfrom
sub esp, 0x18
cmp eax, 0xffffffff
sete al
mov dword [esp + 4], str.recvfrom_should_have_failed_n
movzx eax, al
mov dword [esp], eax
call fcn.00465cf0
call sub.ws2_32.dll_WSAGetLastError
mov dword [esp + 4], 0xadf
mov dword [esp], str..._wine_dlls_ws2_32_tests_sock.c
mov esi, eax
call fcn.00465a80
xor eax, eax
cmp esi, 0x2726
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.expected_10022__received__d_n
mov dword [esp], eax
call fcn.00465cf0
call fcn.00465eb0
call fcn.00465e90
test eax, eax
jne 0x4297a4
mov dword [esp], ebx
call sub.ws2_32.dll_closesocket
mov eax, dword [ebp - 0x1cc]
sub esp, 4
mov dword [esp], eax
call sub.ws2_32.dll_closesocket
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret