Function at 0x577718
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x83
push 0
push 0
dec ecx
jne 0x577720
push ecx
push ebx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 8], eax
lea eax, [ebp - 0x2c]
call fcn.004058a4
xor eax, eax
push ebp
push 0x579dbf
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
cmp dword [eax + 0x3e4], 0
jne 0x57779c
xor eax, eax
mov dword [0x5890b8], eax
mov eax, 0x5890bc
call fcn.004052f4
mov eax, 0x5890c0
call fcn.004052f4
lea ecx, [ebp - 0x90]
xor edx, edx
xor eax, eax
call fcn.0041c4f8
lea eax, [ebp - 0x90]
push eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x54]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
xor ecx, ecx
xor edx, edx
call fcn.0055bad8
push 0
push 0
push 0
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov eax, dword [ebp - 0x54]
mov edx, 0x579ddc
call fcn.00405614
jne 0x5777e7
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 0x2c]
call fcn.00409f90
mov edx, dword [ebp - 0x94]
mov eax, 0x5890bc
call fcn.00405330
jmp 0x579aed
lea eax, [ebp - 0x5c]
call fcn.004052f4
lea eax, [ebp - 0x58]
call fcn.004052f4
xor eax, eax
push ebp
push 0x579ae3
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x54]
mov edx, 0x579de4
call fcn.00405614
jne 0x577aea
push 0
push 0
push 0
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call fcn.00409f90
mov edx, dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
call fcn.00404d70
mov eax, dword [ebp - 0x98]
call fcn.0040a558
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xf020
je 0x577892
cmp dword [ebp - 0x38], 0xf030
je 0x577892
cmp dword [ebp - 0x38], 0xf060
je 0x577892
cmp dword [ebp - 0x38], 0xf120
je 0x577892
call fcn.004044f0
jmp 0x579aed
push 0
push 0
push 0
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov eax, dword [ebp - 0xac]
lea edx, [ebp - 0xa8]
call fcn.00409f90
mov edx, dword [ebp - 0xa8]
lea eax, [ebp - 0xa4]
call fcn.00404d70
mov eax, dword [ebp - 0xa4]
call fcn.0040a558
test eax, eax
jns 0x5778e4
call fcn.00403a58
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x50]
push eax
call sub.user32.dll_GetCursorPos
push ebp
lea eax, [ebp - 0x6c]
lea edx, [ebp - 0x50]
call fcn.00577688
pop ecx
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x577a88
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x577929
call fcn.004044f0
jmp 0x579aed
mov eax, dword [0x58921c]
mov eax, dword [eax]
call fcn.0045e0f0
cmp eax, dword [ebp - 0x6c]
jne 0x577944
call fcn.004044f0
jmp 0x579aed
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.0057753c
pop ecx
test al, al
je 0x57795c
call fcn.004044f0
jmp 0x579aed
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
mov eax, dword [ebp - 0x6c]
mov dword [0x5890b8], eax
push ebp
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 0x6c]
call fcn.005774c0
pop ecx
mov edx, dword [ebp - 0xb0]
lea eax, [ebp - 0x64]
call fcn.00405358
cmp byte [ebp - 0x2f], 0
je 0x577a0b
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_GetParent
push eax
call sub.user32.dll_GetParent
mov dword [ebp - 0x74], eax
push 0x579dec
push ebp
lea edx, [ebp - 0xb4]
mov eax, dword [ebp - 0x74]
call fcn.005773e8
pop ecx
push dword [ebp - 0xb4]
push 0x579e0c
push ebp
lea edx, [ebp - 0xb8]
mov eax, dword [ebp - 0x74]
call fcn.005774c0
pop ecx
push dword [ebp - 0xb8]
push 0x579e1c
push ebp
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
push dword [ebp - 0xbc]
push 0x579e34
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.004055cc
jmp 0x577a40
push 0x579dec
push ebp
lea edx, [ebp - 0xc0]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
push dword [ebp - 0xc0]
push 0x579e0c
push dword [ebp - 0x64]
push 0x579e40
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.004055cc
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00577218
pop ecx
test al, al
jne 0x577a88
lea edx, [ebp - 0xc4]
mov eax, dword [ebp - 0x64]
call fcn.00409d2c
mov eax, dword [ebp - 0xc4]
mov edx, 0x579e54
call fcn.00405614
je 0x577a88
push dword [ebp - 0x5c]
push 0x579e7c
push 0x579e84
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.004055cc
cmp dword [ebp - 0x38], 0xf020
jne 0x577a9e
lea eax, [ebp - 0x58]
mov edx, 0x579e9c
call fcn.00405358
cmp dword [ebp - 0x38], 0xf030
jne 0x577ab4
lea eax, [ebp - 0x58]
mov edx, 0x579ec4
call fcn.00405358
cmp dword [ebp - 0x38], 0xf060
jne 0x577aca
lea eax, [ebp - 0x58]
mov edx, 0x579eec
call fcn.00405358
cmp dword [ebp - 0x38], 0xf120
jne 0x577ae0
lea eax, [ebp - 0x58]
mov edx, 0x579f18
call fcn.00405358
call fcn.004044f0
jmp 0x579aed
mov eax, dword [ebp - 0x54]
mov edx, 0x579f44
call fcn.00405614
jne 0x577cbf
call sub.user32.dll_GetForegroundWindow
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x50]
push eax
call sub.user32.dll_GetCursorPos
push ebp
lea eax, [ebp - 0x6c]
lea edx, [ebp - 0x50]
call fcn.00577688
pop ecx
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x577cb5
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x577b47
call fcn.004044f0
jmp 0x579aed
mov eax, dword [0x58921c]
mov eax, dword [eax]
call fcn.0045e0f0
cmp eax, dword [ebp - 0x6c]
jne 0x577b62
call fcn.004044f0
jmp 0x579aed
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.0057753c
pop ecx
test al, al
je 0x577b7a
call fcn.004044f0
jmp 0x579aed
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
mov eax, dword [ebp - 0x6c]
mov dword [0x5890b8], eax
push ebp
lea edx, [ebp - 0xc8]
mov eax, dword [ebp - 0x6c]
call fcn.005774c0
pop ecx
mov edx, dword [ebp - 0xc8]
lea eax, [ebp - 0x64]
call fcn.00405358
cmp byte [ebp - 0x2f], 0
je 0x577c29
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_GetParent
push eax
call sub.user32.dll_GetParent
mov dword [ebp - 0x74], eax
push 0x579dec
push ebp
lea edx, [ebp - 0xcc]
mov eax, dword [ebp - 0x74]
call fcn.005773e8
pop ecx
push dword [ebp - 0xcc]
push 0x579e0c
push ebp
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0x74]
call fcn.005774c0
pop ecx
push dword [ebp - 0xd0]
push 0x579e1c
push ebp
lea edx, [ebp - 0xd4]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
push dword [ebp - 0xd4]
push 0x579e34
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.004055cc
jmp 0x577c5e
push 0x579dec
push ebp
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
push dword [ebp - 0xd8]
push 0x579e0c
push dword [ebp - 0x64]
push 0x579e40
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.004055cc
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00577218
pop ecx
test al, al
jne 0x577ca6
lea edx, [ebp - 0xdc]
mov eax, dword [ebp - 0x64]
call fcn.00409d2c
mov eax, dword [ebp - 0xdc]
mov edx, 0x579e54
call fcn.00405614
je 0x577ca6
push dword [ebp - 0x5c]
push 0x579e7c
push 0x579e84
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.004055cc
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
call fcn.0055b4f0
call fcn.004044f0
jmp 0x579aed
mov byte [ebp - 1], 0
mov byte [ebp - 2], 0
push 0
push 0
push 0
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov edx, dword [ebp - 0xe4]
lea eax, [ebp - 0xe0]
call fcn.00404d70
mov eax, dword [ebp - 0xe0]
call fcn.0040a558
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x201
je 0x577d4e
cmp dword [ebp - 0x38], 0xa1
je 0x577d4e
cmp dword [ebp - 0x38], 0x204
je 0x577d26
cmp dword [ebp - 0x38], 0xa4
jne 0x577d2c
mov byte [ebp - 1], 1
jmp 0x577d4e
cmp dword [ebp - 0x38], 0x203
je 0x577d3e
cmp dword [ebp - 0x38], 0xa3
jne 0x577d44
mov byte [ebp - 2], 1
jmp 0x577d4e
call fcn.004044f0
jmp 0x579aed
push 0
push 0
push 0
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov edx, dword [ebp - 0xec]
lea eax, [ebp - 0xe8]
call fcn.00404d70
mov eax, dword [ebp - 0xe8]
call fcn.0040a558
mov dword [ebp - 0x50], eax
push 0
push 0
push 0
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x579dd4
call fcn.004acb58
mov edx, dword [ebp - 0xf4]
lea eax, [ebp - 0xf0]
call fcn.00404d70
mov eax, dword [ebp - 0xf0]
call fcn.0040a558
mov dword [ebp - 0x4c], eax
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
call sub.user32.dll_WindowFromPoint
mov dword [ebp - 0x70], eax
lea ecx, [ebp - 0xf8]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.004eb784
mov eax, dword [ebp - 0xf8]
lea edx, [ebp - 0x68]
call fcn.00409d2c
mov eax, dword [0x589688]
mov eax, dword [eax]
lea edx, [ebp - 0x50]
call fcn.004ed7b4
mov dword [ebp - 0x6c], eax
push ebp
lea eax, [ebp - 0x6c]
lea edx, [ebp - 0x50]
call fcn.00577688
pop ecx
mov byte [ebp - 0x2f], al
lea ecx, [ebp - 0x90]
xor edx, edx
xor eax, eax
call fcn.0041c4f8
lea eax, [ebp - 0x90]
push eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x54]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
xor ecx, ecx
mov edx, 2
call fcn.0055bad8
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x577f35
cmp dword [ebp - 0x40], 1
jne 0x577ea3
push 0x579f4c
push dword [ebp - 0x54]
push 0x579f6c
lea edx, [ebp - 0x100]
mov eax, dword [ebp - 0x3c]
call fcn.0040a308
mov edx, dword [ebp - 0x100]
lea eax, [ebp - 0xfc]
call fcn.004054d0
push dword [ebp - 0xfc]
push 0x579f78
lea eax, [ebp - 0x58]
mov edx, 5
call fcn.004055cc
jmp 0x577ee7
push 0x579f4c
push dword [ebp - 0x54]
push 0x579f6c
lea edx, [ebp - 0x108]
mov eax, dword [ebp - 0x3c]
call fcn.0040a308
mov edx, dword [ebp - 0x108]
lea eax, [ebp - 0x104]
call fcn.004054d0
push dword [ebp - 0x104]
push 0x579f8c
lea eax, [ebp - 0x58]
mov edx, 5
call fcn.004055cc
mov eax, dword [ebp - 0x54]
call fcn.004054f0
cmp eax, 0xff
jle 0x577f1c
mov eax, dword [0x589364]
cmp byte [eax], 0
je 0x577f0f
lea eax, [ebp - 0x58]
mov edx, 0x579fac
call fcn.004054fc
jmp 0x577f1c
lea eax, [ebp - 0x58]
mov edx, 0x579fd0
call fcn.004054fc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x58]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
call fcn.004052f4
mov byte [ebp - 0x2d], 0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x578222
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x577f62
call fcn.004044f0
jmp 0x579aed
mov eax, dword [0x58921c]
mov eax, dword [eax]
call fcn.0045e0f0
cmp eax, dword [ebp - 0x6c]
jne 0x577f7d
call fcn.004044f0
jmp 0x579aed
push ebp
lea edx, [ebp - 0x10c]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
mov edx, dword [ebp - 0x10c]
lea eax, [ebp - 0x54]
call fcn.00405358
lea edx, [ebp - 0x110]
mov eax, dword [ebp - 0x6c]
call fcn.004b2c8c
mov eax, dword [ebp - 0x110]
lea edx, [ebp - 0x64]
call fcn.00409d2c
mov eax, dword [ebp - 0x54]
xor edx, edx
call fcn.00405614
jne 0x5780a0
mov edx, dword [ebp - 0x68]
mov eax, 0x57a00c
call fcn.00405810
test eax, eax
jle 0x5780a0
lea eax, [ebp - 0x50]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov edx, dword [0x5890b8]
call fcn.00559a08
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jne 0x578008
call fcn.004044f0
jmp 0x579aed
lea eax, [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x70]
push eax
call sub.user32.dll_GetWindowRect
mov eax, dword [ebp - 0x88]
add eax, dword [ebp - 0x80]
jno 0x578028
call fcn.00403a60
sar eax, 1
jns 0x57802f
adc eax, 0
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x7c]
jno 0x578042
call fcn.00403a60
sar eax, 1
jns 0x578049
adc eax, 0
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0x114]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.004eb784
mov eax, dword [ebp - 0x114]
lea edx, [ebp - 0x68]
call fcn.00409d2c
lea eax, [ebp - 0x50]
push eax
mov eax, dword [ebp - 0x68]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x54]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
mov ecx, dword [0x5890b8]
mov edx, 1
call fcn.0055bad8
call fcn.004044f0
jmp 0x579aed
mov eax, dword [ebp - 0x54]
xor edx, edx
call fcn.00405614
jne 0x5780c1
mov edx, dword [ebp - 0x64]
mov eax, 0x57a028
call fcn.00405810
test eax, eax
jg 0x578222
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.0057753c
pop ecx
test al, al
je 0x5780e1
mov byte [ebp - 0x2d], 1
jmp 0x5780f8
mov eax, dword [ebp - 0x6c]
mov dword [0x5890b8], eax
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
call fcn.0055b4f0
cmp byte [ebp - 0x2f], 0
je 0x57818a
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_GetParent
push eax
call sub.user32.dll_GetParent
mov dword [ebp - 0x74], eax
push 0x579dec
push ebp
lea edx, [ebp - 0x11c]
mov eax, dword [ebp - 0x74]
call fcn.005773e8
pop ecx
mov eax, dword [ebp - 0x11c]
lea edx, [ebp - 0x118]
call fcn.00409f90
push dword [ebp - 0x118]
push 0x579e0c
push ebp
lea edx, [ebp - 0x120]
mov eax, dword [ebp - 0x74]
call fcn.005774c0
pop ecx
push dword [ebp - 0x120]
push 0x579e1c
push ebp
lea edx, [ebp - 0x124]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
push dword [ebp - 0x124]
push 0x579e34
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.004055cc
jmp 0x5781e3
push 0x579dec
push ebp
lea edx, [ebp - 0x12c]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
mov eax, dword [ebp - 0x12c]
lea edx, [ebp - 0x128]
call fcn.00409f90
push dword [ebp - 0x128]
push 0x579e0c
push ebp
lea edx, [ebp - 0x130]
mov eax, dword [ebp - 0x6c]
call fcn.005774c0
pop ecx
push dword [ebp - 0x130]
push 0x579e40
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.004055cc
cmp byte [ebp - 0x2d], 0
jne 0x578222
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00577218
pop ecx
test al, al
jne 0x578222
mov edx, dword [ebp - 0x64]
mov eax, 0x57a040
call fcn.00405810
test eax, eax
jg 0x578222
push dword [ebp - 0x5c]
push 0x579e7c
push 0x579e84
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.004055cc
lea edx, [ebp - 0x134]
mov eax, dword [ebp - 0x6c]
call fcn.004b2c8c
mov eax, dword [ebp - 0x134]
lea edx, [ebp - 0x64]
call fcn.00409d2c
mov eax, dword [ebp - 0x64]
mov edx, 0x57a05c
call fcn.00405614
jne 0x57828a
lea eax, [ebp - 0x58]
mov edx, 0x57a09c
call fcn.00405358
mov eax, dword [0x589364]
cmp byte [eax], 0
je 0x578273
lea eax, [ebp - 0x58]
mov edx, 0x57a0f8
call fcn.004054fc
jmp 0x578280
lea eax, [ebp - 0x58]
mov edx, 0x57a120
call fcn.004054fc
call fcn.004044f0
jmp 0x579aed
mov eax, dword [ebp - 0x68]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x50]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
call fcn.0055bdc0
mov dword [ebp - 0x38], eax
cmp word [ebp - 0x18], 3
je 0x5782c0
call fcn.004044f0
jmp 0x579aed
cmp word [ebp - 0x28], 3
je 0x5782d1
call fcn.004044f0
jmp 0x579aed
cmp dword [ebp - 0x38], 0
jne 0x57836c
lea eax, [ebp - 0x144]
mov edx, 0x22
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x144]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x578309
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.00405614
je 0x57836c
lea eax, [ebp - 0x154]
mov edx, 0x38
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x154]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x578362
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.00405614
jne 0x578362
mov eax, 0x57a164
mov edx, dword [ebp - 0x68]
call fcn.00405614
jne 0x578362
lea eax, [ebp - 0x18]
mov edx, 0x2b
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 0x70]
call fcn.004b2c3c
jmp 0x57836c
call fcn.004044f0
jmp 0x579aed
cmp dword [ebp - 0x38], 1
jne 0x578384
lea eax, [ebp - 0x58]
call fcn.004052f4
call fcn.004044f0
jmp 0x579aed
mov byte [ebp - 0x30], 0
mov edx, dword [ebp - 0x60]
mov eax, 0x57a178
call fcn.00405810
test eax, eax
jle 0x5783b9
lea edx, [ebp - 0x158]
mov eax, dword [ebp - 0x60]
call fcn.00409f90
mov edx, dword [ebp - 0x158]
lea eax, [ebp - 0x60]
call fcn.00405358
mov byte [ebp - 0x30], 1
mov edx, dword [ebp - 0x60]
mov eax, 0x57a178
call fcn.00405810
test eax, eax
jle 0x57841c
push 0
lea eax, [ebp - 0x15c]
push eax
mov ecx, 0x57a180
mov edx, 0x57a190
mov eax, dword [ebp - 0x60]
call fcn.004ad270
mov edx, dword [ebp - 0x15c]
lea eax, [ebp - 0x60]
call fcn.00405358
push 0
lea eax, [ebp - 0x160]
push eax
mov ecx, 0x57a19c
mov edx, 0x57a178
mov eax, dword [ebp - 0x60]
call fcn.004ad270
mov edx, dword [ebp - 0x160]
lea eax, [ebp - 0x60]
call fcn.00405358
push 0
lea eax, [ebp - 0x164]
push eax
xor ecx, ecx
mov edx, 0x57a1b8
mov eax, dword [ebp - 0x60]
call fcn.004ad270
mov edx, dword [ebp - 0x164]
lea eax, [ebp - 0x60]
call fcn.00405358
push 0x57a1c0
push dword [ebp - 0x60]
push 0x579f6c
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
mov edx, dword [ebp - 0x64]
mov eax, 0x57a1e0
call fcn.00405810
dec eax
jne 0x578595
lea eax, [ebp - 0x174]
mov edx, 0x2c
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x174]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x578550
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x184]
call fcn.00412510
lea eax, [ebp - 0x194]
mov edx, 0x10
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x194]
lea eax, [ebp - 0x184]
call fcn.00419950
lea eax, [ebp - 0x184]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x5784ed
lea eax, [ebp - 0x58]
mov edx, 0x57a1f4
call fcn.004054fc
jmp 0x57858b
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x1a4]
call fcn.00412510
lea eax, [ebp - 0x1b4]
mov edx, 0x20
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x1b4]
lea eax, [ebp - 0x1a4]
call fcn.00419950
lea eax, [ebp - 0x1a4]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x578541
lea eax, [ebp - 0x58]
mov edx, 0x57a218
call fcn.004054fc
jmp 0x57858b
lea eax, [ebp - 0x58]
mov edx, 0x57a234
call fcn.004054fc
jmp 0x57858b
push ebp
lea eax, [ebp - 0x1bc]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x1bc]
lea ecx, [ebp - 0x1b8]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x1b8]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
call fcn.004044f0
jmp 0x579aed
lea eax, [ebp - 0x1cc]
mov edx, 0x2b
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x1cc]
lea eax, [ebp - 0x18]
call fcn.00419968
je 0x5785ff
lea eax, [ebp - 0x1dc]
mov edx, 0x2d
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x1dc]
lea eax, [ebp - 0x18]
call fcn.00419968
je 0x5785ff
lea eax, [ebp - 0x1ec]
mov edx, 0x2c
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x1ec]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x578c6f
lea eax, [ebp - 0x50]
push eax
push ebp
lea edx, [ebp - 0x1f0]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov eax, dword [ebp - 0x1f0]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
mov ecx, 1
mov edx, dword [0x5890b8]
call fcn.00559f90
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x5787f3
lea eax, [ebp - 0x200]
mov edx, 0x2c
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x200]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x57876b
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x210]
call fcn.00412510
lea eax, [ebp - 0x220]
mov edx, 0x10
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x220]
lea eax, [ebp - 0x210]
call fcn.00419950
lea eax, [ebp - 0x210]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x5786b8
lea eax, [ebp - 0x58]
mov edx, 0x57a274
call fcn.004054fc
jmp 0x578719
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x230]
call fcn.00412510
lea eax, [ebp - 0x240]
mov edx, 0x20
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x240]
lea eax, [ebp - 0x230]
call fcn.00419950
lea eax, [ebp - 0x230]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x57870c
lea eax, [ebp - 0x58]
mov edx, 0x57a294
call fcn.004054fc
jmp 0x578719
lea eax, [ebp - 0x58]
mov edx, 0x57a2b0
call fcn.004054fc
cmp dword [ebp - 0x40], 1
jle 0x578759
push dword [ebp - 0x58]
push 0x57a2d4
lea edx, [ebp - 0x248]
mov eax, dword [ebp - 0x40]
call fcn.0040a308
mov edx, dword [ebp - 0x248]
lea eax, [ebp - 0x244]
call fcn.004054d0
push dword [ebp - 0x244]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
lea eax, [ebp - 0x58]
mov edx, 0x57a26c
call fcn.004054fc
jmp 0x57975d
push ebp
lea eax, [ebp - 0x250]
mov ecx, 0x57a2e0
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x250]
lea ecx, [ebp - 0x24c]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x24c]
lea eax, [ebp - 0x58]
call fcn.00405358
cmp dword [ebp - 0x40], 1
jle 0x5787e1
push dword [ebp - 0x58]
push 0x57a2f4
lea edx, [ebp - 0x258]
mov eax, dword [ebp - 0x40]
call fcn.0040a308
mov edx, dword [ebp - 0x258]
lea eax, [ebp - 0x254]
call fcn.004054d0
push dword [ebp - 0x254]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
lea eax, [ebp - 0x58]
mov edx, 0x57a26c
call fcn.004054fc
jmp 0x57975d
mov eax, dword [ebp - 0x64]
mov edx, 0x57a164
call fcn.00405614
jne 0x578863
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_GetParent
lea edx, [ebp - 0x260]
call fcn.004b2c8c
mov eax, dword [ebp - 0x260]
lea edx, [ebp - 0x25c]
call fcn.00409d2c
mov eax, dword [ebp - 0x25c]
mov edx, 0x57a30c
call fcn.00405614
jne 0x578863
cmp byte [ebp - 1], 0
je 0x578851
lea eax, [ebp - 0x58]
mov edx, 0x57a32c
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x58]
mov edx, 0x57a364
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x270]
mov edx, 0x2c
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x270]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x5789c1
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x280]
call fcn.00412510
lea eax, [ebp - 0x290]
mov edx, 0x10
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x280]
call fcn.00419950
lea eax, [ebp - 0x280]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x5788dd
lea eax, [ebp - 0x58]
mov edx, 0x57a394
call fcn.004054fc
jmp 0x57893e
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x2a0]
call fcn.00412510
lea eax, [ebp - 0x2b0]
mov edx, 0x20
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x2b0]
lea eax, [ebp - 0x2a0]
call fcn.00419950
lea eax, [ebp - 0x2a0]
call fcn.00412e18
call fcn.004b27c8
test al, al
je 0x578931
lea eax, [ebp - 0x58]
mov edx, 0x57a3b4
call fcn.004054fc
jmp 0x57893e
lea eax, [ebp - 0x58]
mov edx, 0x57a3d0
call fcn.004054fc
push 1
push ebp
lea edx, [ebp - 0x2b4]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov eax, dword [ebp - 0x2b4]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.0055b1a8
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x5789af
push dword [ebp - 0x58]
push 0x57a2d4
lea edx, [ebp - 0x2bc]
mov eax, dword [ebp - 0x40]
call fcn.0040a308
mov edx, dword [ebp - 0x2bc]
lea eax, [ebp - 0x2b8]
call fcn.004054d0
push dword [ebp - 0x2b8]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
lea eax, [ebp - 0x58]
mov edx, 0x57a26c
call fcn.004054fc
jmp 0x57975d
mov eax, dword [ebp - 0x70]
push eax
call sub.user32.dll_GetParent
test eax, eax
jne 0x578ac0
lea eax, [ebp - 0x58]
call fcn.004052f4
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.0050b3d8
test al, al
je 0x57975d
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x60]
call fcn.00409d2c
mov eax, 0x57a3f4
mov edx, dword [ebp - 0x54]
call fcn.00405614
je 0x578a1a
mov eax, 0x57a400
mov edx, dword [ebp - 0x54]
call fcn.00405614
jne 0x578a2c
lea eax, [ebp - 0x58]
mov edx, 0x579e9c
call fcn.00405358
jmp 0x57975d
mov eax, 0x57a418
mov edx, dword [ebp - 0x54]
call fcn.00405614
je 0x578a4a
mov eax, 0x57a424
mov edx, dword [ebp - 0x54]
call fcn.00405614
jne 0x578a5c
lea eax, [ebp - 0x58]
mov edx, 0x579ec4
call fcn.00405358
jmp 0x57975d
mov eax, 0x57a43c
mov edx, dword [ebp - 0x54]
call fcn.00405614
je 0x578a7a
mov eax, 0x57a448
mov edx, dword [ebp - 0x54]
call fcn.00405614
jne 0x578a8c
lea eax, [ebp - 0x58]
mov edx, 0x579eec
call fcn.00405358
jmp 0x57975d
mov eax, 0x57a458
mov edx, dword [ebp - 0x54]
call fcn.00405614
je 0x578aae
mov eax, 0x57a470
mov edx, dword [ebp - 0x54]
call fcn.00405614
jne 0x57975d
lea eax, [ebp - 0x58]
mov edx, 0x579f18
call fcn.00405358
jmp 0x57975d
lea edx, [ebp - 0x2c0]
mov eax, dword [ebp - 0x6c]
call fcn.004b2c3c
mov eax, dword [ebp - 0x2c0]
xor edx, edx
call fcn.00405614
jne 0x578b2c
mov eax, dword [ebp - 0x64]
mov edx, 0x57a30c
call fcn.00405614
jne 0x578b2c
push ebp
lea eax, [ebp - 0x2c8]
mov ecx, 0x57a484
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x2c8]
lea ecx, [ebp - 0x2c4]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x2c4]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4a0
call fcn.00405810
test eax, eax
jg 0x578b81
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4b8
call fcn.00405810
test eax, eax
jg 0x578b81
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4d0
call fcn.00405810
test eax, eax
jg 0x578b81
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4e4
call fcn.00405810
test eax, eax
jg 0x578b81
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4f4
call fcn.00405810
test eax, eax
jle 0x578b8e
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
mov edx, dword [ebp - 0x68]
mov eax, 0x57a50c
call fcn.00405810
test eax, eax
jle 0x578bbf
mov edx, dword [ebp - 0x64]
mov eax, 0x57a040
call fcn.00405810
test eax, eax
jle 0x578bbf
lea eax, [ebp - 0x58]
mov edx, 0x57a520
call fcn.004054fc
jmp 0x578bcc
lea eax, [ebp - 0x58]
mov edx, 0x57a258
call fcn.004054fc
push ebp
lea ecx, [ebp - 0x2cc]
xor edx, edx
mov eax, dword [ebp - 0x58]
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x2cc]
lea eax, [ebp - 0x58]
call fcn.00405358
push 1
push ebp
lea edx, [ebp - 0x2d0]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov eax, dword [ebp - 0x2d0]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.0055b1a8
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x578c5d
push dword [ebp - 0x58]
push 0x57a2f4
lea edx, [ebp - 0x2d8]
mov eax, dword [ebp - 0x40]
call fcn.0040a308
mov edx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x2d4]
call fcn.004054d0
push dword [ebp - 0x2d4]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
lea eax, [ebp - 0x58]
mov edx, 0x57a26c
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x2e8]
mov edx, 0x22
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x2e8]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x578f55
mov edx, dword [ebp - 0x68]
mov eax, 0x57a4f4
call fcn.00405810
test eax, eax
jle 0x578da9
push ebp
lea eax, [ebp - 0x2f0]
mov ecx, 0x57a54c
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x2f0]
lea ecx, [ebp - 0x2ec]
mov dl, 1
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x2ec]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
mov eax, dword [ebp - 0x64]
mov edx, 0x57a568
call fcn.00405614
jne 0x57975d
cmp byte [ebp - 2], 0
je 0x578d0b
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
cmp byte [ebp - 1], 0
jne 0x57975d
cmp byte [ebp - 2], 0
jne 0x57975d
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x6c]
call fcn.004b2c3c
xor eax, eax
mov dword [ebp - 0x34], eax
push 0x14
call sub.kernel32.dll_Sleep_1
mov eax, 0x14
call fcn.004b3380
lea edx, [ebp - 0x2f4]
mov eax, dword [ebp - 0x6c]
call fcn.004b2c3c
mov edx, dword [ebp - 0x2f4]
mov eax, dword [ebp - 0x54]
call fcn.00405614
je 0x578d9b
push 0x57a1c0
push dword [ebp - 0x60]
push 0x57a588
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x58]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x579e84
call fcn.00405358
jmp 0x57975d
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x15
jne 0x578d2f
jmp 0x57975d
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.00405614
jne 0x578df0
lea eax, [ebp - 0x58]
mov edx, 0x57a5ac
call fcn.00405358
mov eax, dword [0x589364]
cmp byte [eax], 0
je 0x578dde
lea eax, [ebp - 0x58]
mov edx, 0x57a5f0
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x58]
mov edx, 0x57a618
call fcn.004054fc
jmp 0x57975d
mov dword [ebp - 0x48], 0x4000002
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x2f8]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov ecx, dword [ebp - 0x2f8]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.004f25a4
test al, al
je 0x578f15
push ebp
lea eax, [ebp - 0x300]
mov ecx, 0x57a65c
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x300]
lea ecx, [ebp - 0x2fc]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x2fc]
lea eax, [ebp - 0x58]
call fcn.00405358
lea eax, [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x70]
push eax
call sub.user32.dll_GetWindowRect
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x50]
push eax
push ebp
lea edx, [ebp - 0x304]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov eax, dword [ebp - 0x304]
push eax
mov eax, dword [0x589688]
mov eax, dword [eax]
mov ecx, 2
mov edx, dword [0x5890b8]
call fcn.00559f90
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x578f03
push dword [ebp - 0x58]
push 0x57a2f4
lea edx, [ebp - 0x30c]
mov eax, dword [ebp - 0x40]
call fcn.0040a308
mov edx, dword [ebp - 0x30c]
lea eax, [ebp - 0x308]
call fcn.004054d0
push dword [ebp - 0x308]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.004055cc
lea eax, [ebp - 0x58]
mov edx, 0x57a26c
call fcn.004054fc
jmp 0x57975d
push ebp
lea eax, [ebp - 0x314]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x314]
lea ecx, [ebp - 0x310]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x310]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
lea eax, [ebp - 0x324]
mov edx, 0x25
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x324]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x579105
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.0050b3d8
test al, al
je 0x579043
lea edx, [ebp - 0x32c]
mov eax, dword [ebp - 0x70]
call fcn.004b2c8c
mov eax, dword [ebp - 0x32c]
lea edx, [ebp - 0x328]
call fcn.00409d2c
mov eax, dword [ebp - 0x328]
mov edx, 0x57a674
call fcn.00405614
jne 0x579003
push ebp
lea eax, [ebp - 0x334]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x334]
lea ecx, [ebp - 0x330]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x330]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
push ebp
lea eax, [ebp - 0x33c]
mov ecx, 0x57a68c
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x33c]
lea ecx, [ebp - 0x338]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x338]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
mov dword [ebp - 0x48], 0x4000008
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov ecx, dword [ebp - 0x340]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.004f25a4
test al, al
je 0x5790c5
push ebp
lea eax, [ebp - 0x348]
mov ecx, 0x57a68c
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x344]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x344]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
push ebp
lea eax, [ebp - 0x350]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x350]
lea ecx, [ebp - 0x34c]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x34c]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
lea eax, [ebp - 0x360]
mov edx, 0xc
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x360]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x5794b7
cmp byte [ebp - 1], 0
je 0x579146
lea eax, [ebp - 0x5c]
call fcn.004052f4
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
cmp byte [ebp - 0x2d], 0
je 0x57938e
mov dword [ebp - 0x48], 0x4000004
mov dword [ebp - 0x44], 0
lea edx, [ebp - 0x364]
mov eax, dword [0x5890b8]
call fcn.004b2c8c
mov eax, dword [ebp - 0x364]
lea edx, [ebp - 0x54]
call fcn.00409d2c
mov edx, dword [ebp - 0x54]
mov eax, 0x57a6a0
call fcn.00405810
dec eax
jne 0x5791c0
mov eax, dword [0x5890c0]
xor edx, edx
call fcn.00405614
je 0x5791ae
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [0x5890c0]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x57a6b8
call fcn.004054fc
jmp 0x57937f
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x368]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov ecx, dword [ebp - 0x368]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.004f25a4
test al, al
je 0x579350
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x579210
call fcn.00403a60
cmp eax, 0
jl 0x57931e
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x54]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x54]
mov eax, 0x57a704
call fcn.00405810
test eax, eax
jle 0x579289
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x579259
call fcn.00403a60
mov edx, dword [ebp - 0x34]
sub edx, eax
jg 0x57931e
dec edx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x40]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
dec dword [ebp - 0x40]
inc dword [ebp - 0x78]
jne 0x57926b
jmp 0x57931e
mov edx, dword [ebp - 0x54]
mov eax, 0x57a6b8
call fcn.00405810
test eax, eax
jg 0x579311
mov edx, dword [ebp - 0x54]
mov eax, 0x57a724
call fcn.00405810
test eax, eax
jle 0x5792ef
mov edx, dword [ebp - 0x54]
mov eax, 0x57a73c
call fcn.00405810
test eax, eax
jg 0x579311
mov edx, dword [ebp - 0x54]
mov eax, 0x57a750
call fcn.00405810
test eax, eax
jg 0x579311
mov edx, dword [ebp - 0x54]
mov eax, 0x57a764
call fcn.00405810
test eax, eax
jg 0x579311
mov edx, dword [ebp - 0x54]
mov eax, 0x57a774
call fcn.00405810
test eax, eax
jg 0x579311
mov edx, dword [ebp - 0x54]
mov eax, 0x57a798
call fcn.00405810
test eax, eax
jle 0x57931e
mov edx, dword [ebp - 0x54]
mov eax, 0x57a7ac
call fcn.00405810
test eax, eax
jle 0x57931e
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffff
jne 0x57921c
cmp dword [ebp - 0x44], 0
jne 0x579339
cmp dword [ebp - 0x48], 1
jne 0x579339
lea eax, [ebp - 0x58]
mov edx, 0x57a7d4
call fcn.004054fc
jmp 0x579346
lea eax, [ebp - 0x58]
mov edx, 0x57a7fc
call fcn.004054fc
lea eax, [ebp - 0x5c]
call fcn.004052f4
jmp 0x57937f
mov eax, dword [0x5890c0]
xor edx, edx
call fcn.00405614
je 0x579372
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [0x5890c0]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x57a6b8
call fcn.004054fc
mov eax, 0x5890c0
call fcn.004052f4
jmp 0x57975d
mov dword [ebp - 0x48], 0x4000040
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x36c]
mov eax, dword [ebp - 0x60]
call fcn.005772dc
pop ecx
mov ecx, dword [ebp - 0x36c]
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [0x5890b8]
call fcn.004f25a4
test al, al
je 0x5793ef
mov eax, 0x5890c0
mov ecx, 0x57a704
mov edx, dword [ebp - 0x58]
call fcn.0040555c
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
lea edx, [ebp - 0x370]
mov eax, dword [ebp - 0x70]
call fcn.004b2c3c
mov eax, dword [ebp - 0x370]
xor edx, edx
call fcn.00405614
je 0x57941b
lea eax, [ebp - 0x58]
mov edx, 0x57a820
call fcn.004054fc
jmp 0x579452
push 0
push 0
push 0
lea eax, [ebp - 0x374]
push eax
lea eax, [ebp - 0x5c]
mov cl, 1
mov edx, 0x579e7c
call fcn.004acb58
mov edx, dword [ebp - 0x374]
lea eax, [ebp - 0x5c]
call fcn.00405358
lea eax, [ebp - 0x58]
mov edx, 0x57a838
call fcn.004054fc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x57975d
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
sub edx, 1
jno 0x579482
call fcn.00403a60
lea ecx, [ebp - 0x378]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x378]
mov eax, dword [ebp - 0x58]
call fcn.00405614
jne 0x57975d
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
lea eax, [ebp - 0x388]
mov edx, 0x24
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x388]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x57956e
mov edx, dword [ebp - 0x68]
mov eax, 0x57a86c
call fcn.00405810
test eax, eax
jle 0x57952e
push ebp
lea eax, [ebp - 0x390]
mov ecx, 0x57a884
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x390]
lea ecx, [ebp - 0x38c]
mov dl, 1
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x38c]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
push ebp
lea eax, [ebp - 0x398]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x398]
lea ecx, [ebp - 0x394]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x394]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
lea eax, [ebp - 0x3a8]
mov edx, 0x38
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x3a8]
lea eax, [ebp - 0x18]
call fcn.00419968
je 0x5795d4
lea eax, [ebp - 0x3b8]
mov edx, 0x39
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x3b8]
lea eax, [ebp - 0x18]
call fcn.00419968
je 0x5795d4
lea eax, [ebp - 0x3c8]
mov edx, 0x3a
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x3c8]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x579619
cmp byte [ebp - 1], 0
je 0x5795ef
lea eax, [ebp - 0x5c]
call fcn.004052f4
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
cmp byte [ebp - 0x30], 0
je 0x579607
lea eax, [ebp - 0x58]
mov edx, 0x57a820
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x58]
mov edx, 0x57a364
call fcn.004054fc
jmp 0x57975d
lea eax, [ebp - 0x3d8]
mov edx, 0x1e
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x3d8]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x5796d0
mov edx, dword [ebp - 0x68]
mov eax, 0x57a8a0
call fcn.00405810
test eax, eax
jle 0x579690
push ebp
lea eax, [ebp - 0x3e0]
mov ecx, 0x57a8c0
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x3e0]
lea ecx, [ebp - 0x3dc]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x3dc]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
push ebp
lea eax, [ebp - 0x3e8]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x3e8]
lea ecx, [ebp - 0x3e4]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x3e4]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
jmp 0x57975d
cmp byte [ebp - 0x2f], 0
je 0x579722
lea eax, [ebp - 0x3f8]
mov edx, 0xa
mov cl, 1
call fcn.0041664c
lea edx, [ebp - 0x3f8]
lea eax, [ebp - 0x18]
call fcn.00419968
jne 0x579722
push ebp
lea edx, [ebp - 0x3fc]
mov eax, dword [ebp - 0x6c]
call fcn.005773e8
pop ecx
mov edx, dword [ebp - 0x3fc]
mov eax, dword [ebp - 0x60]
call fcn.00405614
jne 0x579722
lea eax, [ebp - 0x58]
call fcn.004052f4
jmp 0x57975d
push ebp
lea eax, [ebp - 0x404]
mov ecx, 0x57a258
mov edx, dword [ebp - 0x58]
call fcn.0040555c
mov eax, dword [ebp - 0x404]
lea ecx, [ebp - 0x400]
xor edx, edx
call fcn.0057713c
pop ecx
mov edx, dword [ebp - 0x400]
lea eax, [ebp - 0x58]
mov ecx, 0x57a26c
call fcn.0040555c
mov eax, dword [ebp - 0x64]
mov edx, 0x57a30c
call fcn.00405614
jne 0x5797bd
push 0
push 1
xor ecx, ecx
mov edx, dword [ebp - 0x58]
mov eax, 0x57a484
call fcn.004ad010
test eax, eax
jle 0x5797bd
mov eax, dword [0x589688]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.0050b3d8
test al, al
je 0x5797bd
lea eax, [ebp - 0x408]
push eax
mov ecx, 0x57a258
mov edx, 0x57a484
mov eax, dword [ebp - 0x58]
call fcn.004b2ed8
mov edx, dword [ebp - 0x408]
lea eax, [ebp - 0x58]
call fcn.00405358
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x579aed
mov eax, dword [ebp - 0x5c]
xor edx, edx
call fcn.00405614
je 0x579a5c
mov eax, dword [0x5890bc]
xor edx, edx
call fcn.00405614
je 0x579992
mov byte [ebp - 0x2e], 0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x579808
call fcn.00403a60
cmp eax, 0
jl 0x579954
mov dword [ebp - 0x34], eax
push 0
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp - 0x410]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x410]
xor ecx, ecx
mov edx, 0x57a8f4
call fcn.004ad270
mov eax, dword [ebp - 0x40c]
lea edx, [ebp - 0x54]
call fcn.00409d2c
mov edx, dword [ebp - 0x54]
mov eax, 0x57a8fc
call fcn.00405810
dec eax
jne 0x57987a
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
jmp 0x579947
mov edx, dword [ebp - 0x54]
mov eax, 0x57a910
call fcn.00405810
dec eax
jne 0x579954
mov byte [ebp - 0x2e], 1
push 0
push 0
push 1
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x54]
mov cl, 1
mov edx, 0x57a2d4
call fcn.004acb58
push 0
push 0
push 0
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x54]
mov cl, 1
mov edx, 0x57a928
call fcn.004acb58
mov edx, dword [ebp - 0x60]
mov eax, 0x57a934
call fcn.00405810
dec eax
jle 0x579927
mov eax, dword [ebp - 0x64]
mov edx, 0x57a73c
call fcn.00405614
je 0x579914
mov eax, dword [ebp - 0x64]
mov edx, 0x57a750
call fcn.00405614
je 0x579914
mov edx, dword [ebp - 0x64]
mov eax, 0x57a764
call fcn.00405810
test eax, eax
jg 0x579914
mov edx, dword [ebp - 0x64]
mov eax, 0x57a774
call fcn.00405810
test eax, eax
jle 0x579927
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
jmp 0x579947
mov eax, dword [ebp - 0x64]
mov edx, 0x57a940
call fcn.00405614
jne 0x579954
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffff
jne 0x579814
cmp byte [ebp - 0x2e], 0
je 0x579992
push 0x57a964
push dword [0x5890bc]
push 0x57a9b8
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.004055cc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, 0x5890bc
call fcn.004052f4
mov eax, dword [ebp - 8]
cmp dword [eax + 0x528], 2
jl 0x5799da
mov eax, dword [0x5890bc]
xor edx, edx
call fcn.00405614
je 0x5799da
push 0x57a9c8
push dword [0x5890bc]
push 0x57a9b8
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.004055cc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0
push 0
push 0
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x5c]
mov cl, 1
mov edx, 0x57a190
call fcn.004acb58
mov edx, dword [ebp - 0x414]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x418]
mov eax, dword [ebp - 0x5c]
call fcn.00409f90
mov edx, dword [ebp - 0x418]
lea eax, [ebp - 0x5c]
call fcn.00405358
mov eax, dword [ebp - 0x5c]
xor edx, edx
call fcn.00405614
je 0x579a43
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x5c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, 0x5890bc
call fcn.004052f4
mov eax, dword [0x5890b8]
push eax
mov eax, dword [ebp - 8]
call dword [eax + 0x79c]
mov eax, dword [ebp - 0x58]
mov edx, 0x579f18
call fcn.00405614
jne 0x579ac5
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x579ac5
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
sub edx, 1
jno 0x579a97
call fcn.00403a60
lea ecx, [ebp - 0x41c]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x41c]
mov edx, 0x579f18
call fcn.00405614
jne 0x579ac5
lea eax, [ebp - 0x58]
call fcn.004052f4
mov eax, dword [ebp - 0x58]
xor edx, edx
call fcn.00405614
je 0x579ae2
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x538]
mov edx, dword [ebp - 0x58]
mov ecx, dword [eax]
call dword [ecx + 0x38]
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x579dc9
lea eax, [ebp - 0x41c]
mov edx, 9
call fcn.0040530c
lea eax, [ebp - 0x3f8]
call fcn.004120f8
lea eax, [ebp - 0x3e8]
mov edx, 4
call fcn.0040530c
lea eax, [ebp - 0x3d8]
mov edx, dword [0x40114c]
mov ecx, 4
call fcn.004059e0
lea eax, [ebp - 0x398]
mov edx, 4
call fcn.0040530c
lea eax, [ebp - 0x388]
call fcn.004120f8
lea eax, [ebp - 0x378]
mov edx, 6
call fcn.0040530c
lea eax, [ebp - 0x360]
call fcn.004120f8
lea eax, [ebp - 0x350]
mov edx, 0xb
call fcn.0040530c
lea eax, [ebp - 0x324]
call fcn.004120f8
lea eax, [ebp - 0x314]
mov edx, 2
call fcn.0040530c
lea eax, [ebp - 0x30c]
call fcn.00404acc
lea eax, [ebp - 0x308]
mov edx, 8
call fcn.0040530c
lea eax, [ebp - 0x2e8]
call fcn.004120f8
lea eax, [ebp - 0x2d8]
call fcn.00404acc
lea eax, [ebp - 0x2d4]
mov edx, 6
call fcn.0040530c
lea eax, [ebp - 0x2bc]
call fcn.00404acc
lea eax, [ebp - 0x2b8]
mov edx, 2
call fcn.0040530c
lea eax, [ebp - 0x2b0]
mov edx, dword [0x40114c]
mov ecx, 5
call fcn.004059e0
lea eax, [ebp - 0x260]
mov edx, 2
call fcn.0040530c
lea eax, [ebp - 0x258]
call fcn.00404acc
lea eax, [ebp - 0x254]
mov edx, 3
call fcn.0040530c
lea eax, [ebp - 0x248]
call fcn.00404acc
lea eax, [ebp - 0x244]
call fcn.004052f4
lea eax, [ebp - 0x240]
mov edx, dword [0x40114c]
mov ecx, 5
call fcn.004059e0
lea eax, [ebp - 0x1f0]
call fcn.004052f4
lea eax, [ebp - 0x1ec]
mov edx, dword [0x40114c]
mov ecx, 3
call fcn.004059e0
lea eax, [ebp - 0x1bc]
mov edx, 2
call fcn.0040530c
lea eax, [ebp - 0x1b4]
mov edx, dword [0x40114c]
mov ecx, 5
call fcn.004059e0
lea eax, [ebp - 0x164]
mov edx, 4
call fcn.0040530c
lea eax, [ebp - 0x154]
mov edx, dword [0x40114c]
mov ecx, 2
call fcn.004059e0
lea eax, [ebp - 0x134]
call fcn.004052f4
lea eax, [ebp - 0x130]
mov edx, 0xa
call fcn.0040530c
lea eax, [ebp - 0x108]
call fcn.00404acc
lea eax, [ebp - 0x104]
call fcn.004052f4
lea eax, [ebp - 0x100]
call fcn.00404acc
lea eax, [ebp - 0xfc]
mov edx, 3
call fcn.0040530c
lea eax, [ebp - 0xf0]
call fcn.00404acc
lea eax, [ebp - 0xec]
call fcn.004052f4
lea eax, [ebp - 0xe8]
call fcn.00404acc
lea eax, [ebp - 0xe4]
call fcn.004052f4
lea eax, [ebp - 0xe0]
call fcn.00404acc
lea eax, [ebp - 0xdc]
mov edx, 0xe
call fcn.0040530c
lea eax, [ebp - 0xa4]
call fcn.00404acc
lea eax, [ebp - 0xa0]
mov edx, 2
call fcn.0040530c
lea eax, [ebp - 0x98]
call fcn.00404acc
lea eax, [ebp - 0x94]
call fcn.004052f4
lea eax, [ebp - 0x68]
mov edx, 6
call fcn.0040530c
lea eax, [ebp - 0x2c]
call fcn.004052f4
lea eax, [ebp - 0x28]
mov edx, dword [0x40114c]
mov ecx, 2
call fcn.004059e0
ret