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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa0
mov eax, dword [0x100ae8c8]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x1012d412], 1
push ebx
push esi
push edi
mov esi, 1
jne 0x1007c3b3
cmp dword [0x1019fdcc], esi
jne 0x1007c3b3
mov eax, dword [0x2feacec]
movzx ecx, word [eax + 0x14]
imul ecx, ecx, 0x1cc
mov edx, dword [ecx + 0x336ed79]
sub edx, dword [0x1011cd1c]
cmp edx, dword [0x1019fdd0]
jl 0x1007c3b3
mov eax, dword [0x1019e5d8]
push 0
push 0
push 0x22b8
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 8
push 0x100a1fa8
call fcn.1003ae80
add esp, 8
cmp dword [0x101a00b4], esi
je 0x1007c3c7
cmp dword [0x101a00b8], esi
jne 0x1007c59a
mov eax, dword [0x2fcde68]
xor ebx, ebx
mov dword [ebp - 0xa0], 0
lea ecx, [eax + 0x540]
lea edx, [ebx + 0xa]
mov eax, dword [ecx - 4]
test eax, eax
jle 0x1007c3ff
mov eax, dword [eax + 0x54]
cmp eax, 0x5e
jne 0x1007c3f8
mov dword [ebp - 0xa0], esi
jmp 0x1007c3ff
cmp eax, 0x60
jne 0x1007c3ff
mov ebx, esi
mov eax, dword [ecx]
test eax, eax
jle 0x1007c41c
mov eax, dword [eax + 0x54]
cmp eax, 0x5e
jne 0x1007c415
mov dword [ebp - 0xa0], esi
jmp 0x1007c41c
cmp eax, 0x60
jne 0x1007c41c
mov ebx, esi
mov eax, dword [ecx + 4]
test eax, eax
jle 0x1007c43a
mov eax, dword [eax + 0x54]
cmp eax, 0x5e
jne 0x1007c433
mov dword [ebp - 0xa0], esi
jmp 0x1007c43a
cmp eax, 0x60
jne 0x1007c43a
mov ebx, esi
mov eax, dword [ecx + 8]
test eax, eax
jle 0x1007c458
mov eax, dword [eax + 0x54]
cmp eax, 0x5e
jne 0x1007c451
mov dword [ebp - 0xa0], esi
jmp 0x1007c458
cmp eax, 0x60
jne 0x1007c458
mov ebx, esi
mov eax, dword [ecx + 0xc]
test eax, eax
jle 0x1007c476
mov eax, dword [eax + 0x54]
cmp eax, 0x5e
jne 0x1007c46f
mov dword [ebp - 0xa0], esi
jmp 0x1007c476
cmp eax, 0x60
jne 0x1007c476
mov ebx, esi
add ecx, 0x14
sub edx, esi
jne 0x1007c3e1
mov esi, dword [0x2fcc3b0]
xor edi, edi
call fcn.10006a40
test eax, eax
je 0x1007c59a
add esi, 0x53c
lea esp, [esp]
mov eax, dword [esi]
test eax, eax
je 0x1007c4d9
lea ecx, [eax + 0x64]
mov eax, 0x100a1f9c
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c4d0
test dl, dl
je 0x1007c4cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c4d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c4b0
xor eax, eax
jmp 0x1007c4d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c4eb
inc edi
add esi, 4
call fcn.10006a40
cmp edi, eax
jb 0x1007c4a0
jmp 0x1007c59a
cmp dword [0x101a00b4], 1
jne 0x1007c540
test ebx, ebx
jne 0x1007c540
push 0x64
lea ecx, [ebp - 0x9c]
push ecx
mov ecx, 0x1019ff5c
call sub.mfc100.dll_Ordinal_6969
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x9c]
push eax
mov dword [ebp - 0x14], 0xffffffff
call fcn.10046990
mov eax, dword [ebp - 0x14]
add esp, 8
cmp eax, 0xffffffff
je 0x1007c540
push eax
push edi
call fcn.1003baa0
mov ecx, dword [ebp - 0x14]
add esp, 8
mov dword [0x101c047c], ecx
cmp dword [0x101a00b8], 1
jne 0x1007c59a
cmp dword [ebp - 0xa0], 0
jne 0x1007c59a
push 0x64
lea edx, [ebp - 0x9c]
push edx
mov ecx, 0x101a0008
call sub.mfc100.dll_Ordinal_6969
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x9c]
push ecx
mov dword [ebp - 0x14], 0xffffffff
call fcn.10046990
mov eax, dword [ebp - 0x14]
add esp, 8
cmp eax, 0xffffffff
je 0x1007c59a
push eax
push edi
call fcn.1003baa0
mov edx, dword [ebp - 0x14]
add esp, 8
mov dword [0x101c0478], edx
mov ebx, 1
cmp dword [0x1019ff58], ebx
jne 0x1007c640
mov eax, dword [0x2feacec]
cmp dword [eax + 0x51f8], 0
jne 0x1007c5c2
cmp dword [eax + 0x2a60], 6
je 0x1007c5d4
cmp dword [eax + 0x480c], 0
jne 0x1007c640
cmp dword [eax + 0x2a60], 4
jne 0x1007c640
xor edi, edi
lea eax, [ebp - 0x28]
push eax
push edi
call fcn.10006c20
add esp, 8
mov ecx, 0x1019c4e4
xor esi, esi
call fcn.10001080
test eax, eax
jle 0x1007c639
mov edx, dword [0x1019c4e4]
mov eax, dword [edx + esi*4]
lea ecx, [ebp - 0x28]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c620
test dl, dl
je 0x1007c61c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c620
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c600
xor eax, eax
jmp 0x1007c625
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c679
mov ecx, 0x1019c4e4
add esi, ebx
call fcn.10001080
cmp esi, eax
jl 0x1007c5f3
add edi, ebx
cmp edi, 0x14
jl 0x1007c5d6
cmp dword [0x2fc5968], 0x9ca5
jne 0x1007c6a3
cmp dword [0x3505b88], 0
jne 0x1007c6f3
cmp dword [0x101a00cc], ebx
jne 0x1007c6f3
cmp dword [0x101a00c8], 0
jne 0x1007c697
push ebx
call fcn.1003bf10
add esp, 4
jmp 0x1007c6f3
mov eax, dword [ebp - 0xc]
push ebx
push eax
call fcn.1003a1e0
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086786
mov esp, ebp
pop ebp
ret
push 0
call fcn.1003bf10
add esp, 4
jmp 0x1007c6f3
cmp dword [0x1019ff44], ebx
jne 0x1007c6f3
cmp byte [0x1012d412], bl
jne 0x1007c6f3
cmp dword [0x3505b88], 0
jne 0x1007c6f3
cmp byte [0x101c0424], 0
jne 0x1007c6f3
mov ecx, dword [0x1019ff48]
mov edx, dword [0x101a46e8]
imul ecx, ecx, 0x3e8
mov eax, dword [0x100eaf2c]
push 0x1007b3f0
push ecx
add edx, 0x5a
push edx
push eax
mov byte [0x101c0424], bl
call dword [sym.imp.USER32.dll_SetTimer]
cmp dword [0x1019ff4c], ebx
jne 0x1007c773
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x101c0474]
cmp eax, 0xbb8
jb 0x1007c773
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x101c0474], eax
call fcn.1003b7f0
mov eax, dword [0x2fcc3b4]
mov edi, dword [sym.imp.MSVCR100.dll_sprintf]
lea esi, [eax + 0x53c]
mov ebx, 0xf
mov eax, dword [esi]
test eax, eax
je 0x1007c76d
cmp dword [eax + 0xe00], 0x32
jne 0x1007c76d
movzx ecx, word [eax + 0xf64]
cmp ecx, 0x50
jge 0x1007c76d
push ecx
add eax, 0x64
push eax
lea ecx, [ebp - 0x38]
push 0x100a1f80
push ecx
call edi
lea edx, [ebp - 0x38]
push edx
push 3
call fcn.10039d10
add esp, 0x18
add esi, 4
dec ebx
jne 0x1007c734
mov edi, 0x336ecc3
cmp byte [edi - 3], 0
je 0x1007c7f1
mov ecx, 0x101c045c
xor esi, esi
call fcn.10001080
test eax, eax
jle 0x1007c7d8
mov edi, edi
mov eax, dword [0x101c045c]
mov ecx, dword [eax + esi*4]
mov eax, edi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c7c0
test dl, dl
je 0x1007c7bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c7c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c7a0
xor eax, eax
jmp 0x1007c7c5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c7f1
mov ecx, 0x101c045c
inc esi
call fcn.10001080
cmp esi, eax
jl 0x1007c790
push edi
mov ecx, 0x101c045c
call fcn.10001150
mov ecx, dword [edi + 0x1d]
push ecx
mov ecx, 0x101c0468
call fcn.100011f0
add edi, 0x1cc
lea edx, [edi - 3]
cmp edx, 0x34bfb60
jl 0x1007c778
cmp byte [0x1012d3fa], 0
mov edi, dword [0x2feacec]
jne 0x1007c81f
push 0
call fcn.10047630
add esp, 4
cmp dword [0x1019fe74], 1
jne 0x1007c9fa
cmp byte [0x1012d3fa], 0
jne 0x1007c9fa
cmp dword [0x1012d3e4], 0
jne 0x1007c9fa
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
mov esi, edx
shr esi, 6
mov edx, esi
sub edx, dword [0x1012d394]
cmp edx, dword [0x10192ea8]
jl 0x1007c892
push 1
call fcn.10047630
push 0
mov dword [0x1012d394], esi
call fcn.10060b20
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086786
mov esp, ebp
pop ebp
ret
xor esi, esi
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.10006c20
add esp, 8
mov ecx, 0x1009e3f4
lea eax, [ebp - 0x28]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c8d0
test dl, dl
je 0x1007c8cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c8d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c8b0
xor eax, eax
jmp 0x1007c8d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c9e0
mov ecx, 0x1009e3c4
lea eax, [ebp - 0x28]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c905
test dl, dl
je 0x1007c901
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c905
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c8e5
xor eax, eax
jmp 0x1007c90a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c9e0
mov ecx, 0x1009e3b8
lea eax, [ebp - 0x28]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c940
test dl, dl
je 0x1007c93c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c940
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c920
xor eax, eax
jmp 0x1007c945
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c9e0
mov ecx, 0x1009e3d0
lea eax, [ebp - 0x28]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c975
test dl, dl
je 0x1007c971
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c975
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c955
xor eax, eax
jmp 0x1007c97a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c9e0
mov ecx, 0x1009e3dc
lea eax, [ebp - 0x28]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c9a6
test dl, dl
je 0x1007c9a2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c9a6
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c986
xor eax, eax
jmp 0x1007c9ab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007c9e0
mov ecx, 0x1009e3ac
lea eax, [ebp - 0x28]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007c9d7
test dl, dl
je 0x1007c9d3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007c9d7
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007c9b7
xor eax, eax
jmp 0x1007c9dc
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x1007c9f0
lea ecx, [ebp - 0x28]
push ecx
call fcn.10006d70
add esp, 4
test eax, eax
je 0x1007ca2e
inc esi
cmp esi, 0x14
jl 0x1007c894
cmp dword [0x1019fe78], 1
jne case.default.0x1007ca27
mov edx, dword [0x2feacec]
cmp dword [edx + 0x298c], 0
jne case.default.0x1007ca27
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1012d210], eax
mov eax, dword [0x1019fe7c]
cmp eax, 4
ja case.default.0x1007ca27
jmp dword [eax*4 + 0x1007cb1c]
pop edi
pop esi
mov dword [0x1012d394], 0xffff8ad0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086786
mov esp, ebp
pop ebp
ret
push 0
push 0x92c0d
jmp 0x1007ca74
push 0
push 0x92c0e
jmp 0x1007ca74
push 0
push 0x92c0f
jmp 0x1007ca74
push 0
push 0xf468d
jmp 0x1007ca74
push 0
push 0xf468e
call fcn.1003a1e0
add esp, 8
mov esi, 1
cmp dword [0x1019fe80], esi
jne 0x1007caf5
lea eax, [edi + 0x4848]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1007ca92
sub eax, edx
je 0x1007caf5
cmp byte [edi + 0x48a8], cl
jne 0x1007caf5
push 0x32
lea eax, [ebp - 0x38]
push eax
mov ecx, 0x10196a5c
call sub.mfc100.dll_Ordinal_6969
mov ecx, 0x1009b290
lea eax, [ebp - 0x38]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1007cae0
test dl, dl
je 0x1007cadc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1007cae0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1007cac0
xor eax, eax
jmp 0x1007cae5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1007caf5
lea ecx, [ebp - 0x38]
push ecx
call fcn.1003a050
add esp, 4
cmp dword [0x1019fe84], esi
jne 0x1007cb0b
cmp dword [0x350d6c0], 0
jne 0x1007cb0b
call fcn.1003a3d0
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10086786
mov esp, ebp
pop ebp
ret