Function at 0x5581d4
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x6e
push 0
push 0
dec ecx
jne 0x5581dc
push ecx
push ebx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x2c]
call fcn.00405158
xor eax, eax
push ebp
push 0x55a56a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
cmp dword [eax + 0x3e4], 0
jne 0x558258
xor eax, eax
mov dword [0x574134], eax
mov eax, 0x574138
call fcn.004054b0
mov eax, 0x57413c
call fcn.004054b0
lea ecx, [ebp - 0x90]
xor edx, edx
xor eax, eax
call fcn.0041c6ec
lea eax, [ebp - 0x90]
push eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x54]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
xor ecx, ecx
xor edx, edx
call fcn.00548ad4
push 0
push 0
push 0
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov edx, dword [ebp - 0x94]
lea eax, [ebp - 0x54]
call fcn.0040567c
mov eax, dword [ebp - 0x54]
mov edx, 0x55a58c
call fcn.004057c0
jne 0x5582b4
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x2c]
call fcn.0040a138
mov edx, dword [ebp - 0x98]
mov eax, 0x574138
call fcn.0040567c
jmp 0x55a2fb
lea eax, [ebp - 0x5c]
call fcn.004054b0
lea eax, [ebp - 0x58]
call fcn.004054b0
xor eax, eax
push ebp
push 0x55a2f1
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x54]
mov edx, 0x55a594
call fcn.004057c0
jne 0x558595
push 0
push 0
push 0
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call fcn.0040a138
mov eax, dword [ebp - 0x9c]
call fcn.0040a754
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xf020
je 0x55834e
cmp dword [ebp - 0x38], 0xf030
je 0x55834e
cmp dword [ebp - 0x38], 0xf060
je 0x55834e
cmp dword [ebp - 0x38], 0xf120
je 0x55834e
call fcn.004046ac
jmp 0x55a2fb
push 0
push 0
push 0
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov eax, dword [ebp - 0xa8]
lea edx, [ebp - 0xa4]
call fcn.0040a138
mov eax, dword [ebp - 0xa4]
call fcn.0040a754
test eax, eax
jns 0x55838f
call fcn.00403c14
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.00558144
pop ecx
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x558533
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x5583d4
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [0x5742b0]
mov eax, dword [eax]
call fcn.0045ff94
cmp eax, dword [ebp - 0x6c]
jne 0x5583ef
call fcn.004046ac
jmp 0x55a2fb
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557ff8
pop ecx
test al, al
je 0x558407
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
mov eax, dword [ebp - 0x6c]
mov dword [0x574134], eax
push ebp
lea edx, [ebp - 0xac]
mov eax, dword [ebp - 0x6c]
call fcn.00557fb8
pop ecx
mov edx, dword [ebp - 0xac]
lea eax, [ebp - 0x64]
call fcn.00405514
cmp byte [ebp - 0x2f], 0
je 0x5584b6
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 0x55a59c
push ebp
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 0x74]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xb0]
push 0x55a5bc
push ebp
lea edx, [ebp - 0xb4]
mov eax, dword [ebp - 0x74]
call fcn.00557fb8
pop ecx
push dword [ebp - 0xb4]
push 0x55a5cc
push ebp
lea edx, [ebp - 0xb8]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xb8]
push 0x55a5e4
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.00405778
jmp 0x5584eb
push 0x55a59c
push ebp
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xbc]
push 0x55a5bc
push dword [ebp - 0x64]
push 0x55a5f0
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.00405778
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557d10
pop ecx
test al, al
jne 0x558533
lea edx, [ebp - 0xc0]
mov eax, dword [ebp - 0x64]
call fcn.00409f28
mov eax, dword [ebp - 0xc0]
mov edx, 0x55a604
call fcn.004057c0
je 0x558533
push dword [ebp - 0x5c]
push 0x55a62c
push 0x55a634
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00405778
cmp dword [ebp - 0x38], 0xf020
jne 0x558549
lea eax, [ebp - 0x58]
mov edx, 0x55a64c
call fcn.00405514
cmp dword [ebp - 0x38], 0xf030
jne 0x55855f
lea eax, [ebp - 0x58]
mov edx, 0x55a674
call fcn.00405514
cmp dword [ebp - 0x38], 0xf060
jne 0x558575
lea eax, [ebp - 0x58]
mov edx, 0x55a69c
call fcn.00405514
cmp dword [ebp - 0x38], 0xf120
jne 0x55858b
lea eax, [ebp - 0x58]
mov edx, 0x55a6c8
call fcn.00405514
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [ebp - 0x54]
mov edx, 0x55a6f4
call fcn.004057c0
jne 0x55876a
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.00558144
pop ecx
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x558760
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x5585f2
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [0x5742b0]
mov eax, dword [eax]
call fcn.0045ff94
cmp eax, dword [ebp - 0x6c]
jne 0x55860d
call fcn.004046ac
jmp 0x55a2fb
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557ff8
pop ecx
test al, al
je 0x558625
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
mov eax, dword [ebp - 0x6c]
mov dword [0x574134], eax
push ebp
lea edx, [ebp - 0xc4]
mov eax, dword [ebp - 0x6c]
call fcn.00557fb8
pop ecx
mov edx, dword [ebp - 0xc4]
lea eax, [ebp - 0x64]
call fcn.00405514
cmp byte [ebp - 0x2f], 0
je 0x5586d4
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 0x55a59c
push ebp
lea edx, [ebp - 0xc8]
mov eax, dword [ebp - 0x74]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xc8]
push 0x55a5bc
push ebp
lea edx, [ebp - 0xcc]
mov eax, dword [ebp - 0x74]
call fcn.00557fb8
pop ecx
push dword [ebp - 0xcc]
push 0x55a5cc
push ebp
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xd0]
push 0x55a5e4
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.00405778
jmp 0x558709
push 0x55a59c
push ebp
lea edx, [ebp - 0xd4]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
push dword [ebp - 0xd4]
push 0x55a5bc
push dword [ebp - 0x64]
push 0x55a5f0
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.00405778
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557d10
pop ecx
test al, al
jne 0x558751
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0x64]
call fcn.00409f28
mov eax, dword [ebp - 0xd8]
mov edx, 0x55a604
call fcn.004057c0
je 0x558751
push dword [ebp - 0x5c]
push 0x55a62c
push 0x55a634
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00405778
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
call fcn.005485ac
call fcn.004046ac
jmp 0x55a2fb
mov byte [ebp - 1], 0
mov byte [ebp - 2], 0
push 0
push 0
push 0
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov eax, dword [ebp - 0xdc]
call fcn.0040a754
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x201
je 0x5587e8
cmp dword [ebp - 0x38], 0xa1
je 0x5587e8
cmp dword [ebp - 0x38], 0x204
je 0x5587c0
cmp dword [ebp - 0x38], 0xa4
jne 0x5587c6
mov byte [ebp - 1], 1
jmp 0x5587e8
cmp dword [ebp - 0x38], 0x203
je 0x5587d8
cmp dword [ebp - 0x38], 0xa3
jne 0x5587de
mov byte [ebp - 2], 1
jmp 0x5587e8
call fcn.004046ac
jmp 0x55a2fb
push 0
push 0
push 0
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov eax, dword [ebp - 0xe0]
call fcn.0040a754
mov dword [ebp - 0x50], eax
push 0
push 0
push 0
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x2c]
mov cl, 1
mov edx, 0x55a584
call fcn.004aee40
mov eax, dword [ebp - 0xe4]
call fcn.0040a754
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 - 0xe8]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.004e6fa4
mov eax, dword [ebp - 0xe8]
lea edx, [ebp - 0x68]
call fcn.00409f28
mov eax, dword [0x574720]
mov eax, dword [eax]
lea edx, [ebp - 0x50]
call fcn.004e92d8
mov dword [ebp - 0x6c], eax
push ebp
lea eax, [ebp - 0x6c]
lea edx, [ebp - 0x50]
call fcn.00558144
pop ecx
mov byte [ebp - 0x2f], al
lea ecx, [ebp - 0x90]
xor edx, edx
xor eax, eax
call fcn.0041c6ec
lea eax, [ebp - 0x90]
push eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x54]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
xor ecx, ecx
mov edx, 2
call fcn.00548ad4
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x5589ad
cmp dword [ebp - 0x40], 1
jne 0x55891b
push 0x55a6fc
push dword [ebp - 0x54]
push 0x55a71c
lea edx, [ebp - 0xf0]
mov eax, dword [ebp - 0x3c]
call fcn.0040a504
mov edx, dword [ebp - 0xf0]
lea eax, [ebp - 0xec]
call fcn.0040567c
push dword [ebp - 0xec]
push 0x55a728
lea eax, [ebp - 0x58]
mov edx, 5
call fcn.00405778
jmp 0x55895f
push 0x55a6fc
push dword [ebp - 0x54]
push 0x55a71c
lea edx, [ebp - 0xf8]
mov eax, dword [ebp - 0x3c]
call fcn.0040a504
mov edx, dword [ebp - 0xf8]
lea eax, [ebp - 0xf4]
call fcn.0040567c
push dword [ebp - 0xf4]
push 0x55a73c
lea eax, [ebp - 0x58]
mov edx, 5
call fcn.00405778
mov eax, dword [ebp - 0x54]
call fcn.0040569c
cmp eax, 0xff
jle 0x558994
mov eax, dword [0x5743fc]
cmp byte [eax], 0
je 0x558987
lea eax, [ebp - 0x58]
mov edx, 0x55a75c
call fcn.004056a8
jmp 0x558994
lea eax, [ebp - 0x58]
mov edx, 0x55a780
call fcn.004056a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x58]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
call fcn.004054b0
mov byte [ebp - 0x2d], 0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
cmp eax, dword [ebp - 0x6c]
je 0x558c9a
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
jne 0x5589da
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [0x5742b0]
mov eax, dword [eax]
call fcn.0045ff94
cmp eax, dword [ebp - 0x6c]
jne 0x5589f5
call fcn.004046ac
jmp 0x55a2fb
push ebp
lea edx, [ebp - 0xfc]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
mov edx, dword [ebp - 0xfc]
lea eax, [ebp - 0x54]
call fcn.00405514
lea edx, [ebp - 0x100]
mov eax, dword [ebp - 0x6c]
call fcn.0056da58
mov eax, dword [ebp - 0x100]
lea edx, [ebp - 0x64]
call fcn.00409f28
mov eax, dword [ebp - 0x54]
xor edx, edx
call fcn.004057c0
jne 0x558b18
mov edx, dword [ebp - 0x68]
mov eax, 0x55a7bc
call fcn.004059bc
test eax, eax
jle 0x558b18
lea eax, [ebp - 0x50]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov edx, dword [0x574134]
call fcn.00546b18
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jne 0x558a80
call fcn.004046ac
jmp 0x55a2fb
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 0x558aa0
call fcn.00403c1c
sar eax, 1
jns 0x558aa7
adc eax, 0
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x7c]
jno 0x558aba
call fcn.00403c1c
sar eax, 1
jns 0x558ac1
adc eax, 0
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0x104]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.004e6fa4
mov eax, dword [ebp - 0x104]
lea edx, [ebp - 0x68]
call fcn.00409f28
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 [0x574720]
mov eax, dword [eax]
mov ecx, dword [0x574134]
mov edx, 1
call fcn.00548ad4
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [ebp - 0x54]
xor edx, edx
call fcn.004057c0
jne 0x558b39
mov edx, dword [ebp - 0x64]
mov eax, 0x55a7d8
call fcn.004059bc
test eax, eax
jg 0x558c9a
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x3e4], edx
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557ff8
pop ecx
test al, al
je 0x558b59
mov byte [ebp - 0x2d], 1
jmp 0x558b70
mov eax, dword [ebp - 0x6c]
mov dword [0x574134], eax
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
call fcn.005485ac
cmp byte [ebp - 0x2f], 0
je 0x558c02
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 0x55a59c
push ebp
lea edx, [ebp - 0x10c]
mov eax, dword [ebp - 0x74]
call fcn.00557ee0
pop ecx
mov eax, dword [ebp - 0x10c]
lea edx, [ebp - 0x108]
call fcn.0040a18c
push dword [ebp - 0x108]
push 0x55a5bc
push ebp
lea edx, [ebp - 0x110]
mov eax, dword [ebp - 0x74]
call fcn.00557fb8
pop ecx
push dword [ebp - 0x110]
push 0x55a5cc
push ebp
lea edx, [ebp - 0x114]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
push dword [ebp - 0x114]
push 0x55a5e4
lea eax, [ebp - 0x5c]
mov edx, 7
call fcn.00405778
jmp 0x558c5b
push 0x55a59c
push ebp
lea edx, [ebp - 0x11c]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
mov eax, dword [ebp - 0x11c]
lea edx, [ebp - 0x118]
call fcn.0040a18c
push dword [ebp - 0x118]
push 0x55a5bc
push ebp
lea edx, [ebp - 0x120]
mov eax, dword [ebp - 0x6c]
call fcn.00557fb8
pop ecx
push dword [ebp - 0x120]
push 0x55a5f0
lea eax, [ebp - 0x5c]
mov edx, 5
call fcn.00405778
cmp byte [ebp - 0x2d], 0
jne 0x558c9a
push ebp
mov eax, dword [ebp - 0x6c]
call fcn.00557d10
pop ecx
test al, al
jne 0x558c9a
mov edx, dword [ebp - 0x64]
mov eax, 0x55a7f0
call fcn.004059bc
test eax, eax
jg 0x558c9a
push dword [ebp - 0x5c]
push 0x55a62c
push 0x55a634
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00405778
lea edx, [ebp - 0x124]
mov eax, dword [ebp - 0x6c]
call fcn.0056da58
mov eax, dword [ebp - 0x124]
lea edx, [ebp - 0x64]
call fcn.00409f28
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 [0x574720]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
call fcn.00548dbc
mov dword [ebp - 0x38], eax
cmp word [ebp - 0x18], 3
je 0x558cec
call fcn.004046ac
jmp 0x55a2fb
cmp word [ebp - 0x28], 3
je 0x558cfd
call fcn.004046ac
jmp 0x55a2fb
mov eax, dword [ebp - 0x64]
mov edx, 0x55a80c
call fcn.004057c0
jne 0x558d49
lea eax, [ebp - 0x58]
mov edx, 0x55a84c
call fcn.00405514
mov eax, dword [0x5743fc]
cmp byte [eax], 0
je 0x558d32
lea eax, [ebp - 0x58]
mov edx, 0x55a8a8
call fcn.004056a8
jmp 0x558d3f
lea eax, [ebp - 0x58]
mov edx, 0x55a8d0
call fcn.004056a8
call fcn.004046ac
jmp 0x55a2fb
cmp dword [ebp - 0x38], 0
jne 0x558de4
lea eax, [ebp - 0x134]
mov edx, 0x22
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x134]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x558d81
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.004057c0
je 0x558de4
lea eax, [ebp - 0x144]
mov edx, 0x38
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x144]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x558dda
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.004057c0
jne 0x558dda
mov eax, 0x55a914
mov edx, dword [ebp - 0x68]
call fcn.004057c0
jne 0x558dda
lea eax, [ebp - 0x18]
mov edx, 0x2b
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 0x70]
call fcn.0056d9c4
jmp 0x558de4
call fcn.004046ac
jmp 0x55a2fb
cmp dword [ebp - 0x38], 1
jne 0x558dfc
lea eax, [ebp - 0x58]
call fcn.004054b0
call fcn.004046ac
jmp 0x55a2fb
mov byte [ebp - 0x30], 0
mov edx, dword [ebp - 0x60]
mov eax, 0x55a928
call fcn.004059bc
test eax, eax
jle 0x558e31
lea edx, [ebp - 0x148]
mov eax, dword [ebp - 0x60]
call fcn.0040a18c
mov edx, dword [ebp - 0x148]
lea eax, [ebp - 0x60]
call fcn.00405514
mov byte [ebp - 0x30], 1
mov edx, dword [ebp - 0x60]
mov eax, 0x55a928
call fcn.004059bc
test eax, eax
jle 0x558e94
push 0
lea eax, [ebp - 0x14c]
push eax
mov ecx, 0x55a930
mov edx, 0x55a940
mov eax, dword [ebp - 0x60]
call fcn.004af81c
mov edx, dword [ebp - 0x14c]
lea eax, [ebp - 0x60]
call fcn.00405514
push 0
lea eax, [ebp - 0x150]
push eax
mov ecx, 0x55a94c
mov edx, 0x55a928
mov eax, dword [ebp - 0x60]
call fcn.004af81c
mov edx, dword [ebp - 0x150]
lea eax, [ebp - 0x60]
call fcn.00405514
push 0
lea eax, [ebp - 0x154]
push eax
xor ecx, ecx
mov edx, 0x55a968
mov eax, dword [ebp - 0x60]
call fcn.004af81c
mov edx, dword [ebp - 0x154]
lea eax, [ebp - 0x60]
call fcn.00405514
push 0x55a970
push dword [ebp - 0x60]
push 0x55a71c
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
mov edx, dword [ebp - 0x64]
mov eax, 0x55a990
call fcn.004059bc
dec eax
jne 0x558fb2
lea eax, [ebp - 0x164]
mov edx, 0x2c
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x164]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x558f6d
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x174]
call fcn.0041276c
lea eax, [ebp - 0x184]
mov edx, 0x10
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x184]
lea eax, [ebp - 0x174]
call fcn.00419b48
lea eax, [ebp - 0x174]
call fcn.00413074
call fcn.004b1ce8
test al, al
je 0x558f5e
lea eax, [ebp - 0x58]
mov edx, 0x55a9a4
call fcn.004056a8
jmp 0x558fa8
lea eax, [ebp - 0x58]
mov edx, 0x55a9c8
call fcn.004056a8
jmp 0x558fa8
push ebp
lea eax, [ebp - 0x18c]
mov ecx, 0x55a9ec
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x18c]
lea ecx, [ebp - 0x188]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x188]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
call fcn.004046ac
jmp 0x55a2fb
lea eax, [ebp - 0x19c]
mov edx, 0x2b
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x19c]
lea eax, [ebp - 0x18]
call fcn.00419b54
je 0x55901c
lea eax, [ebp - 0x1ac]
mov edx, 0x2d
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x1ac]
lea eax, [ebp - 0x18]
call fcn.00419b54
je 0x55901c
lea eax, [ebp - 0x1bc]
mov edx, 0x2c
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x1bc]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x5595f5
lea eax, [ebp - 0x50]
push eax
push ebp
lea edx, [ebp - 0x1c0]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov eax, dword [ebp - 0x1c0]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
mov ecx, 1
mov edx, dword [0x574134]
call fcn.0054709c
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x5591bc
lea eax, [ebp - 0x1d0]
mov edx, 0x2c
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x1d0]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559134
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x1e0]
call fcn.0041276c
lea eax, [ebp - 0x1f0]
mov edx, 0x10
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x1f0]
lea eax, [ebp - 0x1e0]
call fcn.00419b48
lea eax, [ebp - 0x1e0]
call fcn.00413074
call fcn.004b1ce8
test al, al
je 0x5590d5
lea eax, [ebp - 0x58]
mov edx, 0x55aa08
call fcn.004056a8
jmp 0x5590e2
lea eax, [ebp - 0x58]
mov edx, 0x55aa2c
call fcn.004056a8
cmp dword [ebp - 0x40], 1
jle 0x559122
push dword [ebp - 0x58]
push 0x55aa4c
lea edx, [ebp - 0x1f8]
mov eax, dword [ebp - 0x40]
call fcn.0040a504
mov edx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x1f4]
call fcn.0040567c
push dword [ebp - 0x1f4]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
lea eax, [ebp - 0x58]
mov edx, 0x55aa00
call fcn.004056a8
jmp 0x559f64
push ebp
lea eax, [ebp - 0x200]
mov ecx, 0x55aa58
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x200]
lea ecx, [ebp - 0x1fc]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x1fc]
lea eax, [ebp - 0x58]
call fcn.00405514
cmp dword [ebp - 0x40], 1
jle 0x5591aa
push dword [ebp - 0x58]
push 0x55aa6c
lea edx, [ebp - 0x208]
mov eax, dword [ebp - 0x40]
call fcn.0040a504
mov edx, dword [ebp - 0x208]
lea eax, [ebp - 0x204]
call fcn.0040567c
push dword [ebp - 0x204]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
lea eax, [ebp - 0x58]
mov edx, 0x55aa00
call fcn.004056a8
jmp 0x559f64
mov eax, dword [ebp - 0x64]
mov edx, 0x55a914
call fcn.004057c0
jne 0x55922c
mov eax, dword [ebp - 0x6c]
push eax
call sub.user32.dll_GetParent
lea edx, [ebp - 0x210]
call fcn.0056da58
mov eax, dword [ebp - 0x210]
lea edx, [ebp - 0x20c]
call fcn.00409f28
mov eax, dword [ebp - 0x20c]
mov edx, 0x55aa84
call fcn.004057c0
jne 0x55922c
cmp byte [ebp - 1], 0
je 0x55921a
lea eax, [ebp - 0x58]
mov edx, 0x55aaa4
call fcn.004056a8
jmp 0x559f64
lea eax, [ebp - 0x58]
mov edx, 0x55aadc
call fcn.004056a8
jmp 0x559f64
lea eax, [ebp - 0x220]
mov edx, 0x2c
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x220]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559336
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x230]
call fcn.0041276c
lea eax, [ebp - 0x240]
mov edx, 0x10
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x240]
lea eax, [ebp - 0x230]
call fcn.00419b48
lea eax, [ebp - 0x230]
call fcn.00413074
call fcn.004b1ce8
test al, al
je 0x5592a6
lea eax, [ebp - 0x58]
mov edx, 0x55ab0c
call fcn.004056a8
jmp 0x5592b3
lea eax, [ebp - 0x58]
mov edx, 0x55ab30
call fcn.004056a8
push 1
push ebp
lea edx, [ebp - 0x244]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov eax, dword [ebp - 0x244]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.00548238
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x559324
push dword [ebp - 0x58]
push 0x55aa4c
lea edx, [ebp - 0x24c]
mov eax, dword [ebp - 0x40]
call fcn.0040a504
mov edx, dword [ebp - 0x24c]
lea eax, [ebp - 0x248]
call fcn.0040567c
push dword [ebp - 0x248]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
lea eax, [ebp - 0x58]
mov edx, 0x55aa00
call fcn.004056a8
jmp 0x559f64
mov eax, dword [ebp - 0x70]
push eax
call sub.user32.dll_GetParent
test eax, eax
jne 0x559435
lea eax, [ebp - 0x58]
call fcn.004054b0
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.00505888
test al, al
je 0x559f64
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x60]
call fcn.00409f28
mov eax, 0x55ab50
mov edx, dword [ebp - 0x54]
call fcn.004057c0
je 0x55938f
mov eax, 0x55ab5c
mov edx, dword [ebp - 0x54]
call fcn.004057c0
jne 0x5593a1
lea eax, [ebp - 0x58]
mov edx, 0x55a64c
call fcn.00405514
jmp 0x559f64
mov eax, 0x55ab74
mov edx, dword [ebp - 0x54]
call fcn.004057c0
je 0x5593bf
mov eax, 0x55ab80
mov edx, dword [ebp - 0x54]
call fcn.004057c0
jne 0x5593d1
lea eax, [ebp - 0x58]
mov edx, 0x55a674
call fcn.00405514
jmp 0x559f64
mov eax, 0x55ab98
mov edx, dword [ebp - 0x54]
call fcn.004057c0
je 0x5593ef
mov eax, 0x55aba4
mov edx, dword [ebp - 0x54]
call fcn.004057c0
jne 0x559401
lea eax, [ebp - 0x58]
mov edx, 0x55a69c
call fcn.00405514
jmp 0x559f64
mov eax, 0x55abb4
mov edx, dword [ebp - 0x54]
call fcn.004057c0
je 0x559423
mov eax, 0x55abcc
mov edx, dword [ebp - 0x54]
call fcn.004057c0
jne 0x559f64
lea eax, [ebp - 0x58]
mov edx, 0x55a6c8
call fcn.00405514
jmp 0x559f64
lea edx, [ebp - 0x250]
mov eax, dword [ebp - 0x6c]
call fcn.0056d9c4
mov eax, dword [ebp - 0x250]
xor edx, edx
call fcn.004057c0
jne 0x5594a1
mov eax, dword [ebp - 0x64]
mov edx, 0x55aa84
call fcn.004057c0
jne 0x5594a1
push ebp
lea eax, [ebp - 0x258]
mov ecx, 0x55abe0
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x258]
lea ecx, [ebp - 0x254]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x254]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
mov edx, dword [ebp - 0x68]
mov eax, 0x55abfc
call fcn.004059bc
test eax, eax
jg 0x559507
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac14
call fcn.004059bc
test eax, eax
jg 0x559507
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac2c
call fcn.004059bc
test eax, eax
jg 0x559507
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac40
call fcn.004059bc
test eax, eax
jg 0x559507
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac50
call fcn.004059bc
test eax, eax
jg 0x559507
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac68
call fcn.004059bc
test eax, eax
jle 0x559514
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac80
call fcn.004059bc
test eax, eax
jle 0x559545
mov edx, dword [ebp - 0x64]
mov eax, 0x55a7f0
call fcn.004059bc
test eax, eax
jle 0x559545
lea eax, [ebp - 0x58]
mov edx, 0x55ac94
call fcn.004056a8
jmp 0x559552
lea eax, [ebp - 0x58]
mov edx, 0x55a9ec
call fcn.004056a8
push ebp
lea ecx, [ebp - 0x25c]
xor edx, edx
mov eax, dword [ebp - 0x58]
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x25c]
lea eax, [ebp - 0x58]
call fcn.00405514
push 1
push ebp
lea edx, [ebp - 0x260]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov eax, dword [ebp - 0x260]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.00548238
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x5595e3
push dword [ebp - 0x58]
push 0x55aa6c
lea edx, [ebp - 0x268]
mov eax, dword [ebp - 0x40]
call fcn.0040a504
mov edx, dword [ebp - 0x268]
lea eax, [ebp - 0x264]
call fcn.0040567c
push dword [ebp - 0x264]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
lea eax, [ebp - 0x58]
mov edx, 0x55aa00
call fcn.004056a8
jmp 0x559f64
lea eax, [ebp - 0x278]
mov edx, 0x22
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x278]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x5598db
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac68
call fcn.004059bc
test eax, eax
jle 0x55972f
push ebp
lea eax, [ebp - 0x280]
mov ecx, 0x55acc0
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x280]
lea ecx, [ebp - 0x27c]
mov dl, 1
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x27c]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
mov eax, dword [ebp - 0x64]
mov edx, 0x55acdc
call fcn.004057c0
jne 0x559f64
cmp byte [ebp - 2], 0
je 0x559691
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
cmp byte [ebp - 1], 0
jne 0x559f64
cmp byte [ebp - 2], 0
jne 0x559f64
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x6c]
call fcn.0056d9c4
xor eax, eax
mov dword [ebp - 0x34], eax
push 0x14
call sub.kernel32.dll_Sleep_1
mov eax, 0x14
call fcn.0056e268
lea edx, [ebp - 0x284]
mov eax, dword [ebp - 0x6c]
call fcn.0056d9c4
mov edx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x54]
call fcn.004057c0
je 0x559721
push 0x55a970
push dword [ebp - 0x60]
push 0x55acfc
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x58]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x55a634
call fcn.00405514
jmp 0x559f64
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x15
jne 0x5596b5
jmp 0x559f64
mov eax, dword [ebp - 0x60]
xor edx, edx
call fcn.004057c0
jne 0x559776
lea eax, [ebp - 0x58]
mov edx, 0x55ad20
call fcn.00405514
mov eax, dword [0x5743fc]
cmp byte [eax], 0
je 0x559764
lea eax, [ebp - 0x58]
mov edx, 0x55ad64
call fcn.004056a8
jmp 0x559f64
lea eax, [ebp - 0x58]
mov edx, 0x55ad8c
call fcn.004056a8
jmp 0x559f64
mov dword [ebp - 0x48], 0x10000002
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x288]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov ecx, dword [ebp - 0x288]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.004ee110
test al, al
je 0x55989b
push ebp
lea eax, [ebp - 0x290]
mov ecx, 0x55add0
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x290]
lea ecx, [ebp - 0x28c]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x28c]
lea eax, [ebp - 0x58]
call fcn.00405514
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 - 0x294]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov eax, dword [ebp - 0x294]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
mov ecx, 2
mov edx, dword [0x574134]
call fcn.0054709c
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jle 0x559889
push dword [ebp - 0x58]
push 0x55aa6c
lea edx, [ebp - 0x29c]
mov eax, dword [ebp - 0x40]
call fcn.0040a504
mov edx, dword [ebp - 0x29c]
lea eax, [ebp - 0x298]
call fcn.0040567c
push dword [ebp - 0x298]
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00405778
lea eax, [ebp - 0x58]
mov edx, 0x55aa00
call fcn.004056a8
jmp 0x559f64
push ebp
lea eax, [ebp - 0x2a4]
mov ecx, 0x55a9ec
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x2a4]
lea ecx, [ebp - 0x2a0]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x2a0]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
lea eax, [ebp - 0x2b4]
mov edx, 0x25
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x2b4]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x5599c3
mov dword [ebp - 0x48], 0x10000008
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x2b8]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov ecx, dword [ebp - 0x2b8]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.004ee110
test al, al
je 0x559983
push ebp
lea eax, [ebp - 0x2c0]
mov ecx, 0x55ade8
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x2c0]
lea ecx, [ebp - 0x2bc]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x2bc]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
push ebp
lea eax, [ebp - 0x2c8]
mov ecx, 0x55a9ec
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x2c8]
lea ecx, [ebp - 0x2c4]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x2c4]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
lea eax, [ebp - 0x2d8]
mov edx, 0xc
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x2d8]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559d75
cmp byte [ebp - 1], 0
je 0x559a04
lea eax, [ebp - 0x5c]
call fcn.004054b0
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
cmp byte [ebp - 0x2d], 0
je 0x559c4c
mov dword [ebp - 0x48], 0x10000004
mov dword [ebp - 0x44], 0
lea edx, [ebp - 0x2dc]
mov eax, dword [0x574134]
call fcn.0056da58
mov eax, dword [ebp - 0x2dc]
lea edx, [ebp - 0x54]
call fcn.00409f28
mov edx, dword [ebp - 0x54]
mov eax, 0x55adfc
call fcn.004059bc
dec eax
jne 0x559a7e
mov eax, dword [0x57413c]
xor edx, edx
call fcn.004057c0
je 0x559a6c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [0x57413c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x55ae14
call fcn.004056a8
jmp 0x559c3d
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x2e0]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov ecx, dword [ebp - 0x2e0]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.004ee110
test al, al
je 0x559c0e
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x559ace
call fcn.00403c1c
cmp eax, 0
jl 0x559bdc
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x54]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x54]
mov eax, 0x55ae60
call fcn.004059bc
test eax, eax
jle 0x559b47
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x559b17
call fcn.00403c1c
mov edx, dword [ebp - 0x34]
sub edx, eax
jg 0x559bdc
dec edx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x40]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
dec dword [ebp - 0x40]
inc dword [ebp - 0x78]
jne 0x559b29
jmp 0x559bdc
mov edx, dword [ebp - 0x54]
mov eax, 0x55ae14
call fcn.004059bc
test eax, eax
jg 0x559bcf
mov edx, dword [ebp - 0x54]
mov eax, 0x55ae80
call fcn.004059bc
test eax, eax
jle 0x559bad
mov edx, dword [ebp - 0x54]
mov eax, 0x55ae98
call fcn.004059bc
test eax, eax
jg 0x559bcf
mov edx, dword [ebp - 0x54]
mov eax, 0x55aeac
call fcn.004059bc
test eax, eax
jg 0x559bcf
mov edx, dword [ebp - 0x54]
mov eax, 0x55aec0
call fcn.004059bc
test eax, eax
jg 0x559bcf
mov edx, dword [ebp - 0x54]
mov eax, 0x55aed0
call fcn.004059bc
test eax, eax
jg 0x559bcf
mov edx, dword [ebp - 0x54]
mov eax, 0x55aef4
call fcn.004059bc
test eax, eax
jle 0x559bdc
mov edx, dword [ebp - 0x54]
mov eax, 0x55af08
call fcn.004059bc
test eax, eax
jle 0x559bdc
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffff
jne 0x559ada
cmp dword [ebp - 0x44], 0
jne 0x559bf7
cmp dword [ebp - 0x48], 1
jne 0x559bf7
lea eax, [ebp - 0x58]
mov edx, 0x55af30
call fcn.004056a8
jmp 0x559c04
lea eax, [ebp - 0x58]
mov edx, 0x55af58
call fcn.004056a8
lea eax, [ebp - 0x5c]
call fcn.004054b0
jmp 0x559c3d
mov eax, dword [0x57413c]
xor edx, edx
call fcn.004057c0
je 0x559c30
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [0x57413c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x58]
mov edx, 0x55ae14
call fcn.004056a8
mov eax, 0x57413c
call fcn.004054b0
jmp 0x559f64
mov dword [ebp - 0x48], 0x10000040
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push ebp
lea edx, [ebp - 0x2e4]
mov eax, dword [ebp - 0x60]
call fcn.00557dd4
pop ecx
mov ecx, dword [ebp - 0x2e4]
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [0x574134]
call fcn.004ee110
test al, al
je 0x559cad
mov eax, 0x57413c
mov ecx, 0x55ae60
mov edx, dword [ebp - 0x58]
call fcn.00405708
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
lea edx, [ebp - 0x2e8]
mov eax, dword [ebp - 0x70]
call fcn.0056d9c4
mov eax, dword [ebp - 0x2e8]
xor edx, edx
call fcn.004057c0
je 0x559cd9
lea eax, [ebp - 0x58]
mov edx, 0x55af7c
call fcn.004056a8
jmp 0x559d10
push 0
push 0
push 0
lea eax, [ebp - 0x2ec]
push eax
lea eax, [ebp - 0x5c]
mov cl, 1
mov edx, 0x55a62c
call fcn.004af0b8
mov edx, dword [ebp - 0x2ec]
lea eax, [ebp - 0x5c]
call fcn.00405514
lea eax, [ebp - 0x58]
mov edx, 0x55af94
call fcn.004056a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x559f64
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
sub edx, 1
jno 0x559d40
call fcn.00403c1c
lea ecx, [ebp - 0x2f0]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x2f0]
mov eax, dword [ebp - 0x58]
call fcn.004057c0
jne 0x559f64
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
lea eax, [ebp - 0x300]
mov edx, 0x24
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x300]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559e2c
mov edx, dword [ebp - 0x68]
mov eax, 0x55ac50
call fcn.004059bc
test eax, eax
jle 0x559dec
push ebp
lea eax, [ebp - 0x308]
mov ecx, 0x55afc8
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x308]
lea ecx, [ebp - 0x304]
mov dl, 1
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x304]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
push ebp
lea eax, [ebp - 0x310]
mov ecx, 0x55a9ec
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x310]
lea ecx, [ebp - 0x30c]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x30c]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
jmp 0x559f64
lea eax, [ebp - 0x320]
mov edx, 0x38
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x320]
lea eax, [ebp - 0x18]
call fcn.00419b54
je 0x559e92
lea eax, [ebp - 0x330]
mov edx, 0x39
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x330]
lea eax, [ebp - 0x18]
call fcn.00419b54
je 0x559e92
lea eax, [ebp - 0x340]
mov edx, 0x3a
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x340]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559ed7
cmp byte [ebp - 1], 0
je 0x559ead
lea eax, [ebp - 0x5c]
call fcn.004054b0
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
cmp byte [ebp - 0x30], 0
je 0x559ec5
lea eax, [ebp - 0x58]
mov edx, 0x55af7c
call fcn.004056a8
jmp 0x559f64
lea eax, [ebp - 0x58]
mov edx, 0x55aadc
call fcn.004056a8
jmp 0x559f64
cmp byte [ebp - 0x2f], 0
je 0x559f29
lea eax, [ebp - 0x350]
mov edx, 0xa
mov cl, 1
call fcn.004168a8
lea edx, [ebp - 0x350]
lea eax, [ebp - 0x18]
call fcn.00419b54
jne 0x559f29
push ebp
lea edx, [ebp - 0x354]
mov eax, dword [ebp - 0x6c]
call fcn.00557ee0
pop ecx
mov edx, dword [ebp - 0x354]
mov eax, dword [ebp - 0x60]
call fcn.004057c0
jne 0x559f29
lea eax, [ebp - 0x58]
call fcn.004054b0
jmp 0x559f64
push ebp
lea eax, [ebp - 0x35c]
mov ecx, 0x55a9ec
mov edx, dword [ebp - 0x58]
call fcn.00405708
mov eax, dword [ebp - 0x35c]
lea ecx, [ebp - 0x358]
xor edx, edx
call fcn.00557c34
pop ecx
mov edx, dword [ebp - 0x358]
lea eax, [ebp - 0x58]
mov ecx, 0x55aa00
call fcn.00405708
mov eax, dword [ebp - 0x64]
mov edx, 0x55aa84
call fcn.004057c0
jne 0x559fcb
push 0
push 1
xor ecx, ecx
mov edx, dword [ebp - 0x58]
mov eax, 0x55abe0
call fcn.004af570
test eax, eax
jle 0x559fcb
mov eax, dword [0x574720]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
call fcn.00505888
test al, al
je 0x559fcb
push 0x55a9ec
lea eax, [ebp - 0x360]
push eax
mov eax, dword [0x574720]
mov eax, dword [eax]
mov ecx, 0x55abe0
mov edx, dword [ebp - 0x58]
call fcn.0052d37c
mov edx, dword [ebp - 0x360]
lea eax, [ebp - 0x58]
call fcn.00405514
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x55a2fb
mov eax, dword [ebp - 0x5c]
xor edx, edx
call fcn.004057c0
je 0x55a26a
mov eax, dword [0x574138]
xor edx, edx
call fcn.004057c0
je 0x55a1a0
mov byte [ebp - 0x2e], 0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
sub eax, 1
jno 0x55a016
call fcn.00403c1c
cmp eax, 0
jl 0x55a162
mov dword [ebp - 0x34], eax
push 0
lea eax, [ebp - 0x364]
push eax
lea ecx, [ebp - 0x368]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x368]
xor ecx, ecx
mov edx, 0x55afe4
call fcn.004af81c
mov eax, dword [ebp - 0x364]
lea edx, [ebp - 0x54]
call fcn.00409f28
mov edx, dword [ebp - 0x54]
mov eax, 0x55afec
call fcn.004059bc
dec eax
jne 0x55a088
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
jmp 0x55a155
mov edx, dword [ebp - 0x54]
mov eax, 0x55b000
call fcn.004059bc
dec eax
jne 0x55a162
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, 0x55aa4c
call fcn.004af0b8
push 0
push 0
push 0
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x54]
mov cl, 1
mov edx, 0x55b018
call fcn.004af0b8
mov edx, dword [ebp - 0x60]
mov eax, 0x55b024
call fcn.004059bc
dec eax
jle 0x55a135
mov eax, dword [ebp - 0x64]
mov edx, 0x55ae98
call fcn.004057c0
je 0x55a122
mov eax, dword [ebp - 0x64]
mov edx, 0x55aeac
call fcn.004057c0
je 0x55a122
mov edx, dword [ebp - 0x64]
mov eax, 0x55aec0
call fcn.004059bc
test eax, eax
jg 0x55a122
mov edx, dword [ebp - 0x64]
mov eax, 0x55aed0
call fcn.004059bc
test eax, eax
jle 0x55a135
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
jmp 0x55a155
mov eax, dword [ebp - 0x64]
mov edx, 0x55b030
call fcn.004057c0
jne 0x55a162
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffff
jne 0x55a022
cmp byte [ebp - 0x2e], 0
je 0x55a1a0
push 0x55b054
push dword [0x574138]
push 0x55b0a8
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.00405778
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, 0x574138
call fcn.004054b0
mov eax, dword [ebp - 8]
cmp dword [eax + 0x528], 2
jl 0x55a1e8
mov eax, dword [0x574138]
xor edx, edx
call fcn.004057c0
je 0x55a1e8
push 0x55b0b8
push dword [0x574138]
push 0x55b0a8
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.00405778
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0
push 0
push 0
lea eax, [ebp - 0x36c]
push eax
lea eax, [ebp - 0x5c]
mov cl, 1
mov edx, 0x55a940
call fcn.004af0b8
mov edx, dword [ebp - 0x36c]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x370]
mov eax, dword [ebp - 0x5c]
call fcn.0040a18c
mov edx, dword [ebp - 0x370]
lea eax, [ebp - 0x5c]
call fcn.00405514
mov eax, dword [ebp - 0x5c]
xor edx, edx
call fcn.004057c0
je 0x55a251
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [ebp - 0x5c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, 0x574138
call fcn.004054b0
mov eax, dword [0x574134]
push eax
mov eax, dword [ebp - 8]
call dword [eax + 0x78c]
mov eax, dword [ebp - 0x58]
mov edx, 0x55a6c8
call fcn.004057c0
jne 0x55a2d3
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x55a2d3
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
sub edx, 1
jno 0x55a2a5
call fcn.00403c1c
lea ecx, [ebp - 0x374]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x374]
mov edx, 0x55a6c8
call fcn.004057c0
jne 0x55a2d3
lea eax, [ebp - 0x58]
call fcn.004054b0
mov eax, dword [ebp - 0x58]
xor edx, edx
call fcn.004057c0
je 0x55a2f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x530]
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 0x55a574
lea eax, [ebp - 0x374]
mov edx, 9
call fcn.004054c8
lea eax, [ebp - 0x350]
mov edx, dword [0x40114c]
mov ecx, 4
call fcn.00405b8c
lea eax, [ebp - 0x310]
mov edx, 4
call fcn.004054c8
lea eax, [ebp - 0x300]
call fcn.00412354
lea eax, [ebp - 0x2f0]
mov edx, 6
call fcn.004054c8
lea eax, [ebp - 0x2d8]
call fcn.00412354
lea eax, [ebp - 0x2c8]
mov edx, 5
call fcn.004054c8
lea eax, [ebp - 0x2b4]
call fcn.00412354
lea eax, [ebp - 0x2a4]
mov edx, 2
call fcn.004054c8
lea eax, [ebp - 0x29c]
call fcn.00404c88
lea eax, [ebp - 0x298]
mov edx, 8
call fcn.004054c8
lea eax, [ebp - 0x278]
call fcn.00412354
lea eax, [ebp - 0x268]
call fcn.00404c88
lea eax, [ebp - 0x264]
mov edx, 6
call fcn.004054c8
lea eax, [ebp - 0x24c]
call fcn.00404c88
lea eax, [ebp - 0x248]
mov edx, 2
call fcn.004054c8
lea eax, [ebp - 0x240]
mov edx, dword [0x40114c]
mov ecx, 3
call fcn.00405b8c
lea eax, [ebp - 0x210]
mov edx, 2
call fcn.004054c8
lea eax, [ebp - 0x208]
call fcn.00404c88
lea eax, [ebp - 0x204]
mov edx, 3
call fcn.004054c8
lea eax, [ebp - 0x1f8]
call fcn.00404c88
lea eax, [ebp - 0x1f4]
call fcn.004054b0
lea eax, [ebp - 0x1f0]
mov edx, dword [0x40114c]
mov ecx, 3
call fcn.00405b8c
lea eax, [ebp - 0x1c0]
call fcn.004054b0
lea eax, [ebp - 0x1bc]
mov edx, dword [0x40114c]
mov ecx, 3
call fcn.00405b8c
lea eax, [ebp - 0x18c]
mov edx, 2
call fcn.004054c8
lea eax, [ebp - 0x184]
mov edx, dword [0x40114c]
mov ecx, 3
call fcn.00405b8c
lea eax, [ebp - 0x154]
mov edx, 4
call fcn.004054c8
lea eax, [ebp - 0x144]
mov edx, dword [0x40114c]
mov ecx, 2
call fcn.00405b8c
lea eax, [ebp - 0x124]
mov edx, 0xb
call fcn.004054c8
lea eax, [ebp - 0xf8]
call fcn.00404c88
lea eax, [ebp - 0xf4]
call fcn.004054b0
lea eax, [ebp - 0xf0]
call fcn.00404c88
lea eax, [ebp - 0xec]
mov edx, 2
call fcn.004054c8
lea eax, [ebp - 0xe4]
mov edx, 2
call fcn.00404cac
lea eax, [ebp - 0xdc]
call fcn.00404c88
lea eax, [ebp - 0xd8]
mov edx, 0xc
call fcn.004054c8
lea eax, [ebp - 0xa8]
mov edx, 6
call fcn.00404cac
lea eax, [ebp - 0x68]
mov edx, 6
call fcn.004054c8
lea eax, [ebp - 0x2c]
call fcn.00404c88
lea eax, [ebp - 0x28]
mov edx, dword [0x40114c]
mov ecx, 2
call fcn.00405b8c
ret