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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x463d55
mov eax, dword fs:[0]
push eax
sub esp, 0xac
mov eax, dword [0x474860]
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 ebx, ecx
mov dword [ebp - 0xb0], ebx
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
shl byte [ecx + 0x46], 1
add bh, bh
xlatb
cmp eax, 9
ja 0x42c9f8
mov dh, 0x25
push ss
jbe 0x42c988
pop ds
imul edi, edx, 0xe8c462f
mov ecx, 0x33c1796
jl 0x42c9fa
cmc
leave
cdq
js 0x42ca09
ret
call edi
mov dword [ebp - 0x14], eax
lea ecx, [ecx]
cmp dword [0x47ac7c], 8
mov edx, 0x47ac68
cmovae edx, dword [0x47ac68]
lodsb al, byte [esi]
inc edi
add byte [edi], cl
inc ebx
adc eax, 0x47ac68
sub esp, 0x18
mov esi, esp
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], ax
cmp word [edx], ax
je 0x42ca50
mov eax, edx
lea ecx, [eax + 2]
mov dword [ebp - 0x18], ecx
jmp 0x42ca40
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42ca40
sub eax, dword [ebp - 0x18]
sar eax, 1
push eax
push edx
mov ecx, esi
call fcn.00402380
call fcn.004464f0
add esp, 0x18
test eax, eax
jne 0x42ca71
call edi
sub eax, dword [ebp - 0x14]
cmp eax, 0x2710
jb 0x42ca00
mov edx, 0x3e8
mov ecx, 4
call fcn.0042e050
lea ecx, [ebp - 0x58]
call fcn.00428780
mov esi, eax
cmp esi, 0x47acf1
je 0x42cacf
cmp dword [0x47ad05], 0x10
jb 0x42caa9
push dword [0x47acf1]
call fcn.00447bb4
add esp, 4
push esi
mov ecx, 0x47acf1
mov dword [0x47ad05], 0xf
mov dword [0x47ad01], 0
mov byte [0x47acf1], 0
call fcn.004038b0
cmp dword [ebp - 0x44], 0x10
jb 0x42cae0
push dword [ebp - 0x58]
call fcn.00447bb4
add esp, 4
mov edx, 0x3e8
mov ecx, 5
call fcn.0042e050
sub esp, 0x18
mov ecx, esp
push 0xffffffffffffffff
mov dword [ebp - 0x40], 0
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x47aca1
mov byte [ecx], 0
call fcn.0040da80
lea ecx, [ebp - 0x40]
call fcn.00427970
add esp, 0x18
push 0
mov dword [ebp - 4], 0
push 0
mov dword [ebp - 0xa4], 0
call fcn.0042d520
mov dword [ebp - 0xa8], eax
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 1
call fcn.00428de0
push dword [ebp - 0x14]
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0xa8]
mov eax, dword [edx]
cmp ecx, dword [ecx]
push edx
push eax
push ecx
lea ecx, [ebp - 0xa8]
call fcn.0042d830
mov edi, dword [ebp - 0xa8]
mov esi, dword [edi]
cmp esi, edi
je 0x42cc48
sub esp, 0x18
mov ecx, esp
xor eax, eax
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [esi + 0x20]
push eax
call fcn.00401f90
lea ecx, [ebp - 0x58]
call fcn.00427850
mov edi, eax
lea ebx, [esi + 0x20]
add esp, 0x18
cmp ebx, edi
je 0x42cc21
cmp dword [ebx + 0x14], 8
jb 0x42cbca
push dword [ebx]
call fcn.00447bb4
add esp, 4
xor eax, eax
mov dword [ebx + 0x14], 7
mov dword [ebx + 0x10], 0
mov word [ebx], ax
cmp dword [edi + 0x14], 8
jae 0x42cbf8
mov eax, dword [edi + 0x10]
inc eax
je 0x42cc02
add eax, eax
push eax
push edi
push ebx
call fcn.00447c20
add esp, 0xc
jmp 0x42cc02
mov eax, dword [edi]
mov dword [ebx], eax
mov dword [edi], 0
mov eax, dword [edi + 0x10]
mov dword [ebx + 0x10], eax
mov eax, dword [edi + 0x14]
mov dword [ebx + 0x14], eax
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], 0
mov word [edi], ax
cmp dword [ebp - 0x44], 8
jb 0x42cc32
push dword [ebp - 0x58]
call fcn.00447bb4
add esp, 4
mov esi, dword [esi]
mov edi, dword [ebp - 0xa8]
cmp esi, edi
jne 0x42cb82
mov ebx, dword [ebp - 0xb0]
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x38]
call fcn.0042a230
mov esi, eax
lea eax, [ebp - 0xa8]
cmp eax, esi
je 0x42cc8b
mov ecx, eax
call fcn.0041bbe0
mov ecx, dword [ebp - 0xa8]
mov edi, dword [esi]
mov dword [esi], ecx
mov ecx, dword [ebp - 0xa4]
mov eax, dword [esi + 4]
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xa4], eax
mov dword [esi + 4], ecx
lea ecx, [ebp - 0x38]
call fcn.0041bbe0
push dword [ebp - 0x38]
call fcn.00447bb4
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
add esp, 4
call esi
cmp eax, 2
ja 0x42ccca
add eax, 0x6f554d2d
cmp al, 0x74
and byte [ebx - 0x30e387d], dl
invalid
test ebx, ebx
je 0x42ccde
push 0
push 0
push 0x467
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
call esi
cmp eax, 4
ja 0x42cd18
mov word [eax], gs
rcr dword [edx - 0x212025af], 0xec
pop ss
inc esp
mov al, byte [0xb9c07319]
pop ebp
push cs
push ecx
push edx
pop esi
mov edi, 0x74e73f00
xor al, 0xec
dec ecx
push eax
sal dword [ebp - 0x23de52bd], cl
xlatb
push cs
jecxz 0x42cd32
xchg esi, eax
push ebp
lds ebx, [ebx - 0x4806c8e3]
loopne 0x42cd04
test ebx, ebx
je 0x42cd23
mov ecx, ebx
call fcn.004449c0
call int.0042a3e0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 0xffffffffffffffff
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push 0x47acd9
mov word [ecx], ax
call fcn.00401f90
mov byte [ebp - 4], 2
call fcn.00432b40
sub esp, 0x18
mov edx, esp
mov esi, eax
xor eax, eax
mov dword [edx + 0x14], 7
mov dword [edx + 0x10], 0
mov word [edx], ax
cmp word [esi], ax
jne 0x42cd7c
xor ecx, ecx
jmp 0x42cd94
mov ecx, esi
lea eax, [ecx + 2]
mov dword [ebp - 0x14], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42cd84
sub ecx, dword [ebp - 0x14]
sar ecx, 1
push ecx
push esi
mov ecx, edx
call fcn.00402380
mov byte [ebp - 4], 1
call fcn.004031f0
add esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x47aca1
mov byte [ecx], 0
call fcn.0040da80
mov byte [ebp - 4], 3
call fcn.00432c00
sub esp, 0x18
mov edx, esp
mov esi, eax
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], 0
cmp byte [esi], 0
jne 0x42cdf7
xor ecx, ecx
jmp 0x42ce0a
mov ecx, esi
lea eax, [ecx + 1]
mov dword [ebp - 0x14], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42ce00
sub ecx, dword [ebp - 0x14]
push ecx
push esi
mov ecx, edx
call fcn.0040dbb0
mov byte [ebp - 4], 1
call fcn.00403310
add esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x47acf1
mov byte [ecx], 0
call fcn.0040da80
mov byte [ebp - 4], 4
call fcn.00432ca0
sub esp, 0x18
mov edx, esp
mov esi, eax
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], 0
cmp byte [esi], 0
jne 0x42ce6d
xor ecx, ecx
jmp 0x42ce7f
mov ecx, esi
lea eax, [ecx + 1]
mov dword [ebp - 0x14], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42ce75
sub ecx, dword [ebp - 0x14]
push ecx
push esi
mov ecx, edx
call fcn.0040dbb0
mov byte [ebp - 4], 1
call fcn.00403310
mov esi, dword [edi]
add esp, 0x30
cmp esi, edi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
je 0x42d24e
xor eax, eax
push 0xffffffffffffffff
push eax
lea edi, [esi + 8]
push edi
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
call fcn.00401f90
xor eax, eax
mov byte [ebp - 4], 5
push 0xffffffffffffffff
push eax
mov word [ebp - 0x70], ax
lea eax, [edi + 0x18]
push eax
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x5c], 7
mov dword [ebp - 0x60], 0
call fcn.00401f90
xor eax, eax
mov byte [ebp - 4], 6
push eax
push 0x46cd04
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x90], 0
mov word [ebp - 0xa0], ax
call fcn.00402380
xor eax, eax
mov byte [ebp - 4], 7
push eax
push 0x46cd04
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
mov word [ebp - 0x30], ax
call fcn.00402380
xor eax, eax
mov byte [ebp - 4], 8
push eax
push 0x46cd04
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x74], 7
mov dword [ebp - 0x78], 0
mov word [ebp - 0x88], ax
call fcn.00402380
mov byte [ebp - 4], 9
mov edx, 0x3e8
mov ecx, 6
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
call fcn.0042e050
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb8], esp
xor eax, eax
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x88]
push eax
call fcn.00401f90
sub esp, 0x18
mov ecx, esp
mov byte [ebp - 4], 0xa
xor eax, eax
mov dword [ebp - 0xb4], esp
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
mov word [ecx], ax
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.00401f90
sub esp, 0x18
mov ecx, esp
mov byte [ebp - 4], 0xb
xor eax, eax
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x58]
push eax
call fcn.00401f90
push 0
lea eax, [ebp - 0x34]
push eax
push 0
push 0
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 9
call int.00405630
add esp, 0x40
mov ecx, esp
mov dword [ebp - 0xac], esp
mov bl, al
xor eax, eax
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x30]
push eax
call fcn.00401f90
mov byte [ebp - 4], 0xc
call fcn.00432d40
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00402480
mov byte [ebp - 4], 9
call fcn.004031f0
mov ecx, str.fail
mov eax, 0x46d6c8
test bl, bl
cmove eax, ecx
add esp, 0x18
mov ecx, esp
mov dword [ebp - 0xac], esp
push eax
call fcn.00402480
mov byte [ebp - 4], 0xd
call fcn.00432e10
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00402480
mov byte [ebp - 4], 9
call fcn.004031f0
add esp, 0x30
push 0
push 0x64
push 0x466
push dword [0x47acd1]
call dword [sym.imp.USER32.dll_PostMessageW]
test bl, bl
je 0x42d312
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 2
ja 0x42d102
add dh, byte [edi + 0x1f]
and dword [esi + 0x55dd6f2b], esp
push ebp
or bh, dl
jo 0x42d0e0
mov ah, 0xc8
ficomp word [eax - 0x55]
lahf
insd dword es:[edi], dx
mov cl, 0xcc
invalid
mov ebx, dword [ebp - 0xb0]
test ebx, ebx
je 0x42d11c
push 0
push 0
push 0x467
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, ebx
call fcn.00444a60
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x3e8
call edi
mov edx, 0x3e8
mov ecx, 7
call fcn.0042e050
sub esp, 0x18
mov ecx, esp
xor eax, eax
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x70]
push eax
call fcn.00401f90
push 0xfffffffffffffffe
lea eax, [ebp - 0x18]
push eax
push 0
lea ecx, [ebp - 0x30]
call fcn.0042a090
add esp, 0x24
test al, al
je 0x42d31e
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x42d190
mov edx, dword [0x47acd5]
call fcn.00444d20
cmp dword [ebp - 0x74], 8
jb 0x42d1a4
push dword [ebp - 0x88]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x1c], 8
mov dword [ebp - 0x74], 7
mov dword [ebp - 0x78], 0
mov word [ebp - 0x88], ax
jb 0x42d1cc
push dword [ebp - 0x30]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x8c], 8
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
mov word [ebp - 0x30], ax
jb 0x42d1f7
push dword [ebp - 0xa0]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x5c], 8
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x90], 0
mov word [ebp - 0xa0], ax
jb 0x42d225
push dword [ebp - 0x70]
call fcn.00447bb4
add esp, 4
xor eax, eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x44], 8
mov dword [ebp - 0x5c], 7
mov dword [ebp - 0x60], 0
mov word [ebp - 0x70], ax
jb 0x42d24e
push dword [ebp - 0x58]
call fcn.00447bb4
add esp, 4
mov edx, 0x3e8
xor ecx, ecx
call fcn.0042e050
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 2
ja 0x42d284
mov esi, 0x7f0c0257
and ecx, dword gs:[edx]
movsb byte es:[edi], byte [esi]
ficomp dword [esi + edx*8 + 0x13]
push eax
out dx, eax
sub dword [edx], 0xb1a442ff
loope 0x42d2f5
mov eax, dword [0x2b4a150c]
mov ch, 0x82
or eax, 0x1074db85
test ebx, ebx
je 0x42d298
push 0
push 1
push 0x467
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [0x47ac48]
call edi
sub esp, 0x18
mov ecx, esp
push str.crash
call fcn.00402480
xor edx, edx
mov ecx, 0x47ad09
call fcn.00401480
add esp, 0x18
test al, al
je 0x42d2ca
xor eax, eax
mov dword [eax], 5
lea ecx, [ebp - 0xa8]
call fcn.0041bbe0
push dword [ebp - 0xa8]
call fcn.00447bb4
add esp, 4
lea ecx, [ebp - 0x40]
call fcn.0041bbe0
push dword [ebp - 0x40]
call fcn.00447bb4
add esp, 4
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.00447bb9
mov esp, ebp
pop ebp
ret
add al, 0x8b
dec ebp
hlt
mov ebx, dword [ebp - 0xb0]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x74], 8
jb 0x42d332
push dword [ebp - 0x88]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x1c], 8
mov dword [ebp - 0x74], 7
mov dword [ebp - 0x78], 0
mov word [ebp - 0x88], ax
jb 0x42d35a
push dword [ebp - 0x30]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x8c], 8
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
mov word [ebp - 0x30], ax
jb 0x42d385
push dword [ebp - 0xa0]
call fcn.00447bb4
add esp, 4
xor eax, eax
cmp dword [ebp - 0x5c], 8
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x90], 0
mov word [ebp - 0xa0], ax
jb 0x42d3b3
push dword [ebp - 0x70]
call fcn.00447bb4
add esp, 4
xor eax, eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x44], 8
mov dword [ebp - 0x5c], 7
mov dword [ebp - 0x60], 0
mov word [ebp - 0x70], ax
jb 0x42d3dc
push dword [ebp - 0x58]
call fcn.00447bb4
add esp, 4
mov esi, dword [esi]
cmp esi, dword [ebp - 0xa8]
jne 0x42cea4
jmp 0x42d24e