Function at 0x456179
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff98
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, 0x4c0258
call fcn.0049d698
cmp dword [0x4c0158], 0
jne 0x4561af
mov eax, 8
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0x10], 7
je 0x4561c9
mov eax, 7
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0x80], 0
je 0x4561e6
mov eax, 0x10
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0xde], 0
je 0x456203
mov eax, 0x10
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0x106], 0
je 0x456220
mov eax, 0x10
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0x90], 0
je 0x45623d
mov eax, 0x10
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
xor ecx, ecx
mov dword [edi + 0x84], ecx
push ebx
call fcn.00457876
pop ecx
mov dword [ebp - 0x38], 0x10
push edi
call fcn.004579b9
pop ecx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], ebx
cmp dword [0x4c0168], 0
jne 0x45627d
lea eax, [ebp - 0x38]
lea edx, [ebp - 0x68]
push eax
push edx
push dword [ebp - 0x3c]
call sub.WSOCK32.dll_accept
mov esi, eax
jmp 0x456292
lea ecx, [ebp - 0x38]
lea eax, [ebp - 0x68]
push ecx
push eax
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
call fcn.00459907
mov esi, eax
cmp esi, 0xffffffff
je 0x4562e6
mov word [ebp - 0x24], 0xc
xor edx, edx
lea eax, [ebp - 8]
mov dword [ebp - 0x44], edx
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 0x44]
lea edx, [ebp - 0x10]
mov dword [ebp - 4], ecx
inc dword [ebp - 0x18]
push eax
push 0x4d3004
push edx
call fcn.0045cfd0
inc dword [ebp - 0x18]
inc dword [ebp - 0x18]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x48], ecx
add esp, 0xc
mov eax, dword [ebp - 0x48]
mov edx, dword [eax + 1]
dec dword [ebp - 0x18]
add edx, 0x10
add edx, 4
dec dword [ebp - 0x18]
mov ecx, dword [ebp - 0x40]
mov dword [edx], ecx
mov dword [ebx + 0xc], esi
cmp esi, 0xffffffff
jne 0x45633d
mov esi, ebx
cmp dword [0x4c0168], 0
jne 0x456300
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x456306
push esi
call fcn.0045adc4
mov esi, eax
cmp esi, 0x2733
jne 0x456324
mov eax, 0xd
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
push esi
push ebx
call fcn.0045861f
add esp, 8
mov ecx, dword [ebp - 0x34]
mov dword fs:[0], ecx
jmp 0x4563f0
mov dword [ebp - 0x50], 1
mov eax, dword [ebx + 0xc]
mov edx, ebx
cmp dword [0x4c0168], 0
jne 0x456363
lea ecx, [ebp - 0x50]
push ecx
push 0x8004667e
push eax
call sub.WSOCK32.dll_ioctlsocket
jmp 0x456373
lea ecx, [ebp - 0x50]
push ecx
push 0x8004667e
push eax
push edx
call fcn.00459b63
mov esi, dword [0x4c0164]
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], ebx
cmp dword [0x4c0168], 0
jne 0x45639d
push 0x23
push 0x400
push esi
push dword [ebp - 0x54]
call sub.WSOCK32.dll_WSAAsyncSelect
jmp 0x4563b0
push 0x23
push 0x400
push esi
push dword [ebp - 0x54]
push dword [ebp - 0x58]
call fcn.0045b6b2
test eax, eax
je 0x4563c5
mov eax, 0x14
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
jmp 0x4563f0
cmp dword [ebx + 0x44], 0
je 0x4563da
xor ecx, ecx
mov dword [edi + 0x30], ecx
xor eax, eax
mov dword [edi + 0x48], eax
xor edx, edx
mov dword [ebx + 0x48], edx
mov dword [ebx + 0x90], 1
xor eax, eax
mov edx, dword [ebp - 0x34]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret