Function at 0x415eeb
Capabilities:
Create thread
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
push ebx
push esi
push edi
push 0x71
push 4
mov esi, ecx
push 2
call dword [sym.imp.WS2_32.dll_socket]
or edi, 0xffffffff
mov dword [esi + 0x6c], eax
cmp eax, edi
jne 0x415f2e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.CIMDBSyncServer_socket_failed_with:__d
push 0x7d1
push 0
call fcn.00426a9a
add esp, 0x10
mov ebx, edi
jmp 0x4160e4
mov ebx, dword [sym.imp.WS2_32.dll_setsockopt]
lea ecx, [ebp - 4]
push 4
push ecx
push 4
push 0xffff
push eax
mov dword [ebp - 4], 1
call ebx
cmp eax, edi
jne 0x415f5d
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.CIMDBSyncServer_setsockopt_SO_REUSEADDR_failed_with:__d
jmp 0x415f18
mov ax, word [0x4488c0]
mov word [ebp - 0x38], 2
push eax
call dword [sym.imp.WS2_32.dll_htons]
push str.224.0.0.100
mov word [ebp - 0x36], ax
call dword [sym.imp.WS2_32.dll_inet_addr]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x38]
push 0x10
push eax
push dword [esi + 0x6c]
call dword [sym.imp.WS2_32.dll_bind]
cmp eax, edi
jne 0x415fa6
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.CIMDBSyncServer_bind_failed_with:__d
jmp 0x415f18
and dword [ebp - 8], 0
lea eax, [ebp - 8]
push 4
push eax
push 0x3f0
push 0x71
push dword [esi + 0x6c]
call ebx
push bind
push dword [esi + 0x6c]
call dword [sym.imp.WS2_32.dll_listen]
cmp eax, edi
jne 0x415fdf
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.CIMDBSyncServer_listen_failed_with:__d
jmp 0x415f18
mov ecx, esi
call fcn.00415e04
test al, al
jne 0x4160e2
mov ebx, dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov eax, dword [esi + 0x6c]
cmp eax, edi
je 0x4160e2
lea ecx, [ebp - 0xc]
mov dword [ebp - 0xc], 0x10
push ecx
lea ecx, [ebp - 0x48]
push ecx
push eax
call dword [sym.imp.WS2_32.dll_accept]
cmp eax, edi
mov dword [esi + 0x70], eax
je 0x4160c2
push dword [ebp - 0x44]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
push str.CIMDBSyncServer::IPPROTO_RM_Run___accept_a_connection_from__s
push 5
push 0
call fcn.00426a9a
mov eax, dword [esi + 0x70]
add esp, 0x10
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x10]
push eax
xor eax, eax
lea ecx, [ebp - 0x18]
push eax
push ecx
push 0x4165c7
push eax
push eax
mov dword [ebp - 0x18], esi
call dword [sym.imp.KERNEL32.dll_CreateThread]
test eax, eax
jne 0x416085
push dword [esi + 0x70]
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [esi + 0x70], edi
call ebx
push eax
push str.CIMDBSyncServer_create_thread_failed_with:__d
push 0x7d1
push 0
call fcn.00426a9a
add esp, 0x10
jmp 0x4160b1
mov ecx, dword [esi + 0x70]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], ecx
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [esi + 0x7c]
call fcn.0041683c
mov dword [esi + 0x70], edi
test byte [esi + 0x88], 1
jne 0x4160b1
mov ecx, esi
call fcn.00416508
mov ecx, esi
call fcn.00415e04
test al, al
je 0x415ff4
jmp 0x4160e2
call ebx
cmp eax, 0x2714
je 0x4160e2
call ebx
push eax
push str.CIMDBSyncServer_accept_failed_with:__d
push 0x7d1
push 0
call fcn.00426a9a
add esp, 0x10
xor ebx, ebx
mov eax, dword [esi + 0x6c]
cmp eax, edi
je 0x4160f5
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [esi + 0x6c], edi
mov eax, dword [esi + 0x70]
cmp eax, edi
je 0x416106
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [esi + 0x70], edi
mov ecx, esi
call fcn.0041641f
pop edi
mov eax, ebx
pop esi
pop ebx
leave
ret