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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
xor ebx, ebx
cmp dword [0x10082020], ebx
je 0x1001b066
call fcn.1002a790
cmp dword [0x10081674], ebx
je 0x1001b0a1
cmp dword [0x10081578], ebx
je 0x1001b0a1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081580]
mov edx, dword [0x1008194c]
add ecx, edx
cmp ecx, eax
jae 0x1001b9bb
mov dword [0x1008194c], eax
call fcn.1002a770
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10081fbc], ebx
je 0x1001b0b3
call fcn.100028e0
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10082014], ebx
push esi
je 0x1001b21c
cmp dword [0x10082024], ebx
jne 0x1001b21c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081948]
add ecx, 0x12c
cmp ecx, eax
jae case.default.0x1001b192
mov edx, dword [0x10082018]
push edx
mov dword [0x10081948], eax
call fcn.10025d00
mov ecx, dword [0x47a828]
lea eax, [ebp - 0x10]
push eax
push ecx
call fcn.10001220
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x10081940]
mov ecx, dword [ebp - 0xc]
jne 0x1001b205
cmp ecx, dword [0x10081944]
jne 0x1001b205
cmp dword [0x1008202c], 1
jbe case.default.0x1001b192
push 4
push 0x47a7f0
mov dword [0x1008202c], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 8], 0x47a7f0
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1001b16c
mov eax, dword [ebp - 8]
mov esi, dword ds:[eax]
mov eax, dword ds:[esi]
mov ecx, dword ds:[eax + 0x5c]
mov edx, dword ds:[ecx + 0x14]
add edx, esi
mov ecx, dword ds:[edx]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
mov esi, dword [ebp - 0x10]
mov eax, edx
sub eax, ecx
sub ecx, edx
mov edx, dword [0x10082028]
add eax, esi
add ecx, esi
shr eax, 1
shr ecx, 1
cmp edx, 7
ja case.default.0x1001b192
jmp dword [edx*4 + 0x1001b9c0]
add ecx, 0x28
push ecx
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0xffffffd8
push ecx
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0xffffffd8
push ecx
add eax, 0xffffffd8
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0xffffffd8
push ecx
add eax, 0x28
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0x28
push ecx
add eax, 0x28
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0x28
push ecx
add eax, 0xffffffd8
push eax
call fcn.10019810
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop esi
mov dword [0x1008202c], ebx
mov dword [0x10081940], eax
mov dword [0x10081944], ecx
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x1008203c], ebx
je 0x1001b2d5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10082030]
mov esi, dword [0x1008193c]
mov edx, ecx
imul edx, edx, 0x7d0
lea edx, [edx + esi + 0x3e8]
cmp edx, eax
jae case.default.0x1001b192
cmp ecx, ebx
mov dword [0x1008193c], eax
jne 0x1001b28f
mov eax, dword [0x10082038]
cmp eax, dword [0x10082034]
ja case.default.0x1001b192
push 0x9ce
call fcn.10025cb0
test eax, eax
jne case.default.0x1001b192
add dword [0x10082038], 1
call fcn.1001af50
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x9ce
call fcn.10025cb0
test eax, eax
jne 0x1001b2c5
push ebx
call fcn.10021c30
push 0xa8
call fcn.1002dde0
test eax, eax
je case.default.0x1001b192
push 0x9ce
call fcn.1002c790
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x9ce
call fcn.10025d00
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10082040], ebx
je 0x1001b307
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081938]
add ecx, 0x3e8
cmp ecx, eax
jae case.default.0x1001b192
mov dword [0x10081938], eax
call fcn.10003d90
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10082050], ebx
je 0x1001b339
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x10081934]
add edx, 0x1f4
cmp edx, eax
jae case.default.0x1001b192
mov dword [0x10081934], eax
call fcn.10004180
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10082064], ebx
je 0x1001b368
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081930]
add ecx, 0x64
cmp ecx, eax
jae case.default.0x1001b192
mov dword [0x10081930], eax
call fcn.100046f0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x1008201c], ebx
push edi
je 0x1001b419
push 1
push 2
push 0x10050a60
call fcn.100238b0
mov edi, eax
cmp edi, ebx
je case.default.0x1001b6b5
xor esi, esi
nop
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1001b395
sub eax, edx
mov edx, dword [esi*8 + 0x1004ea80]
push eax
push edx
push edi
call fcn.1002e4a2
add esp, 0xc
test eax, eax
je 0x1001b3c3
add esi, 1
cmp esi, 0x3d1
jl 0x1001b390
jmp 0x1001b3d8
mov eax, dword [esi*8 + 0x1004ea84]
push eax
call fcn.10024200
test eax, eax
jne case.default.0x1001b6b5
push 1
push 7
push 0x10050a60
call fcn.100239d0
test eax, eax
jne case.default.0x1001b6b5
push 1
push 8
push 0x10050a60
call fcn.100239d0
test eax, eax
jne case.default.0x1001b6b5
push 1
push 9
push 0x10050a60
call fcn.100239d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x1008167c], ebx
je 0x1001b528
push 0x10042f10
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 8], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1008192c]
add ecx, 0x12c
cmp ecx, eax
jae case.default.0x1001b6b5
cmp dword [0x10081894], ebx
mov dword [0x1008192c], eax
jne 0x1001b46c
mov edx, dword [0x10081dbc]
mov eax, dword [edx*4 + 0x10077148]
jmp 0x1001b579
cmp dword [0x10081928], ebx
jne 0x1001b48a
call fcn.1002a8b0
pop edi
pop esi
mov dword [0x10081928], 1
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
push 0x10050a58
push 0x10050a50
call fcn.10024510
test eax, eax
je 0x1001b4bd
push 1
push 0x10050a44
mov dword [0x10081894], ebx
call fcn.10001160
pop edi
pop esi
mov dword [0x10081928], ebx
pop ebx
mov esp, ebp
pop ebp
ret
push 6
push 1
push 0x10050a50
call fcn.10023930
test eax, eax
jne 0x1001b4d3
push 1
jmp 0x1001b50f
push 6
push 3
push 0x10050a50
call fcn.10023930
test eax, eax
jne 0x1001b4e9
push 2
jmp 0x1001b50f
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 8]
mov eax, dword ds:[eax + 0x56018]
test eax, eax
je 0x1001b504
mov eax, dword ds:[eax + 0x226]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x3c3e7262
je 0x1001b51b
push 3
push 8
push 0x10050a50
call fcn.100239d0
pop edi
pop esi
mov dword [0x10081928], ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10081680], ebx
je 0x1001b64c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081924]
mov esi, eax
add ecx, 0x12c
cmp ecx, esi
jae case.default.0x1001b6b5
push 0x10042f10
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cmp dword [0x10081894], ebx
mov dword [ebp - 8], eax
mov dword [0x10081924], esi
jne 0x1001b590
mov edx, dword [0x10081dc0]
mov eax, dword [edx*4 + 0x1007697c]
push eax
call fcn.10025d00
pop edi
pop esi
mov dword [0x10081894], 1
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10081920], ebx
jne 0x1001b5ae
call fcn.1002a910
pop edi
pop esi
mov dword [0x10081920], 1
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
push 0x10050a3c
push 0x10050a34
call fcn.10024510
test eax, eax
je 0x1001b5e1
push 1
push 0x10050a28
mov dword [0x10081894], ebx
call fcn.10001160
pop edi
pop esi
mov dword [0x10081920], ebx
pop ebx
mov esp, ebp
pop ebp
ret
push 6
push 1
push 0x10050a34
call fcn.10023930
test eax, eax
jne 0x1001b5f7
push 1
jmp 0x1001b633
push 6
push 3
push 0x10050a34
call fcn.10023930
test eax, eax
jne 0x1001b60d
push 2
jmp 0x1001b633
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 8]
mov eax, dword ds:[eax + 0x56018]
test eax, eax
je 0x1001b628
mov eax, dword ds:[eax + 0x226]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x3c3e7262
je 0x1001b63f
push 3
push 8
push 0x10050a34
call fcn.100239d0
pop edi
pop esi
mov dword [0x10081920], ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10081684], ebx
je 0x1001b936
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x1008191c]
add ecx, 0x32
cmp ecx, eax
jae case.default.0x1001b6b5
cmp dword [0x10081894], ebx
mov dword [0x1008191c], eax
jne 0x1001b6a2
xor eax, eax
mov edi, 1
mov dword [0x10081918], eax
mov dword [0x10081914], ebx
mov dword [0x10081910], ebx
mov dword [0x1008190c], ebx
mov dword [0x10081894], edi
jmp switch.0x1001b6b5
mov eax, dword [0x10081918]
cmp eax, 0xb
ja case.default.0x1001b6b5
mov edi, 1
jmp dword [eax*4 + 0x1001b9e0]
push 0xfa1
call fcn.10025cb0
cmp eax, 0xa
jae 0x1001b7de
push 0xed70
call fcn.10025cb0
test eax, eax
jbe 0x1001b6ec
push 0xed70
call fcn.10025d00
jmp 0x1001b7de
push 0x179
push 0xc3
call fcn.100197e0
mov dword [0x10081918], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 6
call fcn.100194b0
test eax, eax
je case.default.0x1001b6b5
call fcn.1002a8f0
pop edi
pop esi
mov dword [0x10081918], 3
pop ebx
mov esp, ebp
pop ebp
ret
push 7
call fcn.100194b0
test eax, eax
je case.default.0x1001b6b5
call fcn.1002a8d0
pop edi
pop esi
mov dword [0x10081918], 4
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x100819d4]
mov eax, dword [edx]
lea ecx, [eax - 1]
cmp ecx, 0xfffe
mov dword [0x1008190c], eax
ja case.default.0x1001b6b5
mov esi, 0x14
jmp 0x1001b785
mov eax, dword [0x1008190c]
push 0x190
push 0xfa1
push eax
call fcn.1001a850
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
call fcn.1001ac50
sub esi, edi
jne 0x1001b780
mov edx, dword [0x1008190c]
push 0x28
push 0xfa1
push edx
call fcn.1001a850
push 0x165
push 0xd6
call fcn.100197e0
pop edi
pop esi
mov dword [0x10081918], 2
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x100819d4]
mov eax, dword [eax]
lea ecx, [eax - 1]
cmp ecx, 0xfffe
mov dword [0x1008190c], eax
ja case.default.0x1001b6b5
push edi
push 0x3a2
push eax
call fcn.1001a850
pop edi
pop esi
mov dword [0x10081918], 5
pop ebx
mov esp, ebp
pop ebp
ret
push 0x3a2
call fcn.1002bfb0
cmp eax, ebx
mov dword [0x10081910], eax
je case.default.0x1001b6b5
cmp dword [0x10081914], ebx
jne 0x1001b868
push eax
call fcn.1001a9f0
mov dword [0x10081914], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1001aa30
add dword [0x10081918], edi
add dword [0x10081908], 2
pop edi
pop esi
mov dword [0x10081914], ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x10081910]
mov eax, dword [edx + 8]
mov ecx, dword [0x1008190c]
push eax
push ecx
call fcn.1001a910
push 4
call fcn.10001020
push eax
call fcn.1001a810
push 0x3ed
mov esi, eax
call fcn.10001020
cmp esi, eax
jae 0x1001b8ca
push edi
push 0x10050a20
call fcn.10001160
call fcn.1001ac00
cmp dword [0x10081908], 0x2c
jbe 0x1001b8ef
call fcn.1001aba0
pop edi
pop esi
mov dword [0x10081908], ebx
mov dword [0x10081918], 9
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov dword [0x10081918], 0xb
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1001aaa0
add dword [0x10081918], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x3a2
call fcn.1002bfb0
cmp eax, ebx
mov dword [0x10081910], eax
jne case.default.0x1001b6b5
pop edi
pop esi
mov dword [0x10081918], ebx
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x10081688], ebx
je 0x1001b994
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x10081904]
add edx, 0x3e8
cmp edx, eax
jae case.default.0x1001b6b5
cmp dword [0x100817fc], ebx
mov dword [0x10081904], eax
je case.default.0x1001b6b5
call fcn.100270b0
test eax, eax
je case.default.0x1001b6b5
mov ecx, dword [0x100817fc]
lea eax, [ebp - 0x10]
push eax
push ecx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
call fcn.10001220
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
push edx
push eax
call fcn.1002c7d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x1008189c], ebx
je case.default.0x1001b6b5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10081900]
add ecx, 0x32
cmp ecx, eax
jae case.default.0x1001b6b5
mov dword [0x10081900], eax
call fcn.1001add0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret