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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff0c
push ebx
push esi
push edi
mov edi, dword [ebp + 0x18]
mov byte [ebp - 1], 0
mov byte [ebp - 2], 0
xor esi, esi
mov byte [ebp - 3], 0
mov byte [ebp - 4], 0
mov eax, dword [ebp + 8]
mov edx, dword [0xb02138]
mov dword [ebp - 0x14], edx
mov edx, dword [0xb0213c]
mov dword [ebp - 0x10], edx
mov dl, byte [eax]
cmp dl, 1
jne 0x421fe7
mov cl, byte [eax + 1]
mov byte [ebp - 2], cl
jmp 0x422001
cmp dl, 3
jne 0x421ff6
mov al, byte [0xb135b1]
mov byte [ebp - 2], al
jmp 0x422001
push 0xb070ee
call fcn.0040e95c
pop ecx
mov dword [ebp - 0x20], 0x402d62
mov dword [ebp - 0x1c], 0x40f4a5
push 0xb07131
lea edx, [ebp - 0x20]
push edx
call fcn.0040208a
add esp, 8
mov dword [ebp - 0x28], 0x402d62
mov dword [ebp - 0x24], 0x40f4e3
mov cl, byte [ebp + 0xc]
push ecx
lea eax, [ebp - 0x28]
push eax
call fcn.00402284
add esp, 8
push 0xb07149
lea edx, [ebp - 0x28]
push edx
call fcn.0040208a
add esp, 8
mov cx, word [ebp + 0x10]
push ecx
lea eax, [ebp - 0x28]
push eax
call fcn.004022c4
add esp, 8
push 0xb0714b
lea edx, [ebp - 0x28]
push edx
call fcn.0040208a
add esp, 8
mov dword [ebp - 0x30], 0x402d62
mov dword [ebp - 0x2c], 0x40f4a5
mov eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x30]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb0714d
lea eax, [ebp - 0x30]
push eax
call fcn.0040208a
add esp, 8
lea edx, [ebp - 4]
push edx
push dword [ebp + 8]
call fcn.004161da
pop ecx
push eax
mov cx, word [ebp + 0x10]
push ecx
mov al, byte [ebp + 0xc]
push eax
mov dl, byte [ebp - 2]
push edx
call fcn.0042059d
add esp, 0x14
test al, al
je 0x42268b
cmp byte [ebp - 4], 0
jne 0x42268b
dec byte [0xb135a1]
call sub.KERNEL32.dll_GetTickCount
mov dword [ebp - 8], eax
mov ebx, dword [0xf255f4]
cmp edi, esi
jbe 0x4221d1
mov eax, edi
sub eax, esi
cmp eax, 0x80
jbe 0x422101
mov dl, 0x80
jmp 0x422107
mov edx, edi
mov eax, esi
sub dl, al
mov byte [ebp - 3], dl
mov dword [ebp - 0x38], 0x402d62
mov dword [ebp - 0x34], 0x40f4e3
push 0xb07156
lea ecx, [ebp - 0x38]
push ecx
call fcn.0040208a
add esp, 8
push esi
lea eax, [ebp - 0x38]
push eax
call fcn.00402302
add esp, 8
push 0xb07160
lea edx, [ebp - 0x38]
push edx
call fcn.0040208a
add esp, 8
xor eax, eax
mov al, byte [ebp - 3]
cdq
push edx
push eax
lea ecx, [ebp - 0x38]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb07162
lea eax, [ebp - 0x38]
push eax
call fcn.0040208a
add esp, 8
lea edx, [ebp - 4]
push edx
mov ecx, dword [ebp + 0x14]
add ecx, esi
push ecx
mov al, byte [ebp - 3]
push eax
push esi
mov dx, word [ebp + 0x10]
push edx
mov cl, byte [ebp + 0xc]
push ecx
mov al, byte [ebp - 2]
push eax
call fcn.00420ace
add esp, 0x1c
test al, al
je 0x42219a
cmp byte [ebp - 4], 0
je 0x4221a5
inc byte [0xb135a1]
jmp 0x42268b
add esi, 0x80
cmp byte [0xb0f5f8], 0
je 0x4221bf
inc byte [0xb135a1]
jmp 0x42268b
push edi
push esi
call fcn.00416229
add esp, 8
cmp edi, esi
ja 0x4220f2
lea edx, [ebp - 4]
push edx
mov cx, word [ebp + 0x10]
push ecx
mov al, byte [ebp + 0xc]
push eax
mov dl, byte [ebp - 2]
push edx
call fcn.00420b9c
add esp, 0x10
test al, al
je 0x4221f4
cmp byte [ebp - 4], 0
je 0x4221ff
inc byte [0xb135a1]
jmp 0x42268b
call fcn.00416298
mov dword [ebp - 0x40], 0x402d62
mov dword [ebp - 0x3c], 0x40f4e3
push 0xb07166
lea ecx, [ebp - 0x40]
push ecx
call fcn.0040208a
add esp, 8
mov eax, dword [0xf255f4]
sub eax, ebx
cdq
push edx
push eax
lea ecx, [ebp - 0x40]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb07174
lea eax, [ebp - 0x40]
push eax
call fcn.0040208a
add esp, 8
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cdq
push edx
push eax
lea ecx, [ebp - 0x40]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb0717f
lea eax, [ebp - 0x40]
push eax
call fcn.0040208a
add esp, 8
push 0xb07183
lea edx, [ebp - 0x40]
push edx
call fcn.0040208a
add esp, 8
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
push eax
mov ecx, dword [0xf255f4]
sub ecx, ebx
push ecx
call fcn.0041283d
add esp, 8
cdq
push edx
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00402141
add esp, 0xc
push 0xb07193
lea edx, [ebp - 0x40]
push edx
call fcn.0040208a
add esp, 8
cmp byte [ebp + 0x1c], 0
je 0x42234b
xor ecx, ecx
mov dword [ebp - 0x44], ecx
push edi
push dword [ebp + 0x14]
call fcn.00419d9c
add esp, 8
mov ebx, eax
mov dword [ebp - 0x4c], 0x402d62
mov dword [ebp - 0x48], 0x40f4e3
push 0xb0719b
lea eax, [ebp - 0x4c]
push eax
call fcn.0040208a
add esp, 8
push ebx
lea edx, [ebp - 0x4c]
push edx
call fcn.004022c4
add esp, 8
push 0xb071a9
lea ecx, [ebp - 0x4c]
push ecx
call fcn.0040208a
add esp, 8
movzx eax, bx
push eax
push 1
lea edx, [ebp - 0x44]
push edx
call fcn.0040be46
add esp, 0xc
push dword [ebp - 0x44]
mov cx, word [ebp + 0x10]
push ecx
mov al, byte [ebp + 0xc]
push eax
mov dl, byte [ebp - 2]
push edx
call fcn.00420bf2
add esp, 0x10
lea ecx, [ebp - 0x44]
push ecx
call fcn.00433d9e
pop ecx
inc byte [0xb135a1]
lea eax, [ebp - 4]
push eax
mov dx, word [ebp + 0x10]
push edx
mov cl, byte [ebp + 0xc]
push ecx
mov al, byte [ebp - 2]
push eax
call fcn.00420ed0
add esp, 0x10
test al, al
je 0x42268b
cmp byte [ebp - 4], 0
jne 0x42268b
mov dword [ebp - 0x54], 0x402d62
mov dword [ebp - 0x50], 0x40f4e3
push 0xb071ac
lea edx, [ebp - 0x54]
push edx
call fcn.0040208a
add esp, 8
cmp byte [0xb1359b], 0
je 0x422687
mov dword [ebp - 0x5c], 0x402d62
mov dword [ebp - 0x58], 0x40f4e3
push 0xb071b7
lea ecx, [ebp - 0x5c]
push ecx
call fcn.0040208a
add esp, 8
lea eax, [ebp - 4]
push eax
push dword [ebp + 8]
call fcn.004161da
pop ecx
push eax
mov dx, word [ebp + 0x10]
push edx
mov cl, byte [ebp + 0xc]
push ecx
mov al, byte [ebp - 2]
push eax
call fcn.0041fbce
add esp, 0x14
test al, al
je 0x42268b
cmp byte [ebp - 4], 0
jne 0x42268b
dec byte [0xb135a1]
call sub.KERNEL32.dll_GetTickCount
mov dword [ebp - 8], eax
mov edx, dword [0xf255f0]
mov dword [ebp - 0xc], edx
xor esi, esi
cmp edi, esi
jbe 0x422577
push 0x80
push 0
lea eax, [ebp - 0xf4]
push eax
call fcn.00435974
add esp, 0xc
mov edx, edi
sub edx, esi
cmp edx, 0x80
jbe 0x422443
mov cl, 0x80
jmp 0x422449
mov ecx, edi
mov eax, esi
sub cl, al
mov byte [ebp - 3], cl
mov dword [ebp - 0x64], 0x402d62
mov dword [ebp - 0x60], 0x40f4e3
push 0xb071cc
lea edx, [ebp - 0x64]
push edx
call fcn.0040208a
add esp, 8
push esi
lea eax, [ebp - 0x64]
push eax
call fcn.00402302
add esp, 8
push 0xb071d8
lea edx, [ebp - 0x64]
push edx
call fcn.0040208a
add esp, 8
xor eax, eax
mov al, byte [ebp - 3]
cdq
push edx
push eax
lea ecx, [ebp - 0x64]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb071da
lea eax, [ebp - 0x64]
push eax
call fcn.0040208a
add esp, 8
lea edx, [ebp - 0xf4]
push edx
lea ecx, [ebp - 3]
push ecx
push esi
mov ax, word [ebp + 0x10]
push eax
mov dl, byte [ebp + 0xc]
push edx
mov cl, byte [ebp - 2]
push ecx
call fcn.00420131
add esp, 0x18
test al, al
jne 0x4224de
inc byte [0xb135a1]
jmp 0x42268b
xor ebx, ebx
mov al, byte [ebp - 3]
add al, 0xff
mov byte [ebp - 0x15], al
cmp bl, byte [ebp - 0x15]
ja 0x42254b
xor edx, edx
mov dl, bl
add edx, esi
mov ecx, dword [ebp + 0x14]
mov al, byte [ecx + edx]
xor edx, edx
mov dl, bl
cmp al, byte [ebp + edx - 0xf4]
je 0x422545
push 0xb071de
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402599
add esp, 8
push esi
lea eax, [ebp - 0x14]
push eax
call fcn.00402302
add esp, 8
push ebx
lea edx, [ebp - 0x14]
push edx
call fcn.00402284
add esp, 8
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.0040e95c
pop ecx
lea eax, [ebp - 0x10]
push eax
call fcn.00433d9e
pop ecx
inc ebx
cmp bl, byte [ebp - 0x15]
jbe 0x4224ed
add esi, 0x80
cmp byte [0xb0f5f8], 0
je 0x422565
inc byte [0xb135a1]
jmp 0x42268b
push edi
push esi
call fcn.00416229
add esp, 8
cmp edi, esi
ja 0x42241d
inc byte [0xb135a1]
lea edx, [ebp - 4]
push edx
mov cx, word [ebp + 0x10]
push ecx
mov al, byte [ebp + 0xc]
push eax
mov dl, byte [ebp - 2]
push edx
call fcn.00420ed0
add esp, 0x10
test al, al
je 0x42268b
cmp byte [ebp - 4], 0
jne 0x42268b
call fcn.00416298
mov dword [ebp - 0x6c], 0x402d62
mov dword [ebp - 0x68], 0x40f4e3
push 0xb071f5
lea ecx, [ebp - 0x6c]
push ecx
call fcn.0040208a
add esp, 8
mov eax, dword [0xf255f0]
sub eax, dword [ebp - 0xc]
cdq
push edx
push eax
lea ecx, [ebp - 0x6c]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb07207
lea eax, [ebp - 0x6c]
push eax
call fcn.0040208a
add esp, 8
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cdq
push edx
push eax
lea ecx, [ebp - 0x6c]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb07212
lea eax, [ebp - 0x6c]
push eax
call fcn.0040208a
add esp, 8
push 0xb07216
lea edx, [ebp - 0x6c]
push edx
call fcn.0040208a
add esp, 8
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
push eax
mov ecx, dword [0xf255f0]
sub ecx, dword [ebp - 0xc]
push ecx
call fcn.0041283d
add esp, 8
cdq
push edx
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00402141
add esp, 0xc
push 0xb07226
lea edx, [ebp - 0x6c]
push edx
call fcn.0040208a
add esp, 8
mov dword [ebp - 0x74], 0x402d62
mov dword [ebp - 0x70], 0x40f4e3
push 0xb0722e
lea ecx, [ebp - 0x74]
push ecx
call fcn.0040208a
add esp, 8
mov byte [ebp - 1], 1
mov al, byte [ebp - 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret