Function at 0x420eb0
Capabilities:
Create raw socket
Create tcp socket
Create udp socket

Disassembly:
mov eax, 0x1810
call fcn.00457d20
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov eax, dword [ebp + 4]
mov ecx, dword [eax + 0x64]
test ecx, ecx
je 0x420ef9
mov ecx, dword [eax + 0xc70]
test ecx, ecx
je 0x420ef9
mov ecx, dword [eax + 0xc8c]
test ecx, ecx
je 0x420ef9
call fcn.00419050
test al, al
jne 0x420ef9
mov eax, dword [esp + 0x1824]
mov ecx, dword [eax + 0x24]
push ecx
mov ecx, ebp
call fcn.004239b0
mov edi, str.CCProxy_Telnet_CCProxy_Telnet_Service_Ready._r_nCCProxy_Telnet_
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x1824]
repne scasb al, byte es:[edi]
mov ebx, dword [edx + 4]
lea edx, [esp + 0x81c]
not ecx
sub edi, ecx
mov byte [esp + 0x181c], 0
mov eax, ecx
mov esi, edi
mov edi, edx
mov dword [esp + 0x10], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x81c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x820]
push ecx
push ebx
mov ecx, ebp
call fcn.0041c1d0
test eax, eax
jne 0x420f70
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1810
ret 4
mov eax, dword [ebp + 8]
mov dword [esp + 0x18], 0xc
test eax, eax
je 0x42120a
mov eax, dword [esp + 0x1824]
cmp dword [eax + 0x1c], 2
jne 0x42120a
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x18]
push edx
push ecx
push eax
push ebx
mov ecx, ebp
call fcn.00421450
test eax, eax
je 0x421234
mov eax, dword [esp + 0x18]
cmp eax, 7
ja case.0x420fbc.4
jmp dword [eax*4 + 0x421244]
lea edx, [esp + 0x1c]
push 0x48d1cc
push edx
call fcn.00457ca0
mov esi, eax
add esp, 8
test esi, esi
je 0x420feb
push esi
call fcn.004584b2
add esp, 4
mov ebx, eax
mov byte [esi], 0
jmp 0x420ff0
mov ebx, 0x17
lea edi, [esp + 0x1c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x41c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0
mov eax, ecx
mov esi, edi
mov edi, edx
push 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 2
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.WS2_32.dll_socket]
mov esi, dword [esp + 0x10]
lea ecx, [esp + 0x41c]
push ebx
lea edx, [esp + 0x18]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1828]
push ecx
push edx
push esi
push eax
mov ecx, ebp
call fcn.00421270
mov eax, dword [esp + 0x14]
test eax, eax
je 0x421059
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
push str._r_nCCProxy_Telnet_
push esi
mov ecx, ebp
call fcn.0041c1a0
mov ebx, dword [esp + 0x10]
jmp 0x4211ff
mov al, byte [esp + 0x1c]
test al, al
je 0x4211a7
mov al, byte [0x48d1cc]
test al, al
je 0x4211a7
mov edi, 0x48d1cc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x1c]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
ja 0x4211a7
mov al, byte [esp + 0x1c]
test al, al
je 0x4211a7
mov edi, 0x48d1cc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x1c]
push ecx
push eax
push 0x48d1cc
call fcn.00458090
add esp, 0xc
test eax, eax
jne 0x421123
mov edi, 0x48d1cc
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edx, 1
sub edx, ecx
lea edi, [esp + 0x1c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x48d1cc
add edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
lea eax, [esp + ecx + 0x20]
lea ecx, [esp + 0x20]
push eax
push ecx
call fcn.00457d50
add esp, 0xc
jmp 0x4210ad
mov al, byte [esp + 0x1c]
test al, al
je 0x4211a7
mov edi, 0x48d1cc
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x1c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x1c]
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, 0x48d1cc
add edx, ecx
mov cl, byte [esi]
mov al, cl
cmp cl, byte [edx]
jne 0x421177
test al, al
je 0x421173
mov cl, byte [esi + 1]
mov al, cl
cmp cl, byte [edx + 1]
jne 0x421177
add esi, 2
add edx, 2
test al, al
jne 0x421153
xor eax, eax
jmp 0x42117c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4211a7
mov edi, 0x48d1cc
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + 0x1c]
sub edx, ecx
lea edi, [esp + 0x1c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [edx + ecx], al
jmp 0x421123
lea edi, [esp + 0x1c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x41c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x41c]
push ecx
push ebx
mov ecx, ebp
call fcn.0042aaf0
push str._r_nCCProxy_Telnet_
push ebx
mov ecx, ebp
call fcn.0041c1a0
jmp 0x4211ff
push str.Commands_may_be_abbreviated._Supported_commands_are:_r_n_r_no_t__open_hostname__port__t_tconnect_to_hostname__default_port_23__r_np_t__ping_hostname_t_t_tping_hostname_r_nq_t__quit_t_t_t_texit_telnet_r_nCCProxy_Telnet_
push ebx
mov ecx, ebp
call fcn.0041c1a0
test eax, eax
je 0x421234
mov eax, dword [ebp + 8]
test eax, eax
jne 0x420f83
pop edi
pop esi
pop ebp
mov eax, 0x10
pop ebx
add esp, 0x1810
ret 4
push str.CCProxy_Telnet_Bye__r_n
push ebx
mov ecx, ebp
call fcn.0041c1a0
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1810
ret 4