Function at 0x100ae4bb
Capabilities:
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x950
mov eax, dword [0x100e7260]
xor eax, ebp
mov dword [ebp - 4], eax
mov al, byte [0x100f6326]
mov byte [ebp - 0x84], al
push 0x7f
push 0
lea eax, [ebp - 0x83]
push eax
call fcn.1003e130
add esp, 0xc
mov al, byte [0x100f6327]
mov byte [ebp - 0x104], al
push 0x7f
push 0
lea eax, [ebp - 0x103]
push eax
call fcn.1003e130
add esp, 0xc
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 0x910], eax
mov eax, dword [ebp - 0x910]
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x90c], eax
mov eax, dword [ebp - 0x90c]
mov ecx, dword [ebp - 0x90c]
mov eax, dword [eax + 0x1eb4]
sub eax, dword [ecx + 0x1eb0]
inc eax
inc eax
push eax
mov eax, dword [ebp - 0x90c]
add eax, 0x1cb0
push eax
push 0x3c
push dword [ebp - 0x910]
call fcn.100aee4f
add esp, 0x10
mov eax, dword [ebp - 0x90c]
mov eax, dword [eax + 0x1eb0]
movzx eax, byte [eax]
and eax, 0xff
mov dword [ebp - 0x948], eax
mov eax, dword [ebp - 0x90c]
mov eax, dword [eax + 0x1eb0]
inc eax
mov ecx, dword [ebp - 0x90c]
mov dword [ecx + 0x1eb0], eax
mov eax, dword [ebp - 0x948]
mov dword [ebp - 0x930], eax
cmp dword [ebp - 0x930], 0x18
je 0x100ae5c5
cmp dword [ebp - 0x930], 0x23
je 0x100ae6e2
cmp dword [ebp - 0x930], 0x27
je 0x100ae7ff
jmp 0x100ae9ff
mov eax, dword [ebp - 0x90c]
add eax, 0x1c08
mov dword [ebp - 0x928], eax
mov eax, dword [ebp - 0x928]
inc eax
mov dword [ebp - 0x940], eax
mov eax, dword [ebp - 0x928]
mov al, byte [eax]
mov byte [ebp - 0x911], al
inc dword [ebp - 0x928]
cmp byte [ebp - 0x911], 0
jne 0x100ae5e3
mov eax, dword [ebp - 0x928]
sub eax, dword [ebp - 0x940]
mov dword [ebp - 0x938], eax
mov eax, dword [ebp - 0x938]
add eax, 6
mov dword [ebp - 0x908], eax
push 0xf0
push 0xff
mov eax, dword [ebp - 0x90c]
add eax, 0x1c08
push eax
push 0
push 0x18
push 0xfa
push 0xff
push 0x100eee98
push 0x800
lea eax, [ebp - 0x904]
push eax
call fcn.100990ee
add esp, 0x28
push 0
push dword [ebp - 0x908]
lea eax, [ebp - 0x904]
push eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp + 8]
push dword [ecx + eax + 0x1a8]
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x92c], eax
cmp dword [ebp - 0x92c], 0
jge 0x100ae6b7
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x918], eax
push dword [ebp - 0x918]
push 0x100eeea8
push dword [ebp - 0x910]
call fcn.10083b69
add esp, 0xc
mov eax, dword [ebp - 0x908]
dec eax
dec eax
push eax
xor eax, eax
inc eax
shl eax, 1
lea eax, [ebp + eax - 0x904]
push eax
push 0x3e
push dword [ebp - 0x910]
call fcn.100aee4f
add esp, 0x10
jmp 0x100ae9ff
mov eax, dword [ebp - 0x90c]
add eax, 0x1c28
mov dword [ebp - 0x920], eax
mov eax, dword [ebp - 0x920]
inc eax
mov dword [ebp - 0x950], eax
mov eax, dword [ebp - 0x920]
mov al, byte [eax]
mov byte [ebp - 0x912], al
inc dword [ebp - 0x920]
cmp byte [ebp - 0x912], 0
jne 0x100ae700
mov eax, dword [ebp - 0x920]
sub eax, dword [ebp - 0x950]
mov dword [ebp - 0x94c], eax
mov eax, dword [ebp - 0x94c]
add eax, 6
mov dword [ebp - 0x908], eax
push 0xf0
push 0xff
mov eax, dword [ebp - 0x90c]
add eax, 0x1c28
push eax
push 0
push 0x23
push 0xfa
push 0xff
push str._c_c_c_c_s_c_c
push 0x800
lea eax, [ebp - 0x904]
push eax
call fcn.100990ee
add esp, 0x28
push 0
push dword [ebp - 0x908]
lea eax, [ebp - 0x904]
push eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp + 8]
push dword [ecx + eax + 0x1a8]
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x92c], eax
cmp dword [ebp - 0x92c], 0
jge 0x100ae7d4
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x918], eax
push dword [ebp - 0x918]
push 0x100eeed4
push dword [ebp - 0x910]
call fcn.10083b69
add esp, 0xc
mov eax, dword [ebp - 0x908]
dec eax
dec eax
push eax
xor eax, eax
inc eax
shl eax, 1
lea eax, [ebp + eax - 0x904]
push eax
push 0x3e
push dword [ebp - 0x910]
call fcn.100aee4f
add esp, 0x10
jmp 0x100ae9ff
push 0
push 0x27
push 0xfa
push 0xff
push 0x100eeef0
push 0x800
lea eax, [ebp - 0x904]
push eax
call fcn.100990ee
add esp, 0x1c
mov dword [ebp - 0x908], 4
mov eax, dword [ebp - 0x90c]
mov eax, dword [eax + 0x1cac]
mov dword [ebp - 0x924], eax
jmp 0x100ae853
mov eax, dword [ebp - 0x924]
mov eax, dword [eax + 4]
mov dword [ebp - 0x924], eax
cmp dword [ebp - 0x924], 0
je 0x100ae941
mov eax, dword [ebp - 0x924]
mov eax, dword [eax]
mov dword [ebp - 0x91c], eax
mov eax, dword [ebp - 0x91c]
inc eax
mov dword [ebp - 0x944], eax
mov eax, dword [ebp - 0x91c]
mov al, byte [eax]
mov byte [ebp - 0x913], al
inc dword [ebp - 0x91c]
cmp byte [ebp - 0x913], 0
jne 0x100ae87b
mov eax, dword [ebp - 0x91c]
sub eax, dword [ebp - 0x944]
mov dword [ebp - 0x93c], eax
mov eax, dword [ebp - 0x93c]
inc eax
mov dword [ebp - 0x934], eax
mov eax, dword [ebp - 0x908]
add eax, dword [ebp - 0x934]
cmp eax, 0x7fa
jae 0x100ae93c
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x84]
push eax
push str._127_____127s
mov eax, dword [ebp - 0x924]
push dword [eax]
call fcn.1003f0b9
add esp, 0x10
test eax, eax
je 0x100ae93c
lea eax, [ebp - 0x104]
push eax
push 1
lea eax, [ebp - 0x84]
push eax
push 0
push str._c_s_c_s
mov eax, 0x800
sub eax, dword [ebp - 0x908]
push eax
mov eax, dword [ebp - 0x908]
lea eax, [ebp + eax - 0x904]
push eax
call fcn.100990ee
add esp, 0x1c
mov eax, dword [ebp - 0x908]
add eax, dword [ebp - 0x934]
mov dword [ebp - 0x908], eax
jmp 0x100ae844
push 0xf0
push 0xff
push 0x100eef18
mov eax, 0x800
sub eax, dword [ebp - 0x908]
push eax
mov eax, dword [ebp - 0x908]
lea eax, [ebp + eax - 0x904]
push eax
call fcn.100990ee
add esp, 0x14
mov eax, dword [ebp - 0x908]
inc eax
inc eax
mov dword [ebp - 0x908], eax
push 0
push dword [ebp - 0x908]
lea eax, [ebp - 0x904]
push eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp + 8]
push dword [ecx + eax + 0x1a8]
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x92c], eax
cmp dword [ebp - 0x92c], 0
jge 0x100ae9d9
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x918], eax
push dword [ebp - 0x918]
push 0x100eef20
push dword [ebp - 0x910]
call fcn.10083b69
add esp, 0xc
mov eax, dword [ebp - 0x908]
dec eax
dec eax
push eax
xor eax, eax
inc eax
shl eax, 1
lea eax, [ebp + eax - 0x904]
push eax
push 0x3e
push dword [ebp - 0x910]
call fcn.100aee4f
add esp, 0x10
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1003d588
mov esp, ebp
pop ebp
ret