Function at 0x40c64e
Capabilities:
Create thread
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x40c67c
push eax
mov ebx, eax
call fcn.0040104a
inc eax
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x448cec]
test ebx, ebx
je 0x40c690
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448cec], eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
je 0x40c6b4
push eax
mov ebx, eax
call fcn.0040104a
inc eax
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x448cf0]
test ebx, ebx
je 0x40c6c8
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448cf0], eax
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebx]
test eax, eax
je 0x40c6ec
push eax
mov ebx, eax
call fcn.0040104a
inc eax
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x448cf4]
test ebx, ebx
je 0x40c700
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448cf4], eax
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
je 0x40c724
push eax
mov ebx, eax
call fcn.0040104a
inc eax
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x448cf8]
test ebx, ebx
je 0x40c738
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448cf8], eax
mov ebx, dword [ebp + 0x24]
mov eax, dword [ebx]
test eax, eax
je 0x40c75c
push eax
mov ebx, eax
call fcn.0040104a
inc eax
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x448cfc]
test ebx, ebx
je 0x40c770
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448cfc], eax
push 0x80000301
push 0
push 0
push 1
mov ebx, 0x1bc
call fcn.00410eb0
add esp, 0x10
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
mov ebx, dword [0x448d00]
test ebx, ebx
je 0x40c7ae
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448d00], eax
cmp dword [ebp + 0x2c], 0
jne 0x40c7c5
mov dword [ebp + 0x2c], 0x78
push 0
mov ebx, 0x308
call sub.kernel32.dll_GetTickCount
add esp, 4
mov dword [ebp - 4], eax
mov dword [ebp - 8], esp
push 0x448d04
push 0
push 0
push 0x40e1e6
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
nop
nop
nop
nop
cmp dword [ebp - 8], esp
je 0x40c817
push 6
call fcn.0040f5b0
add esp, 4
mov dword [0x448d04], eax
mov dword [0x448d08], 0
cmp dword [0x448d04], 0
jle 0x40c9d0
push 0
mov ebx, 0x350
call fcn.00411780
add esp, 4
push 0
mov ebx, 0x308
call sub.kernel32.dll_GetTickCount
add esp, 4
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fild dword [ebp - 4]
fstp qword [ebp - 0x18]
fsub qword [ebp - 0x18]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fdiv qword [0x4486f3]
fstp qword [ebp - 0x28]
push 0x80000601
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push 1
mov ebx, 0x164
call fcn.004128b0
add esp, 0x10
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
fld qword [ebp - 0x38]
call fcn.00401152
mov dword [0x448d08], eax
mov eax, dword [ebp + 0x2c]
cmp dword [0x448d08], eax
jle 0x40c9cb
mov dword [ebp - 8], esp
push 0
push dword [0x448d04]
call dword [sym.imp.kernel32.dll_TerminateThread]
nop
nop
nop
nop
cmp dword [ebp - 8], esp
je 0x40c8e4
push 6
call fcn.0040f5b0
add esp, 4
push 0
mov ebx, 0x350
call fcn.00411780
add esp, 4
push 0x80000301
push 0
push 0
push 1
mov ebx, 0x1bc
call fcn.00410eb0
add esp, 0x10
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
mov ebx, dword [0x448d00]
test ebx, ebx
je 0x40c92e
push ebx
call fcn.0040f598
add esp, 4
pop eax
mov dword [0x448d00], eax
mov dword [0x448d04], 0
mov dword [ebp - 8], esp
push 0x4486fb
call dword [sym.imp.SHLWAPI.DLL_StrDupA]
nop
nop
nop
nop
cmp dword [ebp - 8], esp
je 0x40c962
push 6
call fcn.0040f5b0
add esp, 4
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], esp
push dword [ebp - 0xc]
push 1
push 0x401
push dword [0x448cdc]
call dword [sym.imp.USER32.DLL_SendMessageA]
nop
nop
nop
nop
cmp dword [ebp - 0x10], esp
je 0x40c997
push 6
call fcn.0040f5b0
add esp, 4
mov dword [ebp - 8], esp
push 0
push 0
push 0x402
push dword [0x448ce0]
call dword [sym.imp.USER32.DLL_SendMessageA]
nop
nop
nop
nop
cmp dword [ebp - 8], esp
je 0x40c9cb
push 6
call fcn.0040f5b0
add esp, 4
jmp 0x40c826
mov eax, dword [0x448d00]
test eax, eax
je 0x40c9ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0040f5a4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40c9f1
mov esp, ebp
pop ebp
ret 0x2c