Function at 0x40b010
Capabilities:
Set socket configuration

Disassembly:
sub esp, 0x108
xor eax, eax
mov dword [0x438050], eax
mov dword [0x42fcd8], eax
push ebx
push esi
mov esi, dword [esp + 0x114]
push edi
push ebp
cmp esi, 0xffffffff
jne 0x40b06d
lea eax, [esp + 0x18]
push 0x100
push eax
mov ecx, dword [0x438580]
push 0x3767
push ecx
call dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [esp + 0x18]
push ecx
push str.___s
call fcn.0040cf50
add esp, 8
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
cmp dword [0x42f7e0], 0
jne 0x40b4bc
cmp dword [0x43147c], 0
jne 0x40b4bc
mov dword [0x42fcd0], 0
cmp dword [0x42f7fc], 0
mov ebp, dword [esp + 0x120]
je 0x40b0d4
push ebp
call fcn.0041f100
add esp, 4
cmp eax, 1
sbb al, al
push 0
and al, 8
push 0x1fa4
add al, 0x41
push 0x111
mov bl, al
mov byte [str.IANS], al
mov eax, dword [0x42f7d0]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x40b0db
mov bl, byte [esp + 0x128]
cmp bl, byte [0x42f7c4]
je 0x40b110
cmp bl, 0x4c
jne 0x40b0f8
push str.TYPE_L_8
push esi
call fcn.00415e20
add esp, 8
jmp 0x40b10a
movsx eax, bl
push eax
push str.TYPE__c
push esi
call fcn.00415e20
add esp, 0xc
mov byte [0x42f7c4], bl
mov dword [0x42f2c8], 0
cmp dword [0x438020], 0
je 0x40b229
mov eax, dword [0x42f864]
push eax
call fcn.00416630
add esp, 4
mov dword [0x42f868], eax
cmp eax, 0xffffffff
je 0x40b229
lea ecx, [esp + 0x10]
push 4
mov dword [esp + 0x14], 0x4000
push ecx
push 0x1002
push 0xffff
push eax
call sub.WSOCK32.dll_setsockopt
push ebp
push esi
call fcn.00415f60
add esp, 8
mov edi, eax
cmp edi, 1
jne 0x40b1b3
push 0x438c30
sub bl, 0x49
push str.input:
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esp + 0x12c]
cmp bl, 1
mov ecx, dword [esp + 0x124]
push eax
sbb eax, eax
push esi
neg eax
push eax
mov edx, dword [0x42f868]
push ecx
push edx
call fcn.0040a510
add esp, 0x14
mov dword [0x42fcd8], eax
mov eax, dword [0x42f868]
push eax
call fcn.00416080
add esp, 4
mov dword [0x42f868], eax
cmp eax, 0xffffffff
je 0x40b1d9
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f868], eax
cmp edi, 5
jne 0x40b1fe
cmp dword [0x435f24], 2
jne 0x40b1fe
mov eax, edi
pop ebp
mov dword [0x42fcd8], 5
pop edi
pop esi
pop ebx
add esp, 0x108
ret
cmp edi, 1
jne 0x40b21c
push esi
push str.__u__looking_for_completion_line
call fcn.0040cf50
add esp, 8
push esi
call fcn.0040b610
add esp, 4
mov edi, eax
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
push esi
call fcn.004167f0
add esp, 4
mov dword [0x42f86c], eax
cmp eax, 0xffffffff
je 0x40b490
push ebp
push esi
call fcn.00415f60
add esp, 8
mov edi, eax
cmp dword [0x438050], 0x226
jne 0x40b279
cmp dword [0x43800c], 0x1788
jne 0x40b279
push ebp
call fcn.0040afa0
add esp, 4
push eax
push esi
call fcn.00415f60
add esp, 8
mov edi, eax
cmp edi, 5
jne 0x40b2b1
cmp dword [0x435f24], 2
jne 0x40b2b1
mov dword [0x42fcd8], 5
mov eax, dword [0x42f86c]
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f86c], eax
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
cmp edi, 1
jne 0x40b464
push 0x438c30
push str.input:
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x14
mov eax, dword [0x437824]
push eax
call fcn.00410bd0
lea eax, [esp + 0x1c]
mov ecx, dword [0x42f86c]
mov dword [esp + 0x1c], 0x10
add esp, 8
push eax
push 0x437830
push ecx
call sub.WSOCK32.dll_accept
push 0x14
mov ecx, dword [0x437824]
push ecx
mov ebp, dword [sym.imp.USER32.dll_KillTimer]
mov dword [0x42f868], eax
call ebp
cmp dword [0x42f868], 0xffffffff
jne 0x40b368
lea eax, [esp + 0x18]
push 0x100
push eax
mov ecx, dword [0x438580]
push 0x36b3
push ecx
call dword [sym.imp.USER32.dll_LoadStringA]
call sub.WSOCK32.dll_WSAGetLastError
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.0041a860
add esp, 8
mov eax, dword [0x42f86c]
xor edi, edi
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f86c], eax
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
mov eax, dword [0x42f86c]
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f86c], eax
mov ecx, dword [0x42f868]
push 4
mov dword [esp + 0x14], 0x4000
lea eax, [esp + 0x14]
push eax
push 0x1002
push 0xffff
push ecx
call sub.WSOCK32.dll_setsockopt
mov cx, word [0x437832]
push ecx
call sub.WSOCK32.dll_ntohs
movzx ecx, ax
push ecx
mov edx, dword [0x437834]
push edx
call sub.WSOCK32.dll_inet_ntoa
push eax
mov ecx, dword [0x42f868]
push ecx
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
push str.__u__accept_from__s_port__u
push 0x438790
call ebp
add esp, 0x14
sub bl, 0x49
push 0x438790
call fcn.0040cf20
mov ecx, dword [esp + 0x130]
add esp, 4
cmp bl, 1
push ecx
sbb eax, eax
push esi
mov ecx, dword [esp + 0x12c]
mov edx, dword [0x42f868]
neg eax
push eax
push ecx
push edx
call fcn.0040a510
add esp, 0x14
mov ecx, dword [0x42f868]
mov dword [0x42fcd8], eax
push ecx
call fcn.00416080
add esp, 4
mov dword [0x42f868], eax
cmp eax, 0xffffffff
je 0x40b43e
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f868], eax
push esi
push str.__u__looking_for_completion_line
call fcn.0040cf50
add esp, 8
push esi
call fcn.0040b610
add esp, 4
mov edi, eax
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
mov eax, dword [0x42f86c]
xor edi, edi
push eax
call fcn.004160f0
add esp, 4
mov dword [0x42f86c], eax
push 0x10
call fcn.0040bb30
add esp, 4
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
push eax
xor edi, edi
mov dword [0x42f86c], eax
call fcn.004160f0
add esp, 4
mov dword [0x42f86c], eax
push 0x10
call fcn.0040bb30
add esp, 4
mov eax, edi
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret
lea eax, [esp + 0x18]
push 0x100
push eax
mov ecx, dword [0x438580]
push 0x36c0
push ecx
call dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [esp + 0x18]
push ecx
push str.___s
call fcn.0040cf50
add esp, 8
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x108
ret