Function at 0x40a630
Capabilities:
Create thread
Send data
Send data on socket

Disassembly:
sub esp, 0x18
fldz
xor eax, eax
mov word [esp], ax
fst dword [esp + 4]
fst dword [esp + 0xc]
push ebx
fldz
push ebp
fstp qword [esp + 0x18]
xor ebp, ebp
push esi
xor esi, esi
mov dword [0x4276ec], ebp
fstp dword [esp + 0x14]
mov dword [esp + 0xc], ebp
fld qword [0x423148]
push edi
fsub qword [0x41fa10]
fstp qword [0x423148]
cmp dword [0x425870], ebp
je 0x40a6d7
mov edi, dword [sym.imp.KERNEL32.dll_CreateThread]
or ebx, 0xffffffff
push ebp
push ebp
push esi
push 0x402b60
push ebp
push ebp
mov dword [esi*4 + 0x427228], ebp
call edi
mov cx, word [0x424e50]
mov edx, dword [0x425da0]
movsx eax, cx
mov ecx, dword [esp + 0x10]
sub eax, edx
lea edx, [ecx + eax + 0x217a8bf9]
mov dword [esp + 0x10], edx
add dword [0x425da0], ebx
inc esi
fld qword [0x423148]
fsub qword [0x41fa10]
fstp qword [0x423148]
cmp esi, dword [0x425870]
jne 0x40a682
mov ax, word [0x423378]
mov ecx, dword [0x424224]
cwde
add ecx, eax
mov dword [esp + 0x20], ecx
fild dword [esp + 0x20]
fadd dword [esp + 0x14]
mov dx, word [0x424e40]
movsx eax, dx
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmulp st(1)
call fcn.0040b030
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov word [0x424e40], ax
inc word [0x423378]
mov ecx, dword [esp + 0x10]
sub ecx, 0x37191de8
mov dword [esp + 0x20], ecx
fild dword [esp + 0x20]
push 0xa
fsub dword [esp + 0x20]
fmul dword [esp + 0x1c]
fstp dword [esp + 0x1c]
call edi
fld dword [0x4230b0]
fadd qword [0x41fa08]
fsubr qword [0x41fa00]
fcomp qword [0x41f9f8]
fnstsw ax
test ah, 0x41
jne 0x40a775
mov dx, word [0x425970]
movsx eax, dx
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fstp dword [esp + 0x1c]
mov ebx, dword [sym.imp.KERNEL32.dll_SetEvent]
mov esi, 0x425874
mov cx, word [0x4252f0]
movsx edx, cx
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
fld dword [esp + 0x1c]
fsub qword [0x41f9f0]
fsubp st(1)
call fcn.0040b030
mov word [0x4252f0], ax
movzx eax, word [esi]
mov ecx, dword [eax*4 + 0x427228]
push ecx
call ebx
movzx edx, word [esi]
cmp dword [edx*4 + 0x427228], ebp
je 0x40a7ef
mov eax, dword [esp + 0x10]
sub eax, 0x1a93d3d
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0xa
fadd dword [0x4230c4]
fstp dword [0x4230c4]
call edi
movzx ecx, word [esi]
cmp dword [ecx*4 + 0x427228], ebp
jne 0x40a7c2
fld dword [esp + 0x14]
call fcn.0040b030
mov word [0x4232f8], ax
fld dword [esp + 0x14]
fadd qword [0x41f370]
add esi, 2
fstp dword [esp + 0x14]
cmp esi, 0x42587c
jne 0x40a780
fld dword [esp + 0x18]
fsub qword [0x41f9e8]
fstp dword [esp + 0x18]
pop esp
and al, 0x18
mov dx, word [0x425dd4]
movsx eax, dx
sub eax, 0x1b43f212
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmul qword [0x4236c0]
fstp qword [0x4236c0]
call dword [0x4276ec]
jno 0x40a87b
adc al, 0x20
cmc
mov eax, dword [0x81707965]
test byte [edi + edx], cl
out 0x9a, al
ficom word [ecx - 0x12]
xchg ebp, eax
aaa
out dx, eax
invalid
pushfd
or al, 0x2e
cwde
xchg edi, eax
fimul word [edi - 0x65]
pop ss
aaa
call [ebp - 0x28]
inc ebx
daa
loopne 0x40a826
jns 0x40a8d9
sub eax, 0xc8c2fd64
push 0x26
out dx, al
invalid
and ah, dl
pop edi
fmul st(1)
dec ecx
mov al, 0x4c
cmpsd dword [esi], dword es:[edi]
add byte [ebx + 0x5e2351ad], 0x5f
or edi, edi
sub al, 0xf
je 0x40a90e
ret 0xbed6
inc ecx
invalid