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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x158
push ebx
push esi
push edi
cmp dword [0x449d8e], 0
jne 0x430eec
xor eax, eax
jmp 0x43113a
mov eax, dword [ebp + 8]
push eax
push 0
call fcn.00432510
add esp, 8
test eax, eax
jne 0x430f08
mov eax, 0xfffffff7
jmp 0x43113a
call fcn.00432400
mov dword [ebp - 0xc], 0
jmp 0x430f1f
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x449d96]
jge 0x430f4a
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 1]
mov edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx + 0x449d9a]
cmp ecx, eax
jne 0x430f48
xor eax, eax
jmp 0x43113a
jmp 0x430f16
mov ecx, dword [0x449dde]
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0
jne 0x430f60
xor eax, eax
jmp 0x43113a
push 0x44a1a0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edx, dword [0x449d8e]
add edx, 0x20
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + 1]
mov byte [eax + 1], dl
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + 2]
mov byte [eax + 2], dl
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 3]
mov word [eax + 3], dx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 5]
mov word [eax + 5], dx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0xf], ecx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
mov cx, word [eax + 7]
mov word [edx + 7], cx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
mov cx, word [eax + 9]
mov word [edx + 9], cx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
mov cx, word [eax + 0xb]
mov word [edx + 0xb], cx
push 0x20
push 0
mov edx, dword [0x449d8e]
push edx
call sub.MSVCRT.dll_memset
add esp, 0xc
mov eax, dword [0x449d8e]
mov ecx, dword [0x449d7c]
mov dword [eax], ecx
mov edx, dword [0x449d8e]
mov dword [edx + 4], 0x7d04
mov eax, dword [0x449d8e]
mov word [eax + 8], 1
mov ecx, dword [0x449d8e]
mov dx, word [ebp + 0x10]
mov word [ecx + 0xa], dx
mov eax, dword [0x449d8e]
mov word [eax + 0xc], 0x33
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0x7a120
mov dword [ebp - 0x110], 0
cmp dword [ebp - 0x110], 0x40
jae 0x431082
mov ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 4]
mov eax, dword [edx + 4]
mov dword [ebp + ecx*4 - 0x10c], eax
mov ecx, dword [ebp - 0x110]
add ecx, 1
mov dword [ebp - 0x110], ecx
xor edx, edx
test edx, edx
jne 0x431057
lea eax, [ebp - 0x118]
push eax
push 0
lea ecx, [ebp - 0x110]
push ecx
push 0
push 0
call sub.WSOCK32.dll_select
push 0
mov edx, dword [0x449d8e]
xor eax, eax
mov ax, word [edx + 0xc]
push eax
mov ecx, dword [0x449d8e]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx + 4]
push eax
call sub.WSOCK32.dll_send
cmp eax, 0xffffffff
jne 0x431102
call sub.WSOCK32.dll_WSAGetLastError
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 4]
push edx
push str.WMC____4.4X___wmc_SendWertX:_Send_FAILED_with__d___n
push 0x44a1e0
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
push 0x44a1e0
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push 0x44a1a0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x43113a
cmp dword [0x44a1bc], 0
je 0x43112a
call fcn.00432630
cmp dword [0x449de8], 0
je 0x43112a
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call dword [0x449de8]
add esp, 0xc
push 0x44a1a0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret