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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1118d02b
mov eax, dword fs:[0]
push eax
sub esp, 0x1f8
mov eax, dword [0x111ec774]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov ebx, 2
mov edi, ecx
mov dword [ebp - 0x1f4], esi
mov dword [ebp - 0x1f0], 1
lea ecx, [ebx + 1]
cmp eax, 0xdd
ja case.0x1114a550.1
movzx eax, byte [eax + 0x1114afac]
jmp dword [eax*4 + 0x1114af8c]
mov eax, dword [ebp + 0x10]
mov edx, dword [edi]
mov edx, dword [edx + 0x9c]
push eax
push esi
mov ecx, edi
call edx
test eax, eax
je 0x1114a592
mov ecx, edi
call fcn.11040680
test eax, eax
jne 0x1114a592
mov ecx, edi
call fcn.11040680
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, ebx
mov dword [ebp - 0x1f0], eax
jmp case.0x1114a550.1
mov dword [ebp - 0x1f0], 0
jmp case.0x1114a550.1
push 0
push 0
push 6
call fcn.11145c70
add esp, 0xc
test eax, eax
je case.0x1114a550.45
push 0x111bdd04
call fcn.11147060
mov ecx, dword [0x111ee308]
mov eax, dword [ecx]
mov edx, dword [eax + 0xd8]
add esp, 4
call edx
cmp byte [eax], 0
mov ecx, dword [0x111ee308]
mov eax, dword [ecx]
mov edx, dword [eax + 0xd8]
setne bl
call edx
push eax
movzx eax, bl
push eax
push 0x111bdcd4
call fcn.11147060
add esp, 0xc
test bl, bl
jne case.0x1114a550.45
push 0x111bdca4
call fcn.11147060
add esp, 4
lea ecx, [ebp - 0x1ec]
call fcn.1109dd30
push 0x1119fac0
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 4], 0
call fcn.1109df10
test eax, eax
jne 0x1114a658
push 0x111bdc6c
call fcn.11147060
mov ecx, dword [0x111ee308]
mov edx, dword [ecx]
mov eax, dword [edx + 0xa0]
add esp, 4
call eax
push 0x32
call dword [sym.imp.KeRneL32.DLl_Sleep]
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 4], 0xffffffff
call fcn.1109dd40
mov dword [ebp - 0x1f0], 4
jmp case.0x1114a550.1
mov dword [ebp - 0x1f0], ecx
jmp case.0x1114a550.1
lea ecx, [edi + 0xb4]
call fcn.11081130
mov ecx, dword [ebp + 0x10]
push ecx
push esi
lea ecx, [edi + 0xb4]
call fcn.110817b0
mov dword [ebp - 0x1f0], 9
jmp case.0x1114a550.1
push 0x111bdc5c
call fcn.11147060
add esp, 4
mov dword [ebp - 0x1f0], ebx
mov ebx, dword [0x111ee264]
xor esi, esi
test byte [ebp - 0x1f0], 0xe
mov dword [ebp - 0x200], ebx
je 0x1114a75e
test ebx, ebx
jns 0x1114a706
push esi
call fcn.11107050
mov ebx, eax
add esp, 4
mov dword [ebp - 0x200], ebx
test ebx, ebx
js 0x1114a706
mov ecx, dword [0x111ee308]
push esi
push 1
push ebx
call fcn.111082c0
push 0x3e8
call dword [sym.imp.KeRneL32.DLl_Sleep]
push ebx
mov ecx, edi
call fcn.1114a290
mov esi, eax
mov eax, dword [ebp - 0x1f0]
test al, 8
je 0x1114a730
test esi, esi
je 0x1114a730
cmp byte [esi + 0x1c], 0
je 0x1114a730
and eax, 0xfffffff7
or eax, 2
mov dword [ebp - 0x1f0], eax
test byte [ebp - 0x1f0], 4
je 0x1114a753
test esi, esi
je 0x1114a757
cmp dword [esi + 0x14], 0
je 0x1114a74c
or dword [ebp - 0x1f0], 2
jmp 0x1114a753
or dword [ebp - 0x1f0], 1
test esi, esi
jne 0x1114a75e
and dword [ebp - 0x1f0], 0xfffffffd
test byte [ebp - 0x1f0], 2
je 0x1114af65
cmp dword [esi + 0x14], 0
jne 0x1114a811
push 0x111bdc34
call fcn.11147060
add esp, 4
call dword [sym.imp.KeRneL32.DLl_GetTickCount]
mov dword [ebp - 0x1f8], eax
mov edi, edi
push ebx
mov ecx, edi
call fcn.1114b160
cmp dword [esi + 0x14], 0
mov dword [ebp - 0x204], eax
jne 0x1114a811
mov ecx, edi
call fcn.11068220
test eax, eax
jne 0x1114af65
push 0x32
call dword [sym.imp.KeRneL32.DLl_Sleep]
push ebx
call fcn.11106e70
add esp, 4
test eax, eax
je 0x1114a7d3
mov ecx, eax
call fcn.110f62e0
test eax, eax
je 0x1114a7f1
cmp dword [ebp - 0x204], 0
jne 0x1114a811
call dword [sym.imp.KeRneL32.DLl_GetTickCount]
sub eax, dword [ebp - 0x1f8]
cmp eax, 0xbb8
jbe 0x1114a790
jmp 0x1114a811
cmp dword [0x111ee264], ebx
jne 0x1114a811
push ebx
push 0x111bdbfc
call fcn.11147060
add esp, 8
mov dword [0x111ee264], 0xffffffff
cmp byte [esi + 0x1c], 0
jne 0x1114a872
mov edx, dword [edi + 0x84]
mov eax, dword [edx + 0xa4]
lea ecx, [edi + 0x84]
call eax
test al, al
jne 0x1114a846
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x90], 0
je 0x1114a872
push ebx
lea ecx, [edi + 0x84]
call fcn.1101d460
push eax
lea ecx, [edi + 0x84]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x1c], al
cmp byte [esi + 0x1d], 0
jne 0x1114a8b0
cmp byte [esi + 0x1c], 0
je 0x1114a8b0
lea ecx, [edi + 0x9c]
call fcn.1101d460
test eax, eax
je 0x1114a8b0
push ebx
lea ecx, [edi + 0x9c]
call fcn.1101d460
push eax
lea ecx, [edi + 0x9c]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x1d], al
cmp dword [ebp + 8], 3
je 0x1114af65
cmp byte [esi + 0x1f], 0
jne 0x1114a8f8
cmp byte [esi + 0x1d], 0
je 0x1114a8f8
lea ecx, [edi + 0xb4]
call fcn.1101d460
test eax, eax
je 0x1114a8f8
push ebx
lea ecx, [edi + 0xb4]
call fcn.1101d460
push eax
lea ecx, [edi + 0xb4]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x1f], al
cmp byte [esi + 0x20], 0
jne 0x1114a9ba
cmp byte [esi + 0x1d], 0
je 0x1114a9ba
lea ecx, [edi + 0xcc]
call fcn.1101d460
test eax, eax
je 0x1114a9ba
lea ecx, [edi + 0xcc]
call fcn.11036610
push ebx
lea ecx, [edi + 0xcc]
mov dword [ebp - 0x1f8], eax
call fcn.1101d460
mov ecx, dword [ebp - 0x1f8]
push eax
push ecx
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x20], al
test al, al
je 0x1114a9ba
mov eax, dword [ebp - 0x1f8]
test byte [eax + 2], 1
je 0x1114a9ba
mov edx, 0x400
test word [eax + 4], dx
jne 0x1114a9ba
mov ecx, dword [edi + 0xc]
push 0
push 0
push 0x1119da68
push 0x111a0f40
call fcn.1105e820
test eax, eax
je 0x1114a9ba
xor eax, eax
push ebx
mov dword [ebp - 0x38], eax
push 0xc
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x14], al
mov eax, 8
push ecx
mov ecx, edi
mov word [ebp - 0x38], ax
call fcn.1114bc20
cmp byte [esi + 0x21], 0
jne 0x1114a9f8
cmp byte [esi + 0x1d], 0
je 0x1114a9f8
lea ecx, [edi + 0xe4]
call fcn.1101d460
test eax, eax
je 0x1114a9f8
push ebx
lea ecx, [edi + 0xe4]
call fcn.1101d460
push eax
lea ecx, [edi + 0xe4]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x21], al
cmp byte [esi + 0x22], 0
jne 0x1114aa36
cmp byte [esi + 0x1d], 0
je 0x1114aa36
lea ecx, [edi + 0xfc]
call fcn.1101d460
test eax, eax
je 0x1114aa36
push ebx
lea ecx, [edi + 0xfc]
call fcn.1101d460
push eax
lea ecx, [edi + 0xfc]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x22], al
cmp byte [esi + 0x23], 0
jne 0x1114aa74
cmp byte [esi + 0x1d], 0
je 0x1114aa74
lea ecx, [edi + 0x114]
call fcn.1101d460
test eax, eax
je 0x1114aa74
push ebx
lea ecx, [edi + 0x114]
call fcn.1101d460
push eax
lea ecx, [edi + 0x114]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x23], al
cmp byte [esi + 0x24], 0
jne 0x1114aab2
cmp byte [esi + 0x1d], 0
je 0x1114aab2
lea ecx, [edi + 0x12c]
call fcn.1101d460
test eax, eax
je 0x1114aab2
push ebx
lea ecx, [edi + 0x12c]
call fcn.1101d460
push eax
lea ecx, [edi + 0x12c]
call fcn.11036610
push eax
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x24], al
lea edx, [esi + 0x25]
mov dword [ebp - 0x1f8], edx
lea ebx, [edi + 0x144]
mov dword [ebp - 0x204], 5
jmp 0x1114aad0
mov eax, dword [ebp - 0x1f8]
cmp byte [eax], 0
jne 0x1114ab8e
cmp byte [esi + 0x1d], 0
je 0x1114ab8e
mov edx, dword [ebx]
mov eax, dword [edx + 0xa4]
mov ecx, ebx
call eax
test al, al
jne 0x1114ab10
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [ebx + 0xc], 0
je 0x1114ab8e
mov edx, dword [ebx]
mov eax, dword [edx + 0xa4]
mov ecx, ebx
call eax
test al, al
jne 0x1114ab3d
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx]
mov eax, dword [edx + 0xa4]
mov dword [ebp - 0x1fc], ecx
mov ecx, ebx
call eax
test al, al
jne 0x1114ab6d
push 0x135
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x1fc]
mov eax, dword [ebx + 0x14]
push ecx
push edx
push eax
mov ecx, edi
call fcn.1114bc20
mov ecx, dword [ebp - 0x1f8]
mov byte [ecx], al
mov eax, 1
add dword [ebp - 0x1f8], eax
add ebx, 0x18
sub dword [ebp - 0x204], eax
jne 0x1114aad0
cmp byte [esi + 0x2a], 0
jne 0x1114ac81
cmp byte [esi + 0x1d], 0
je 0x1114ac81
mov edx, dword [edi + 0x1bc]
mov eax, dword [edx + 0xa4]
lea ecx, [edi + 0x1bc]
call eax
test al, al
jne 0x1114abeb
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x1c8], 0
je 0x1114ac81
mov edx, dword [edi + 0x1bc]
mov eax, dword [edx + 0xa4]
lea ecx, [edi + 0x1bc]
call eax
test al, al
jne 0x1114ac27
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov ecx, dword [edi + 0x1c8]
mov edx, dword [edi + 0x1bc]
mov eax, dword [edx + 0xa4]
mov dword [ebp - 0x1fc], ecx
lea ecx, [edi + 0x1bc]
call eax
test al, al
jne 0x1114ac62
push 0x135
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x1fc]
mov ebx, dword [edi + 0x1d0]
push ecx
push edx
push ebx
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x2a], al
cmp byte [esi + 0x2b], 0
jne 0x1114ad5a
cmp byte [esi + 0x1d], 0
je 0x1114ad5a
mov eax, dword [edi + 0x1d4]
mov edx, dword [eax + 0xa4]
lea ecx, [edi + 0x1d4]
call edx
test al, al
jne 0x1114acc4
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x1e0], 0
je 0x1114ad5a
mov eax, dword [edi + 0x1d4]
mov edx, dword [eax + 0xa4]
lea ecx, [edi + 0x1d4]
call edx
test al, al
jne 0x1114ad00
push 0x13a
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov eax, dword [edi + 0x1e0]
mov edx, dword [edi + 0x1d4]
mov dword [ebp - 0x1fc], eax
mov eax, dword [edx + 0xa4]
lea ecx, [edi + 0x1d4]
call eax
test al, al
jne 0x1114ad3b
push 0x135
push 0x11199044
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov ecx, dword [ebp - 0x200]
mov edx, dword [ebp - 0x1fc]
mov ebx, dword [edi + 0x1e8]
push ecx
push edx
push ebx
mov ecx, edi
call fcn.1114bc20
mov byte [esi + 0x2b], al
cmp dword [ebp - 0x1f4], 0
je 0x1114ad84
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1f4]
push eax
push ecx
push edx
mov ecx, edi
call fcn.1114bc20
test al, al
je 0x1114af65
mov eax, dword [ebp + 8]
add eax, 0xfffffff9
cmp eax, 0xa9
ja case.0x1114ad9c.8
movzx eax, byte [eax + 0x1114b0a8]
jmp dword [eax*4 + 0x1114b08c]
lea ecx, [edi + 0xcc]
call fcn.11081130
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1f4]
push ecx
push edx
lea ecx, [edi + 0xcc]
call fcn.110817b0
mov byte [esi + 0x20], 1
jmp case.0x1114ad9c.8
lea ecx, [edi + 0xe4]
call fcn.11081130
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x1f4]
push eax
push ecx
lea ecx, [edi + 0xe4]
call fcn.110817b0
mov byte [esi + 0x21], 1
jmp case.0x1114ad9c.8
lea ecx, [edi + 0xfc]
call fcn.11081130
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x1f4]
push edx
push eax
lea ecx, [edi + 0xfc]
call fcn.110817b0
mov byte [esi + 0x22], 1
jmp case.0x1114ad9c.8
lea ecx, [edi + 0x114]
call fcn.11081130
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1f4]
push ecx
push edx
lea ecx, [edi + 0x114]
call fcn.110817b0
mov byte [esi + 0x23], 1
jmp case.0x1114ad9c.8
lea ecx, [edi + 0x12c]
call fcn.11081130
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x1f4]
push eax
push ecx
lea ecx, [edi + 0x12c]
call fcn.110817b0
mov byte [esi + 0x23], 1
jmp case.0x1114ad9c.8
mov eax, dword [ebp - 0x1f4]
mov ebx, dword [eax + 2]
lea edx, [ebx - 1]
cmp edx, 4
ja 0x1114aed9
mov eax, dword [eax + 0xa]
cmp eax, 3
jne 0x1114aec0
lea eax, [ebx + ebx*2]
lea ecx, [edi + eax*8 + 0x12c]
mov dword [ebp - 0x1fc], ecx
call fcn.11081130
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1f4]
push ecx
mov ecx, dword [ebp - 0x1fc]
push edx
call fcn.110817b0
mov byte [ebx + esi + 0x24], 1
jmp 0x1114aed9
cmp eax, 4
jne 0x1114aed9
lea eax, [ebx + ebx*2]
lea ecx, [edi + eax*8 + 0x12c]
call fcn.11081130
mov byte [ebx + esi + 0x24], 0
cmp ebx, 6
jne case.0x1114ad9c.8
mov ebx, dword [ebp - 0x1f4]
lea eax, [ebx + 0x26]
push 0x1119df8c
push eax
call fcn.11165250
add esp, 8
test eax, eax
je 0x1114af1a
lea ecx, [edi + 0x1bc]
call fcn.11081130
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea ecx, [edi + 0x1bc]
call fcn.110817b0
mov byte [esi + 0x2a], 1
jmp case.0x1114ad9c.8
lea eax, [ebx + 0x26]
push 0x1119df48
push eax
call fcn.11165250
add esp, 8
test eax, eax
je case.0x1114ad9c.8
lea ecx, [edi + 0x1d4]
call fcn.11081130
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [edi + 0x1d4]
call fcn.110817b0
mov byte [esi + 0x2b], 1
cmp dword [ebp + 8], 0
jne 0x1114af65
push 0x111bdbf4
mov byte [esi + 0x1e], 1
call fcn.11147060
add esp, 4
mov eax, dword [ebp - 0x1f0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret 0xc