Function at 0x10009000
Capabilities:
Check for time delay via gettickcount
Create thread
Hide thread from debugger

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x10c
mov eax, dword [0x1002e018]
xor eax, esp
mov dword [esp + 0x108], eax
push ebx
push esi
push edi
call fcn.1000b0e0
push str.____________________________________________________________________________________________________
push 0
mov ecx, 0x1014cba8
call fcn.1000b200
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
add esp, 8
call ebx
push str.NtSetInformationThread
push str.ntdll.dll
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x1000906f
push 0
push 0
push 0x11
test edi, edi
jne 0x1000906c
call ebx
push eax
jmp 0x1000906d
push edi
call esi
call fcn.10015ac0
mov ebx, 0x10151bd0
call fcn.10012030
test al, al
jne 0x100090a4
push 0x10031a28
call fcn.1001af60
add esp, 4
push eax
push 0
mov ecx, 0x1014cba8
call fcn.1000b200
add esp, 8
call fcn.1001a9e0
call fcn.10016800
test al, al
jne 0x100090b4
push 0x10031b28
jmp 0x10009087
call fcn.10016990
test al, al
jne 0x100090c4
push 0x10031c28
jmp 0x10009087
call fcn.1001b1c0
test al, al
jne 0x100090d4
push 0x10031d28
jmp 0x10009087
call fcn.10015d50
test al, al
jne 0x100090e4
push 0x10031e28
jmp 0x10009087
call fcn.1000e3c0
test al, al
jne 0x100090f4
push 0x10031f28
jmp 0x10009087
call fcn.100161b0
test al, al
jne 0x10009104
push 0x10032228
jmp 0x10009087
call fcn.100162d0
test al, al
jne 0x10009117
push 0x10032328
jmp 0x10009087
call fcn.10002300
test al, al
jne 0x10009154
mov ecx, 4
push 0x1388
call fcn.1000b950
push eax
push 2
mov eax, 0x10156df0
call fcn.1001ade0
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x108]
xor ecx, esp
call fcn.1001ed20
mov esp, ebp
pop ebp
ret
push 0x10151c16
mov ecx, 5
call fcn.1000b950
push eax
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0
lea ecx, [esp + 0x14]
push ecx
push 0
mov eax, 0x10156ba0
call fcn.1001ade0
movzx edx, word [0x10151c14]
add esp, 0xc
push edx
mov ecx, 0x10151bf4
call fcn.10002380
test al, al
jne 0x100091a5
mov ecx, 6
jmp 0x10009125
call fcn.10005e40
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
push 1
mov ebx, 0x1f4
mov edi, eax
call fcn.1001aa40
add esp, 4
test al, al
jne 0x1000933a
jmp 0x100091d0
call esi
sub eax, edi
cmp eax, 0xea60
ja 0x1000938c
call fcn.10002580
test al, al
jne 0x10009211
call fcn.10002300
test al, al
je 0x10009211
movzx eax, word [0x10151c14]
push eax
mov ecx, 0x10151bf4
call fcn.10002380
test al, al
je 0x10009211
call fcn.10005e40
jmp 0x10009323
cmp dword [0x1015d1d0], 0
je 0x10009323
cmp dword [0x1015d1d4], 0
je 0x10009323
cmp dword [0x1015d1d8], 0
je 0x10009323
cmp dword [0x1015d1dc], 0
je 0x10009323
cmp dword [0x1015d1e0], 0
je 0x10009323
cmp dword [0x1015d1e4], 0
je 0x10009323
mov ecx, dword [0x1015d3cc]
sub ecx, dword [0x1015d3c8]
mov eax, 0x7d8c42b3
imul ecx
mov ecx, dword [0x1015d3f4]
sub ecx, dword [0x1015d3f0]
sar edx, 7
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x7e07e07f
imul ecx
mov ecx, dword [0x1015d3b8]
sub ecx, dword [0x1015d3b4]
sar edx, 5
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov dword [esp + 0xc], eax
mov eax, 0x3e0f83e1
imul ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [0x1015d3e0]
sub ecx, dword [0x1015d3dc]
sar edx, 6
add eax, edx
mov ebx, edx
shr ebx, 0x1f
add ebx, eax
mov eax, 0x7e07e07f
imul ecx
mov ecx, dword [0x1015d3a4]
sub ecx, dword [0x1015d3a0]
sar edx, 5
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x38e38e39
imul ecx
mov eax, dword [0x1015d1f8]
add eax, dword [0x1015d1f4]
sar edx, 4
add eax, dword [0x1015d1f0]
mov ecx, edx
add eax, dword [0x1015d1ec]
shr ecx, 0x1f
add eax, dword [0x1015d1e8]
add ebx, edx
add ecx, ebx
cmp ecx, eax
je 0x1000933a
push 1
mov ebx, 0x1f4
call fcn.1001aa40
add esp, 4
test al, al
je 0x100091d0
mov ecx, dword [0x1015d1f8]
mov edx, dword [0x1015d1f4]
mov eax, dword [0x1015d1f0]
push ecx
mov ecx, dword [0x1015d1ec]
push edx
mov edx, dword [0x1015d1e8]
push eax
push ecx
push edx
push 0x10032028
call fcn.1001af60
add esp, 4
push eax
push 0
mov ecx, 0x1014cba8
call fcn.1000b200
add esp, 0x1c
call fcn.10016990
test al, al
jne 0x10009396
mov ecx, 0x14
jmp 0x10009125
mov ecx, 7
jmp 0x10009125
cmp dword [0x1015d220], 0
je 0x100093bb
call fcn.10002b80
test al, al
jne 0x100093b1
call fcn.10002c30
test al, al
je 0x100093bb
mov ecx, 0x20
jmp 0x10009125
mov ecx, 0x10151bd0
call fcn.100128c0
call fcn.100082f0
mov edi, 0x10151bd0
call fcn.10012130
call fcn.100122e0
call fcn.10012220
mov ebx, edi
call fcn.10012370
call fcn.10012480
call fcn.10012590
call fcn.100126a0
call fcn.100127b0
push 0
push 0
push 0
push 0x10008f60
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov edi, eax
call fcn.1001b260
mov esi, 0x10156ba0
call fcn.1001a750
call fcn.1000b440
mov byte [0x1015d58c], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1015d590], eax
call fcn.10003d20
cmp dword [0x1015d1fc], 0
je 0x10009449
call fcn.100129d0
call section..text
push 0x10032128
call fcn.1001af60
add esp, 4
push eax
push 0
mov ecx, 0x1014cba8
call fcn.1000b200
mov ecx, dword [esp + 0x11c]
add esp, 8
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1001ed20
mov esp, ebp
pop ebp
ret