Function at 0x4598e0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff44
push esi
push edi
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x7e
jg 0x4599a4
je 0x45a624
cmp eax, 0x1c
jg 0x459962
je 0x459ee8
add eax, 0xfffffffd
cmp eax, 0xe
ja case.default.0x459f60
jmp dword [eax*4 + 0x459926]
cmp eax, 0x46
jg 0x45998d
je 0x459d46
sub eax, 0x1f
je 0x459b29
sub eax, 2
je 0x459a3f
sub eax, 3
je 0x459baf
jmp case.default.0x459f60
sub eax, 0x47
je 0x459a74
sub eax, 3
je 0x459e67
jmp case.default.0x459f60
cmp eax, 0x114
jg 0x4599fc
je 0x45a1c0
cmp eax, 0x102
jg 0x4599e3
je 0x45a55f
sub eax, 0x84
je 0x45a087
add eax, 0xffffffe3
sub eax, 9
jb 0x459f28
sub eax, 0x56
je 0x45a535
jmp case.default.0x459f60
sub eax, 0x104
je 0x45a535
sub eax, 0xe
je 0x459aa9
jmp case.default.0x459f60
cmp eax, 0x2a3
jg 0x459a2c
je 0x45a511
sub eax, 0x128
je 0x459a81
add eax, 0xffffff28
sub eax, 0xf
jb 0x45a27b
sub eax, 5
je 0x459c22
jmp case.default.0x459f60
sub eax, 0x312
je 0x459e51
dec eax
je 0x459a99
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x90]
test al, 4
je case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 3
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp 0x45a694
mov eax, dword [ebp - 4]
call fcn.00459470
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
call fcn.00459470
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x90], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xdc]
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
and eax, 0xfff0
sub eax, 0xf010
je 0x459adc
sub eax, 0x10
je 0x459af1
sub eax, 0x10
je 0x459b0f
sub eax, 0xf0
je 0x459b00
jmp 0x459b1e
mov eax, dword [ebp - 4]
cmp byte [eax + 0x80], 3
mov eax, dword [ebp - 0x1c]
sete byte [eax]
jmp case.default.0x459f60
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.004575a0
jmp case.default.0x459f60
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00457d50
jmp case.default.0x459f60
mov dl, 3
mov eax, dword [ebp - 4]
call fcn.004575a0
jmp case.default.0x459f60
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0
jmp case.default.0x459f60
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004582b0
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
test byte [eax + 0xac], 2
jne case.default.0x459f60
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
sub eax, 1
jb 0x459b68
je 0x459b84
dec eax
je 0x459b90
jmp 0x459b9c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x459ba2
mov eax, dword [ebp - 4]
mov byte [eax + 0x80], 1
jmp 0x459ba2
mov eax, dword [ebp - 4]
mov byte [eax + 0x80], 2
jmp 0x459ba2
mov eax, dword [ebp - 4]
mov byte [eax + 0x80], 3
jmp 0x459ba2
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0
mov eax, dword [ebp - 4]
call fcn.00459470
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
cmp dword [eax + 0x64], 0
jle 0x459bc7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x64]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x18], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x68], 0
jle 0x459bdf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x1c], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x6c], 0
jle 0x459bf7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x20], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x70], 0
jle 0x459c0f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x24], eax
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
test byte [eax + 0xac], 2
jne case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x80], 3
jne 0x459c5f
push ebp
call fcn.00459820
pop ecx
mov eax, dword [ebp - 0x2c]
mov edi, eax
lea esi, [ebp - 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x459d1a
mov eax, dword [ebp - 4]
cmp byte [eax + 0xc6], 0
jne 0x459d1a
push ebp
call fcn.00459820
pop ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x84]
je 0x459c99
push ebp
push 0
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov edx, dword [ebp - 0x14]
call fcn.00459890
pop ecx
jmp 0x459cc6
mov eax, dword [ebp - 4]
call fcn.004561f0
mov edx, dword [ebp - 4]
add eax, dword [edx + 0x84]
mov edx, dword [ebp - 0x2c]
cmp eax, dword [edx + 8]
je 0x459cc6
push ebp
push 0
mov eax, dword [ebp - 0x2c]
add eax, 8
xor ecx, ecx
mov edx, dword [ebp - 0xc]
call fcn.00459890
pop ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x88]
je 0x459ced
push ebp
push 0
mov eax, dword [ebp - 0x2c]
add eax, 4
xor ecx, ecx
mov edx, dword [ebp - 0x10]
call fcn.00459890
pop ecx
jmp 0x459d1a
mov eax, dword [ebp - 4]
call fcn.004561c0
mov edx, dword [ebp - 4]
add eax, dword [edx + 0x88]
mov edx, dword [ebp - 0x2c]
cmp eax, dword [edx + 0xc]
je 0x459d1a
push ebp
push 0
mov eax, dword [ebp - 0x2c]
add eax, 0xc
xor ecx, ecx
mov edx, dword [ebp - 8]
call fcn.00459890
pop ecx
mov eax, dword [ebp - 0x2c]
mov edx, eax
mov eax, dword [ebp - 4]
call fcn.00458e60
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00456a70
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 1
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
cmp byte [eax + 0x80], 3
jne 0x459d94
push ebp
call fcn.00459820
pop ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x14]
mov dword [eax + 8], edx
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x10]
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x10], eax
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov dword [edx + 0x14], eax
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
cmp byte [eax + 0x40], 0
je case.default.0x459f60
cmp dword [0x58fd18], 0
jle case.default.0x459f60
mov eax, dword [ebp - 4]
cmp byte [eax + 0xc6], 0
jne case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je case.default.0x459f60
push ebp
call fcn.00459820
pop ecx
push ebp
push 0
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
add eax, 8
xor ecx, ecx
mov edx, dword [ebp - 0x14]
call fcn.00459890
pop ecx
push ebp
push 0
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
add eax, 0xc
xor ecx, ecx
mov edx, dword [ebp - 0x10]
call fcn.00459890
pop ecx
push ebp
push 0
mov eax, dword [ebp - 4]
call fcn.004561f0
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
add eax, 8
mov edx, dword [ebp - 0xc]
call fcn.00459890
pop ecx
push ebp
push 0
mov eax, dword [ebp - 4]
call fcn.004561c0
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
add eax, 0xc
mov edx, dword [ebp - 8]
call fcn.00459890
pop ecx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 4]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xe4]
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
cmp dword [eax + 8], 0
je 0x459e81
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xe8]
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
cmp word [eax + 4], 0
setne dl
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xf8]
mov eax, dword [ebp - 0x18]
cmp word [eax + 4], 0
je 0x459ec9
mov eax, dword [ebp - 4]
mov al, byte [eax + 0x80]
sub al, 1
je 0x459ebd
sub al, 2
jne 0x459ec9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
push eax
call sub.user32.dll_SetFocus
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
mov dl, 1
mov eax, dword [0x58fd2c]
call fcn.004531f0
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
cmp dword [eax + 4], 1
jne case.default.0x459f60
mov eax, dword [0x58fd2c]
cmp dword [eax + 0x6c], 0
je case.default.0x459f60
mov eax, dword [0x58fd2c]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 0x44]
push eax
call sub.user32.dll_SetActiveWindow
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov dword [ebp - 0x38], eax
movsx eax, word [ebp - 0x38]
mov dword [ebp - 0x40], eax
movsx eax, word [ebp - 0x36]
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x24]
lea edx, [ebp - 0x40]
mov eax, dword [ebp - 4]
call fcn.004592c0
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
add eax, 0xffffff5f
cmp eax, 8
ja case.default.0x459f60
jmp dword [eax*4 + 0x459f67]
mov byte [ebp - 0x42], 1
mov byte [ebp - 0x41], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x42]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov byte [ebp - 0x44], 1
mov byte [ebp - 0x43], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x44]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.default.0x459f60
mov byte [ebp - 0x46], 1
mov byte [ebp - 0x45], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x46]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov byte [ebp - 0x48], 2
mov byte [ebp - 0x47], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x48]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov byte [ebp - 0x4a], 2
mov byte [ebp - 0x49], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x4a]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.default.0x459f60
mov byte [ebp - 0x4c], 2
mov byte [ebp - 0x4b], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x4c]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov byte [ebp - 0x4e], 3
mov byte [ebp - 0x4d], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x4e]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov byte [ebp - 0x50], 3
mov byte [ebp - 0x4f], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x50]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.default.0x459f60
mov byte [ebp - 0x52], 3
mov byte [ebp - 0x51], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x52]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov dword [ebp - 0x56], eax
movsx eax, word [ebp - 0x56]
mov dword [ebp - 0x60], eax
movsx eax, word [ebp - 0x54]
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x24]
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 4]
call fcn.004592c0
cmp dword [ebp - 0x20], 0
jl 0x45a0b8
cmp dword [ebp - 0x24], 0
jge 0x45a0c3
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0
jmp 0x45a694
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x98]
mov byte [ebp - 0x25], al
xor eax, eax
mov al, byte [ebp - 0x25]
cmp eax, 0xa
ja case.0x45a0e2.0
jmp dword [eax*4 + 0x45a0e9]
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 1
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 2
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xd
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xc
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xe
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xa
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xb
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0x10
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xf
jmp 0x45a195
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0x11
jmp 0x45a195
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
cmp byte [ebp - 0x25], 1
je 0x45a1ac
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c], 1
jne 0x45a1ac
mov eax, dword [ebp - 4]
call fcn.00458c40
mov al, byte [ebp - 0x25]
mov edx, dword [ebp - 4]
mov byte [edx + 0x4c], al
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov ax, word [eax + 4]
sub ax, 1
jb 0x45a1d4
je 0x45a21e
jmp 0x45a268
mov eax, dword [0x58fd2c]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x6c]
push eax
call sub.user32.dll_GetCursorPos
lea ecx, [ebp - 0xb4]
or edx, 0xffffffff
mov al, 1
call fcn.00451090
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0xbc]
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
call fcn.004592c0
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 4]
pop ecx
call fcn.00458750
jmp 0x45a268
mov eax, dword [0x58fd2c]
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x78]
push eax
call sub.user32.dll_GetCursorPos
lea ecx, [ebp - 0xb4]
mov edx, 1
mov al, 1
call fcn.00451090
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0xbc]
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.004592c0
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 4]
pop ecx
call fcn.00458750
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x21], 0
je 0x45a506
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 8]
mov dword [ebp - 0x7c], eax
movsx eax, word [ebp - 0x7c]
mov dword [ebp - 0x84], eax
movsx eax, word [ebp - 0x7a]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
add eax, 0xfffffe00
cmp eax, 0xe
ja case.0x45a2d4.523
jmp dword [eax*4 + 0x45a2db]
mov eax, dword [ebp - 0x18]
call fcn.00450720
mov byte [ebp - 0x85], al
mov al, byte [ebp - 0x85]
mov byte [ebp - 0x87], al
mov byte [ebp - 0x86], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x87]
mov eax, dword [ebp - 4]
call fcn.004585b0
jmp case.0x45a2d4.523
mov byte [ebp - 0x89], 1
mov byte [ebp - 0x88], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x89]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
mov byte [ebp - 0x8b], 1
mov byte [ebp - 0x8a], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x8b]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.0x45a2d4.523
mov byte [ebp - 0x8d], 1
mov byte [ebp - 0x8c], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x8d]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
mov byte [ebp - 0x8f], 2
mov byte [ebp - 0x8e], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x8f]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
mov byte [ebp - 0x91], 2
mov byte [ebp - 0x90], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x91]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.0x45a2d4.523
mov byte [ebp - 0x93], 2
mov byte [ebp - 0x92], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x93]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
mov byte [ebp - 0x95], 3
mov byte [ebp - 0x94], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x95]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
mov byte [ebp - 0x97], 3
mov byte [ebp - 0x96], 0
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x97]
mov eax, dword [ebp - 4]
call fcn.004588e0
jmp case.0x45a2d4.523
mov byte [ebp - 0x99], 3
mov byte [ebp - 0x98], 1
lea edx, [ebp - 0x24]
mov cx, word [ebp - 0x99]
mov eax, dword [ebp - 4]
call fcn.00458ae0
jmp case.0x45a2d4.523
lea ecx, [ebp - 0xb4]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.004592c0
lea edx, [ebp - 0xb4]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
call fcn.00457450
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4d], 0
jne 0x45a4f9
mov eax, dword [ebp - 4]
mov byte [eax + 0x4d], 1
mov dword [ebp - 0xac], 0x10
mov dword [ebp - 0xa8], 2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0xa4], eax
xor eax, eax
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0xac]
push eax
call sub.user32.dll_TrackMouseEvent
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
jmp case.default.0x459f60
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov byte [eax + 0x4d], 0
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00457c30
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [0x58fd2c]
call fcn.004534e0
mov byte [ebp - 0x2d], al
mov eax, dword [ebp - 0x18]
mov dl, byte [ebp - 0x2d]
call fcn.00450770
mov edx, eax
mov cl, byte [ebp - 0x2d]
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov eax, dword [0x58fd2c]
call fcn.004534e0
mov byte [ebp - 0x2d], al
mov eax, dword [ebp - 0x18]
cmp dword [eax + 4], 0x20
jb 0x45a584
mov edx, dword [ebp - 0x18]
mov dx, word [edx + 4]
mov eax, dword [ebp - 4]
call fcn.00458d30
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
cmp eax, 0x16
jg 0x45a59e
je 0x45a5df
dec eax
je 0x45a5be
sub eax, 2
je 0x45a5d0
jmp case.default.0x459f60
sub eax, 0x1a
je 0x45a5ee
sub eax, 6
jne case.default.0x459f60
mov cl, byte [ebp - 0x2d]
mov dl, 0x17
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov cl, byte [ebp - 0x2d]
mov dl, 0xe
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov cl, byte [ebp - 0x2d]
mov dl, 9
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov cl, byte [ebp - 0x2d]
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov cl, byte [ebp - 0x2d]
mov dl, 0xd
mov eax, dword [ebp - 4]
call fcn.00458c70
jmp case.default.0x459f60
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
mov byte [edx + 0x21], al
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xf0]
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
jmp case.default.0x459f60
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xec]
jmp case.default.0x459f60
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 8]
mov eax, dword [0x58fd2c]
mov ecx, dword [eax]
call dword [ecx + 0x28]
and eax, 0x7f
mov edx, dword [ebp - 0x18]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
add eax, 0xffffff00
sub eax, 3
jb 0x45a66c
dec eax
sub eax, 3
jb 0x45a66c
sub eax, 0x17f
jne 0x45a677
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
call fcn.00457420
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
add eax, 0xffffff00
sub eax, 0xa
jae 0x45a694
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1c]
mov byte [eax], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret