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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
xor ebx, ebx
push esi
mov dword [esp + 0xc], ebx
cmp dword [0x10327210], 3
push edi
mov edi, ecx
jne 0x100c471d
cmp dword [0x103271fc], ebx
je 0x100c471d
lea edx, [ebx + 5]
mov dword [esp + 0x10], 0x51bf05c1
lea ecx, [esp + 0x10]
mov byte [esp + 0x14], bl
call fcn.100c4990
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x10327214], ebx
mov dword [0x10327210], ebx
call esi
mov dword [0x10327208], eax
call esi
mov dword [0x1032720c], eax
xor ecx, ecx
mov eax, dword [edi + 0x48]
mov dword [0x10327024], eax
mov eax, dword [edi + 0x4c]
mov dword [0x10327108], eax
mov eax, dword [edi + 0x50]
mov dword [0x10327008], eax
mov eax, dword [edi + 0x54]
mov dword [0x1032700c], eax
mov eax, dword [edi + 0x58]
mov dword [0x10327000], eax
mov eax, dword [edi + 0x5c]
mov dword [0x10327004], eax
mov eax, dword [edi + 0x60]
mov dword [0x10324d04], eax
mov eax, dword [edi + 0x64]
mov dword [0x10326ff4], eax
mov eax, dword [edi + 0x68]
mov dword [0x10326ff8], eax
mov eax, dword [edi + 0x6c]
mov dword [0x10326ffc], eax
mov eax, dword [edi + 0x70]
mov dword [0x103270d0], eax
mov eax, dword [edi + 0x74]
mov dword [0x103270c0], eax
mov eax, dword [edi + 0x78]
mov dword [0x103270c4], eax
mov eax, dword [edi + 0x7c]
mov dword [0x103270b8], eax
mov eax, dword [edi + 0x80]
mov dword [0x103270bc], eax
mov eax, dword [0x7bc4f04]
mov dword [0x10327200], ebx
mov dword [0x10327204], ebx
mov dword [0x103271f8], ebx
mov word [eax + 0x7e], cx
mov eax, dword [0x7bc4f04]
mov dword [0x103271fc], ebx
mov byte [eax + 0x30c], cl
mov eax, dword [0x8128ac8]
movzx eax, byte [eax + 0xb]
and eax, 7
cmp eax, 6
ja case.default.0x100c47fb
jmp dword [eax*4 + 0x100c4970]
cmp dword [0x10250178], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
cmp dword [0x1025017c], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
cmp dword [0x10250180], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
cmp dword [0x10250184], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
cmp dword [0x10250188], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
cmp dword [0x1025018c], 0xffff
sbb al, al
and al, 0xd
add al, 2
movzx eax, al
push eax
jmp 0x100c4888
push 0xf
push 0x556c38
call fcn.10097d10
add esp, 8
mov ecx, 0x10250083
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c48a0
sub ecx, edx
je 0x100c490c
push ecx
push 0x10250083
lea ecx, [esp + 0x20]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], 0xf
mov byte [esp + 0x20], bl
call fcn.1000a8a0
mov edi, dword [esp + 0x2c]
lea edx, [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp edi, 0x10
mov eax, dword [esp + 0x28]
mov ebx, 1
cmovae edx, ecx
test eax, eax
je 0x100c4914
lea esi, [eax + edx]
mov eax, edx
cmp edx, esi
jae 0x100c4914
cmp byte [eax], 0x20
jne 0x100c48fe
inc eax
cmp eax, esi
jb 0x100c48f2
jmp 0x100c4914
sub eax, edx
cmp eax, 0xffffffff
je 0x100c4914
mov byte [esp + 0xf], 0
jmp 0x100c4919
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
mov byte [esp + 0xf], 1
test bl, 1
je 0x100c494a
cmp edi, 0x10
jb 0x100c494a
lea edx, [edi + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x100c4940
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c496b
push edx
push ecx
call fcn.100ed724
add esp, 8
cmp byte [esp + 0xf], 0
je 0x100c4964
cmp byte [0x1025044f], 0
jne 0x100c4964
mov ecx, 0x101a4b38
call fcn.1002fd00
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.10144859
add cl, byte [eax + 0xc]
adc byte [eax], bl
dec eax
or al, 0x10
dec eax
or al, 16
inc esp
dec eax
or al, 0x10
pop edx
dec eax
or al, 0x10
jo 0x100c49ce
or al, 0x10
xchg byte [eax + 0xc], cl
adc ah, cl
int3
push esi
and byte [eax], dl