Function at 0x409b60
Capabilities:
Create thread

Disassembly:
push ebx
push esi
push edi
push 0
push 0
push 0
push 0x63
call dword [0x43a390]
mov ecx, dword [0x43a3a8]
mov edx, eax
test edx, edx
je 0x409bae
mov eax, dword [0x43a3a4]
test dl, 1
mov esi, 1
cmovne ecx, esi
test dl, 2
mov dword [0x43a3a8], ecx
cmovne eax, esi
test dl, 4
mov dword [0x43a3a4], eax
mov eax, dword [0x43a3a0]
cmovne eax, esi
mov dword [0x43a3a0], eax
mov ebx, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
mov esi, dword [sym.imp.kernel32.dll_CreateThread]
test ecx, ecx
je 0x409c75
cmp dword [0x43a12c], 0
jne 0x409c7f
cmp dword [0x43a104], 0
jne 0x409c7f
cmp dword [0x43a108], 0
mov dword [0x43a12c], 1
jne 0x409c4f
mov eax, dword [0x43a124]
test eax, eax
je 0x409c20
push 0x32
push eax
call ebx
cmp eax, 0x102
je 0x409f44
push dword [0x43a124]
call edi
mov dword [0x43a124], 0
push 0
push 0
push 0
push 0x42b700
push 0x100000
push 0
mov dword [0x43a108], 1
mov dword [0x43a104], 1
call esi
mov dword [0x43a124], eax
jmp 0x409c7f
mov dword [0x43a104], 1
call dword [sym.imp.kernel32.dll_GetTickCount]
mov ecx, dword [0x43b668]
mov dword [ecx], eax
mov eax, dword [0x43b668]
mov dword [eax + 4], 1
jmp 0x409c7f
mov dword [0x43a12c], 0
cmp dword [0x43a18c], 0
je 0x409cc1
cmp dword [0x43a11c], 0
jne 0x409ccb
mov eax, dword [0x43b668]
mov dword [0x43a11c], 1
inc dword [eax + 0x14]
mov eax, dword [0x43b668]
cmp dword [eax + 0x14], 4
jbe 0x409cba
mov eax, dword [0x43b668]
mov dword [eax + 0x14], 0
call fcn.004107b0
jmp 0x409ccb
mov dword [0x43a11c], 0
cmp dword [0x43a3a4], 0
je 0x409d69
cmp dword [0x43a118], 0
jne 0x409d73
cmp dword [0x43a184], 0
mov dword [0x43a118], 1
je 0x409d19
cmp dword [0x43b730], 0
je 0x409d0d
mov dword [0x43b730], 0
jmp 0x409d73
mov dword [0x43b730], 1
jmp 0x409d23
mov dword [0x43b730], 0
mov eax, dword [0x43a114]
test eax, eax
je 0x409d4e
push 0x32
push eax
call ebx
cmp eax, 0x102
je 0x409f44
push dword [0x43a114]
call edi
mov dword [0x43a114], 0
push 0
push 0
push 0
push 0x41d040
push 0x100000
push 0
call esi
mov dword [0x43a114], eax
jmp 0x409d73
mov dword [0x43a118], 0
cmp dword [0x43a3a0], 0
mov eax, dword [0x43a10c]
jne 0x409d94
test eax, eax
jne 0x409d94
mov dword [0x43a128], eax
mov dword [0x43a110], eax
jmp 0x409e9e
cmp dword [0x43a110], 0
je 0x409da5
test eax, eax
je 0x409e9e
mov eax, dword [0x43b668]
mov dword [0x43a110], 1
cmp dword [eax + 0xac], 0
je 0x409de0
call fcn.0040fb20
mov eax, dword [0x43b668]
mov dword [0x43b674], 1
mov dword [eax + 0xac], 0
jmp 0x409e94
cmp dword [0x43b670], 0
jne 0x409e7e
cmp dword [0x43a10c], 0
jne 0x409e07
mov eax, dword [0x43b668]
mov dword [eax + 0xac], 0
jmp 0x409e12
push 0xfa
call dword [sym.imp.kernel32.dll_Sleep]
mov eax, dword [0x43a120]
test eax, eax
je 0x409e3d
push 0x32
push eax
call ebx
cmp eax, 0x102
je 0x409f44
push dword [0x43a120]
call edi
mov dword [0x43a120], 0
mov eax, dword [0x43b640]
add eax, 0x3e8
cmp dword [0x43b958], eax
jb 0x409e94
push 0
push 0
push 0
push 0x41af10
push 0x100000
mov dword [0x43b730], 0
push 0
mov dword [0x43b670], 1
call esi
mov dword [0x43a120], eax
jmp 0x409e94
push dword [0x43b678]
mov dword [0x43b670], 0
call dword [sym.imp.kernel32.dll_SetEvent]
mov dword [0x43a10c], 0
mov ecx, dword [0x43a130]
mov edx, dword [0x43a188]
inc ecx
mov dword [0x43a130], ecx
test edx, edx
je 0x409ed2
mov eax, ecx
sub eax, edx
cmp eax, 2
jb 0x409ed2
mov dword [0x43a188], 0
mov dword [0x43a18c], 0
mov edx, dword [0x43a39c]
test edx, edx
je 0x409ef9
mov eax, ecx
sub eax, edx
cmp eax, 2
jb 0x409ef9
mov dword [0x43a39c], 0
mov dword [0x43a3a8], 0
mov edx, dword [0x43a398]
test edx, edx
je 0x409f20
mov eax, ecx
sub eax, edx
cmp eax, 2
jb 0x409f20
mov dword [0x43a398], 0
mov dword [0x43a3a0], 0
mov eax, dword [0x43a394]
test eax, eax
je 0x409f44
sub ecx, eax
cmp ecx, 2
jb 0x409f44
mov dword [0x43a394], 0
mov dword [0x43a3a4], 0
pop edi
pop esi
pop ebx
ret