Function at 0x4fc81c
Capabilities:
Check for time delay via gettickcount
Get local ipv4 addresses
Get socket information
Get socket status
Receive data
Receive data on socket
Set socket configuration

Disassembly:
push ebp
sub esp, 0x5a8
lea ebp, [esp - 4]
mov eax, dword [0x70b744]
xor eax, ebp
mov dword [ebp + 0x5a8], eax
push 0x58c
mov eax, 0x5dc8ad
call fcn.005234e3
mov esi, ecx
mov dword [ebp - 0x30], esi
mov eax, dword [ebp + 0x5b4]
mov dword [ebp - 0x34], eax
push 0x4c1b06
call fcn.005261db
xor ebx, ebx
mov dword [ebp - 0x38], ebx
xor eax, eax
cmp dword [esi + 0xc], ebx
setne al
inc eax
mov dword [ebp - 0x18], eax
push 0x10
push ebx
lea eax, [ebp + 0x20]
push eax
call fcn.00522720
push 0x10
push ebx
lea eax, [ebp + 0x10]
push eax
call fcn.00522720
add esp, 0x1c
push ebx
push dword [ebp - 0x18]
push 2
call dword [sym.imp.WSOCK32.dll_socket]
mov dword [esi], eax
cmp eax, 0xffffffff
jne 0x4fc8c7
push ebx
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x38], esp
push ebx
push str.NC.SockList.NoSocket
call fcn.004ac9bc
mov dword [ebp - 4], ebx
or dword [ebp - 4], 0xffffffff
mov ecx, 0x721f30
call fcn.00430cd8
or eax, 0xffffffff
jmp 0x4fda45
xor edi, edi
inc edi
cmp dword [ebp - 0x18], edi
jne 0x4fc8e2
mov dword [ebp - 0x18], edi
push 4
lea ecx, [ebp - 0x18]
push ecx
push edi
push 6
push eax
call dword [sym.imp.WSOCK32.dll_setsockopt]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x5c], 0x10
mov word [ebp + 0x20], 2
mov ax, word [esi + 0x14]
cmp ax, word [0x72239a]
jne 0x4fc90c
push str.127.0.0.1
call dword [sym.imp.WSOCK32.dll_inet_addr]
jmp 0x4fc913
push ebx
call dword [sym.imp.WSOCK32.dll_htonl]
mov dword [ebp + 0x24], eax
movzx eax, word [esi + 0x14]
push eax
call dword [sym.imp.WSOCK32.dll_htons]
mov word [ebp + 0x22], ax
cmp dword [ebp - 0x34], ebx
je 0x4fda42
cmp dword [ebp + 0x5b8], ebx
je 0x4fc942
cmp dword [ebp + 0x5b8], edi
jne 0x4fda42
mov dword [esi + 8], edi
test byte [ebp + 0x5bc], 8
je 0x4fc96f
mov dword [ebp - 0x18], edi
push 4
lea eax, [ebp - 0x18]
push eax
push 4
push 0xffff
push dword [esi]
call dword [sym.imp.WSOCK32.dll_setsockopt]
cmp eax, 0xffffffff
je 0x4fc8bf
push 0x10
lea eax, [ebp + 0x20]
push eax
push dword [esi]
call dword [sym.imp.WSOCK32.dll_bind]
cmp eax, 0xffffffff
jne 0x4fca50
mov dword [ebp - 0x1c], ebx
cmp dword [esi + 8], edi
jne 0x4fca50
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov ecx, dword [ebp - 0x1c]
add dword [ebp - 0x1c], 0x3e8
push ebx
cmp ecx, 0x2710
je 0x4fcb66
cmp eax, 0x2740
je 0x4fcbdd
push str.StartWT.Bind.Failed_P
lea ecx, [ebp + 0x578]
call fcn.004ac9bc
mov dword [ebp - 4], 7
push ebx
push ebx
movzx eax, word [esi + 0x14]
push eax
lea ecx, [ebp - 0xd8]
call fcn.004ac6f7
mov byte [ebp - 4], 8
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x20], esp
push eax
lea eax, [ebp + 0x578]
push eax
push ecx
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 9
mov byte [ebp - 4], 8
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xd8]
call fcn.004ac66a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x578]
call fcn.004ac66a
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x10
lea eax, [ebp + 0x20]
push eax
push dword [esi]
call dword [sym.imp.WSOCK32.dll_bind]
cmp eax, 0xffffffff
je 0x4fc989
mov dword [esi + 8], 2
push ebx
push str.StartWT.Listening_P
lea ecx, [ebp - 0xa8]
call fcn.004ac9bc
mov dword [ebp - 4], 0xa
push ebx
push ebx
movzx eax, word [esi + 0x14]
push eax
lea ecx, [ebp - 0xd8]
call fcn.004ac6f7
mov byte [ebp - 4], 0xb
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x20], esp
push eax
lea eax, [ebp - 0xa8]
push eax
push ecx
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 0xb
mov ecx, 0x721f18
call fcn.004112c4
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xd8]
call fcn.004ac66a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa8]
call fcn.004ac66a
mov eax, dword [esi + 0xc]
cmp eax, ebx
jne 0x4fd8da
push dword [esi + 0x10]
push dword [esi]
call dword [sym.imp.WSOCK32.dll_listen]
cmp eax, 0xffffffff
je 0x4fc8bf
cmp word [esi + 0x14], 0x50
mov eax, dword [0x722304]
je 0x4fcafe
mov eax, dword [0x722308]
mov dword [ebp - 0x1c], eax
cmp dword [esi + 8], 2
jne 0x4fda3d
mov dword [ebp - 4], 0xd
movzx eax, word [esi + 0x14]
cmp ax, 0x1732
je 0x4fd78a
cmp ax, word [0x72239a]
je 0x4fd78a
cmp ax, 0x34b
je 0x4fd78a
cmp ax, 0x50
jne 0x4fd703
mov dword [ebp - 0x550], ebx
xor eax, eax
mov dword [ebp - 0x6c], eax
cmp eax, ebx
jae 0x4fcc43
mov ecx, dword [ebp + eax*4 - 0x54c]
cmp ecx, dword [esi]
je 0x4fcc41
inc eax
jmp 0x4fcb49
push str.StartWT.Bind.FinalFailure_P
lea ecx, [ebp - 0xa8]
call fcn.004ac9bc
mov dword [ebp - 4], edi
push ebx
push ebx
movzx eax, word [esi + 0x14]
push eax
lea ecx, [ebp - 0x108]
call fcn.004ac6f7
mov byte [ebp - 4], 2
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x38], esp
push eax
lea eax, [ebp - 0xa8]
push eax
push ecx
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 3
mov byte [ebp - 4], 2
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x108]
call fcn.004ac66a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa8]
call fcn.004ac66a
jmp 0x4fc8bf
push str.StartWT.PortInUse_P
lea ecx, [ebp - 0xa8]
call fcn.004ac9bc
mov dword [ebp - 4], 4
push ebx
push ebx
movzx eax, word [esi + 0x14]
push eax
lea ecx, [ebp - 0xd8]
call fcn.004ac6f7
mov byte [ebp - 4], 5
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x38], esp
push eax
lea eax, [ebp - 0xa8]
push eax
push ecx
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 6
mov byte [ebp - 4], 5
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xd8]
jmp 0x4fcbc4
cmp eax, ebx
jne 0x4fcc59
cmp ebx, 0x40
jae 0x4fcc59
mov ecx, dword [esi]
mov dword [ebp + eax*4 - 0x54c], ecx
inc dword [ebp - 0x550]
lea eax, [ebp - 0x128]
push eax
lea ecx, [esi + 0x34]
call fcn.004f29b4
mov ecx, dword [eax]
mov dword [ebp - 0x58], ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x118]
push eax
lea ecx, [esi + 0x34]
call fcn.004eaa4f
push eax
lea ecx, [ebp - 0x58]
call fcn.004cdc46
test al, al
jne 0x4fcce4
xor edi, edi
mov dword [ebp - 0x68], edi
cmp edi, dword [ebp - 0x550]
jae 0x4fccb8
lea ecx, [ebp - 0x58]
call fcn.004cdcec
mov ecx, dword [ebp + edi*4 - 0x54c]
cmp ecx, dword [eax]
je 0x4fccb2
inc edi
jmp 0x4fcc91
cmp edi, dword [ebp - 0x550]
jne 0x4fccda
cmp dword [ebp - 0x550], 0x40
jae 0x4fccda
lea ecx, [ebp - 0x58]
call fcn.004cdcec
mov eax, dword [eax]
mov dword [ebp + edi*4 - 0x54c], eax
inc dword [ebp - 0x550]
lea ecx, [ebp - 0x58]
call fcn.004cdc1e
jmp 0x4fcc73
push ebx
push ebx
push ebx
lea eax, [ebp - 0x550]
push eax
push ebx
call dword [sym.imp.WSOCK32.dll_select]
cmp eax, 0xffffffff
jne 0x4fce97
mov edi, 0x721f90
mov ecx, edi
call fcn.004cc25d
sub eax, dword [0x709ef4]
cmp eax, 0x1e
jbe 0x4fcdfb
mov ecx, edi
call fcn.004cc25d
mov dword [0x709ef4], eax
mov dword [0x75c818], ebx
push ebx
push ebx
lea ecx, [ebp - 0x194]
call fcn.004ac6f7
mov byte [ebp - 4], 0xf
push ebx
push str._Not_logged_Errors:
lea ecx, [ebp - 0x404]
call fcn.004ac9bc
mov byte [ebp - 4], 0x10
push ebx
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
push eax
lea ecx, [ebp - 0x398]
call fcn.004ac6f7
mov byte [ebp - 4], 0x11
push ebx
push str.ncSocklist.Error.On.select:
lea ecx, [ebp - 0xa8]
call fcn.004ac9bc
mov byte [ebp - 4], 0x12
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x20], esp
lea ecx, [ebp - 0x194]
push ecx
lea ecx, [ebp - 0x404]
push ecx
lea ecx, [ebp - 0x398]
push ecx
lea ecx, [ebp - 0xa8]
push ecx
push eax
call fcn.004adcdd
add esp, 0x14
mov byte [ebp - 4], 0x13
mov byte [ebp - 4], 0x12
mov ecx, 0x721f30
call fcn.00430cd8
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xa8]
call fcn.004ac66a
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x398]
call fcn.004ac66a
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x404]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x194]
call fcn.004ac66a
jmp 0x4fce01
inc dword [0x75c818]
lea edi, [esi + 0x34]
lea eax, [ebp - 0x44]
push eax
mov ecx, edi
call fcn.004f29b4
lea eax, [ebp - 0x110]
push eax
mov ecx, edi
call fcn.004eaa4f
push eax
lea ecx, [ebp - 0x44]
call fcn.004cdc46
test al, al
jne 0x4fce86
mov dword [ebp - 0x50], 0x10
lea ecx, [ebp - 0x44]
call fcn.004cdcec
lea ecx, [ebp - 0x50]
push ecx
lea ecx, [ebp]
push ecx
push dword [eax]
call dword [sym.imp.WSOCK32.dll_getsockname]
cmp eax, 0xffffffff
jne 0x4fce7c
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2736
jne 0x4fce7c
push dword [ebp - 0x40]
push dword [ebp - 0x44]
lea eax, [ebp - 0x130]
push eax
mov ecx, edi
call fcn.004fc6a4
mov ecx, dword [eax]
mov dword [ebp - 0x44], ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0x40], eax
jmp 0x4fce0f
lea ecx, [ebp - 0x44]
call fcn.004cdc1e
jmp 0x4fce0f
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
or dword [ebp - 4], 0xffffffff
jmp 0x4fcb01
lea eax, [ebp - 0x550]
push eax
push dword [esi]
call sub.WSOCK32.dll___WSAFDIsSet
test eax, eax
je 0x4fd13a
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x10]
push eax
push dword [esi]
call dword [sym.imp.WSOCK32.dll_accept]
mov dword [ebp - 0x3c], eax
cmp eax, 0xffffffff
je 0x4fd0b6
mov byte [ebp - 0x29], bl
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
sub edi, 0x1388
cmp dword [esi + 0x30], ebx
jbe 0x4fcefc
lea ecx, [esi + 0x28]
call fcn.004eb77a
cmp dword [eax + 4], edi
jae 0x4fcefc
lea ecx, [esi + 0x28]
call fcn.004fc713
jmp 0x4fcee0
mov eax, dword [ebp - 0x1c]
cmp dword [0x727380], eax
jbe 0x4fcf65
mov byte [ebp - 0x29], 1
lea edi, [esi + 0x28]
lea eax, [ebp - 0xb4]
push eax
mov ecx, edi
call fcn.004bdd13
lea eax, [ebp - 0x14c]
push eax
mov ecx, edi
call fcn.004eaa63
push eax
lea ecx, [ebp - 0xb4]
call fcn.004eaa05
test al, al
jne 0x4fcf65
lea ecx, [ebp - 0xb4]
call fcn.004fc6f0
mov eax, dword [eax]
cmp eax, dword [ebp - 0x18]
je 0x4fd06f
push ebx
lea eax, [ebp - 0x350]
push eax
lea ecx, [ebp - 0xb4]
call fcn.004fc5da
jmp 0x4fcf1c
cmp byte [ebp - 0x29], bl
je 0x4fd06f
inc dword [esi + 0x44]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
sub eax, dword [esi + 0x40]
cmp eax, 0x3e8
jbe 0x4fd05e
push ebx
push dword [esi + 0x48]
lea ecx, [ebp - 0x224]
call fcn.004ac7aa
mov byte [ebp - 4], 0x14
push ebx
push str._NoOfAccepts:
lea ecx, [ebp - 0x428]
call fcn.004ac9bc
mov byte [ebp - 4], 0x15
push ebx
push dword [esi + 0x44]
lea ecx, [ebp - 0x1dc]
call fcn.004ac7aa
mov byte [ebp - 4], 0x16
push ebx
push str.SockList.IncomingDenied.HTTP_NoOfRejects:
lea ecx, [ebp - 0x344]
call fcn.004ac9bc
mov byte [ebp - 4], 0x17
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x20], esp
lea ecx, [ebp - 0x224]
push ecx
lea ecx, [ebp - 0x428]
push ecx
lea ecx, [ebp - 0x1dc]
push ecx
lea ecx, [ebp - 0x344]
push ecx
push eax
call fcn.004adcdd
add esp, 0x14
mov byte [ebp - 4], 0x18
mov byte [ebp - 4], 0x17
mov ecx, 0x721f30
call fcn.00430cd8
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x344]
call fcn.004ac66a
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x1dc]
call fcn.004ac66a
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x428]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x224]
call fcn.004ac66a
call edi
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], ebx
mov dword [esi + 0x48], ebx
push ebx
lea eax, [ebp - 0x3c]
push eax
call fcn.004c153b
pop ecx
pop ecx
jmp 0x4fd13a
inc dword [esi + 0x48]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x84], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x84]
push eax
lea ecx, [esi + 0x28]
call fcn.004fc7f3
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x74], eax
call edi
add eax, 0x1388
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [esi + 0x34]
call fcn.004fc7f3
jmp 0x4fd13a
push ebx
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
push eax
lea ecx, [ebp - 0x26c]
call fcn.004ac6f7
mov byte [ebp - 4], 0x19
push ebx
push str.nsSocklist.Error.On.accept:
lea ecx, [ebp - 0x374]
call fcn.004ac9bc
mov byte [ebp - 4], 0x1a
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x20], esp
lea ecx, [ebp - 0x26c]
push ecx
lea ecx, [ebp - 0x374]
push ecx
push eax
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x1b
mov byte [ebp - 4], 0x1a
mov ecx, 0x721f30
call fcn.00430cd8
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x374]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x26c]
call fcn.004ac66a
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
lea edi, [esi + 0x34]
lea eax, [ebp - 0x28]
push eax
mov ecx, edi
call fcn.004f29b4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x138]
push eax
mov ecx, edi
call fcn.004eaa4f
push eax
lea ecx, [ebp - 0x28]
call fcn.004cdc46
test al, al
jne 0x4fce8e
lea ecx, [ebp - 0x28]
call fcn.004cdcec
lea ecx, [ebp - 0x550]
push ecx
push dword [eax]
call sub.WSOCK32.dll___WSAFDIsSet
test eax, eax
je 0x4fd61f
mov byte [ebp - 0x11], bl
mov byte [ebp + 0x57c], bl
push 7
pop ecx
xor eax, eax
lea edi, [ebp + 0x57d]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push 2
push 0x1f
lea ecx, [ebp + 0x57c]
push ecx
push dword [eax]
call dword [sym.imp.WSOCK32.dll_recv]
cmp eax, 0xffffffff
jne 0x4fd2b8
push ebx
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
push eax
lea ecx, [ebp - 0x2fc]
call fcn.004ac6f7
mov byte [ebp - 4], 0x1c
push ebx
push str._Error:
lea ecx, [ebp - 0x3bc]
call fcn.004ac9bc
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push ebx
push dword [eax]
lea ecx, [ebp - 0x2b4]
call fcn.004ac7aa
mov byte [ebp - 4], 0x1e
push ebx
push str.ncSocklist.Error.reading.from.socket:
lea ecx, [ebp - 0x44c]
call fcn.004ac9bc
mov byte [ebp - 4], 0x1f
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x18], esp
lea ecx, [ebp - 0x2fc]
push ecx
lea ecx, [ebp - 0x3bc]
push ecx
lea ecx, [ebp - 0x2b4]
push ecx
lea ecx, [ebp - 0x44c]
push ecx
push eax
call fcn.004adcdd
add esp, 0x14
mov byte [ebp - 4], 0x20
mov byte [ebp - 4], 0x1f
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x44c]
call fcn.004ac66a
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x2b4]
call fcn.004ac66a
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x3bc]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2fc]
call fcn.004ac66a
push ebx
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push eax
call fcn.004c153b
pop ecx
pop ecx
jmp 0x4fd611
cmp eax, ebx
jne 0x4fd33b
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push ebx
push dword [eax]
lea ecx, [ebp - 0x170]
call fcn.004ac7aa
mov byte [ebp - 4], 0x21
push ebx
push str.ncSocklist.Already.gracefully.closed.socket:
lea ecx, [ebp - 0x3e0]
call fcn.004ac807
mov byte [ebp - 4], 0x22
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x18], esp
lea ecx, [ebp - 0x170]
push ecx
lea ecx, [ebp - 0x3e0]
push ecx
push eax
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x23
mov byte [ebp - 4], 0x22
mov ecx, 0x721f18
call fcn.004112c4
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x3e0]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x170]
jmp 0x4fd29d
push 4
push str.GET
lea eax, [ebp + 0x57c]
push eax
call fcn.00520c6b
add esp, 0xc
test eax, eax
je 0x4fd378
push 5
push str.POST
lea eax, [ebp + 0x57c]
push eax
call fcn.00520c6b
add esp, 0xc
test eax, eax
je 0x4fd378
mov byte [ebp - 0x11], 1
jmp 0x4fd581
push str._s00000000
lea eax, [ebp + 0x57c]
push eax
call fcn.00526200
pop ecx
pop ecx
test eax, eax
jne 0x4fd5f7
push 0x67e20c
lea eax, [ebp + 0x57c]
push eax
call fcn.00526200
pop ecx
pop ecx
cmp eax, ebx
je 0x4fd574
push 8
add eax, 3
push eax
lea eax, [ebp + 0x59c]
push eax
call fcn.00520ac0
add esp, 0xc
mov byte [ebp + 0x5a4], bl
push 0xffffffffffffffff
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x18], esp
push ebx
lea eax, [ebp + 0x59c]
push eax
call fcn.004ac807
mov byte [ebp - 4], 0x24
mov byte [ebp - 4], 0xd
call fcn.004fc2e9
add esp, 0x28
mov dword [ebp - 0x18], eax
cmp eax, ebx
jge 0x4fd3fb
mov byte [ebp - 0x11], 1
mov byte [ebp - 0x2a], bl
push 0x7273e8
lea ecx, [ebp - 0x64]
call fcn.00411742
mov byte [ebp - 4], 0x25
mov eax, dword [0x72737c]
mov eax, dword [eax]
mov edi, 0x727378
push edi
push eax
lea ecx, [ebp - 0x7c]
call fcn.004f2802
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x48], eax
cmp byte [ebp - 0x11], bl
jne 0x4fd4d7
push edi
push dword [0x72737c]
lea ecx, [ebp - 0xe4]
call fcn.004f2802
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp - 0x4c]
call fcn.004cdc46
test al, al
jne 0x4fd4d7
lea ecx, [ebp - 0x4c]
call fcn.004cdcec
mov eax, dword [eax]
cmp dword [eax + 0x21c], ebx
je 0x4fd4ca
lea ecx, [ebp - 0x4c]
call fcn.004cdcec
mov eax, dword [eax]
cmp byte [eax + 0x238], bl
je 0x4fd4ca
lea ecx, [ebp - 0x4c]
call fcn.004cdcec
mov eax, dword [eax]
mov ecx, dword [eax + 0x21c]
call fcn.004fc31a
cmp eax, dword [ebp - 0x18]
jne 0x4fd4ca
mov byte [ebp - 0x2a], 1
lea ecx, [ebp - 0x28]
call fcn.004cdcec
mov edi, eax
lea ecx, [ebp - 0x4c]
call fcn.004cdcec
mov eax, dword [eax]
mov eax, dword [eax + 0x21c]
push ebx
push dword [edi]
mov ecx, eax
call fcn.004eeb30
jmp 0x4fd561
lea ecx, [ebp - 0x4c]
call fcn.004cdc1e
jmp 0x4fd431
cmp byte [ebp - 0x2a], bl
jne 0x4fd561
cmp byte [ebp - 0x11], bl
jne 0x4fd561
push ebx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x200]
call fcn.004ac6f7
mov byte [ebp - 4], 0x26
push ebx
push str.ncSocklist.No.ConnectionThread.for.SessionID:
lea ecx, [ebp - 0x1b8]
call fcn.004ac9bc
mov byte [ebp - 4], 0x27
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x18], esp
lea ecx, [ebp - 0x200]
push ecx
lea ecx, [ebp - 0x1b8]
push ecx
push eax
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x28
mov byte [ebp - 4], 0x27
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x1b8]
call fcn.004ac66a
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x200]
call fcn.004ac66a
mov byte [ebp - 0x11], 1
mov byte [ebp - 4], 0xd
cmp byte [ebp - 0x60], bl
je 0x4fd578
mov ecx, dword [ebp - 0x64]
call fcn.0040df8b
jmp 0x4fd578
mov byte [ebp - 0x11], 1
cmp byte [ebp - 0x11], bl
je 0x4fd611
push ebx
push str.ncSocklist.Wrong.Data.on.Port.80:
lea ecx, [ebp - 0x248]
call fcn.004ac9bc
mov byte [ebp - 4], 0x29
push ebx
push ebx
lea eax, [ebp + 0x57c]
push eax
lea ecx, [ebp - 0x574]
call fcn.004ac807
mov byte [ebp - 4], 0x2a
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
lea eax, [ebp - 0x248]
push eax
push ecx
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x2b
mov byte [ebp - 4], 0x2a
mov ecx, 0x721f18
call fcn.004112c4
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x574]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x248]
call fcn.004ac66a
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push dword [ebp + 0x5c0]
push dword [ebp - 0x34]
push dword [eax]
mov ecx, esi
call fcn.004fc355
lea edi, [esi + 0x34]
lea eax, [ebp - 0x120]
jmp 0x4fd6db
lea ecx, [ebp - 0x28]
call fcn.004cdcec
mov ecx, dword [ebp - 0x20]
cmp dword [eax + 4], ecx
lea ecx, [ebp - 0x28]
jae 0x4fd6f9
call fcn.004cdcec
push ebx
push dword [eax]
lea ecx, [ebp - 0x2d8]
call fcn.004ac7aa
mov byte [ebp - 4], 0x2c
push ebx
push str.ncSocklist.Socket.TimedOut.With.No.Action:
lea ecx, [ebp - 0x290]
call fcn.004ac9bc
mov byte [ebp - 4], 0x2d
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x18], esp
lea ecx, [ebp - 0x2d8]
push ecx
lea ecx, [ebp - 0x290]
push ecx
push eax
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x2e
mov byte [ebp - 4], 0x2d
mov ecx, 0x721f18
call fcn.0041122b
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x290]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2d8]
call fcn.004ac66a
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push 2
push dword [eax]
call dword [sym.imp.WSOCK32.dll_shutdown]
push ebx
lea ecx, [ebp - 0x28]
call fcn.004cdcec
push eax
call fcn.004c153b
pop ecx
pop ecx
lea eax, [ebp - 0x140]
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push eax
mov ecx, edi
call fcn.004fc6a4
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], eax
jmp 0x4fd151
call fcn.004cdc1e
jmp 0x4fd151
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
movzx eax, word [esi + 0x14]
push eax
lea ecx, [ebp - 0x108]
call fcn.004ac6f7
mov byte [ebp - 4], 0x2f
push ebx
push str.nsSocklist.Listening.Port.is.not.valid_m_Port
lea ecx, [ebp - 0x320]
call fcn.004ac9bc
mov byte [ebp - 4], 0x30
push ebx
sub esp, 0x24
mov eax, esp
mov dword [ebp - 0x20], esp
lea ecx, [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x320]
push ecx
push eax
call fcn.004adc57
add esp, 0xc
mov byte [ebp - 4], 0x31
mov byte [ebp - 4], 0x30
mov ecx, 0x721f30
call fcn.00430cd8
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x320]
call fcn.004ac66a
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x108]
call fcn.004ac66a
jmp 0x4fce8e
mov eax, dword [ebp - 0x1c]
cmp dword [0x727380], eax
jb 0x4fd7e8
push ebx
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x20], esp
push ebx
push str.SockList.IncomingDenied.TCP
call fcn.004ac9bc
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], 0xd
mov ecx, 0x721f30
call fcn.00430cd8
push ebx
push dword [esi]
mov edi, dword [sym.imp.WSOCK32.dll_listen]
call edi
mov eax, dword [ebp - 0x1c]
cmp dword [0x727380], eax
jb 0x4fd7e1
cmp dword [esi + 8], 2
jne 0x4fd7e1
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4fd7c6
push dword [esi + 0x10]
push dword [esi]
call edi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x10]
push eax
push dword [esi]
call dword [sym.imp.WSOCK32.dll_accept]
mov dword [ebp - 0x3c], eax
cmp eax, 0xffffffff
je 0x4fd816
push dword [ebp + 0x5c0]
push dword [ebp - 0x34]
push eax
mov ecx, esi
call fcn.004fc355
jmp 0x4fce8e
push 0x64
jmp 0x4fce88
cmp eax, edi
jne 0x4fda3d
push 0x546
push ebx
lea eax, [ebp + 0x30]
push eax
call fcn.00522720
add esp, 0xc
mov dword [ebp - 0x50], 0x10
mov dword [ebp - 0x20], edi
push 4
lea eax, [ebp - 0x20]
push eax
push 0x20
push 0xffff
push dword [esi]
call dword [sym.imp.WSOCK32.dll_setsockopt]
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x60], ebx
push 0x104
push ebx
lea eax, [ebp - 0x550]
push eax
call fcn.00522720
add esp, 0xc
jmp 0x4fda33
mov eax, dword [esi]
mov dword [ebp - 0x54c], eax
mov dword [ebp - 0x550], edi
lea ecx, [ebp - 0x64]
push ecx
push ebx
push ebx
lea ecx, [ebp - 0x550]
push ecx
inc eax
push eax
call dword [sym.imp.WSOCK32.dll_select]
cmp eax, ebx
jle 0x4fda33
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp + 0x10]
push eax
push ebx
push 0x546
lea eax, [ebp + 0x30]
push eax
push dword [esi]
call dword [sym.imp.WSOCK32.dll_recvfrom]
mov dword [ebp - 0x30], eax
add eax, 0xfffffff8
cmp eax, 0x53d
ja 0x4fda33
push 0x560
call fcn.0051d97d
pop ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0x37
cmp eax, ebx
je 0x4fd9bb
push dword [ebp - 0x30]
lea ecx, [ebp + 0x30]
push ecx
lea ecx, [ebp + 0x10]
push ecx
push dword [esi]
mov ecx, eax
call fcn.004fc590
mov dword [ebp - 0x1c], eax
jmp 0x4fd9be
mov dword [ebp - 0x1c], ebx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
push 2
push 0x67fb50
add eax, 0x1b
push eax
call fcn.00520c6b
add esp, 0xc
test eax, eax
jne 0x4fd9ee
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x1e]
add eax, 8
cmp dword [ebp - 0x30], eax
je 0x4fda28
push ebx
sub esp, 0x24
mov ecx, esp
mov dword [ebp - 0x30], esp
push ebx
push str.SockList.InvalidUDP
call fcn.004ac9bc
mov dword [ebp - 4], 0x38
or dword [ebp - 4], 0xffffffff
mov ecx, 0x721f30
call fcn.004cbdaf
cmp dword [ebp - 0x1c], ebx
je 0x4fda25
push dword [ebp - 0x1c]
call fcn.0051d492
pop ecx
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], ebx
je 0x4fda33
push dword [ebp - 0x18]
call dword [ebp - 0x34]
cmp dword [esi + 8], 2
je 0x4fd933
mov eax, dword [ebp - 0x38]
jmp 0x4fda45
push 2
pop eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x5a8]
xor ecx, ebp
call fcn.0051d721
add ebp, 0x5ac
leave
ret 0x10