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

Disassembly:
push 0xffffffffffffffff
push 0x482f1a
mov eax, dword fs:[0]
push eax
sub esp, 0x44
push ebx
push ebp
push esi
push edi
mov eax, dword [0x49b470]
xor eax, esp
push eax
lea eax, [esp + 0x58]
mov dword fs:[0], eax
inc dword [0x4b3ccc]
call fcn.0042fad0
xor eax, eax
xor esi, esi
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x30], vtable.CUBitBlt.0
mov dword [esp + 0x60], esi
call fcn.00435400
test eax, eax
je 0x42fe06
push 0x258
push 0x320
push esi
push esi
push esi
push esi
lea ecx, [esp + 0x48]
call fcn.0040a8a0
mov ebp, dword [0x4b5a34]
cmp ebp, esi
je 0x430269
mov ebx, dword [0x4b5e48]
cmp ebx, 0xffffffff
je 0x430269
mov eax, dword [ebp + ebx*4]
cmp byte [eax + 0x18], 1
jne 0x430269
mov edx, dword [0x4b5a38]
cmp edx, esi
je 0x42fe6e
xor ecx, ecx
cmp dword [edx], 0xffffffff
je 0x42fe6e
mov eax, edx
mov eax, dword [eax]
cmp byte [eax + 0x28], 0
je 0x42fe64
mov al, byte [eax + 0x16]
cmp al, 8
je 0x42fe64
cmp al, 0xf8
je 0x42fe64
cmp al, 0x18
je 0x42fe64
cmp al, 0x20
je 0x42fe64
mov esi, 1
inc ecx
cmp dword [edx + ecx*4], 0xffffffff
lea eax, [edx + ecx*4]
jne 0x42fe44
mov eax, dword [0x4b5c38]
mov edi, dword [0x4b3d50]
cmp eax, 8
je 0x42fe87
cmp eax, 0x10
jne 0x430269
mov ecx, dword [0x4b5df4]
cmp ecx, 4
je 0x430249
cmp ecx, 8
je 0x430249
cmp eax, 0x10
jne 0x430040
mov ecx, dword [ebp + ebx*4]
cmp byte [ecx + 0xc0], 0
je 0x430269
mov eax, ecx
movsx ecx, word [eax + 0xa0]
movsx edx, word [eax + 8]
movsx ebx, word [eax + 0xa]
lea esi, [edx + ecx]
mov dword [esp + 0x20], esi
movsx esi, word [eax + 0xa2]
lea ebp, [ebx + esi]
mov dword [esp + 0x24], ebp
movsx ebp, word [eax + 0xa4]
add ebp, edx
lea edx, [ecx + ebp - 1]
movsx ecx, byte [eax + 0xab]
movsx eax, word [eax + 0xa6]
mov dword [esp + 0x28], edx
cdq
inc ecx
idiv ecx
add eax, ebx
cmp dword [0x4b5a90], 1
lea edx, [eax + esi - 1]
mov dword [esp + 0x2c], edx
jne 0x42ff1d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x42ff23
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ebp, dword [0x4b5a34]
mov ebx, eax
mov eax, dword [0x4b5e48]
mov ecx, dword [ebp + eax*4]
movsx ecx, byte [ecx + 0xab]
mov edx, ebx
sub edx, dword [0x4b3ccc]
mov eax, 0x3e0f83e1
mul edx
shr edx, 4
cmp edx, ecx
jbe 0x42ff57
mov dword [0x4b3ccc], ebx
mov ecx, dword [0x4b3d48]
lea eax, [esp + 0x20]
push eax
push ecx
xor ecx, ecx
mov edx, edi
call fcn.00441e00
mov eax, dword [0x4b5e48]
mov edx, dword [ebp + eax*4]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
add esp, 8
cmp byte [edx + 0x70], 0
je 0x42ffd1
mov ecx, edx
movsx eax, word [ecx + 0xa6]
movsx ebp, byte [ecx + 0xab]
cdq
inc ebp
idiv ebp
movsx edx, word [ecx + 0xa2]
push esi
push edi
add ecx, 0x48
push eax
movsx eax, word [ecx + 0x5c]
push eax
movsx eax, word [ecx + 0x58]
push edx
push eax
push ecx
mov ecx, dword [0x4b3d48]
mov eax, 0xff
call fcn.0043d120
mov ebp, dword [0x4b5a34]
mov eax, dword [0x4b5e48]
add esp, 0x1c
mov ebp, dword [ebp + eax*4]
sub ebx, dword [0x4b3ccc]
movsx ecx, byte [ebp + 0xab]
mov eax, 0x3e0f83e1
mul ebx
push 1
push 1
push 0xff
push ecx
shr edx, 4
sub ecx, edx
push ecx
mov ecx, dword [0x4b3d38]
push ecx
push esi
push edi
lea edx, [ebp + 0x98]
call fcn.0043f370
mov edx, dword [0x4b5a34]
mov eax, dword [0x4b5e48]
mov eax, dword [edx + eax*4]
movsx ecx, word [eax + 0xa6]
movsx edx, word [eax + 0xa4]
add esp, 0x20
push ecx
push edx
push esi
push edi
push esi
push edi
lea ecx, [esp + 0x48]
call fcn.0040a8a0
jmp 0x430269
mov eax, dword [ebp + ebx*4]
cmp byte [eax + 0x104], 0
je 0x430269
movsx ecx, word [eax + 0xe4]
movsx edx, word [eax + 8]
movsx ebx, word [eax + 0xa]
lea esi, [edx + ecx]
mov dword [esp + 0x20], esi
movsx esi, word [eax + 0xe6]
lea ebp, [ebx + esi]
mov dword [esp + 0x24], ebp
movsx ebp, word [eax + 0xe8]
add ebp, edx
lea ecx, [ecx + ebp - 1]
mov dword [esp + 0x28], ecx
movsx ecx, byte [eax + 0xef]
movsx eax, word [eax + 0xea]
cdq
inc ecx
idiv ecx
add eax, ebx
cmp dword [0x4b5a90], 1
lea edx, [eax + esi - 1]
mov dword [esp + 0x2c], edx
jne 0x4300b9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, eax
mov dword [esp + 0x18], ebx
jmp 0x4300c5
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ebx, eax
mov dword [esp + 0x18], eax
mov eax, dword [0x4b5e48]
mov ebp, dword [0x4b5a34]
mov ecx, dword [ebp + eax*4]
movsx ecx, byte [ecx + 0xef]
mov edx, ebx
sub edx, dword [0x4b3ccc]
mov eax, 0x3e0f83e1
mul edx
shr edx, 4
cmp edx, ecx
jbe 0x4300f7
mov dword [0x4b3ccc], ebx
mov ecx, dword [0x4b3d48]
lea eax, [esp + 0x20]
push eax
push ecx
xor ecx, ecx
mov edx, edi
call fcn.00441e00
mov ecx, dword [0x4b5e48]
mov edx, dword [ebp + ecx*4]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
add esp, 8
cmp byte [edx + 0x70], 0
je 0x4301d2
mov eax, edx
movsx edx, word [eax + 0xe8]
movsx eax, word [eax + 0xe4]
add edx, eax
mov eax, dword [ebp + ecx*4]
movsx eax, word [eax + 0x54]
cmp eax, edx
jle 0x4301d2
mov eax, dword [ebp + ecx*4]
movsx ebx, byte [eax + 0xef]
movsx eax, word [eax + 0xea]
cdq
inc ebx
idiv ebx
mov edx, eax
mov eax, dword [ebp + ecx*4]
movsx ebx, word [eax + 0xe6]
movsx eax, word [eax + 0x56]
add edx, ebx
cmp eax, edx
jle 0x4301ce
mov ecx, dword [ebp + ecx*4]
movsx eax, word [ecx + 0xea]
movsx ebx, byte [ecx + 0xef]
cdq
inc ebx
idiv ebx
movsx edx, word [ecx + 0xe8]
push esi
push edi
add ecx, 0x48
push eax
movsx eax, word [ecx + 0x9e]
push edx
movsx edx, word [ecx + 0x9c]
push eax
push edx
push ecx
mov ecx, dword [0x4b3d48]
mov eax, 0xff
call fcn.0043d120
mov ebp, dword [0x4b5a34]
mov ecx, dword [0x4b5e48]
add esp, 0x1c
mov ebx, dword [esp + 0x18]
sub ebx, dword [0x4b3ccc]
mov ebp, dword [ebp + ecx*4]
movsx ecx, byte [ebp + 0xef]
mov eax, 0x3e0f83e1
mul ebx
mov eax, dword [0x4b3d38]
push 1
push 1
push 0xff
push ecx
shr edx, 4
sub ecx, edx
push ecx
push eax
push esi
push edi
lea edx, [ebp + 0xdc]
call fcn.0043f370
mov edx, dword [0x4b5e48]
mov ecx, dword [0x4b5a34]
mov ecx, dword [ecx + edx*4]
movsx eax, word [ecx + 0xea]
movsx ebx, byte [ecx + 0xef]
cdq
inc ebx
idiv ebx
add esp, 0x20
push eax
movsx eax, word [ecx + 0xe8]
push eax
push esi
push edi
push esi
push edi
lea ecx, [esp + 0x48]
call fcn.0040a8a0
jmp 0x430269
cmp eax, 0x10
jne 0x430269
push 0
push 0
push 0
push 0
push 0
push 0
push 0
xor edx, edx
lea ecx, [eax - 0xf]
call fcn.0043b950
add esp, 0x1c
lea ecx, [esp + 0x30]
push ecx
mov dword [esp + 0x64], 0xffffffff
call fcn.0040a990
mov ecx, dword [esp + 0x58]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret