Function at 0x420440
Capabilities:
Send data
Send data on socket
Set socket configuration

Disassembly:
sub esp, 0x18
xor eax, eax
push ebx
mov dword [esp + 0xc], eax
push ebp
mov dword [esp + 0x14], eax
push esi
push edi
mov dword [esp + 0x20], eax
push 0x46bc30
mov dword [esp + 0x28], eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
push 0x3490
mov dword [esp + 0x20], eax
mov word [esp + 0x1c], 2
call dword [sym.imp.WSOCK32.dll_htons]
push 0x45818c
push 0x462ec0
mov word [esp + 0x22], ax
call fcn.0040eff5
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x14], esi
jne 0x4204b5
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.00420420
add esp, 4
mov eax, 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
mov edi, 1
push esi
mov dword [0x45fa30], edi
call fcn.00420a00
push esi
mov dword [0x46af64], eax
call fcn.00420a30
add esp, 8
test eax, eax
je 0x4204f8
mov edx, dword [esp + 0x2c]
push edx
call fcn.00420420
push esi
call fcn.0040ef47
add esp, 8
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
push 0xa
push 0
push 0x46b400
mov dword [0x469718], 0
call fcn.0040ecaa
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x1c], eax
mov eax, dword [0x45fa30]
add esp, 0xc
cmp eax, edi
jne 0x4206d4
xor ebp, ebp
mov ecx, 0x100
xor eax, eax
mov edi, 0x463a60
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov dword [0x4611fc], ebp
mov edx, 0x463a74
mov eax, 0x46af80
cmp byte [eax], 0
je 0x420589
lea edi, [edx - 0x14]
mov ecx, 5
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax + 0x18]
mov dword [edx], ecx
mov ecx, dword [eax + 0x1c]
mov dword [edx + 4], ecx
mov ecx, dword [eax + 0x20]
cmp ecx, 1
lea ecx, [edx + 8]
jne 0x420575
mov byte [ecx], 2
jmp 0x420578
mov byte [ecx], 1
mov esi, dword [esp + 0x14]
add eax, 0x24
add edx, 0x20
cmp eax, 0x46b400
jb 0x420549
push 0x400
push 4
push 0x463a60
call fcn.004214a0
add esp, 0xc
mov edi, dword [sym.imp.WSOCK32.dll_sendto]
lea edx, [esp + 0x18]
push 0x10
push edx
push 0
push 0x43e
push 0x462a80
push ebx
call edi
cmp eax, 0x43e
jne 0x4206ed
mov edx, dword [0x4611fc]
mov eax, dword [esp + 0x10]
inc edx
push eax
mov dword [0x4611fc], edx
call fcn.00420970
mov eax, dword [0x45fa30]
add esp, 4
cmp eax, 1
jne 0x4206b9
mov ecx, dword [0x4611fc]
mov edx, dword [0x46af64]
shl ecx, 0xa
sub edx, ecx
push 0x400
add edx, 0x400
push 0x463a60
cmp edx, 0x400
push ebp
push esi
jbe 0x42066c
call fcn.00420ab0
push 0x400
push 1
push 0x463a60
call fcn.004214a0
add esp, 0x1c
lea eax, [esp + 0x18]
push 0x10
push eax
push 0
push 0x43e
push 0x462a80
push ebx
call edi
cmp eax, 0x43e
jne 0x4206ed
mov eax, dword [0x4611fc]
mov ecx, dword [esp + 0x10]
add ebp, 0x400
inc eax
mov dword [0x4611fc], eax
push ecx
jmp 0x4205d6
call fcn.00420ab0
mov edx, dword [0x4611fc]
mov eax, dword [0x46af64]
shl edx, 0xa
sub eax, edx
add eax, 0x400
push eax
push 2
push 0x463a60
call fcn.004214a0
add esp, 0x1c
lea ecx, [esp + 0x18]
push 0x10
push ecx
push 0
push 0x43e
push 0x462a80
push ebx
call edi
cmp eax, 0x43e
jne 0x4206ed
inc dword [0x469718]
mov edx, dword [esp + 0x10]
push edx
call fcn.00420970
mov eax, dword [0x45fa30]
add esp, 4
cmp eax, 1
je 0x420528
push ebx
call fcn.00420420
push esi
call fcn.0040ef47
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
push ebx
call fcn.00420420
push esi
call fcn.0040ef47
add esp, 8
mov dword [0x45fa30], 0
mov eax, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret