Function at 0x414ab0
Capabilities:
Get local ipv4 addresses
Get socket information
Initialize winsock library

Disassembly:
sub esp, 0x1cc
mov eax, dword [0x436090]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x1d8], eax
xor eax, eax
mov ecx, 0x30
mov edi, 0x4378d0
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x1e0]
mov eax, dword [edi]
xor ebx, ebx
cmp eax, ebx
jne 0x414ae9
mov dword [edi], 0x4378d0
mov eax, dword [edi]
lea ecx, [esp + 0x48]
push ecx
or ebp, 0xffffffff
mov dword [eax + 0x60], ebp
push 0x202
mov dword [0x437990], 0x3e8
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov ax, word [esp + 0x48]
cmp al, 2
jne 0x414b22
cmp ah, al
je 0x414b2c
mov esi, 0xfffefff8
jmp 0x414dbf
call fcn.00411e80
mov edx, dword [edi]
mov dword [edi + 8], eax
mov dword [edx + 0x40], ebx
mov eax, dword [edi]
mov dword [eax + 0x3c], ebx
mov ecx, dword [edi]
mov dword [ecx + 0x58], ebx
mov edx, dword [edi]
mov dword [edx + 0x80], ebp
mov eax, dword [edi]
mov dword [eax + 0x84], ebx
mov ecx, dword [edi]
mov dword [ecx + 0x9c], ebx
mov edx, dword [edi]
xor eax, eax
mov ax, word [0x42dea8]
add edx, 0x80
push edx
lea ecx, [esp + 0x3c]
mov word [esp + 0x3c], 2
mov dword [esp + 0x40], ebx
push eax
call fcn.004113f0
mov eax, dword [edi]
add esp, 8
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x3c]
mov dword [esp + 0x18], 0x10
mov ecx, dword [eax + 0x80]
push edx
push ecx
call dword [sym.imp.WS2_32.dll_getsockname]
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov dx, word [esp + 0x3a]
push ebx
push ebx
push ebx
push ebx
mov word [edi + 0x14], dx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov ecx, dword [edi]
mov dword [ecx + 0x84], eax
mov edx, dword [edi]
cmp dword [edx + 0x84], ebx
jne 0x414bf0
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
je 0x414de1
call esi
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov eax, dword [edi]
mov ecx, dword [eax + 0x84]
mov edx, dword [eax + 0x80]
push 1
push ecx
push edx
call dword [sym.imp.WS2_32.dll_WSAEventSelect]
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov eax, dword [edi]
mov ebp, dword [sym.imp.WS2_32.dll_WSAIoctl]
push ebx
push ebx
lea ecx, [esp + 0x18]
push ecx
push 4
lea edx, [eax + 0x9c]
mov eax, dword [eax + 0x80]
push edx
push 0x10
push 0x436064
push 0xc8000006
push eax
call ebp
test eax, eax
je 0x414c4b
mov ecx, dword [edi]
mov dword [ecx + 0x9c], ebx
mov edx, dword [edi]
mov dword [edx + 0xa0], 0xffffffff
mov eax, dword [edi]
mov dword [eax + 0xa4], ebx
mov ecx, dword [edi]
mov dword [ecx + 0xbc], ebx
mov ecx, dword [0x433abc]
mov eax, dword [0x433ab8]
mov edx, dword [0x433ab4]
mov dword [esp + 0x2c], ecx
xor ecx, ecx
mov cx, word [0x42dea8]
mov dword [esp + 0x28], eax
mov eax, dword [edi]
add eax, 0xa0
push eax
mov dword [esp + 0x28], edx
mov edx, dword [0x433ac0]
push ecx
lea ecx, [esp + 0x24]
mov word [esp + 0x24], 0x17
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebx
call fcn.004113f0
add esp, 8
cmp eax, ebx
je 0x414ccf
cmp eax, 0x273f
je 0x414ccf
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
jmp 0x414dbb
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov edx, dword [edi]
mov dword [edx + 0xa4], eax
mov eax, dword [edi]
cmp dword [eax + 0xa4], ebx
jne 0x414d07
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
je 0x414de1
call esi
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov eax, dword [edi]
cmp dword [eax + 0xa0], 0xffffffff
je 0x414d99
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x20]
mov dword [esp + 0x1c], 0x1c
mov eax, dword [eax + 0xa0]
push edx
push eax
call dword [sym.imp.WS2_32.dll_getsockname]
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov cx, word [esp + 0x1e]
mov eax, dword [edi]
mov word [edi + 0x16], cx
mov edx, dword [eax + 0xa4]
mov eax, dword [eax + 0xa0]
push 1
push edx
push eax
call dword [sym.imp.WS2_32.dll_WSAEventSelect]
mov esi, eax
cmp esi, ebx
jne 0x414dbf
mov eax, dword [edi]
push ebx
push ebx
lea ecx, [esp + 0x18]
push ecx
push 4
lea edx, [eax + 0xbc]
mov eax, dword [eax + 0xa0]
push edx
push 0x10
push 0x436064
push 0xc8000006
push eax
call ebp
test eax, eax
je 0x414d99
mov ecx, dword [edi]
mov dword [ecx + 0xbc], ebx
mov eax, edi
call fcn.004130c0
mov esi, eax
cmp esi, ebx
jne 0x414dbf
call fcn.004149f0
mov esi, eax
cmp esi, ebx
jne 0x414dbf
push esi
push edi
call fcn.0040f590
add esp, 8
cmp esi, ebx
je 0x414dc8
push edi
call fcn.00413cc0
add esp, 4
mov ecx, dword [esp + 0x1d8]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
call fcn.0042373b
add esp, 0x1cc
ret
mov esi, 0xffffe5d4
jmp 0x414dbf