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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0xa044
call fcn.00463a90
mov eax, dword [0x4b9430]
xor eax, ebp
mov dword [ebp - 4], eax
mov edx, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0xc]
xor eax, eax
test byte [edx + 0x174], 0x30
push edi
mov edi, dword [edx + 0x84]
mov dword [ebp - 0xa028], edx
mov dword [ebp - 0xa030], edi
mov dword [ebp - 0xa02c], 0xa000
mov dword [ebp - 0xa024], ebx
mov dword [ebp - 0xa034], eax
mov dword [ebp - 0xa038], eax
je 0x419243
cmp dword [edx + 0x14c], 3
jne 0x4191e8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045d3b4
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0xa020]
push eax
lea ecx, [ebp - 0xa024]
push ecx
lea eax, [ebp - 0xa02c]
mov ecx, esi
mov ebx, edx
call fcn.00423f40
add esp, 8
test eax, eax
jne 0x4194e8
mov ecx, dword [ebp - 0xa024]
mov edx, dword [ebp - 0xa02c]
mov eax, dword [ebp + 0x10]
add esi, ecx
sub eax, ecx
mov dword [ebp - 0xa03c], esi
mov dword [ebp - 0xa024], edx
mov ebx, edx
mov edx, dword [ebp - 0xa028]
mov dword [ebp - 0xa038], eax
lea esi, [ebp - 0xa020]
test ebx, ebx
je 0x4191d5
lea eax, [esi + ebx]
mov dword [ebp - 0xa040], eax
mov eax, dword [edx + 0x11c]
mov dword [ebp - 0xa02c], eax
test eax, eax
je 0x4192b1
cmp word [edx + 0x152], 0
jne 0x4192b1
push str.__HEAD_
mov edx, esi
call fcn.004159b0
add esp, 4
test eax, eax
jne 0x41928c
push str._BODY
mov edx, esi
call fcn.004159b0
add esp, 4
mov dword [ebp - 0xa034], eax
test eax, eax
je 0x4192b1
mov eax, dword [ebp - 0xa02c]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4192a0
sub eax, edx
add ebx, eax
mov dword [ebp - 0xa024], ebx
push ebx
push str._x_r_n
lea ecx, [ebp - 0x18]
push 0x13
push ecx
call fcn.0041c480
lea eax, [ebp - 0x18]
add esp, 0x10
lea edx, [eax + 1]
jmp 0x4192d0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4192d0
sub eax, edx
mov ebx, eax
je 0x419311
lea edx, [ebp - 0x18]
push edx
push ebx
push edi
push str.to_socket__d:__N
push 0x10
call fcn.004090c0
add esp, 0x14
push 0
push ebx
lea eax, [ebp - 0x18]
push eax
push edi
call dword [sym.imp.WS2_32.dll_send]
xor ecx, ecx
cmp eax, ebx
setne cl
mov eax, ecx
test eax, eax
jne 0x4194e8
mov ebx, dword [ebp - 0xa034]
test ebx, ebx
je 0x4194ac
sub ebx, esi
mov eax, dword [ebp - 0xa028]
mov edx, 1
mov word [eax + 0x152], dx
je 0x419363
push esi
push ebx
push edi
push str.to_socket__d:__N
push 0x10
call fcn.004090c0
add esp, 0x14
push 0
push ebx
push esi
push edi
call dword [sym.imp.WS2_32.dll_send]
xor ecx, ecx
cmp eax, ebx
setne cl
mov eax, ecx
test eax, eax
jne 0x4194e8
mov edx, dword [ebp - 0xa028]
mov edx, dword [edx + 0x11c]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419374
sub eax, esi
je 0x419398
mov ebx, dword [ebp - 0xa030]
mov esi, eax
mov edi, edx
call fcn.0040cd80
test eax, eax
jne 0x4194e8
mov edi, ebx
mov eax, dword [ebp - 0xa040]
mov ecx, dword [ebp - 0xa034]
sub eax, ecx
je 0x4193c1
mov ebx, dword [ebp - 0xa030]
mov esi, eax
mov edi, ecx
call fcn.0040cd80
test eax, eax
jne 0x4194e8
mov edi, ebx
mov eax, dword [ebp - 0xa028]
mov eax, dword [eax + 0x11c]
test eax, eax
je 0x4193ea
push eax
call fcn.0045d483
mov ecx, dword [ebp - 0xa028]
add esp, 4
mov dword [ecx + 0x11c], 0
mov ebx, dword [ebp - 0xa024]
push 0x4ad3ec
push 2
push edi
push str.to_socket__d:__N
push 0x10
call fcn.004090c0
add esp, 0x14
push 0
push 2
push 0x4ad3ec
push edi
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 2
jne 0x4194e8
cmp dword [ebp + 0x14], 0
mov esi, dword [ebp - 0xa028]
jne 0x419435
cmp dword [esi + 0x14c], 3
jne 0x41946d
push str.0_r_n_r_n
push 5
push edi
mov eax, 1
push str.to_socket__d:__N
push 0x10
mov word [esi + 0x150], ax
call fcn.004090c0
add esp, 0x14
push 0
push 5
push str.0_r_n_r_n
push edi
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 5
jne 0x4194e8
cmp dword [esi + 0x14c], 2
jne 0x4194fc
mov eax, dword [ebp - 0xa038]
test eax, eax
je 0x4194fc
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0xa03c]
push ecx
push eax
push edx
push esi
call fcn.00419170
add esp, 0x10
add eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045d3b4
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0xa024]
test ebx, ebx
je 0x4193f0
push esi
push ebx
push edi
push str.to_socket__d:__N
push 0x10
call fcn.004090c0
add esp, 0x14
push 0
push ebx
push esi
push edi
call dword [sym.imp.WS2_32.dll_send]
xor edx, edx
cmp eax, ebx
setne dl
mov eax, edx
test eax, eax
je 0x4193f0
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045d3b4
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov eax, ebx
xor ecx, ebp
pop ebx
call fcn.0045d3b4
mov esp, ebp
pop ebp
ret