Function at 0x111bb90
Capabilities:
Check for time delay via gettickcount
Get system information on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x5c
mov ecx, dword [0x123b308]
mov eax, dword [ecx + 0x2c]
mov dword [ebp - 8], 0
test eax, 0x20000000
je 0x111bbb7
xor eax, eax
mov esp, ebp
pop ebp
ret 0xc
test byte [ecx + 0x488], 0x40
jne 0x111bbaf
test eax, 0x10000000
je 0x111bbd7
mov dword [ebp - 4], 5
mov dword [ebp - 8], 1
jmp 0x111bbde
mov dword [ebp - 4], 3
push esi
push edi
mov edi, dword [ebp + 0xc]
test edi, edi
jne 0x111bc10
push edi
push 0x54
lea eax, [ebp - 0x5c]
push eax
push 0x50
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
test eax, eax
jge 0x111bc08
push eax
call dword [sym.imp.ntdll.dll_RtlNtStatusToDosError]
mov esi, eax
jmp 0x111bd95
lea ecx, [ebp - 0x5c]
mov dword [ebp + 0xc], ecx
mov edi, ecx
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 8]
mov edx, dword [esi + 8]
push ebx
push eax
push 0
lea ecx, [edi + 0x34]
push ecx
mov dword [ebp + 8], edx
call fcn.01122d70
mov ebx, eax
xor eax, eax
mov dword [esi + 8], ebx
cmp dword [ebp + 0x10], eax
jne 0x111bc4b
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0xc], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esi + 0x10], eax
jmp 0x111bd92
mov edx, dword [ebp - 4]
mov edi, dword [edi + 4]
mov eax, dword [ebp + 0xc]
add edi, dword [eax]
push edx
push 0
add eax, 0x14
push eax
call fcn.01122d70
sub ebx, dword [ebp + 8]
inc dword [esi + 0xc]
add dword [esi + 4], ebx
add edi, eax
add dword [esi], edi
test byte [esi + 0xc], 0x3f
jne 0x111bd92
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov ecx, edi
sub ecx, dword [esi + 0x10]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov ecx, edx
cmp edx, 0x40
ja 0x111bc9c
mov ecx, 0x40
mov eax, dword [esi + 4]
xor edx, edx
div ecx
mov ebx, dword [esi]
shr ebx, 6
mov ecx, eax
cmp eax, 1
ja 0x111bcb4
mov ecx, 1
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 0x10], edi
mov eax, dword [0x123b308]
test dword [eax + 0x2c], 0x10000000
mov eax, dword [eax + 0x214]
je 0x111bcf7
shr eax, 2
cmp eax, 0x8000
ja 0x111bce9
mov eax, 0x8000
jmp 0x111bd14
cmp eax, 0x20000
jb 0x111bd14
mov eax, 0x20000
jmp 0x111bd14
shr eax, 4
cmp eax, 0x4000
ja 0x111bd08
mov eax, 0x4000
jmp 0x111bd14
cmp eax, 0xc800
jb 0x111bd14
mov eax, 0xc800
cmp ebx, eax
jb 0x111bd34
xor edx, edx
mov eax, ebx
div ecx
mov ecx, eax
mov eax, 0x88888889
mul ecx
shr edx, 5
cmp edx, 0x14
jbe 0x111bd34
inc dword [esi + 0x14]
jmp 0x111bd37
inc dword [esi + 0x18]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x14]
lea edx, [ecx + edi]
cmp edx, 0x2d0
jb 0x111bd92
mov eax, 0xaaaaaaab
mul edx
shr edx, 1
cmp ecx, edx
jae 0x111bd59
xor eax, eax
jmp 0x111bd64
add edx, edx
cmp ecx, edx
jb 0x111bd80
mov eax, 1
mov edx, dword [0x123b308]
mov edx, dword [edx + 0x2c]
shr edx, 0x1c
and edx, 1
cmp edx, eax
je 0x111bd80
push eax
push esi
call fcn.0111aec0
jmp 0x111bd92
lea eax, [edi + edi*2]
shr eax, 2
lea ecx, [ecx + ecx*2]
shr ecx, 2
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], ecx
xor esi, esi
pop ebx
cmp dword [ebp - 8], 0
je 0x111bdb6
mov edx, dword [0x123b308]
push 0
push 0x3e8
push 5
add edx, 0x4c8
push edx
call fcn.0111d4d0
pop edi
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret 0xc