Function at 0x40a440
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x18
fldz
push ebx
fst qword [esp + 0x14]
push ebp
xor ebp, ebp
mov dword [esp + 0xc], ebp
fstp qword [esp + 0x10]
fldz
push esi
fst dword [esp + 0xc]
xor esi, esi
fst dword [esp + 0x10]
mov dword [0x42780c], ebp
fstp dword [esp + 0x10]
push edi
fld dword [esp + 0x14]
fsub qword [0x41fb30]
fstp dword [esp + 0x14]
cmp dword [0x4257d8], ebp
je 0x40a4f1
mov edi, dword [sym.imp.KERNEL32.dll_CreateThread]
or ebx, 0xffffffff
fld dword [0x4250b4]
mov dword [esi*4 + 0x427348], ebp
fsub qword [0x41f350]
fstp dword [0x4250b4]
fld dword [0x4250b4]
mov ax, word [0x425828]
fsub qword [0x41fb28]
movsx ecx, ax
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
faddp st(1)
call fcn.0040aec0
push ebp
push ebp
push esi
push 0x402140
push ebp
mov word [0x425b78], ax
add word [0x425828], bx
push ebp
call edi
inc esi
cmp esi, dword [0x4257d8]
jne 0x40a492
fld qword [0x4230c0]
mov dx, word [0x425310]
fsub qword [0x41fb20]
movsx eax, dx
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
faddp st(1)
call fcn.0040aec0
mov word [0x425310], ax
fld qword [0x4230c0]
fadd qword [0x41f350]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, 0xfc29230b
push 0xa
fstp qword [0x4230c0]
fld dword [esp + 0x14]
fmul qword [0x41fb18]
fstp dword [esp + 0x14]
add dword [0x425840], 0x4d7b0bd
movzx ecx, word [0x4250a8]
movsx edx, cx
sub eax, edx
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fmul qword [esp + 0x1c]
fstp qword [esp + 0x1c]
call edi
fld qword [0x4230c0]
movzx ecx, word [0x425310]
fsub qword [0x41fb20]
movsx edx, cx
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
faddp st(1)
call fcn.0040aec0
mov word [0x425310], ax
fld qword [0x4230c0]
fld1
mov ebx, dword [sym.imp.KERNEL32.dll_SetEvent]
fadd st(1), st(0)
mov esi, 0x4257dc
fxch st(1)
fstp qword [0x4230c0]
fld dword [0x425320]
fsub qword [esp + 0x18]
mov eax, dword [0x424560]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
faddp st(1)
fmul qword [0x425a88]
fstp qword [0x425a88]
inc dword [0x424560]
fsubr qword [esp + 0x18]
fstp qword [esp + 0x18]
lea esp, [esp]
movzx ecx, word [esi]
mov edx, dword [ecx*4 + 0x427348]
push edx
call ebx
fld dword [esp + 0x10]
fadd dword [esp + 0x10]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
movzx eax, word [esi]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [esp + 0x10]
cmp dword [eax*4 + 0x427348], ebp
je 0x40a692
fld qword [esp + 0x18]
fcomp qword [0x41fb10]
fnstsw ax
fsubr qword [esp + 0x18]
fstp qword [esp + 0x18]
test ah, 0x41
jne 0x40a64e
fld dword [0x425994]
fsub qword [0x41fb08]
fstp dword [0x425994]
push 0xa
call edi
fld dword [esp + 0x10]
fsub qword [0x41fb00]
fstp qword [str._.H]
fld dword [esp + 0x10]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fadd dword [esp + 0x10]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
movzx ecx, word [esi]
fsub st(1)
fstp dword [esp + 0x10]
cmp dword [ecx*4 + 0x427348], ebp
jne 0x40a623
fstp st(0)
add esi, 2
fld qword [esp + 0x18]
fsub qword [0x41faf8]
fadd qword [0x41faf0]
fmul dword [esp + 0x10]
fstp dword [esp + 0x10]
cmp esi, 0x4257e4
jne 0x40a5f0
fld qword [esp + 0x20]
mov edx, dword [0x425ea8]
fsubr qword [0x41fae8]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
faddp st(1)
call fcn.0040aec0
mov dword [0x425ea8], eax
call dword [0x42780c]
out 0x75, al
dec esi
insd dword es:[edi], dx
push cs
or eax, 0xd24c7edf
fistp qword [edi + 0x6ab73109]
inc eax
add edi, dword [ebx - 0x2e268742]
mov esp, 0xa6c63464
ljmp 0x83f9