Function at 0x42e890
Capabilities:
Set socket configuration

Disassembly:
sub esp, 0x3ec
push ebx
push ebp
mov ebp, dword [esp + 0x40c]
push esi
push edi
mov edi, ecx
mov ecx, ebp
mov esi, edx
mov dword [esp + 0x10], edi
call fcn.004e2760
xor ebx, ebx
test eax, eax
jne 0x42e8ce
mov ecx, edi
call fcn.004e28b0
cmp eax, ebx
mov dword [esp + 0x414], eax
je 0x42ed7d
mov ebp, eax
cmp dword [esp + 0x400], ebx
mov al, byte [0x5a9e28]
jne 0x42e90f
test al, 0x20
je 0x42e943
lea edx, [esp + 0x14]
mov ecx, 0x534
call fcn.0041d620
mov eax, dword [0x5a5508]
mov ecx, dword [ebp]
push eax
lea edx, [esp + 0x18]
call fcn.00503ad0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
test al, 0x10
je 0x42e943
lea edx, [esp + 0x14]
mov ecx, 0x535
call fcn.0041d620
mov ecx, dword [0x5a5508]
push ecx
mov ecx, dword [ebp]
lea edx, [esp + 0x18]
call fcn.00503ad0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
mov edx, 0x64
mov ecx, 0x5a3a50
call fcn.0041ef30
cmp esi, ebx
je 0x42e966
push esi
mov edx, 0x64
mov ecx, 0x5a3a50
call fcn.0041ee40
cmp byte [0x5a3a50], bl
mov edi, dword [esp + 0x404]
jne 0x42e9c8
cmp edi, ebx
jne 0x42ed7d
mov ecx, dword [0x5b4314]
push ebx
push 0x467fe0
mov edx, 0x122
call fcn.004675d0
cmp byte [0x5a3a50], bl
je 0x42ed7d
mov ecx, ebp
call fcn.004e2760
test eax, eax
jne 0x42e9c8
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.004e28b0
cmp eax, ebx
mov dword [esp + 0x414], eax
je 0x42ed7d
mov ebp, eax
jmp 0x42e9cc
mov esi, dword [esp + 0x10]
mov edx, ebp
mov ecx, 0x5a3a50
call fcn.004ff610
test al, al
jne 0x42ed7d
push 0x2c
push 0x5a3a50
call fcn.00570260
add esp, 8
cmp eax, ebx
je 0x42ea01
mov byte [eax], bl
cmp byte [0x5a3a50], bl
je 0x42ed7d
push 0x2e
push 0x5a3a50
call fcn.00570260
add esp, 8
test eax, eax
jne 0x42edc9
cmp dword [esp + 0x400], 2
je 0x42edc9
mov edx, ebp
mov ecx, esi
call fcn.004e2da0
test eax, eax
jne 0x42ed7d
mov edx, ebp
mov ecx, esi
call fcn.004e29f0
test eax, eax
jne 0x42ed7d
call fcn.0042c390
mov esi, eax
cmp esi, ebx
jne 0x42ea72
mov ecx, dword [ebp]
push 2
push ebx
mov edx, str.dcc_chat
call fcn.00479790
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
mov dword [esi + 0x528], edi
lea edi, [esi + 0x3f0]
push 0x5a3a50
mov edx, 0x64
mov ecx, edi
mov dword [esi + 0x520], 1
mov dword [esi + 0x878], ebx
mov dword [esi + 0x87c], ebx
mov dword [esi + 0x888], ebp
mov dword [esi + 0x534], ebx
call fcn.0041ee40
mov edx, 0x64
mov ecx, 0x5a3a50
call fcn.0041ef30
mov eax, dword [esp + 0x400]
mov ecx, 1
cmp eax, ecx
jne 0x42ec03
mov eax, dword [esp + 0x410]
cmp eax, ecx
mov dword [esi + 0x528], ecx
mov dword [esi + 0x540], ecx
mov dword [esi + 0x868], eax
jge 0x42eaf9
mov dword [esi + 0x868], ecx
jmp 0x42eb08
cmp eax, 0x14
jle 0x42eb08
mov dword [esi + 0x868], 0x14
mov edx, dword [esp + 0x408]
lea ebp, [esi + 0x544]
push edx
mov edx, 0x104
mov ecx, ebp
call fcn.0041ee40
push ebp
lea ecx, [esi + 0x648]
mov edx, 0x104
call fcn.0041ee40
mov eax, dword [esp + 0x40c]
push eax
lea ecx, [esi + 0x74c]
mov edx, 0x104
call fcn.0041ee40
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
push edi
lea ecx, [esp + 0x18]
push str.Serve__s
push ecx
call ebp
add esp, 0xc
xor edx, edx
mov ecx, esi
call fcn.0042ca80
cmp eax, ebx
mov dword [esi], eax
jne 0x42eba7
mov edx, dword [esi + 0x888]
push edx
push 1
push 4
mov edx, 2
lea ecx, [esp + 0x20]
call fcn.00548f10
cmp eax, ebx
mov dword [esi], eax
jne 0x42ebc7
xor edx, edx
mov ecx, esi
call fcn.0042c970
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
mov ecx, eax
call fcn.00542c90
cmp eax, ebx
je 0x42ebc7
cmp dword [eax + 0x6cc], ebx
je 0x42ebc7
mov edx, dword [0x5a5504]
mov ecx, dword [esi]
call fcn.00502b10
push edi
xor edx, edx
mov ecx, 0x533
call fcn.0041d620
push eax
lea eax, [esp + 0x1c]
push eax
call ebp
mov ecx, dword [0x5a5508]
add esp, 0xc
mov dword [0x59bcec], ebx
push ecx
mov ecx, dword [esi]
lea edx, [esp + 0x18]
call fcn.00502c40
mov ebp, dword [esp + 0x414]
jmp 0x42ecb7
push edi
lea edx, [esp + 0x18]
push str.Chat__s
push edx
mov dword [esi + 0x540], ebx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
xor edx, edx
mov ecx, esi
call fcn.0042ca80
cmp eax, ebx
mov dword [esi], eax
jne 0x42ec63
mov eax, dword [esi + 0x888]
push eax
push 5
push 3
mov edx, 2
lea ecx, [esp + 0x20]
call fcn.00548f10
cmp eax, ebx
mov dword [esi], eax
jne 0x42ec83
xor edx, edx
mov ecx, esi
call fcn.0042c970
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
mov ecx, eax
call fcn.00542c90
cmp eax, ebx
je 0x42ec83
cmp dword [eax + 0x6cc], ebx
je 0x42ec83
mov edx, dword [0x5a5504]
mov ecx, dword [esi]
call fcn.00502b10
push edi
xor edx, edx
mov ecx, 0x532
call fcn.0041d620
push eax
lea ecx, [esp + 0x1c]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
mov edx, dword [0x5a5508]
add esp, 0xc
mov dword [0x59bcec], ebx
mov ecx, dword [esi]
push edx
lea edx, [esp + 0x18]
call fcn.00502c40
xor edx, edx
mov ecx, esi
call fcn.0042c5c0
cmp dword [0x5b431c], ebx
je 0x42eceb
mov eax, dword [esi]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x42eceb
mov ecx, dword [esi]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x42eceb
mov edx, dword [esi]
push edx
call dword [sym.imp.USER32.dll_SetActiveWindow]
cmp dword [0x5a8b60], ebx
je 0x42edaa
push ebp
push 0xffffffffffffffff
push 0xffffffffffffffff
xor edx, edx
xor ecx, ecx
call fcn.0048a3e0
cmp byte [0x5a8a28], bl
je 0x42ed68
cmp dword [0x5a8b68], ebx
lea edi, [esi + 0x4b8]
mov edx, 0x64
mov ecx, edi
je 0x42ed29
push 0x5a8a28
jmp 0x42ed30
lea eax, [ebp + 0x8a4]
push eax
call fcn.0041ee40
mov word [esi + 0x51c], bx
call fcn.0041ec80
push edi
mov dword [esi + 0x52c], eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
jne 0x42ed8c
mov ecx, dword [ebp]
push 9
push ebx
push edi
mov edx, str.firewall
call fcn.00470c10
test eax, eax
jne 0x42eddb
xor edx, edx
mov ecx, 0x519
call fcn.0041d620
mov edx, eax
mov ecx, esi
call fcn.0042cb60
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3ec
ret 0x18
push 5
push ebx
mov edx, edi
mov ecx, esi
call fcn.0042c640
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3ec
ret 0x18
mov edx, 3
mov ecx, esi
call fcn.0042cf70
pop edi
neg eax
pop esi
sbb eax, eax
pop ebp
neg eax
pop ebx
add esp, 0x3ec
ret 0x18
mov edx, dword [esp + 0x400]
push ebp
mov ecx, 0x5a3a50
call fcn.0042e6b0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3ec
ret 0x18