Function at 0x1004ab10
Capabilities:
Check for time delay via gettickcount

Disassembly:
sub esp, 8
mov eax, dword [0x101b7324]
xor eax, esp
mov dword [esp + 4], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x18]
push edi
mov edi, dword [sym.imp.KERNEL32.DLL_GetTickCount]
call edi
mov ebp, dword [sym.imp.KERNEL32.DLL_InterlockedExchange]
push 1
push 0x102bfd20
mov ebx, eax
call ebp
cmp eax, 1
jne 0x1004ab65
push 1
call dword [sym.imp.KERNEL32.DLL_Sleep]
call edi
sub eax, ebx
cmp eax, 0x3e8
ja 0x1004ab65
push 1
push 0x102bfd20
call ebp
cmp eax, 1
je 0x1004ab44
sub dword [0x102bfd24], 1
jns 0x1004ab78
mov dword [0x102bfd24], 0
push 0
push 0x102bfd20
call ebp
push esi
call fcn.10057da0
push 0
push esi
call fcn.10012330
add esp, 0xc
lea edi, [esi + 0x90]
mov ebp, 0x65
lea ecx, [ecx]
mov ebx, dword [edi]
call fcn.1003edc0
mov eax, dword [edi]
test eax, eax
je 0x1004abbc
push eax
call fcn.100ff58b
add esp, 4
mov dword [edi], 0
add edi, 4
sub ebp, 1
jne 0x1004aba0
push esi
call fcn.10047230
push esi
call fcn.100473f0
mov eax, dword [esi + 0x25f0]
xor ebx, ebx
add esp, 8
cmp eax, ebx
je 0x1004abe6
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call fcn.10051700
push esi
call fcn.1001ef40
mov eax, dword [esi + 0x3278]
add esp, 8
cmp eax, ebx
je 0x1004ac0e
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x3278], ebx
mov eax, dword [esi + 0x3270]
cmp eax, ebx
je 0x1004ac27
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x3270], ebx
mov eax, dword [esi + 0x327c]
cmp eax, ebx
je 0x1004ac43
add eax, 0xfffffff0
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x327c], ebx
mov eax, dword [esi + 0x3280]
cmp eax, ebx
je 0x1004ac5c
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x3280], ebx
mov eax, dword [esi + 0x37f0]
cmp eax, ebx
je 0x1004ac75
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x37f0], ebx
mov eax, dword [esi + 0x3294]
cmp eax, ebx
je 0x1004ac8e
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x3294], ebx
xor ebp, ebp
mov edi, dword [esi + 0x3284]
mov ecx, dword [edi + 4]
cmp ecx, ebx
je 0x1004acd3
mov eax, dword [edi + 8]
sub eax, ecx
sar eax, 2
cmp ebp, eax
jae 0x1004acd3
cmp ecx, ebx
je 0x1004acb9
mov eax, dword [edi + 8]
sub eax, ecx
sar eax, 2
cmp ebp, eax
jb 0x1004acbe
call fcn.10101795
mov eax, dword [edi + 4]
mov ecx, dword [eax + ebp*4]
push ecx
push esi
call fcn.10088da0
add esp, 8
add ebp, 1
jmp 0x1004ac90
mov ebp, dword [edi + 8]
cmp dword [edi + 4], ebp
jbe 0x1004ace0
call fcn.10101795
mov ebx, dword [edi + 4]
cmp ebx, dword [edi + 8]
jbe 0x1004aced
call fcn.10101795
cmp ebx, ebp
je 0x1004ad1e
mov eax, dword [edi + 8]
sub eax, ebp
sar eax, 2
test eax, eax
lea ecx, [eax*4]
lea edx, [ecx + ebx]
mov dword [esp + 0x10], edx
jle 0x1004ad17
push ecx
push ebp
push ecx
push ebx
call fcn.1010149c
add esp, 0x10
mov eax, dword [esp + 0x10]
mov dword [edi + 8], eax
xor ebp, ebp
mov edi, dword [esi + 0x3288]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x1004ad63
mov eax, dword [edi + 8]
sub eax, ecx
sar eax, 2
cmp ebp, eax
jae 0x1004ad63
test ecx, ecx
je 0x1004ad49
mov eax, dword [edi + 8]
sub eax, ecx
sar eax, 2
cmp ebp, eax
jb 0x1004ad4e
call fcn.10101795
mov ecx, dword [edi + 4]
mov edx, dword [ecx + ebp*4]
push edx
push esi
call fcn.10058ce0
add esp, 8
add ebp, 1
jmp 0x1004ad20
mov ebp, dword [edi + 8]
cmp dword [edi + 4], ebp
jbe 0x1004ad70
call fcn.10101795
mov ebx, dword [edi + 4]
cmp ebx, dword [edi + 8]
jbe 0x1004ad7d
call fcn.10101795
cmp ebx, ebp
je 0x1004adae
mov eax, dword [edi + 8]
sub eax, ebp
sar eax, 2
test eax, eax
lea ecx, [eax*4]
lea edx, [ecx + ebx]
mov dword [esp + 0x10], edx
jle 0x1004ada7
push ecx
push ebp
push ecx
push ebx
call fcn.1010149c
add esp, 0x10
mov eax, dword [esp + 0x10]
mov dword [edi + 8], eax
mov eax, dword [esi + 0x37d4]
test eax, eax
je 0x1004adcb
push eax
call fcn.100ff58b
add esp, 4
mov dword [esi + 0x37d4], 0
mov edi, dword [esi + 0x32d4]
test edi, edi
mov ebp, 0x10
lea ebx, [ebp - 1]
je 0x1004ae05
cmp dword [edi + 0x18], ebp
jb 0x1004adee
mov ecx, dword [edi + 4]
push ecx
call fcn.100ee438
add esp, 4
mov dword [edi + 0x18], ebx
mov dword [edi + 0x14], 0
push edi
mov byte [edi + 4], 0
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x2640]
test edi, edi
je 0x1004ae37
cmp dword [edi + 0x18], ebp
jb 0x1004ae20
mov edx, dword [edi + 4]
push edx
call fcn.100ee438
add esp, 4
mov dword [edi + 0x18], ebx
mov dword [edi + 0x14], 0
push edi
mov byte [edi + 4], 0
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x264c]
test edi, edi
je 0x1004ae69
cmp dword [edi + 0x18], ebp
jb 0x1004ae52
mov eax, dword [edi + 4]
push eax
call fcn.100ee438
add esp, 4
mov dword [edi + 0x18], ebx
mov dword [edi + 0x14], 0
push edi
mov byte [edi + 4], 0
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x2620]
test edi, edi
je 0x1004ae97
mov eax, dword [edi + 4]
test eax, eax
je 0x1004ae83
push eax
call fcn.100ee438
add esp, 4
xor eax, eax
push edi
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x2624]
test edi, edi
je 0x1004aec5
mov eax, dword [edi + 4]
test eax, eax
je 0x1004aeb1
push eax
call fcn.100ee438
add esp, 4
xor eax, eax
push edi
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x3284]
test edi, edi
je 0x1004aef3
mov eax, dword [edi + 4]
test eax, eax
je 0x1004aedf
push eax
call fcn.100ee438
add esp, 4
xor eax, eax
push edi
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
call fcn.100ee438
add esp, 4
mov edi, dword [esi + 0x3288]
test edi, edi
je 0x1004af21
mov eax, dword [edi + 4]
test eax, eax
je 0x1004af0d
push eax
call fcn.100ee438
add esp, 4
xor eax, eax
push edi
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
call fcn.100ee438
add esp, 4
mov esi, dword [esi + 0x3304]
test esi, esi
je 0x1004af4f
mov eax, dword [esi + 4]
test eax, eax
je 0x1004af3b
push eax
call fcn.100ee438
add esp, 4
xor eax, eax
push esi
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
call fcn.100ee438
add esp, 4
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.100ffa66
add esp, 8
ret