Function at 0x527720
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x14
push ecx
push edi
lea edi, [esp + 8]
mov eax, 0xcccccccc
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop edi
pop ecx
cmp byte [0x5ad5d0], 0
je 0x52774d
mov al, byte [0x5ad5d1]
lea esp, [ebp - 4]
pop ebx
pop ebp
ret
mov byte [0x5ad5d0], 1
push str.wsock32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x58c958], eax
push str.ws2_32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x58c95c], eax
cmp dword [0x58c958], 0
je 0x527786
cmp dword [0x58c95c], 0
jne 0x52778e
mov al, 0
lea esp, [ebp - 4]
pop ebx
pop ebp
ret
push str.WSAGetLastError
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c94c], eax
push str.WSAStartup
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c954], eax
push str.WSACleanup
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c950], eax
push str.__WSAFDIsSet
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c948], eax
cmp dword [0x58c94c], 0
je 0x52780a
cmp dword [0x58c954], 0
je 0x52780a
cmp dword [0x58c950], 0
je 0x52780a
cmp dword [0x58c948], 0
jne 0x527812
mov al, 0
lea esp, [ebp - 4]
pop ebx
pop ebp
ret
push str.gethostbyname
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8dc], eax
push str.htons
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8e8], eax
push str.htonl
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8ec], eax
push str.ntohs
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8f0], eax
push str.ntohl
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8f4], eax
push str.inet_ntoa
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c904], eax
push str.select
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c908], eax
push str.send
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c914], eax
push str.bind
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8f8], eax
push str.connect
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8e4], eax
push str.listen
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8fc], eax
push str.accept
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c91c], eax
push str.recv
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c918], eax
push str.socket
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8e0], eax
push str.getpeername
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c900], eax
push str.getsockname
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c928], eax
push str.recvfrom
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c920], eax
push str.sendto
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c924], eax
push str.inet_addr
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c8d8], eax
call fcn.0052fe80
cmp al, 0
je 0x5279eb
push str.getsockopt
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c92c], eax
push str.setsockopt
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c944], eax
jmp 0x527a17
push str.getsockopt
push dword [0x58c95c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c92c], eax
push str.setsockopt
push dword [0x58c95c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c944], eax
push str.getaddrinfo
push dword [0x58c95c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c934], eax
push str.freeaddrinfo
push dword [0x58c95c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c938], eax
mov dword [0x58c93c], 0x527700
push str.ioctlsocket
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c910], eax
push str.ioctlsocket
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c940], eax
push str.closesocket
push dword [0x58c958]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x58c90c], eax
push 0x58c960
push 0x101
call dword [0x58c954]
mov byte [ebp - 5], 0
mov byte [ebp - 6], 0
mov byte [ebp - 7], 0
mov byte [ebp - 8], 0
mov byte [ebp - 9], 0
mov byte [ebp - 0xa], 0
mov byte [ebp - 0xb], 0
mov byte [ebp - 0xc], 0
mov byte [ebp - 0xd], 0
mov byte [ebp - 0xe], 0
mov byte [ebp - 0xf], 0
mov byte [ebp - 0x10], 0
mov byte [ebp - 0x11], 0
mov byte [ebp - 0x12], 0
mov byte [ebp - 0x13], 0
mov byte [ebp - 0x14], 0
mov byte [ebp - 0x15], 0
mov bl, 0
mov cl, 0
mov dl, 0
mov al, 0
cmp dword [0x58c8d8], 0
je 0x527aff
cmp dword [0x58c8dc], 0
je 0x527aff
mov al, 1
cmp al, 0
je 0x527b0e
cmp dword [0x58c8e0], 0
je 0x527b0e
mov dl, 1
cmp dl, 0
je 0x527b1e
cmp dword [0x58c8e4], 0
je 0x527b1e
mov cl, 1
cmp cl, 0
je 0x527b2e
cmp dword [0x58c8e8], 0
je 0x527b2e
mov bl, 1
cmp bl, 0
je 0x527b40
cmp dword [0x58c8ec], 0
je 0x527b40
mov byte [ebp - 0x15], 1
cmp byte [ebp - 0x15], 0
je 0x527b53
cmp dword [0x58c8f8], 0
je 0x527b53
mov byte [ebp - 0x14], 1
cmp byte [ebp - 0x14], 0
je 0x527b66
cmp dword [0x58c8fc], 0
je 0x527b66
mov byte [ebp - 0x13], 1
cmp byte [ebp - 0x13], 0
je 0x527b79
cmp dword [0x58c900], 0
je 0x527b79
mov byte [ebp - 0x12], 1
cmp byte [ebp - 0x12], 0
je 0x527b8c
cmp dword [0x58c904], 0
je 0x527b8c
mov byte [ebp - 0x11], 1
cmp byte [ebp - 0x11], 0
je 0x527b9f
cmp dword [0x58c908], 0
je 0x527b9f
mov byte [ebp - 0x10], 1
cmp byte [ebp - 0x10], 0
je 0x527bb2
cmp dword [0x58c90c], 0
je 0x527bb2
mov byte [ebp - 0xf], 1
cmp byte [ebp - 0xf], 0
je 0x527bc5
cmp dword [0x58c910], 0
je 0x527bc5
mov byte [ebp - 0xe], 1
cmp byte [ebp - 0xe], 0
je 0x527bd8
cmp dword [0x58c914], 0
je 0x527bd8
mov byte [ebp - 0xd], 1
cmp byte [ebp - 0xd], 0
je 0x527beb
cmp dword [0x58c918], 0
je 0x527beb
mov byte [ebp - 0xc], 1
cmp byte [ebp - 0xc], 0
je 0x527bfe
cmp dword [0x58c91c], 0
je 0x527bfe
mov byte [ebp - 0xb], 1
cmp byte [ebp - 0xb], 0
je 0x527c11
cmp dword [0x58c920], 0
je 0x527c11
mov byte [ebp - 0xa], 1
cmp byte [ebp - 0xa], 0
je 0x527c24
cmp dword [0x58c924], 0
je 0x527c24
mov byte [ebp - 9], 1
cmp byte [ebp - 9], 0
je 0x527c37
cmp dword [0x58c928], 0
je 0x527c37
mov byte [ebp - 8], 1
cmp byte [ebp - 8], 0
je 0x527c4a
cmp dword [0x58c92c], 0
je 0x527c4a
mov byte [ebp - 7], 1
cmp byte [ebp - 7], 0
je 0x527c5d
cmp dword [0x58c944], 0
je 0x527c5d
mov byte [ebp - 6], 1
cmp byte [ebp - 6], 0
je 0x527c70
cmp dword [0x58c940], 0
je 0x527c70
mov byte [ebp - 5], 1
mov al, byte [ebp - 5]
mov byte [0x5ad5d1], al
mov al, byte [0x5ad5d1]
lea esp, [ebp - 4]
pop ebx
pop ebp
ret