Function at 0x462be9
Capabilities:
Get socket status
Print debug messages
Send data
Send data on socket

Disassembly:
sub esp, 0x120
mov eax, dword [0x4af040]
xor eax, esp
mov dword [esp + 0x11c], eax
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ecx, dword [esp + 0x134]
mov eax, dword [edi + 0x170]
test eax, eax
je 0x462c22
push ecx
push eax
mov ecx, edi
call fcn.00463815
jmp 0x462e14
mov edx, dword [edi + 0x118]
xor esi, esi
mov ebx, edx
mov ebp, esi
lea eax, [ebx + 1]
mov dword [esp + 0x14], eax
mov al, byte [ebx]
inc ebx
test al, al
jne 0x462c35
sub ebx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], esi
test edx, edx
je 0x462e2f
jmp 0x462cc5
mov eax, dword [edi + 0x120]
lea ecx, [esp + 0x18]
push ecx
push esi
lea ecx, [esp + 0x28]
mov dword [esp + 0x2c], eax
push ecx
push esi
inc eax
mov dword [esp + 0x30], 1
push eax
call dword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
je 0x462da8
test eax, eax
je 0x462d50
lea eax, [esp + 0x20]
push eax
push dword [edi + 0x120]
call dword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
je 0x462cc5
mov eax, dword [edi + 0x118]
push esi
push ebx
add eax, ebp
push eax
push dword [edi + 0x120]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x462cfb
test eax, eax
je 0x462cfb
sub ebx, eax
add ebp, eax
test ebx, ebx
jg 0x462c55
push dword [edi + 0x118]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x462e14
mov ecx, dword [edi + 0x120]
cmp dword [esp + esi*4 + 0x24], ecx
je 0x462dfa
inc esi
cmp esi, eax
jb 0x462ce7
jmp 0x462e14
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x462d39
mov eax, dword [edi + 0x120]
cmp dword [esp + esi*4 + 0x24], eax
je 0x462d16
inc esi
cmp esi, ecx
jb 0x462d09
jmp 0x462d39
lea eax, [ecx - 1]
cmp esi, eax
jae 0x462d34
lea edx, [esp + 0x28]
mov eax, dword [edx + esi*4]
mov dword [esp + esi*4 + 0x24], eax
inc esi
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 1]
cmp esi, eax
jb 0x462d21
dec ecx
mov dword [esp + 0x20], ecx
push 0x66
lea ecx, [esp + 0x18]
call fcn.0045f848
push 0x4ac264
mov eax, ecx
jmp 0x462e44
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x462d8e
mov eax, dword [edi + 0x120]
cmp dword [esp + esi*4 + 0x24], eax
je 0x462d6b
inc esi
cmp esi, ecx
jb 0x462d5e
jmp 0x462d8e
lea eax, [ecx - 1]
cmp esi, eax
jae 0x462d89
lea edx, [esp + 0x28]
mov eax, dword [edx + esi*4]
mov dword [esp + esi*4 + 0x24], eax
inc esi
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 1]
cmp esi, eax
jb 0x462d76
dec ecx
mov dword [esp + 0x20], ecx
push 0x192
lea ecx, [esp + 0x18]
call fcn.0045f848
push 0x4ac264
mov eax, ecx
jmp 0x462e44
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x462de6
mov eax, dword [edi + 0x120]
cmp dword [esp + esi*4 + 0x24], eax
je 0x462dc3
inc esi
cmp esi, ecx
jb 0x462db6
jmp 0x462de6
lea eax, [ecx - 1]
cmp esi, eax
jae 0x462de1
lea edx, [esp + 0x28]
mov eax, dword [edx + esi*4]
mov dword [esp + esi*4 + 0x24], eax
inc esi
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 1]
cmp esi, eax
jb 0x462dce
dec ecx
mov dword [esp + 0x20], ecx
push 0x6d
lea ecx, [esp + 0x18]
call fcn.0045f848
push 0x4ac264
mov eax, ecx
jmp 0x462e44
dec eax
cmp esi, eax
jae 0x462e14
lea ecx, [esp + 0x28]
mov eax, dword [ecx + esi*4]
mov dword [esp + esi*4 + 0x24], eax
inc esi
mov eax, dword [esp + 0x20]
dec eax
cmp esi, eax
jb 0x462e03
mov ecx, dword [esp + 0x12c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0046f32e
add esp, 0x120
ret 4
push 0x19b
lea ecx, [esp + 0x18]
call fcn.0045f848
push 0x4ac264
mov eax, ecx
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3