Function at 0x5a5570
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ecx
mov dword [ebp - 4], 0
cmp dword [0x6aedb4], 0
jne 0x5a55a6
push str.LM_NO_NETWORK
call fcn.005d9e10
add esp, 4
neg eax
sbb eax, eax
neg eax
mov dword [0x6aedb8], eax
mov dword [0x6aedb4], 1
cmp dword [0x6aedb8], 0
je 0x5a55b6
xor eax, eax
jmp 0x5a5ce0
cmp dword [0x6aeda0], 0x20
jb 0x5a55ef
cmp dword [0x6aedac], 0
jne 0x5a55e5
push 0x6b2680
movzx eax, word [0x6b2814]
push eax
call dword [0x6aed60]
mov dword [0x6aedac], 1
mov eax, 1
jmp 0x5a5ce0
push 0x8000
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
mov dword [ebp - 4], eax
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x5a562f
push str.WS2_32.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x6aeda0], eax
cmp dword [0x6aeda0], 0x20
jb 0x5a562f
mov dword [0x6aed9c], 1
jmp 0x5a566f
push str.WSOCK32.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x6aeda0], eax
cmp dword [0x6aeda0], 0x20
jae 0x5a5665
mov dword [0x6b2810], 0
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
xor eax, eax
jmp 0x5a5ce0
mov dword [0x6aed9c], 0
push str.icmp.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x6aeda4], eax
cmp dword [0x6aeda4], 0x20
jae 0x5a5694
mov dword [0x6b2664], 0
jmp 0x5a56d8
push str.IcmpCreateFile
mov edx, dword [0x6aeda4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed18], eax
push str.IcmpSendEcho
mov eax, dword [0x6aeda4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed40], eax
push str.IcmpCloseHandle
mov ecx, dword [0x6aeda4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed24], eax
push str.send
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed84], eax
push str.ioctlsocket
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed34], eax
push str.WSAGetLastError
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed00], eax
push str.recv
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed44], eax
push str.closesocket
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed5c], eax
push str.getservbyname
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed3c], eax
push str.gethostbyname
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed88], eax
push str.gethostname
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed64], eax
push str.WSAStartup
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed60], eax
push str.WSACleanup
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aecf8], eax
push str.htons
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed80], eax
push str.ntohl
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed2c], eax
push str.connect
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed54], eax
push str.socket
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed30], eax
push str.select
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed68], eax
push str.ntohs
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed70], eax
push str.__WSAFDIsSet
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed90], eax
push str.bind
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed08], eax
push str.getsockname
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed04], eax
push str.accept
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed8c], eax
push str.listen
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed28], eax
push str.WSASetLastError
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed74], eax
push str.setsockopt
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aecfc], eax
push str.sendto
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed6c], eax
push str.recvfrom
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed14], eax
push str.htonl
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed4c], eax
push str.shutdown
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed58], eax
push str.getsockopt
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed0c], eax
push str.gethostbyaddr
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed7c], eax
push str.EnumProtocolsA
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed38], eax
push str.GetAddressByNameA
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed10], eax
cmp dword [0x6aed9c], 0
je 0x5a5a5b
mov eax, dword [0x6aed68]
mov dword [0x6aed50], eax
mov ecx, 2
mov word [0x6b2814], cx
push str.WSACreateEvent
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed78], eax
push str.WSAEventSelect
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed98], eax
push str.WSAWaitForMultipleEvents
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aecf4], eax
push str.WSAEnumNetworkEvents
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed48], eax
push str.WSALookupServiceBeginA
mov eax, dword [0x6aeda0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed94], eax
push str.WSALookupServiceNextA
mov ecx, dword [0x6aeda0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed20], eax
push str.WSALookupServiceEnd
mov edx, dword [0x6aeda0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6aed1c], eax
jmp 0x5a5a71
mov eax, dword [0x6aed68]
mov dword [0x6aed50], eax
mov ecx, 0x101
mov word [0x6b2814], cx
cmp dword [0x6aed84], 0
je 0x5a5be2
cmp dword [0x6aed34], 0
je 0x5a5be2
cmp dword [0x6aed00], 0
je 0x5a5be2
cmp dword [0x6aed44], 0
je 0x5a5be2
cmp dword [0x6aed5c], 0
je 0x5a5be2
cmp dword [0x6aed3c], 0
je 0x5a5be2
cmp dword [0x6aed88], 0
je 0x5a5be2
cmp dword [0x6aed64], 0
je 0x5a5be2
cmp dword [0x6aed60], 0
je 0x5a5be2
cmp dword [0x6aecf8], 0
je 0x5a5be2
cmp dword [0x6aed80], 0
je 0x5a5be2
cmp dword [0x6aed54], 0
je 0x5a5be2
cmp dword [0x6aed30], 0
je 0x5a5be2
cmp dword [0x6aed50], 0
je 0x5a5be2
cmp dword [0x6aed90], 0
je 0x5a5be2
cmp dword [0x6aed70], 0
je 0x5a5be2
cmp dword [0x6aed08], 0
je 0x5a5be2
cmp dword [0x6aed04], 0
je 0x5a5be2
cmp dword [0x6aed2c], 0
je 0x5a5be2
cmp dword [0x6aed8c], 0
je 0x5a5be2
cmp dword [0x6aed28], 0
je 0x5a5be2
cmp dword [0x6aed74], 0
je 0x5a5be2
cmp dword [0x6aecfc], 0
je 0x5a5be2
cmp dword [0x6aed6c], 0
je 0x5a5be2
cmp dword [0x6aed14], 0
je 0x5a5be2
cmp dword [0x6aed4c], 0
je 0x5a5be2
cmp dword [0x6aed58], 0
je 0x5a5be2
cmp dword [0x6aed0c], 0
je 0x5a5be2
cmp dword [0x6aed7c], 0
je 0x5a5be2
cmp dword [0x6aed9c], 0
jne 0x5a5bd0
cmp dword [0x6aed38], 0
je 0x5a5be2
cmp dword [0x6aed9c], 0
jne 0x5a5c18
cmp dword [0x6aed10], 0
jne 0x5a5c18
cmp dword [ebp + 8], 0
je 0x5a5c07
push 0x10010
mov edx, dword [str.FlexNet_WINSOCK_error]
push edx
mov eax, dword [str.WINSOCK_usage_error_detected.__You_must_make_sure_your_license_file_does_only_node_locking__or_you_must_have_a_WINSOCK.DLL_in_order_to_communicate_with_FlexNet_license_server.]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
xor eax, eax
jmp 0x5a5ce0
cmp dword [0x6aed9c], 0
je 0x5a5c93
cmp dword [0x6aed78], 0
je 0x5a5c60
cmp dword [0x6aed98], 0
je 0x5a5c60
cmp dword [0x6aecf4], 0
je 0x5a5c60
cmp dword [0x6aed48], 0
je 0x5a5c60
cmp dword [0x6aed94], 0
je 0x5a5c60
cmp dword [0x6aed20], 0
je 0x5a5c60
cmp dword [0x6aed1c], 0
jne 0x5a5c93
cmp dword [ebp + 8], 0
je 0x5a5c85
push 0x10010
mov edx, dword [str.FlexNet_WINSOCK_error]
push edx
mov eax, dword [str.WINSOCK_usage_error_detected.__You_must_make_sure_your_license_file_does_only_node_locking__or_you_must_have_a_WINSOCK.DLL_in_order_to_communicate_with_FlexNet_license_server.]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
xor eax, eax
jmp 0x5a5ce0
mov dword [0x6b2810], 1
push 0x6b2680
movzx edx, word [0x6b2814]
push edx
call dword [0x6aed60]
mov dword [0x6ad74c], 0x400
mov eax, dword [0x6aeda8]
add eax, 1
mov dword [0x6aeda8], eax
mov dword [0x6aedac], 1
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
mov eax, 1
mov esp, ebp
pop ebp
ret