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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x10094abc], 0
push esi
mov esi, dword [0x10093d74]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jne 0x1000a422
push 0x2e
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a41b
cmp byte [0x100960e8], 0
je 0x1000a402
cmp dword [0x100960ec], 0
je 0x1000a422
call edi
cmp dword [0x100960ec], eax
ja 0x1000a422
xor eax, eax
mov byte [0x100960e8], 1
cmp dword [0x10093a04], eax
sete al
mov dword [0x10093a04], eax
jmp 0x1000a422
mov byte [0x100960e8], 0
cmp dword [0x10094abc], 1
jne 0x1000a4cf
push 0xa0
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a4c8
cmp byte [0x10096478], 0
je 0x1000a467
cmp dword [0x1009647c], 0
je 0x1000a4cf
call edi
cmp dword [0x1009647c], eax
ja 0x1000a4cf
push 0xa4
mov byte [0x10096478], 1
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a4bf
cmp byte [0x10096498], 0
je 0x1000a4a6
cmp dword [0x1009649c], 0
je 0x1000a4cf
call edi
cmp dword [0x1009649c], eax
ja 0x1000a4cf
xor eax, eax
mov byte [0x10096498], 1
cmp dword [0x10093a04], eax
sete al
mov dword [0x10093a04], eax
jmp 0x1000a4cf
mov byte [0x10096498], 0
jmp 0x1000a4cf
mov byte [0x10096478], 0
cmp dword [0x10094abc], 2
jne 0x1000a5cd
push 0xa0
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a5c6
cmp byte [0x10096478], 0
je 0x1000a520
cmp dword [0x1009647c], 0
je 0x1000a5cd
call edi
cmp dword [0x1009647c], eax
ja 0x1000a5cd
push 0xa4
mov byte [0x10096478], 1
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a5bd
cmp byte [0x10096498], 0
je 0x1000a55f
cmp dword [0x1009649c], 0
je 0x1000a5cd
call edi
cmp dword [0x1009649c], eax
ja 0x1000a5cd
push 0x41
mov byte [0x10096498], 1
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a5b4
cmp byte [0x10096180], 0
je 0x1000a59b
cmp dword [0x10096184], 0
je 0x1000a5cd
call edi
cmp dword [0x10096184], eax
ja 0x1000a5cd
xor eax, eax
mov byte [0x10096180], 1
cmp dword [0x10093a04], eax
sete al
mov dword [0x10093a04], eax
jmp 0x1000a5cd
mov byte [0x10096180], 0
jmp 0x1000a5cd
mov byte [0x10096498], 0
jmp 0x1000a5cd
mov byte [0x10096478], 0
cmp dword [0x10093a04], 0
je 0x1000a7cc
push 0x26
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a63c
cmp byte [0x100960a8], 0
je 0x1000a60f
cmp dword [0x100960ac], 0
je 0x1000a643
call edi
cmp dword [0x100960ac], eax
ja 0x1000a643
mov byte [0x100960a8], 1
mov edx, dword [esi + 4]
mov ecx, dword [esi + 8]
nop dword [eax]
sub ecx, 1
mov dword [esi + 8], ecx
jns 0x1000a62e
mov ecx, dword [esi]
dec ecx
mov dword [esi + 8], ecx
mov eax, dword [edx + ecx*4]
cmp dword [eax], 2
je 0x1000a620
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov byte [0x100960a8], 0
push 0x28
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a6a2
cmp byte [0x100960b8], 0
je 0x1000a678
cmp dword [0x100960bc], 0
je 0x1000a6a9
call edi
cmp dword [0x100960bc], eax
ja 0x1000a6a9
mov byte [0x100960b8], 1
mov edx, dword [esi]
mov edi, dword [esi + 4]
mov ecx, dword [esi + 8]
inc ecx
mov dword [esi + 8], ecx
cmp ecx, edx
jne 0x1000a694
xor ecx, ecx
mov dword [esi + 8], ecx
mov eax, dword [edi + ecx*4]
cmp dword [eax], 2
je 0x1000a687
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov byte [0x100960b8], 0
mov ecx, dword [esi + 8]
lea eax, [esi + 4]
push ebx
lea ebx, [esi + 8]
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], eax
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0xc], 0
je 0x1000a7cb
push 0x25
mov dword [ebp - 0xc], 0
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a72e
cmp byte [0x100960a0], 0
je 0x1000a704
cmp dword [0x100960a4], 0
je 0x1000a735
call edi
cmp dword [0x100960a4], eax
ja 0x1000a735
mov edx, dword [ebp - 0x10]
mov eax, ebx
mov byte [0x100960a0], 1
mov dword [ebp - 4], edx
mov ecx, dword [eax]
mov eax, dword [edx]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xc]
cmp dword [eax], 0
jle 0x1000a735
mov dword [ebp - 0xc], 0xffffffff
mov dword [ebp - 4], edx
jmp 0x1000a735
mov byte [0x100960a0], 0
push 0x27
mov dword [0x10093d18], 0x10005380
call fcn.10005380
cwde
shr eax, 0x10
test eax, eax
je 0x1000a78d
cmp byte [0x100960b0], 0
je 0x1000a76a
cmp dword [0x100960b4], 0
je 0x1000a794
call edi
cmp dword [0x100960b4], eax
ja 0x1000a794
mov eax, dword [ebp - 4]
mov byte [0x100960b0], 1
mov ecx, dword [ebx]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
dec ecx
cmp dword [eax], ecx
jge 0x1000a794
mov edx, 1
jmp 0x1000a79b
mov byte [0x100960b0], 0
mov edx, dword [ebp - 0xc]
test edx, edx
je 0x1000a7cb
mov ecx, dword [ebx]
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xc]
add dword [eax], edx
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
lea ecx, [eax + ecx*4]
mov eax, dword [ecx]
cmp dword [eax], 1
jne 0x1000a7be
mov dword [esi], 0
mov eax, dword [ecx]
cmp dword [eax], 4
jne 0x1000a7cb
mov dword [esi], 0
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret