Function at 0x10040a10
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
mov eax, dword [0x10112018]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 0x10]
push edi
mov edi, ecx
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x118], ecx
push ebx
mov ecx, edi
mov dword [ebp - 0x114], eax
call sym.ACE.dll_public:_int___thiscall_ACE_MEM_Addr::same_host_class_ACE_INET_Addr_const__
test eax, eax
jne 0x10040b15
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call dword [sym.imp.MSVCR100.dll__errno]
mov eax, dword [eax]
mov dword [ebp - 0x10c], esi
test eax, eax
je 0x10040a70
mov dword [ebp - 0x10c], eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
mov edx, dword [ebp - 0x10c]
mov esi, eax
mov dword [esi + 0x14c], edx
mov byte [esi + 0x13c], 1
mov dword [esi + 0x140], str.MEM_Connector.cpp
mov dword [esi + 0x144], 0x50
mov dword [esi + 0x148], 0xffffffff
movzx ecx, byte [edi + 0x37]
mov ax, word [edi + 0x36]
shl ax, 8
or ax, cx
movzx edx, ax
lea ecx, [edi + 0xc]
mov dword [ebp - 0x114], edx
call sym.ACE.dll_public:_char_const____thiscall_ACE_INET_Addr::get_host_name_void_const
movzx ecx, word [ebx + 0xe]
movzx edx, byte [ebx + 0xf]
shl cx, 8
or cx, dx
movzx edx, word [ebp - 0x114]
movzx ecx, cx
push edx
push eax
push ecx
mov ecx, ebx
call sym.ACE.dll_public:_char_const____thiscall_ACE_INET_Addr::get_host_name_void_const
push eax
push str.__P_t__MEM_Connector_cant_connect_to__C:_d_which_is_not_a_local_endpoint__local_address_is__C:_d__n
push 0x80
push esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0x1c
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
mov cx, word [ebx + 0xe]
movzx edx, byte [ebx + 0xf]
shl cx, 8
or cx, dx
mov edx, dword [ebp + 0x1c]
push 0
movzx eax, cx
mov ecx, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp - 0x118]
rol ax, 8
movzx eax, ax
push ecx
push edx
mov word [edi + 0x1a], ax
mov word [edi + 0x36], ax
push esi
lea eax, [edi + 0x28]
push eax
lea eax, [ebp - 0x10c]
or ebx, 0xffffffff
push eax
mov ecx, edi
mov dword [ebp - 0x10c], ebx
call sym.ACE.dll_public:_int___thiscall_ACE_SOCK_Connector::connect_class_ACE_SOCK_Stream___class_ACE_Addr_const___class_ACE_Time_Value_const___class_ACE_Addr_const___int__int__int__int_
cmp eax, ebx
jne 0x10040bd7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call dword [sym.imp.MSVCR100.dll__errno]
mov eax, dword [eax]
test eax, eax
je 0x10040b81
mov esi, eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
push str.ACE_MEM_Connector::connect
push 0x100a50fc
push 4
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.MEM_Connector.cpp
mov dword [eax + 0x144], 0x5e
mov dword [eax + 0x148], ebx
mov dword [eax + 0x14c], esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0x10
pop edi
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
mov esi, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x114]
lea edx, [ebp - 0x118]
push edx
push 0x8004667e
push esi
mov dword [ecx], esi
mov dword [ebp - 0x118], 0
call dword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, ebx
mov ebx, dword [sym.imp.MSVCR100.dll__errno]
jne 0x10040c22
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x10c], eax
call ebx
mov ecx, dword [ebp - 0x10c]
mov dword [eax], ecx
push 0
push 2
lea edx, [ebp - 0x110]
push edx
push esi
mov dword [ebp - 0x110], 0
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x10040cb7
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call ebx
mov dword [eax], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call ebx
mov eax, dword [eax]
test eax, eax
je 0x10040c61
mov esi, eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
push str.ACE_MEM_Connector::connect_error_receiving_strategy_n
push 4
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.MEM_Connector.cpp
mov dword [eax + 0x144], 0x70
mov dword [eax + 0x148], 0xffffffff
mov dword [eax + 0x14c], esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0xc
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
mov eax, 1
cmp dword [edi + 0x64], eax
jne 0x10040cca
cmp word [ebp - 0x110], ax
je 0x10040cd4
mov dword [ebp - 0x110], 0
push 0
push 2
lea eax, [ebp - 0x110]
push eax
push esi
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
jne 0x10040d5f
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call ebx
mov dword [eax], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call ebx
mov eax, dword [eax]
test eax, eax
je 0x10040d09
mov esi, eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
push str.ACE_MEM_Connector::connect_error_sending_strategy_n
push 4
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.MEM_Connector.cpp
mov dword [eax + 0x144], 0x7d
mov dword [eax + 0x148], 0xffffffff
mov dword [eax + 0x14c], esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0xc
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
push 0
push 2
lea ecx, [ebp - 0x11c]
push ecx
push esi
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x10040ddf
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call ebx
mov dword [eax], esi
call sym.ACE.dll_public:_static_int___cdecl_ACE_Log_Msg::last_error_adapter_void_
mov esi, eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
push str.ACE_MEM_Connector::connect_error_receiving_shm_filename_length_n
push 4
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.MEM_Connector.cpp
mov dword [eax + 0x144], 0x84
mov dword [eax + 0x148], 0xffffffff
mov dword [eax + 0x14c], esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0xc
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
movsx eax, word [ebp - 0x11c]
push 0
push eax
lea edx, [ebp - 0x108]
push edx
push esi
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x10040e65
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call ebx
mov dword [eax], esi
call sym.ACE.dll_public:_static_int___cdecl_ACE_Log_Msg::last_error_adapter_void_
mov esi, eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
push str.ACE_MEM_Connector::connect_error_receiving_shm_filename._n
push 4
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.MEM_Connector.cpp
mov dword [eax + 0x144], 0x89
mov dword [eax + 0x148], 0xffffffff
mov dword [eax + 0x14c], esi
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0xc
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c
movsx eax, word [ebp - 0x110]
add edi, 0x44
push edi
push eax
lea ecx, [ebp - 0x108]
push ecx
mov ecx, dword [ebp - 0x114]
call sym.ACE.dll_public:_int___thiscall_ACE_MEM_IO::init_char_const___enum_ACE_MEM_IO::Signal_Strategy__class_ACE_MMAP_Memory_Pool_Options__
mov ecx, dword [ebp - 4]
inc eax
neg eax
sbb eax, eax
pop edi
neg eax
pop esi
xor ecx, ebp
dec eax
pop ebx
call fcn.1009acfd
mov esp, ebp
pop ebp
ret 0x1c