Function at 0x540b20
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xdc
mov eax, dword [0x5deba8]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xa4], ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0xa8], ecx
mov edx, dword [ebp - 0xa8]
sub edx, 0x1010
mov dword [ebp - 0xa8], edx
cmp dword [ebp - 0xa8], 0x21
ja case.0x540b74.2
mov eax, dword [ebp - 0xa8]
movzx ecx, byte [eax + 0x541be4]
jmp dword [ecx*4 + 0x541bc0]
lea ecx, [ebp - 0x30]
call fcn.0046a990
lea edx, [ebp - 0x30]
push edx
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.00453190
mov eax, dword [ebp - 0xa4]
movzx ecx, byte [eax + 0x3631]
test ecx, ecx
jne 0x540d10
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx + 0x3632]
test eax, eax
jne 0x540d10
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x3610], 0
jge 0x540c60
mov edx, dword [ebp - 0xa4]
cmp dword [edx + 0x360c], 1
jle 0x540c4b
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xac], ecx
fild dword [ebp - 0xac]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x3628]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3618]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3618]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x3620]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3618]
call fcn.00555360
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + 0x3610], eax
jmp 0x540c5b
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x3610], 0
jmp 0x540ce9
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0x360c], 1
jle 0x540cd9
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x360c]
sub edx, 1
mov dword [ebp - 0xb0], edx
fild dword [ebp - 0xb0]
mov eax, dword [ebp - 0xa4]
fmul qword [eax + 0x3628]
mov ecx, dword [ebp - 0xa4]
fadd qword [ecx + 0x3618]
mov edx, dword [ebp - 0xa4]
fstp qword [edx + 0x3618]
mov eax, dword [ebp - 0xa4]
fild dword [eax + 0x3620]
mov ecx, dword [ebp - 0xa4]
fsub qword [ecx + 0x3618]
call fcn.00555360
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x3610], eax
jmp 0x540ce9
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x3610], 0
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.00477ef0
push 1
lea ecx, [ebp - 0x30]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0046ae20
jmp 0x541038
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx + 0x3631]
test eax, eax
je 0x540ea6
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35e4]
sub edx, 1
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0x35e8], edx
jne 0x540df6
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x360c], 1
jle 0x540de1
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x360c]
sub eax, 1
mov dword [ebp - 0xb4], eax
fild dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xa4]
fmul qword [ecx + 0x3628]
mov edx, dword [ebp - 0xa4]
fadd qword [edx + 0x3618]
mov eax, dword [ebp - 0xa4]
fstp qword [eax + 0x3618]
mov ecx, dword [ebp - 0xa4]
fild dword [ecx + 0x3620]
mov edx, dword [ebp - 0xa4]
fadd qword [edx + 0x3618]
call fcn.00555360
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax + 0x3610]
jne 0x540dd0
xor eax, eax
jmp 0x541bad
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x34]
mov dword [edx + 0x3610], eax
jmp 0x540df1
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + 0x3610], 0
jmp 0x540ea1
mov edx, dword [ebp - 0xa4]
cmp dword [edx + 0x360c], 1
jle 0x540e91
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xb8], ecx
fild dword [ebp - 0xb8]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x3628]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3618]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3618]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x3620]
mov eax, dword [ebp - 0xa4]
fsub qword [eax + 0x3618]
call fcn.00555360
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x38]
cmp edx, dword [ecx + 0x3610]
jne 0x540e80
xor eax, eax
jmp 0x541bad
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x38]
mov dword [eax + 0x3610], ecx
jmp 0x540ea1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x3610], 0
jmp 0x541016
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0x35e8], 0
jne 0x540f6b
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x360c], 1
jle 0x540f56
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x360c]
sub eax, 1
mov dword [ebp - 0xbc], eax
fild dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xa4]
fmul qword [ecx + 0x3628]
mov edx, dword [ebp - 0xa4]
fadd qword [edx + 0x3618]
mov eax, dword [ebp - 0xa4]
fstp qword [eax + 0x3618]
mov ecx, dword [ebp - 0xa4]
fild dword [ecx + 0x3620]
mov edx, dword [ebp - 0xa4]
fsub qword [edx + 0x3618]
call fcn.00555360
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [eax + 0x3610]
jne 0x540f45
xor eax, eax
jmp 0x541bad
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x3c]
mov dword [edx + 0x3610], eax
jmp 0x540f66
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + 0x3610], 0
jmp 0x541016
mov edx, dword [ebp - 0xa4]
cmp dword [edx + 0x360c], 1
jle 0x541006
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xc0], ecx
fild dword [ebp - 0xc0]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x3628]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3618]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3618]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x3620]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3618]
call fcn.00555360
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x40]
cmp edx, dword [ecx + 0x3610]
jne 0x540ff5
xor eax, eax
jmp 0x541bad
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x40]
mov dword [eax + 0x3610], ecx
jmp 0x541016
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x3610], 0
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.00477ef0
push 1
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0046ae20
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x360c], 2
je 0x54105a
mov edx, dword [ebp - 0xa4]
cmp dword [edx + 0x3610], 0
jne 0x54113e
mov eax, dword [ebp - 0xa4]
movzx ecx, byte [eax + 0x3633]
test ecx, ecx
jne 0x5410c7
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx + 0x3632]
test eax, eax
je 0x541099
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35e8]
sub edx, 1
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x35e8], edx
jmp 0x5410c5
mov ecx, dword [ebp - 0xa4]
movzx edx, byte [ecx + 0x3631]
test edx, edx
je 0x5410c5
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x35e8]
add ecx, 1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x35e8], ecx
jmp 0x5410df
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x3634]
mov dword [eax + 0x35e8], edx
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x35e8]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bd90
push 0
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.00477b70
push 0x1010
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x3633], 0
mov eax, dword [ebp - 0xa4]
mov byte [eax + 0x3630], 0
xor eax, eax
jmp 0x541bad
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x360c], 1
jle 0x541168
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x360c]
sub eax, 1
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + 0x360c], eax
jmp case.0x540b74.2
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx + 0x35a4]
test eax, eax
jne 0x541195
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x28]
mov edx, dword [eax + 0x1c]
call edx
jmp case.0x540b74.2
call fcn.00401820
movzx eax, al
test eax, eax
je 0x5411d5
mov ecx, dword [ebp - 0xa4]
movzx edx, byte [ecx + 0x3630]
test edx, edx
jne 0x5411d5
push 0x1027
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov ecx, dword [ebp - 0xa4]
call fcn.005401c0
jmp case.0x540b74.2
mov eax, dword [ebp - 0xa4]
movzx ecx, byte [eax + 0x3670]
test ecx, ecx
je 0x5413c7
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x3680]
mov eax, dword [ebp - 0xa4]
fcomp qword [eax + 0x3690]
fnstsw ax
test ah, 0x41
jp 0x541228
mov ecx, dword [ebp - 0xa4]
fild dword [ecx + 0x3680]
mov edx, dword [ebp - 0xa4]
fstp qword [edx + 0x3690]
jmp 0x541267
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xc4], ecx
fild dword [ebp - 0xc4]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x36a0]
mov eax, dword [ebp - 0xa4]
fadd qword [eax + 0x3690]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3690]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x367c]
mov eax, dword [ebp - 0xa4]
fcomp qword [eax + 0x3688]
fnstsw ax
test ah, 1
jne 0x5412a0
mov ecx, dword [ebp - 0xa4]
fild dword [ecx + 0x367c]
mov edx, dword [ebp - 0xa4]
fstp qword [edx + 0x3688]
jmp 0x5412df
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xc8], ecx
fild dword [ebp - 0xc8]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x3698]
mov eax, dword [ebp - 0xa4]
fsubr qword [eax + 0x3688]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3688]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x360c]
mov eax, dword [ebp - 0xa4]
fmul qword [eax + 0x36e0]
fadd qword [0x596510]
call fcn.00555360
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bf80
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x28]
mov edx, dword [eax + 0x1c]
call edx
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x360c], ecx
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0x360c], 0
jne 0x5413c2
push 0x1011
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov ecx, dword [ebp - 0xa4]
mov byte [ecx + 0x3630], 0
call fcn.0048a8b0
movzx edx, al
test edx, edx
je 0x5413c2
push 0
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x35a0]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047c4b0
mov edx, dword [ebp - 0xa4]
mov ecx, dword [edx + 0x3674]
call fcn.004b9e10
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x35a0], 0
jmp 0x541637
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x360c], 0
jne 0x541460
lea ecx, [ebp - 0x58]
call fcn.0046a990
lea edx, [ebp - 0x58]
push edx
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.00453190
push 0x1011
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov eax, dword [ebp - 0xa4]
mov byte [eax + 0x3630], 0
push 0
mov ecx, dword [ebp - 0xa4]
mov ecx, dword [ecx + 0x3674]
call fcn.004b8b40
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x3671], 0
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.00477ef0
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax + 0x28]
mov eax, dword [edx + 0x1c]
call eax
xor eax, eax
jmp 0x541bad
mov ecx, dword [ebp - 0xa4]
fld qword [ecx + 0x3690]
call fcn.00555360
mov edx, dword [ebp - 0xa4]
cmp eax, dword [edx + 0x3678]
jg 0x5414a8
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3678]
sub ecx, 1
mov dword [ebp - 0xcc], ecx
fild dword [ebp - 0xcc]
mov edx, dword [ebp - 0xa4]
fstp qword [edx + 0x3690]
jmp 0x54151e
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov dword [ebp - 0xd0], ecx
fild dword [ebp - 0xd0]
mov edx, dword [ebp - 0xa4]
fmul qword [edx + 0x36a0]
mov eax, dword [ebp - 0xa4]
fsubr qword [eax + 0x3690]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3690]
mov edx, dword [ebp - 0xa4]
fld qword [edx + 0x3690]
call fcn.00555360
mov ecx, dword [ebp - 0xa4]
cmp eax, dword [ecx + 0x3678]
jg 0x54151e
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x3678]
mov eax, dword [ebp - 0xa4]
fstp qword [eax + 0x3690]
mov ecx, dword [ebp - 0xa4]
fld qword [ecx + 0x3688]
call fcn.00555360
mov edx, dword [ebp - 0xa4]
cmp eax, dword [edx + 0x3678]
jl 0x541557
mov eax, dword [ebp - 0xa4]
fild dword [eax + 0x3678]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3688]
jmp 0x5415cd
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x360c]
sub eax, 1
mov dword [ebp - 0xd4], eax
fild dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xa4]
fmul qword [ecx + 0x3698]
mov edx, dword [ebp - 0xa4]
fadd qword [edx + 0x3688]
mov eax, dword [ebp - 0xa4]
fstp qword [eax + 0x3688]
mov ecx, dword [ebp - 0xa4]
fld qword [ecx + 0x3688]
call fcn.00555360
mov edx, dword [ebp - 0xa4]
cmp eax, dword [edx + 0x3678]
jl 0x5415cd
mov eax, dword [ebp - 0xa4]
fild dword [eax + 0x3678]
mov ecx, dword [ebp - 0xa4]
fstp qword [ecx + 0x3688]
mov edx, dword [ebp - 0xa4]
fild dword [edx + 0x360c]
mov eax, dword [ebp - 0xa4]
fmul qword [eax + 0x36e0]
fadd qword [0x596510]
call fcn.00555360
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bf80
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x28]
mov edx, dword [eax + 0x1c]
call edx
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x360c]
sub ecx, 1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x360c], ecx
jmp case.0x540b74.2
lea ecx, [ebp - 0x60]
call fcn.0046ae50
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ecx, dword [ebp - 0xa4]
movzx edx, byte [ecx + 0x3594]
test edx, edx
je 0x541758
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0x35a0], 0
je 0x541758
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35a0]
push edx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047cc80
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
je 0x541730
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x64]
cmp ecx, dword [eax + 0x3674]
jne 0x54172e
mov edx, dword [ebp - 0xa4]
mov ecx, dword [edx + 0x3674]
call fcn.004ba000
movzx eax, al
test eax, eax
jne 0x54172e
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35a0]
push edx
call fcn.0048a8a0
add esp, 4
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3598]
push ecx
call fcn.0048a900
add esp, 4
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x359c]
push eax
call fcn.0048a910
add esp, 4
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047beb0
mov ecx, dword [ebp - 0xa4]
mov byte [ecx + 0x3594], 0
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x365d], 0
jmp 0x541758
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3674]
push ecx
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x35a0]
push eax
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047cda0
push 0x1028
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
jmp case.0x540b74.2
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [ebp - 0x1c]
push edx
mov eax, dword [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0xa4]
add ecx, 0x50
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x541813
mov ecx, dword [ebp - 0xa4]
call fcn.005431c0
movzx edx, al
test edx, edx
jne 0x541813
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0xa4]
add edx, 0x50
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x5417e9
call fcn.004017e0
movzx eax, al
test eax, eax
je 0x5417e9
push 0
push 0
push 0x200
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.00416350
jmp 0x541813
push 0
push 0
push 0x2a3
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.00416350
push 0x1029
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
jmp case.0x540b74.2
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x35a0], 0
jne 0x541841
push 0x1030
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
xor eax, eax
jmp 0x541bad
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx + 0x3630]
test eax, eax
je 0x541859
xor eax, eax
jmp 0x541bad
lea ecx, [ebp - 0x84]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.004010b0
mov dword [ebp - 0x74], 0
xor edx, edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x94], 0
xor eax, eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
lea ecx, [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x35a0]
mov ecx, dword [ebp - 0xa4]
mov ecx, dword [ecx + 0x35a0]
mov edx, dword [eax]
mov eax, dword [edx + 0xc]
call eax
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x70], edx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6c], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x68], edx
lea eax, [ebp - 0x74]
push eax
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.00496f80
lea ecx, [ebp - 0x84]
push ecx
lea edx, [ebp - 0x74]
push edx
lea eax, [ebp - 0x94]
push eax
call dword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x541b0f
mov ecx, dword [ebp - 0x7c]
add ecx, 0xa
cmp dword [ebp - 0x6c], ecx
jle 0x541a3f
mov edx, dword [ebp - 0x74]
cmp edx, dword [ebp - 0x7c]
jge 0x541a3f
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x35e8]
add ecx, 1
mov edx, dword [ebp - 0xa4]
cmp ecx, dword [edx + 0x35e4]
jge 0x541997
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x35e8]
add ecx, 1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x3634], ecx
push 0x12
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3634]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bc40
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x3634]
push eax
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bd90
jmp 0x541a13
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35e4]
add edx, 1
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x35e4], edx
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35e8]
add edx, 1
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x3634], edx
push 0x12
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x3634]
push edx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bc40
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047c970
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3634]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bd90
push 0x1030
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x35e1], 0
xor eax, eax
jmp 0x541bad
mov eax, dword [ebp - 0x84]
sub eax, 0xa
cmp dword [ebp - 0x74], eax
jge 0x541aed
mov ecx, dword [ebp - 0x6c]
cmp ecx, dword [ebp - 0x84]
jle 0x541aed
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x35e8]
sub eax, 1
js 0x541aeb
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x35e8]
sub edx, 1
mov eax, dword [ebp - 0xa4]
mov dword [eax + 0x3634], edx
push 0x14
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x3634]
push edx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bc40
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x3634]
push ecx
mov ecx, dword [ebp - 0xa4]
add ecx, 0x28
call fcn.0047bd90
push 0x1030
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x35e1], 0
xor eax, eax
jmp 0x541bad
jmp 0x541b0d
push 0x1030
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov eax, dword [ebp - 0xa4]
mov byte [eax + 0x35e1], 0
jmp 0x541b2f
push 0x1030
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov ecx, dword [ebp - 0xa4]
mov byte [ecx + 0x35e1], 0
jmp case.0x540b74.2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], 0
fild qword [ebp - 0xdc]
fstp qword [ebp - 0xa0]
mov edx, dword [ebp - 0xa4]
fld qword [ebp - 0xa0]
fsub qword [edx + 0x36b0]
fcomp qword [0x5a3ec0]
fnstsw ax
test ah, 0x41
jne case.0x540b74.2
mov eax, dword [ebp - 0xa4]
movzx ecx, byte [eax + 0x36a9]
push ecx
mov ecx, dword [ebp - 0xa4]
call fcn.0053bca0
push 0x1031
mov ecx, dword [ebp - 0xa4]
add ecx, 4
call fcn.0042c540
mov edx, dword [ebp - 0xa4]
mov byte [edx + 0x36a8], 0
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0055338c
mov esp, ebp
pop ebp
ret 0x10