Function at 0x44bcd9
Capabilities:
Check for time delay via gettickcount
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Get socket status
Start tcp server

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48e30e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x4684
call fcn.00465440
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x4644], ecx
cmp dword [0x4b04a0], 0
jne 0x44bd18
xor eax, eax
jmp 0x44ca3f
cmp dword [0x4b04a4], 0
jne 0x44bd28
xor eax, eax
jmp 0x44ca3f
push 0
mov eax, dword [ebp + 8]
push eax
push 0
push 0
mov ecx, 0x4afa18
call fcn.00423a32
cmp eax, 1
je 0x44bd48
xor eax, eax
jmp 0x44ca3f
mov ecx, dword [ebp + 8]
add ecx, 4
mov dword [ebp - 0x1018], ecx
mov byte [ebp - 0x1014], 4
mov dword [ebp - 0x1020], 1
push 8
lea edx, [ebp - 0x1020]
push edx
lea eax, [ebp - 0x1013]
push eax
mov ecx, dword [ebp - 0x1018]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x4644]
call fcn.00435dcb
mov byte [ebp - 0x14], 0
mov dword [ebp - 0x1020], 7
push 8
lea eax, [ebp - 0x1020]
push eax
lea ecx, [ebp - 0x1012]
push ecx
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435dcb
test eax, eax
jne 0x44bdc6
xor eax, eax
jmp 0x44ca3f
mov ecx, dword [ebp - 0x1020]
movsx edx, byte [ebp + ecx - 0x1013]
test edx, edx
je 0x44be3c
mov dword [ebp - 0x1024], 1
push 8
lea eax, [ebp - 0x1024]
push eax
mov ecx, dword [ebp - 0x1020]
lea edx, [ebp + ecx - 0x1012]
push edx
mov eax, dword [ebp - 0x1018]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x4644]
call fcn.00435dcb
test eax, eax
jne 0x44be18
xor eax, eax
jmp 0x44ca3f
mov edx, dword [ebp - 0x1020]
add edx, 1
mov dword [ebp - 0x1020], edx
cmp dword [ebp - 0x1020], 0x106
jle 0x44be3a
xor eax, eax
jmp 0x44ca3f
jmp 0x44bdc6
mov dword [ebp - 0x101c], 0xffffffff
mov dword [ebp - 4], 0
movsx eax, byte [ebp - 0x1013]
cmp eax, 1
jne 0x44c365
mov byte [ebp - 0x1014], 0
push 1
push 0
push 0
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_WSASocketA]
mov dword [ebp - 0x101c], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x44bec5
mov byte [ebp - 0x1013], 0x5b
push 8
lea ecx, [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov dword [ebp - 0x45dc], 0
push 0x49d188
lea ecx, [ebp - 0x45dc]
push ecx
call fcn.00468332
mov word [ebp - 0x1034], 2
push 4
lea edx, [ebp - 0x1010]
push edx
lea eax, [ebp - 0x1030]
push eax
call fcn.004659b0
add esp, 0xc
push 2
lea ecx, [ebp - 0x1012]
push ecx
lea edx, [ebp - 0x1032]
push edx
call fcn.004659b0
add esp, 0xc
mov al, byte [0x4b0434]
mov byte [ebp - 0x2468], al
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0x2467]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, dword [ebp - 0x1010]
push ecx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea edx, [ebp - 0x2468]
push edx
call fcn.00465350
add esp, 8
push 6
push str.0.0.0.
lea eax, [ebp - 0x2468]
push eax
call fcn.004681f0
add esp, 0xc
test eax, eax
jne 0x44c0ac
lea ecx, [ebp - 0x100c]
mov dword [ebp - 0x2474], ecx
mov edx, dword [ebp - 0x2474]
push edx
call fcn.00465470
add esp, 4
mov ecx, dword [ebp - 0x2474]
add ecx, eax
mov dword [ebp - 0x2474], ecx
mov edx, dword [ebp - 0x2474]
lea eax, [ebp - 0x1014]
sub edx, eax
add edx, 1
mov dword [ebp - 0x2470], edx
mov ecx, dword [ebp + 8]
cmp dword [ecx], 2
jne 0x44c070
mov edx, dword [ebp - 0x4644]
cmp dword [edx + 0x10], 0
je 0x44c070
mov dword [ebp - 0x2478], 1
push 8
lea eax, [ebp - 0x2478]
push eax
mov ecx, dword [ebp - 0x2470]
lea edx, [ebp + ecx - 0x1014]
push edx
mov eax, dword [ebp - 0x1018]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x4644]
call fcn.00435dcb
mov dword [ebp - 0x4648], eax
cmp dword [ebp - 0x4648], 0
jne 0x44c011
mov dword [ebp - 0x45e0], 0
push 0x49d188
lea edx, [ebp - 0x45e0]
push edx
call fcn.00468332
mov eax, dword [ebp - 0x2470]
movsx ecx, byte [ebp + eax - 0x1014]
test ecx, ecx
jne 0x44c025
jmp 0x44c070
mov edx, dword [ebp - 0x2470]
add edx, 1
mov dword [ebp - 0x2470], edx
lea eax, [ebp - 0x100c]
push eax
call fcn.00465470
add esp, 4
add eax, 0xff
cmp dword [ebp - 0x2470], eax
jle 0x44c06b
mov dword [ebp - 0x45e4], 0
push 0x49d188
lea ecx, [ebp - 0x45e4]
push ecx
call fcn.00468332
jmp 0x44bf96
mov edx, dword [ebp + 8]
cmp dword [edx], 2
je 0x44c093
mov dword [ebp - 0x45e8], 0
push 0x49d188
lea eax, [ebp - 0x45e8]
push eax
call fcn.00468332
mov ecx, dword [ebp - 0x2474]
add ecx, 1
push ecx
lea edx, [ebp - 0x2468]
push edx
call fcn.00465350
add esp, 8
mov al, byte [0x4b0438]
mov byte [ebp - 0x2058], al
mov ecx, 0x400
xor eax, eax
lea edi, [ebp - 0x2057]
rep stosd dword es:[edi], eax
mov cx, word [ebp - 0x1032]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
and eax, 0xffff
push eax
lea edx, [ebp - 0x2468]
push edx
push 0x4a96b0
lea eax, [ebp - 0x2058]
push eax
call fcn.004650e4
add esp, 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x45ec], esp
lea edx, [ebp - 0x2058]
push edx
call fcn.00481032
mov dword [ebp - 0x464c], eax
mov eax, dword [ebp - 0x464c]
mov dword [ebp - 0x4650], eax
mov byte [ebp - 4], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x45f0], esp
push 0x4a96c0
call fcn.00481032
mov dword [ebp - 0x4654], eax
mov ecx, dword [ebp - 0x4654]
mov dword [ebp - 0x4658], ecx
mov byte [ebp - 4], 2
push ecx
mov ecx, esp
mov dword [ebp - 0x45f4], esp
push 0x4b043c
call fcn.00481032
mov dword [ebp - 0x465c], eax
mov byte [ebp - 4], 0
mov edx, dword [ebp + 8]
push edx
mov ecx, 0x4afa18
call fcn.00426c3e
push ecx
mov ecx, esp
mov dword [ebp - 0x45f8], esp
push 0x4b0440
call fcn.00481032
mov dword [ebp - 0x4660], eax
mov eax, dword [ebp - 0x4660]
mov dword [ebp - 0x4664], eax
mov byte [ebp - 4], 3
mov cx, word [ebp - 0x1032]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
and eax, 0xffff
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x45fc], esp
lea edx, [ebp - 0x2468]
push edx
call fcn.00481032
mov dword [ebp - 0x4668], eax
mov byte [ebp - 4], 0
mov eax, dword [ebp + 8]
push eax
mov ecx, 0x4afa18
call fcn.0042a296
mov dword [ebp - 0x466c], eax
cmp dword [ebp - 0x466c], 0
je 0x44c208
mov dword [ebp - 0x4600], 0
push 0x49d188
lea ecx, [ebp - 0x4600]
push ecx
call fcn.00468332
lea ecx, [ebp - 0x1054]
call fcn.0043b3c0
mov dword [ebp - 0x4670], eax
mov byte [ebp - 4], 4
lea edx, [ebp - 0x1054]
push edx
push 1
mov ecx, 0x4b0490
call fcn.00454eba
lea eax, [ebp - 0x1054]
push eax
mov cx, word [ebp - 0x1032]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
and eax, 0xffff
push eax
lea edx, [ebp - 0x2468]
push edx
mov eax, dword [ebp - 0x101c]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.004362e4
mov dword [ebp - 0x4674], eax
cmp dword [ebp - 0x4674], 0
jne 0x44c2b2
mov byte [ebp - 0x1013], 0x5c
push 0xa
lea ecx, [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov dword [ebp - 0x4604], 0
push 0x49d188
lea ecx, [ebp - 0x4604]
push ecx
call fcn.00468332
mov dword [ebp - 0x246c], 0x10
lea edx, [ebp - 0x246c]
push edx
lea eax, [ebp - 0x2068]
push eax
mov ecx, dword [ebp - 0x101c]
push ecx
call dword [sym.imp.WS2_32.dll_getsockname]
mov byte [ebp - 0x1013], 0x5a
push 4
lea edx, [ebp - 0x2064]
push edx
lea eax, [ebp - 0x1012]
push eax
call fcn.004659b0
add esp, 0xc
push 2
lea ecx, [ebp - 0x2066]
push ecx
lea edx, [ebp - 0x1010]
push edx
call fcn.004659b0
add esp, 0xc
push 8
lea eax, [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x1018]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov eax, dword [ebp - 0x1018]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x101c]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435fd2
mov dword [ebp - 0x4608], 0
push 0x49d188
lea ecx, [ebp - 0x4608]
push ecx
call fcn.00468332
movsx edx, byte [ebp - 0x1013]
cmp edx, 2
jne 0x44c9f5
mov al, byte [0x4b0444]
mov byte [ebp - 0x35b4], al
mov ecx, 0x400
xor eax, eax
lea edi, [ebp - 0x35b3]
rep stosd dword es:[edi], eax
mov cl, byte [0x4b0448]
mov byte [ebp - 0x45bc], cl
mov ecx, 0x400
xor eax, eax
lea edi, [ebp - 0x45bb]
rep stosd dword es:[edi], eax
mov edx, dword [ebp - 0x1010]
push edx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [ebp - 0x35b8], eax
cmp dword [ebp - 0x35b8], 0
je 0x44c3dc
mov eax, dword [ebp - 0x35b8]
push eax
lea ecx, [ebp - 0x45bc]
push ecx
call fcn.00465350
add esp, 8
push 2
lea edx, [ebp - 0x1012]
push edx
lea eax, [ebp - 0x25ae]
push eax
call fcn.004659b0
add esp, 0xc
mov cx, word [ebp - 0x25ae]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
and eax, 0xffff
push eax
lea edx, [ebp - 0x45bc]
push edx
push str.BIND__s:_d
lea eax, [ebp - 0x35b4]
push eax
call fcn.004650e4
add esp, 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x460c], esp
lea edx, [ebp - 0x35b4]
push edx
call fcn.00481032
mov dword [ebp - 0x4678], eax
mov eax, dword [ebp - 0x4678]
mov dword [ebp - 0x467c], eax
mov byte [ebp - 4], 5
push ecx
mov ecx, esp
mov dword [ebp - 0x4610], esp
push 0x4a96d4
call fcn.00481032
mov dword [ebp - 0x4680], eax
mov ecx, dword [ebp - 0x4680]
mov dword [ebp - 0x4684], ecx
mov byte [ebp - 4], 6
push ecx
mov ecx, esp
mov dword [ebp - 0x4614], esp
push 0x4b044c
call fcn.00481032
mov dword [ebp - 0x4688], eax
mov byte [ebp - 4], 0
mov edx, dword [ebp + 8]
push edx
mov ecx, 0x4afa18
call fcn.00426c3e
mov byte [ebp - 0x1014], 0
push 1
push 0
push 0
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_WSASocketA]
mov dword [ebp - 0x101c], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x44c50a
mov byte [ebp - 0x1013], 0x5b
push 0xa
lea eax, [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x1018]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov dword [ebp - 0x4618], 0
push 0x49d188
lea eax, [ebp - 0x4618]
push eax
call fcn.00468332
mov word [ebp - 0x2596], 0
mov word [ebp - 0x2598], 2
mov dword [ebp - 0x2594], 0
push 0x10
lea ecx, [ebp - 0x2598]
push ecx
mov edx, dword [ebp - 0x101c]
push edx
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
je 0x44c55b
mov dword [ebp - 0x461c], 0
push 0x49d188
lea eax, [ebp - 0x461c]
push eax
call fcn.00468332
push 5
mov ecx, dword [ebp - 0x101c]
push ecx
call dword [sym.imp.WS2_32.dll_listen]
mov dword [ebp - 0x2580], 0x10
lea edx, [ebp - 0x2580]
push edx
lea eax, [ebp - 0x2598]
push eax
mov ecx, dword [ebp - 0x101c]
push ecx
call dword [sym.imp.WS2_32.dll_getsockname]
mov edx, dword [0x4bae18]
mov dword [ebp - 0x2594], edx
mov byte [ebp - 0x1013], 0x5a
push 2
lea eax, [ebp - 0x2596]
push eax
lea ecx, [ebp - 0x1012]
push ecx
call fcn.004659b0
add esp, 0xc
push 4
lea edx, [ebp - 0x2594]
push edx
lea eax, [ebp - 0x1010]
push eax
call fcn.004659b0
add esp, 0xc
push 8
lea ecx, [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov dword [ebp - 0x468c], eax
cmp dword [ebp - 0x468c], 0
jne 0x44c619
mov dword [ebp - 0x4620], 0
push 0x49d188
lea ecx, [ebp - 0x4620]
push ecx
call fcn.00468332
mov dword [ebp - 0x2588], 1
mov dword [ebp - 0x2584], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x259c], eax
mov edx, dword [ebp + 8]
cmp dword [edx], 2
jne 0x44c9da
mov eax, dword [ebp - 0x4644]
cmp dword [eax + 0x10], 0
je 0x44c9da
mov dword [ebp - 0x257c], 0
mov dword [ebp - 0x45c4], 0
jmp 0x44c67a
mov ecx, dword [ebp - 0x45c4]
add ecx, 1
mov dword [ebp - 0x45c4], ecx
mov edx, dword [ebp - 0x45c4]
cmp edx, dword [ebp - 0x257c]
jae 0x44c6a1
mov eax, dword [ebp - 0x45c4]
mov ecx, dword [ebp + eax*4 - 0x2578]
cmp ecx, dword [ebp - 0x101c]
jne 0x44c69f
jmp 0x44c6a1
jmp 0x44c66b
mov edx, dword [ebp - 0x45c4]
cmp edx, dword [ebp - 0x257c]
jne 0x44c6da
cmp dword [ebp - 0x257c], 0x40
jae 0x44c6da
mov eax, dword [ebp - 0x45c4]
mov ecx, dword [ebp - 0x101c]
mov dword [ebp + eax*4 - 0x2578], ecx
mov edx, dword [ebp - 0x257c]
add edx, 1
mov dword [ebp - 0x257c], edx
xor eax, eax
test eax, eax
jne 0x44c65f
mov dword [ebp - 0x45c8], 0
jmp 0x44c6ff
mov ecx, dword [ebp - 0x45c8]
add ecx, 1
mov dword [ebp - 0x45c8], ecx
mov edx, dword [ebp - 0x45c8]
cmp edx, dword [ebp - 0x257c]
jae 0x44c728
mov eax, dword [ebp - 0x45c8]
mov ecx, dword [ebp - 0x1018]
mov edx, dword [ebp + eax*4 - 0x2578]
cmp edx, dword [ecx]
jne 0x44c726
jmp 0x44c728
jmp 0x44c6f0
mov eax, dword [ebp - 0x45c8]
cmp eax, dword [ebp - 0x257c]
jne 0x44c763
cmp dword [ebp - 0x257c], 0x40
jae 0x44c763
mov ecx, dword [ebp - 0x45c8]
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
mov dword [ebp + ecx*4 - 0x2578], eax
mov ecx, dword [ebp - 0x257c]
add ecx, 1
mov dword [ebp - 0x257c], ecx
xor edx, edx
test edx, edx
jne 0x44c6e4
lea eax, [ebp - 0x2588]
push eax
push 0
push 0
lea ecx, [ebp - 0x257c]
push ecx
push 0x40
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x45c0], eax
cmp dword [ebp - 0x45c0], 0
jne 0x44c7e0
cmp dword [0x4a7d14], 0
jg 0x44c7a4
jmp 0x44c639
mov esi, dword [0x4a7d14]
imul esi, esi, 0x3e8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x259c]
cmp eax, esi
jbe 0x44c7db
mov dword [ebp - 0x4624], 0xffffffff
push 0x49d188
lea edx, [ebp - 0x4624]
push edx
call fcn.00468332
jmp 0x44c639
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x259c], eax
cmp dword [ebp - 0x45c0], 0
jge 0x44c810
mov dword [ebp - 0x4628], 0
push 0x49d188
lea eax, [ebp - 0x4628]
push eax
call fcn.00468332
lea ecx, [ebp - 0x257c]
push ecx
mov edx, dword [ebp - 0x101c]
push edx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x44c925
mov dword [ebp - 0x2580], 0x10
lea eax, [ebp - 0x2580]
push eax
lea ecx, [ebp - 0x45d8]
push ecx
mov edx, dword [ebp - 0x101c]
push edx
call dword [sym.imp.WS2_32.dll_accept]
mov dword [ebp - 0x25a0], eax
cmp dword [ebp - 0x25a0], 0
jne 0x44c864
jmp 0x44c9da
mov byte [ebp - 0x1014], 0
mov byte [ebp - 0x1013], 0x5a
push 2
lea eax, [ebp - 0x45d6]
push eax
lea ecx, [ebp - 0x1012]
push ecx
call fcn.004659b0
add esp, 0xc
push 4
lea edx, [ebp - 0x45d4]
push edx
lea eax, [ebp - 0x1010]
push eax
call fcn.004659b0
add esp, 0xc
push 8
lea ecx, [ebp - 0x1014]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [ebp - 0x4644]
call fcn.00435f01
mov dword [ebp - 0x4690], eax
cmp dword [ebp - 0x4690], 0
jne 0x44c8de
mov ecx, dword [ebp - 0x25a0]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
jmp 0x44c9da
mov edx, dword [ebp - 0x1018]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x25a0]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x4644]
call fcn.00435fd2
mov eax, dword [ebp - 0x25a0]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x462c], 0
push 0x49d188
lea ecx, [ebp - 0x462c]
push ecx
call fcn.00468332
lea edx, [ebp - 0x257c]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push ecx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x44c9d5
mov dword [ebp - 0x2580], 0x1000
push 0
lea edx, [ebp - 0x2580]
push edx
lea eax, [ebp - 0x1014]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
push edx
mov ecx, dword [ebp - 0x4644]
call fcn.00435dcb
mov dword [ebp - 0x4694], eax
cmp dword [ebp - 0x4694], 0
jne 0x44c996
mov dword [ebp - 0x4630], 0
push 0x49d188
lea eax, [ebp - 0x4630]
push eax
call fcn.00468332
cmp dword [ebp - 0x2580], 0
jne 0x44c9ba
mov dword [ebp - 0x4634], 0
push 0x49d188
lea ecx, [ebp - 0x4634]
push ecx
call fcn.00468332
mov dword [ebp - 0x4638], 0
push 0x49d188
lea edx, [ebp - 0x4638]
push edx
call fcn.00468332
jmp 0x44c639
mov dword [ebp - 0x463c], 0
push 0x49d188
lea eax, [ebp - 0x463c]
push eax
call fcn.00468332
mov dword [ebp - 0x4640], 0
push 0x49d188
lea ecx, [ebp - 0x4640]
push ecx
call fcn.00468332
cmp dword [ebp - 0x101c], 0xffffffff
je 0x44ca30
mov edx, dword [ebp - 0x101c]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x101c], 0xffffffff
mov eax, 0x44ca36
ret
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4