Function at 0x57b2b4
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff54
mov ebx, edx
mov esi, eax
mov eax, dword [ebx]
mov edx, dword [0x62f274]
cmp eax, dword [edx]
jne 0x57b7be
movzx eax, word [ebx + 6]
cmp eax, 0x22
jg 0x57b302
je 0x57b5e5
dec eax
je 0x57b52d
dec eax
je 0x57b320
sub eax, 5
je 0x57b59d
sub eax, 0x19
je 0x57b5a9
jmp 0x57b7be
sub eax, 0x24
je 0x57b797
sub eax, 0x18
je 0x57b571
dec eax
je 0x57b580
jmp 0x57b7be
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp eax, dword [ebx + 8]
jne 0x57b51b
cmp dword [esi + 0x228], 0
je 0x57b345
lea eax, [esi + 0x228]
call fcn.0041ca80
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
xor edx, edx
call fcn.00577370
mov eax, ebx
mov edx, dword [esi + 0x54]
call fcn.0055fde8
mov dword [esi + 0x250], 0xffffffff
mov dword [esi + 0x210], 0xffffffff
mov dword [esi + 0x218], 0xffffffff
mov edx, ebx
mov eax, dword [esi + 0x24c]
call fcn.0055445c
mov eax, esi
call fcn.00589240
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x57b3a8
mov al, 1
call fcn.00555c28
mov eax, dword [esi + 0x24c]
test eax, eax
je case.0x57bbde.0
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x57b457
xor edx, edx
mov eax, esi
call fcn.00587fc0
xor edx, edx
mov eax, esi
call fcn.0058a130
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57b403
cmp dword [esi + 0x240], 0
je 0x57b403
xor edx, edx
mov eax, esi
call fcn.00588f80
mov eax, esi
call fcn.00578154
test al, al
je 0x57b42c
cmp byte [esi + 0x223], 0
jne 0x57b42c
push 0xffffffffffffffff
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
mov eax, esi
call fcn.00587b98
push 0x485
push 0
push 0
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_RedrawWindow
xor edx, edx
mov eax, esi
call fcn.0058a740
mov eax, dword [esi + 0x24c]
call fcn.004b6c18
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x57b4e2
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov edx, dword [0x46c5c8]
call fcn.00405320
test al, al
je 0x57b4de
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov eax, dword [eax + 0x64]
mov edx, 0xff000008
call fcn.004582e8
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
call fcn.004744f4
test al, al
jne 0x57b4de
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov ebx, dword [eax + 0x50]
or ebx, dword [0x5825c4]
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov dword [eax + 0x50], ebx
inc edi
dec ebp
jne 0x57b46c
cmp byte [esi + 0x60], 0
je 0x57b501
mov eax, dword [esi + 0x54]
cmp byte [eax + 9], 0
jne 0x57b501
mov edx, 0xff00000f
mov eax, dword [esi + 0x24c]
call fcn.004b234c
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je case.0x57bbde.0
add eax, 0x44
call fcn.0041ca80
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x24c]
call fcn.0055445c
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne 0x57b7be
cmp dword [esi + 0x54], 0
je 0x57b7be
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp eax, dword [ebx + 8]
jne 0x57b7be
cmp dword [esi + 0x254], 0
jne 0x57b7be
mov eax, esi
call fcn.00588d00
jmp 0x57b7be
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
pop edx
call fcn.0040ca70
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov dword [ebx + 0xc], 1
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
movzx edx, word [eax + 0x52]
and dx, 0x400
cmp dx, 0x400
jne 0x57b7be
and word [eax + 0x52], 0xfbff
push 0
push 0
push 0xb015
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x57b7be
mov edi, dword [esi + 0x54]
test edi, edi
je 0x57b7be
xor edx, edx
mov eax, edi
call fcn.0055fd40
test al, al
je 0x57b7be
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.0040ab70
mov eax, dword [ebx + 8]
mov edx, dword [esp + 0x74]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x78]
mov dword [eax + 0xc], edx
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x39], 0
je 0x57b64d
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
je 0x57b63a
cmp byte [esi + 0x224], 0
je 0x57b64d
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57b64d
mov eax, esi
call fcn.0058512c
mov eax, dword [ebx + 8]
cmp byte [eax + 0x31], 0
je 0x57b670
mov eax, esi
call fcn.005872b8
mov edx, dword [ebx + 8]
add dword [edx + 8], eax
mov eax, esi
call fcn.00587350
mov edx, dword [ebx + 8]
add dword [edx + 0xc], eax
mov eax, dword [esi + 0x24c]
cmp word [eax + 0x31a], 0
je 0x57b6be
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 8]
mov dword [edx], eax
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
lea ecx, [esp + 0x78]
pop edx
call fcn.0040ab70
mov edi, dword [ebx + 8]
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 0xc], eax
mov byte [edi + 0x30], 2
jmp case.0x57bbde.0
mov edi, dword [esi + 0x54]
cmp dword [edi + 0x28], 0xffffffff
jle 0x57b6fc
push 0
mov eax, edi
call fcn.0055f79c
mov eax, dword [eax + 0xd8]
mov edx, dword [esi + 0x54]
imul edx, dword [edx + 0x28], 0x43
mov edx, dword [eax + edx*4 + 8]
dec edx
movzx eax, byte [esi + 0x244]
call fcn.0040e468
mov ecx, eax
mov edx, dword [ebx + 8]
mov eax, edi
call fcn.0055ddec
jmp 0x57b718
push 0
movzx eax, byte [esi + 0x244]
xor edx, edx
call fcn.0040e468
mov ecx, eax
mov edx, dword [ebx + 8]
mov eax, edi
call fcn.0055ddec
mov eax, dword [ebx + 8]
cmp byte [eax + 0x30], 2
jne 0x57b73e
cmp byte [eax + 0x31], 0
jne 0x57b73e
cmp dword [eax], 0
jne 0x57b73e
mov eax, esi
call fcn.0058512c
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 8]
mov dword [edx], eax
mov eax, dword [ebx + 8]
lea edi, [eax + 8]
mov eax, esi
call fcn.005872b8
add dword [edi], eax
mov ebp, dword [edi]
test ebp, ebp
je 0x57b768
mov eax, dword [ebx + 8]
mov edx, dword [eax + 0x20]
sub edx, ebp
xor eax, eax
call fcn.0040e530
mov edx, dword [ebx + 8]
mov dword [edx + 0x20], eax
mov eax, esi
call fcn.00587350
add dword [edi + 4], eax
mov esi, dword [edi + 4]
test esi, esi
je case.0x57bbde.0
mov eax, dword [ebx + 8]
mov edx, dword [eax + 0x24]
sub edx, esi
xor eax, eax
call fcn.0040e530
mov edx, dword [ebx + 8]
mov dword [edx + 0x24], eax
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
movzx edx, word [eax + 0x52]
and dx, 2
cmp dx, 2
jne 0x57b7af
xor edx, edx
call fcn.0055f370
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne 0x57b7dc
mov dl, 1
mov eax, dword [esi + 0x54]
call fcn.0055fd40
test al, al
jne 0x57bbba
mov eax, dword [ebx]
mov edx, dword [0x62f274]
cmp eax, dword [edx]
jne 0x57b9e0
movzx eax, word [ebx + 6]
dec ax
je 0x57b807
sub ax, 3
jne 0x57b9e0
mov dword [ebx + 0xc], esi
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne 0x57b9e0
cmp dword [esi + 0x54], 0
je 0x57b9e0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp eax, dword [ebx + 8]
jne case.0x57bbde.0
mov eax, esi
call fcn.0058a964
mov al, 1
call fcn.00555c28
mov eax, dword [esi + 0x54]
call fcn.00560690
mov dword [esi + 0x210], 0xffffffff
mov eax, esi
call fcn.0058aaa8
mov dword [esi + 0x210], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, 0x5825d4
call fcn.005a4e34
mov dword [esi + 0x218], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x57b9be
cmp dword [esi + 0x268], 0
je 0x57b8c9
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x57b8c9
mov eax, esi
call fcn.0058c950
mov ebx, eax
mov eax, dword [esi + 0x24c]
call fcn.00577064
add eax, 4
cmp ebx, eax
setg al
mov byte [esi + 0x20c], al
jmp 0x57b8d0
mov byte [esi + 0x20c], 0
mov dl, 1
mov eax, esi
call fcn.0058a130
mov eax, esi
call fcn.005885e4
mov ebx, dword [esi + 0x24c]
cmp byte [ebx + 0x29e], 2
jne 0x57b90a
mov eax, ebx
call fcn.004da648
mov edx, dword [0x62f79c]
mov edx, dword [edx]
cmp eax, dword [edx + 0x68]
jne 0x57b90a
mov byte [esi + 0x244], 1
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test byte [eax + 0x1c], 1
jne 0x57b956
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x2b4], 0
je 0x57b937
cmp byte [esi + 0xc1], 0
je 0x57b937
mov byte [esi + 0xbd], 1
mov dl, 1
mov eax, esi
call fcn.00587fc0
cmp byte [esi + 0xbd], 0
jne 0x57b956
mov eax, esi
call fcn.00587b98
mov byte [esi + 0xbd], al
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov dword [esi + 0x250], 0xffffffff
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57b97f
mov dl, 1
mov eax, esi
call fcn.00588f80
cmp byte [esi + 0x60], 0
je 0x57b9a8
mov eax, dword [esi + 0x54]
cmp byte [eax + 9], 0
jne 0x57b9a8
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.0059bb20
mov edx, eax
mov eax, dword [esi + 0x24c]
call fcn.004b234c
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
movzx edx, byte [esi + 0x78]
call fcn.00577370
mov eax, dword [esi + 0x22c]
test eax, eax
jne 0x57b9d4
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x34]
jmp case.0x57bbde.0
xor edx, edx
call fcn.0058e438
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx]
sub eax, 0x47
je 0x57ba0e
sub eax, 0x3b
je 0x57bae9
sub eax, 0xafc1
je 0x57bbac
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je case.0x57bbde.0
call fcn.00561d6c
test al, al
je case.0x57bbde.0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne case.0x57bbde.0
cmp byte [esi + 0x95], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x57bbde.0
cmp byte [esi + 0x226], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0x40], 0
je case.0x57bbde.0
cmp byte [esi + 0x78], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je case.0x57bbde.0
mov eax, dword [0x62ec58]
xor edx, edx
mov dword [eax], edx
mov byte [esi + 0x226], 1
mov eax, esi
call fcn.00551738
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57babf
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
xor edx, edx
call fcn.0057b170
mov byte [esi + 0x226], 0
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne case.0x57bbde.0
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov dl, 1
call fcn.0055fd40
test al, al
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
call fcn.00588510
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
test eax, eax
jne case.0x57bbde.0
push 0x507
push 0
push 0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x57bbde.0
mov edx, ebx
mov eax, esi
call fcn.0058ab88
jmp case.0x57bbde.0
mov eax, dword [ebx]
mov edx, dword [0x62f274]
cmp eax, dword [edx]
jne 0x57c1cc
movzx eax, word [ebx + 6]
cmp eax, 0x3e
ja case.0x57bbde.0
movzx eax, byte [eax + 0x57bbe5]
jmp dword [eax*4 + 0x57bc24]
mov eax, dword [esi + 0x24c]
test eax, eax
je case.0x57bbde.0
test byte [eax + 0x1c], 1
jne case.0x57bbde.0
mov edx, dword [esi + 0x22c]
test edx, edx
je case.0x57bbde.0
cmp dword [ebx + 8], 0
je 0x57bc9e
mov eax, dword [ebx + 8]
xchg edx, eax
call fcn.0058e438
jmp case.0x57bbde.0
xchg edx, eax
call fcn.0058e438
jmp case.0x57bbde.0
cmp dword [esi + 0x54], 0
je case.0x57bbde.0
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57bcd2
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57bcd2
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x57bcd6
xor eax, eax
jmp 0x57bcd8
mov al, 1
and eax, 0x7f
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
je case.0x57bbde.0
mov byte [eax + 0x1c], 0
push 0x401
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x57bbde.0
cmp dword [ebx + 8], 1
jne 0x57bd2c
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov eax, esi
call fcn.0057819c
jmp case.0x57bbde.0
cmp word [ebx + 4], 1
sete dl
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
mov eax, dword [esi + 0x54]
call fcn.0055f7b0
test al, al
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp eax, dword [ebx + 8]
jne case.0x57bbde.0
cmp dword [esi + 0x22c], 0
jne 0x57bd87
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x34]
jmp 0x57bd94
xor edx, edx
mov eax, dword [esi + 0x22c]
call fcn.0058e438
cmp byte [esi + 0x78], 0
je 0x57bdb2
cmp byte [esi + 0xa8], 0
je 0x57bdb2
lea edx, [esi + 0x228]
xor ecx, ecx
mov eax, esi
call fcn.00578050
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
je 0x57bdd6
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x57bdd6
mov eax, dword [esi + 0x54]
and word [eax + 0x52], 0xfffe
mov dword [esi + 0x250], 0xffffffff
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test byte [eax + 0x1c], 1
jne 0x57be08
mov eax, esi
call fcn.00587b98
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd40
mov edx, eax
mov eax, esi
call fcn.00587fc0
mov eax, esi
call fcn.00578154
test al, al
je 0x57be17
mov byte [esi + 0x38], 1
mov eax, esi
call fcn.0058c78c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x59], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.005a6f14
mov edx, eax
mov eax, esi
call fcn.0058a740
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57befb
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57beb7
mov eax, dword [esi + 0x24c]
call fcn.004da648
test eax, eax
je 0x57beb7
mov eax, dword [esi + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x57beb7
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
push 0xffffffffffffffff
push 0
mov eax, dword [esi + 0x24c]
call fcn.004da648
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
jmp 0x57befb
push 0x545
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57befb
push 0x545
push 0
push 0
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_RedrawWindow
cmp byte [esi + 0x60], 0
je 0x57bf24
mov eax, dword [esi + 0x54]
cmp byte [eax + 9], 0
jne 0x57bf24
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.0059bb20
mov edx, eax
mov eax, dword [esi + 0x24c]
call fcn.004b234c
cmp dword [esi + 0x240], 0
je 0x57bf38
mov eax, dword [esi + 0x240]
call fcn.00518334
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
cmp dword [esi + 0x254], 0
je 0x57bf56
mov eax, dword [esi + 0x254]
call fcn.0058d824
mov edx, ebx
mov eax, esi
call fcn.00589290
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd8]
mov edi, dword [esi + 0x54]
imul edx, dword [edi + 0x28], 0x43
mov ebp, dword [eax + edx*4 + 0xa8]
mov eax, edi
call fcn.0055f79c
mov eax, dword [eax + 0xd8]
mov edx, dword [esi + 0x54]
imul edx, dword [edx + 0x28], 0x43
add ebp, dword [eax + edx*4 + 0xb4]
test ebp, ebp
jle 0x57bfc4
mov dword [ebx + 8], 1
jmp 0x57c006
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x24], 0
jl 0x57bffa
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x24]
mov ecx, edx
add edx, edx
add edx, edx
add edx, edx
sub edx, ecx
movzx eax, word [eax + edx*8 + 0x22]
and ax, 4
cmp ax, 4
je 0x57bffe
xor eax, eax
jmp 0x57c000
mov al, 1
and eax, 0x7f
mov dword [ebx + 8], eax
mov eax, dword [ebx + 8]
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055e388
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov dword [ebx + 0xc], esi
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp eax, dword [ebx + 8]
jne case.0x57bbde.0
mov al, 1
call fcn.00555c28
mov eax, dword [esi + 0x54]
call fcn.00560690
mov dword [esi + 0x210], 0xffffffff
mov eax, esi
call fcn.0058aaa8
mov dword [esi + 0x210], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, 0x5825d4
call fcn.005a4e34
mov dword [esi + 0x218], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je case.0x57bbde.0
mov eax, esi
call fcn.005885e4
mov al, 1
call fcn.00555c28
movzx edx, byte [esi + 0x78]
mov eax, esi
call fcn.0058a130
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x48]
call fcn.00557d88
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov dword [esi + 0x250], 0xffffffff
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne case.0x57bbde.0
mov dl, 1
mov eax, esi
call fcn.00588f80
jmp case.0x57bbde.0
mov cl, 1
or edx, 0xffffffff
mov eax, esi
call fcn.00583948
mov byte [0x62cc8c], 0
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f994
test al, al
je case.0x57bbde.0
push 0
push 0
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f994
test al, al
je case.0x57bbde.0
push 0
push 1
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
push 0x585
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x62f54c]
cmp esi, dword [eax]
jne case.0x57bbde.0
push 0x581
push 0
push 0
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x57bbde.0
mov eax, ebx
mov edx, dword [esi + 0x54]
call fcn.005607cc
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x38], 0
je case.0x57bbde.0
mov eax, esi
call fcn.0058512c
jmp case.0x57bbde.0
cmp eax, 0xa4
jg 0x57c32f
je 0x57ed18
cmp eax, 0x2c
jg 0x57c290
je 0x580cf4
cmp eax, 0x24
ja case.0x57c1f5.0
jmp dword [eax*4 + 0x57c1fc]
cmp eax, 0x81
jg 0x57c2e6
je 0x57e14d
cmp eax, 0x4e
jg 0x57c2c6
je 0x5824c7
sub eax, 0x46
je 0x581842
dec eax
je 0x581e51
sub eax, 3
je 0x57c538
jmp case.0x57c1f5.0
sub eax, 0x7b
je 0x57c618
sub eax, 2
je 0x57c7ca
sub eax, 3
je 0x57c718
jmp case.0x57c1f5.0
cmp eax, 0xa0
jg 0x57c311
je 0x57c49f
sub eax, 0x84
je 0x57de8e
dec eax
je 0x57f99a
dec eax
je 0x5800cb
jmp case.0x57c1f5.0
sub eax, 0xa1
je 0x57e17a
dec eax
je 0x57edba
dec eax
je 0x580b53
jmp case.0x57c1f5.0
cmp eax, 0x318
jg 0x57c3f2
je case.0x57bbde.0
cmp eax, 0x211
jg 0x57c39e
je 0x57dd00
cmp eax, 0x121
jg 0x57c37c
je 0x57f428
sub eax, 0xa5
je 0x57ed3a
sub eax, 0x6d
je 0x580d78
sub eax, 5
je 0x57c7aa
jmp case.0x57c1f5.0
sub eax, 0x200
je 0x57e830
sub eax, 2
je 0x57edba
sub eax, 0xe
je 0x582407
jmp case.0x57c1f5.0
cmp eax, 0x232
jg 0x57c3d0
je 0x57c693
sub eax, 0x212
je 0x57de61
sub eax, 2
je 0x57e07f
add eax, 0xfffffff3
sub eax, 2
jb 0x5808f3
jmp case.0x57c1f5.0
sub eax, 0x2a3
je 0x57e0ae
sub eax, 0x70
je 0x57c8a4
sub eax, 4
je 0x57f4ed
jmp case.0x57c1f5.0
cmp eax, 0xb015
jg 0x57c450
je 0x57f478
cmp eax, 0xb00b
jg 0x57c430
je 0x580aab
sub eax, 0x323
je 0x57c5ce
sub eax, 3
je 0x57c5a3
sub eax, 0xa0da
je 0x57c4f6
jmp case.0x57c1f5.0
sub eax, 0xb00c
je 0x57d1c0
sub eax, 7
je 0x57e0e6
dec eax
je 0x57e0ae
jmp case.0x57c1f5.0
cmp eax, 0xb03a
jg 0x57c47f
je 0x57f432
sub eax, 0xb019
je 0x57c8e0
sub eax, 0x13
je 0x582505
sub eax, 7
je 0x580082
jmp case.0x57c1f5.0
sub eax, 0xb043
je 0x57c4da
sub eax, 9
je 0x57f990
sub eax, 0xc01
je 0x57f990
jmp case.0x57c1f5.0
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
pop edx
call fcn.005a61f4
mov edx, ebx
mov eax, esi
call fcn.0058ae04
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov edx, ebx
mov eax, esi
call fcn.0058ab88
jmp case.0x57bbde.0
mov eax, dword [ebx + 4]
dec eax
je 0x57c51c
sub eax, 2
je 0x57c509
dec eax
je 0x57c52c
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004dde14
jmp case.0x57bbde.0
mov dword [ebx + 0xc], 1
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [ebx + 0xc], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov edx, dword [0x62f480]
cmp eax, dword [edx]
jne case.0x57bbde.0
mov eax, dword [0x62eea8]
cmp byte [eax], 0
jne case.0x57bbde.0
mov eax, dword [0x62eea8]
mov byte [eax], 1
cmp dword [ebx + 8], 0
je 0x57c596
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, eax
mov eax, ebx
call fcn.005992b0
mov eax, dword [0x62eea8]
mov byte [eax], 0
jmp case.0x57bbde.0
mov eax, dword [0x62f3a8]
cmp byte [eax], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov edx, esi
call fcn.00575c98
and eax, 0x7f
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, dword [0x62f3a8]
cmp byte [eax], 0
je case.0x57bbde.0
cmp word [ebx + 0xa], 0
je case.0x57bbde.0
cmp word [ebx + 8], 0
je case.0x57bbde.0
movzx eax, word [ebx + 8]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
movzx ecx, word [ebx + 0xa]
mov edx, esi
call fcn.00575a0c
and eax, 0x7f
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x7c], 0
je 0x57c64b
mov eax, dword [esi + 0x54]
call fcn.0055f79c
movzx eax, byte [eax + 0x60]
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x48]
mov edx, dword [esi + 0x24c]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.00559300
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp dword [ebx + 4], 1
jne 0x57c67a
mov edx, dword [esi + 0xb8]
dec edx
xor eax, eax
call fcn.0040e530
mov dword [esi + 0xb8], eax
jmp 0x57c680
inc dword [esi + 0xb8]
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov eax, dword [0x62f5b4]
cmp dword [eax], 0
je case.0x57bbde.0
mov eax, dword [0x62f5b4]
mov eax, dword [eax]
mov ebp, dword [eax + 8]
dec ebp
test ebp, ebp
jl case.0x57bbde.0
inc ebp
xor edi, edi
mov eax, dword [0x62f5b4]
mov eax, dword [eax]
mov edx, edi
call fcn.00436fac
test eax, eax
je 0x57c701
mov eax, dword [0x62f5b4]
mov eax, dword [eax]
mov edx, edi
call fcn.00436fac
mov eax, dword [eax + 0x3c]
xor ecx, ecx
mov edx, 0x12
call fcn.005542a0
inc edi
dec ebp
jne 0x57c6d2
jmp case.0x57bbde.0
mov edx, ebx
mov eax, esi
call fcn.0058a7f0
jmp case.0x57bbde.0
test byte [esi + 0x1c], 1
jne 0x57c797
cmp dword [ebx + 8], 0
je 0x57c797
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57c797
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57c797
call fcn.005772c4
test al, al
jne 0x57c75d
push 0
push 0
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
call fcn.005772c4
test al, al
jne 0x57c78b
push 0
push 1
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov eax, esi
call fcn.0057819c
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0x60], 0
je case.0x57bbde.0
mov edx, ebx
mov eax, esi
call fcn.0058a400
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x254]
test eax, eax
je 0x57c819
cmp dword [eax + 0xa0], 0
je 0x57c819
mov edx, dword [esi + 0x24c]
test byte [edx + 0x298], 1
setne dl
mov ecx, dword [eax + 0xa0]
cmp dl, byte [ecx + 0x3e]
je 0x57c819
xor edx, edx
call fcn.0058d828
mov eax, esi
call fcn.0057819c
jmp case.0x57bbde.0
cmp dword [ebx + 4], 0xffffffec
jne case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x80
cmp eax, 0x80
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x100
cmp eax, 0x100
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x400
cmp eax, 0x400
je case.0x57bbde.0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 4]
and eax, 0x80000
mov edx, dword [ebx + 8]
mov edx, dword [edx]
and edx, 0x80000
cmp eax, edx
je case.0x57bbde.0
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
lea edx, [esp + 0x74]
mov eax, dword [0x62f714]
mov eax, dword [eax]
call fcn.004c0f98
mov eax, dword [esp + 0x78]
push eax
lea edx, [esp + 0x80]
mov eax, dword [0x62f714]
mov eax, dword [eax]
call fcn.004c0f98
mov edx, dword [esp + 0x80]
mov eax, esi
pop ecx
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
mov dword [esp + 4], 0xff
cmp byte [esi + 0x78], 0
je 0x57cdb1
cmp byte [esi + 0xa8], 0
je 0x57cdb1
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57cd4e
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57c94e
cmp dword [esi + 0x22c], 0
je 0x57c93b
mov edx, dword [esi + 0x24c]
mov eax, dword [esi + 0x22c]
call fcn.0058e438
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57c966
mov dl, 1
mov eax, esi
call fcn.00588f80
and dword [esi + 0x230], 0xfffffdff
cmp dword [esi + 0x268], 0
je 0x57c983
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
cmp dword [esi + 0x21c], 0
je 0x57c9ac
mov eax, dword [esi + 0x21c]
mov edx, dword [0x57545c]
call fcn.00405320
test al, al
je 0x57c9ac
lea eax, [esi + 0x21c]
call fcn.0041ca80
mov eax, dword [0x62ed0c]
cmp byte [eax], 0
je 0x57c9f4
mov eax, dword [esi + 0x24c]
call fcn.004bb48c
test al, al
je 0x57c9f4
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp dword [eax + 0x44], 0
je 0x57c9e4
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x57c9f4
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
call fcn.00578da4
mov eax, esi
call fcn.00588c84
cmp dword [esi + 0x22c], 0
je 0x57ca15
mov edx, dword [esi + 0x24c]
mov eax, dword [esi + 0x22c]
call fcn.0058e438
cmp byte [esi + 0x95], 0
je 0x57ca62
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x57ca39
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x57ca62
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0xc]
cmp byte [eax + 6], 0
je 0x57ca62
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov edx, dword [0x62f480]
cmp eax, dword [edx]
jne 0x57ca66
xor eax, eax
jmp 0x57ca68
mov al, 1
mov byte [esi + 0x227], al
mov byte [esp + 0x11], 0
cmp byte [esi + 0x227], 0
je 0x57cb4d
mov dl, 1
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
mov byte [esi + 0x224], 1
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov dl, 1
call fcn.0057b170
mov byte [esp + 0x11], al
mov dword [esp + 4], 0xff
cmp byte [esp + 0x11], 0
je 0x57caca
xor edx, edx
mov eax, esi
call fcn.00577d14
mov byte [esi + 0x234], 0
jmp 0x57cae8
mov eax, dword [esi + 0x24c]
movzx eax, byte [eax + 0x341]
mov dword [esp + 4], eax
xor edx, edx
mov eax, dword [esi + 0x24c]
call fcn.004ded3c
mov eax, dword [esi + 0x24c]
call fcn.004b6c18
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x57cb57
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
cmp byte [eax + 0x59], 0
je 0x57cb47
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov edx, dword [0x6249f8]
call fcn.00405320
test al, al
jne 0x57cb47
push 0
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
xor ecx, ecx
mov edx, 0xb
call fcn.004b3684
inc edi
dec ebp
jne 0x57cafd
jmp 0x57cb57
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.005a6f14
mov edx, eax
mov eax, esi
call fcn.0058a740
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd40
test al, al
jne 0x57cc36
cmp byte [esi + 0x227], 0
je 0x57cc36
mov eax, dword [esi + 0x24c]
call fcn.004b6c18
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x57cbe4
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
cmp byte [eax + 0x59], 0
je 0x57cbe0
push 0
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov ecx, 1
mov edx, 0xb
call fcn.004b3684
inc edi
dec ebp
jne 0x57cbaf
push 0xffffffffffffffec
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
and eax, 0xfff7ffff
push eax
push 0xffffffffffffffec
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowLongW
push 0x81
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov byte [esi + 0x234], 0
jmp case.0x57bbde.0
lea edx, [esi + 0x228]
xor ecx, ecx
mov eax, esi
call fcn.00578050
cmp byte [esi + 0x227], 0
je 0x57cd02
mov eax, dword [esi + 0x24c]
call fcn.004b6c18
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x57cc9c
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
cmp byte [eax + 0x59], 0
je 0x57cc98
push 0
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004b6bdc
mov ecx, 1
mov edx, 0xb
call fcn.004b3684
inc edi
dec ebp
jne 0x57cc67
cmp byte [esp + 0x11], 0
je 0x57ccb7
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
xor edx, edx
call fcn.0057b170
mov byte [esi + 0x227], 0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0xc]
movzx edi, word [eax + 4]
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0xc]
movzx eax, byte [eax + 7]
mov byte [esp + 0x13], al
movzx eax, byte [esp + 0x13]
push eax
mov ecx, dword [esp + 8]
mov edx, edi
mov eax, esi
call fcn.00550d8c
mov byte [esi + 0x234], 0
jmp 0x57cd1c
push 0x81
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne case.0x57bbde.0
mov al, 1
call fcn.0057afe4
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x57cd9e
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x57cd93
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
movzx eax, word [eax + 4]
mov ecx, 0xc
xor edx, edx
div ecx
test eax, eax
je 0x57cd93
cmp byte [esi + 0x95], 0
jne 0x57cd9e
lea eax, [esi + 0x268]
call fcn.0041ca80
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
call fcn.005772c4
test al, al
je 0x57cdee
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57cdee
push 0
push 1
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 0
call fcn.005772c4
test al, al
je case.0x57bbde.0
push 0x181
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x57cf5a
cmp dword [ebx + 4], 1
jne 0x57cec3
cmp dword [esi + 0x268], 0
je 0x57ce51
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
mov eax, dword [esi + 0x230]
and eax, 0x400
cmp eax, 0x400
jne 0x57ce6f
mov dword [esi + 0x230], 0x400
jmp 0x57ce77
xor eax, eax
mov dword [esi + 0x230], eax
call fcn.005772c4
test al, al
je 0x57cec3
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57cec3
push 0xffffffffffffffec
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
and eax, 0x80000
cmp eax, 0x80000
je 0x57cec3
push 0x481
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 8]
dec eax
je 0x57ced3
sub eax, 2
je 0x57cf21
jmp 0x57cf5a
cmp byte [esi + 0x225], 0
je 0x57cf5a
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57cefa
mov byte [esi + 0x225], 2
jmp 0x57cf5a
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x57cf18
mov byte [esi + 0x225], 3
jmp 0x57cf5a
mov byte [esi + 0x225], 1
jmp 0x57cf5a
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x57cf5a
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x57cf5a
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [ebx + 4], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57cf9c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57cf9c
mov eax, dword [0x62f54c]
mov eax, dword [eax]
call fcn.00588510
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57cffd
mov eax, dword [esi + 0x24c]
call fcn.004da67c
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x57cffd
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004da6c8
call fcn.004bb0e0
mov edx, 7
call fcn.00554354
test al, al
jne 0x57cff9
mov edx, edi
mov eax, dword [esi + 0x24c]
call fcn.004da6c8
call fcn.004bb0e0
xor edx, edx
call fcn.0050fa10
inc edi
dec ebp
jne 0x57cfc0
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
and word [eax + 0x52], 0xfffe
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb48c
test al, al
je 0x57d1ad
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x57d1ad
mov eax, dword [esi + 0x24c]
test byte [eax + 0x54], 0x40
jne 0x57d1ad
cmp byte [esi + 0x78], 0
je 0x57d1ad
cmp dword [esi + 0xc4], 0
je 0x57d08f
lea eax, [esi + 0xc4]
call fcn.0041ca80
cmp dword [esi + 0xc8], 0
je 0x57d0a3
lea eax, [esi + 0xc8]
call fcn.0041ca80
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57d0fc
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57d0fc
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
xor edx, edx
call fcn.005777d4
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62f54c]
mov eax, dword [eax]
call fcn.00577b1c
jmp 0x57d18c
call fcn.005772c4
test al, al
jne 0x57d155
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, esi
call fcn.005777d4
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, esi
call fcn.00577b1c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x340], 0
je 0x57d18c
push 0
push 0
push 0x85
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x57d18c
cmp dword [esi + 0x268], 0
jne 0x57d167
xor edx, edx
mov eax, esi
call fcn.005777d4
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, esi
call fcn.0057819c
cmp dword [esi + 0x268], 0
jne 0x57d18c
mov eax, esi
call fcn.00577b1c
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp byte [esi + 0x78], 0
je case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x57d208
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x57d208
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
mov edx, eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x74]
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, esi
call fcn.00587b98
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, esi
call fcn.00587b98
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
test eax, eax
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x57d2b7
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x240]
call fcn.0051845c
jmp case.0x57bbde.0
mov dl, 1
mov eax, esi
call fcn.0058a130
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x57dcc1
mov eax, esi
call fcn.005773e0
test al, al
je 0x57d4e8
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edi, dword [eax + 0x188]
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, edi
call fcn.0059dff8
test al, al
je 0x57d4e8
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f38
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f4c
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
mov ebp, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
cmp ebp, eax
jl 0x57d3db
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f4c
mov ebp, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
cmp ebp, eax
jge 0x57d446
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
jne 0x57d446
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
test eax, eax
je 0x57d446
mov eax, dword [esi + 0x208]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [esi + 0x208]
sub edx, edi
mov eax, dword [esi + 0x204]
sub eax, dword [esp + 0xc]
mov ecx, dword [esi + 0x204]
call fcn.0040ab40
mov eax, dword [esi + 0x54]
call fcn.0055da28
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
mov ebp, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
cmp ebp, eax
jg 0x57d482
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f4c
mov ebp, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
cmp ebp, eax
jle 0x57d4e8
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
sub eax, edi
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
sub eax, dword [esp + 0x14]
pop edx
pop ecx
call fcn.0040ab40
mov eax, dword [esi + 0x54]
call fcn.0055da28
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
cmp edi, eax
jg 0x57d539
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f4c
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
cmp edi, eax
jg 0x57d539
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
test eax, eax
jne 0x57d759
push 0x5825f0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, dword [esi + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x28]
call fcn.005a4e8c
mov edi, eax
cmp edi, 0xffffffff
jle 0x57d649
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f38
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f4c
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
mov eax, dword [esi + 0x208]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [esi + 0x208]
sub edx, edi
mov eax, dword [esi + 0x204]
sub eax, dword [esp + 0xc]
mov ecx, dword [esi + 0x204]
call fcn.0040ab40
mov eax, dword [esi + 0x54]
call fcn.0055da28
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
push 0x582614
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, dword [esi + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x28]
call fcn.005a4e8c
mov edi, eax
cmp edi, 0xffffffff
jle 0x57d759
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f38
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00594f4c
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
mov edx, eax
pop eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
mov eax, dword [esi + 0x208]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [esi + 0x208]
sub edx, edi
mov eax, dword [esi + 0x204]
sub eax, dword [esp + 0xc]
mov ecx, dword [esi + 0x204]
call fcn.0040ab40
mov eax, dword [esi + 0x54]
call fcn.0055da28
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
cmp dword [esi + 0xc4], 0
je 0x57d76d
lea eax, [esi + 0xc4]
call fcn.0041ca80
cmp dword [esi + 0xc8], 0
je 0x57d781
lea eax, [esi + 0xc8]
call fcn.0041ca80
mov dword [esi + 0x250], 0xffffffff
mov eax, dword [esi + 0x230]
and eax, 0x80
cmp eax, 0x80
jne 0x57d7a4
mov eax, esi
call fcn.00576a70
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x57d7d7
cmp byte [esi + 0xa8], 0
je 0x57d7d7
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 1
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x57d7e5
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62ee30]
cmp byte [eax], 0
jne 0x57dc81
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57dc7a
mov eax, esi
call fcn.00587684
test al, al
je 0x57dbe0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57d837
cmp byte [esi + 0x222], 0
jne 0x57dbe0
mov byte [esi + 0x38], 1
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x57d88f
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57d883
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [esi + 0x24c]
cmp eax, dword [edx + 0x48]
jg 0x57d887
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [esi + 0x24c]
cmp eax, dword [edx + 0x4c]
jg 0x57d887
xor eax, eax
jmp 0x57d889
mov al, 1
mov byte [esp + 0x10], al
jmp 0x57d894
mov byte [esp + 0x10], 0
cmp byte [esi + 0x78], 0
je 0x57db84
mov eax, dword [0x62f16c]
cmp byte [eax], 0
je 0x57d8cb
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57d8cb
cmp dword [esi + 0x268], 0
je 0x57d8cb
lea eax, [esi + 0x268]
call fcn.0041ca80
cmp dword [esi + 0x268], 0
je 0x57d98c
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
jne 0x57d8ef
mov eax, dword [esi + 0x268]
call fcn.0059269c
cmp dword [esi + 0x228], 0
je 0x57d919
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x57d926
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x57d926
cmp byte [esi + 0x58], 0
jne 0x57d926
or dword [esi + 0x230], 1
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 1
and dword [esi + 0x230], 0xfffffffe
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 1
push 0x61b
push 0
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
mov dl, 1
mov eax, esi
call fcn.00577d14
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x57d99c
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x54]
and ax, 2
cmp ax, 2
jne 0x57d9d8
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f4c
mov ebx, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
cmp ebx, eax
jne 0x57da07
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x54]
and ax, 1
cmp ax, 1
jne 0x57da3a
lea eax, [esi + 0x1fc]
xor edx, edx
call fcn.00594f38
mov ebx, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
cmp ebx, eax
je 0x57da3a
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x14
mov ax, 1
call fcn.0040cab0
mov edx, eax
mov eax, dword [0x62f274]
mov eax, dword [eax]
xor ecx, ecx
call fcn.00594dbc
lea edx, [esp + 0x14]
mov eax, dword [esi + 0x24c]
call fcn.0055445c
cmp dword [esi + 0x268], 0
je 0x57db5d
cmp dword [esi + 0x228], 0
je 0x57da94
mov eax, dword [esi + 0x228]
cmp dword [eax + 0x80], 0
je 0x57da94
mov eax, dword [esi + 0x228]
cmp dword [eax + 0x7c], 0
je 0x57da94
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x57db5d
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x57db5d
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
jne 0x57daab
mov eax, dword [esi + 0x268]
call fcn.0059269c
push 0x101
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
cmp dword [esi + 0x268], 0
je 0x57db52
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x57db52
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
cmp dword [esi + 0x268], 0
je 0x57db46
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x57db46
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.00592534
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
jmp 0x57db77
xor edx, edx
mov eax, esi
call fcn.00577d14
jmp 0x57db77
push 0x921
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [esi + 0x24c]
call fcn.005538e0
jmp 0x57dba0
cmp byte [esp + 0x10], 0
je 0x57dba0
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040ab40
lea edi, [esi + 0x1fc]
lea esi, [esp + 0x84]
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 case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57dbfb
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
jne 0x57dc0a
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57dc1c
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
jmp 0x57dc81
mov eax, dword [ebx + 4]
sub eax, 2
jne 0x57dc81
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57dc81
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57dc81
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov byte [eax + 0x236], 1
push 0x481
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp 0x57dc81
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040ab40
lea edi, [esi + 0x1fc]
lea esi, [esp + 0x84]
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 case.0x57bbde.0
mov byte [esi + 0x38], 1
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, esi
call fcn.0058a964
xor eax, eax
call fcn.005179f4
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57de4e
cmp byte [esi + 0x223], 0
jne 0x57de4e
mov eax, dword [esi + 0x24c]
call fcn.004da648
test eax, eax
je 0x57de4e
mov eax, dword [esi + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x57de4e
mov byte [esi + 0x223], 1
cmp dword [0x62cc98], 0
jne 0x57dd74
mov ecx, dword [0x62f410]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x4d1f70]
call fcn.004d84a4
mov dword [0x62cc98], eax
mov eax, dword [0x62cc98]
mov dword [eax + 0xc], 0xffffff9e
xor edx, edx
mov eax, dword [0x62cc98]
call fcn.004d94e0
mov edx, 0x582638
mov eax, dword [0x62cc98]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [0x62cc98]
mov dword [eax + 0x31c], esi
mov dword [eax + 0x318], 0x5892c0
xor edx, edx
mov eax, dword [0x62cc98]
call fcn.004da40c
push 0x58
push 0xf
call sub.user32.dll_GetSystemMetrics
dec eax
add eax, 4
push eax
push 0x3c
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov edx, dword [esi + 0x268]
call fcn.00576ffc
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov ebp, eax
mov eax, dword [esi + 0x24c]
call fcn.00577064
add ebp, eax
add edi, ebp
push edi
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov edx, dword [esi + 0x268]
call fcn.00576ffc
push eax
lea edx, [esp + 0x98]
mov eax, dword [esi + 0x24c]
call fcn.004b1a24
mov eax, dword [esp + 0xa0]
sub eax, 0x3c
pop edx
sub eax, edx
push eax
push 0
mov eax, dword [0x62cc98]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov byte [esi + 0x223], 0
cmp dword [0x62cc98], 0
je 0x57de7b
mov eax, 0x62cc98
call fcn.0041ca80
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0x220], 0
je 0x57dea5
mov byte [esi + 0x220], 0
mov eax, esi
call fcn.0058ac90
mov dl, 1
mov eax, esi
call fcn.00578ca4
test eax, eax
je 0x57deb8
cmp byte [esi + 0x78], 0
jne 0x57decb
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, esi
call fcn.0057a7e0
mov dword [ebx + 0xc], eax
mov eax, dword [ebx + 0xc]
add eax, 0xfffffff8
sub eax, 2
jb 0x57dee7
sub eax, 0xa
jne 0x57deff
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57deff
mov dl, 1
mov eax, esi
call fcn.0058a130
mov eax, dword [ebx + 0xc]
sub eax, 3
jb 0x57df18
sub eax, 2
je 0x57df18
add eax, 0xfffffffb
sub eax, 8
jae 0x57e034
mov eax, esi
call fcn.005773e0
test al, al
je 0x57e021
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edi, dword [eax + 0x188]
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov edx, edi
call fcn.0059dff8
test al, al
je 0x57e021
lea eax, [esp + 8]
push eax
movsx ecx, word [ebx + 0xa]
movsx edx, word [ebx + 8]
mov eax, esi
call fcn.00587184
cmp dword [esi + 0x268], 0
je 0x57dfe7
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, esi
call fcn.00587d0c
mov ebp, dword [esp + 0x78]
mov eax, dword [esi + 0x268]
call fcn.0057712c
sub ebp, eax
lea edx, [esp + 0x84]
mov eax, esi
call fcn.0058a92c
sub ebp, dword [esp + 0x88]
cmp ebp, dword [esp + 0xc]
jge 0x57e021
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, esi
call fcn.00587d0c
mov edi, dword [esp + 0x7c]
mov eax, dword [esi + 0x268]
call fcn.00577168
sub edi, eax
lea edx, [esp + 0x94]
mov eax, esi
call fcn.0058a92c
sub edi, dword [esp + 0x94]
cmp edi, dword [esp + 8]
jge 0x57e021
mov dword [ebx + 0xc], 0x11
jmp case.0x57bbde.0
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, esi
call fcn.00587d0c
mov eax, dword [esp + 0x78]
cmp eax, dword [esp + 0xc]
jge 0x57e021
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, esi
call fcn.00587d0c
mov eax, dword [esp + 0x7c]
cmp eax, dword [esp + 8]
jge 0x57e021
mov dword [ebx + 0xc], 0x11
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0x58], 1
jne case.0x57bbde.0
cmp dword [0x635a90], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
mov eax, dword [ebx + 0xc]
sub eax, 2
je 0x57e072
add eax, 0xfffffff8
sub eax, 8
jae case.0x57bbde.0
mov eax, dword [ebx + 0xc]
mov dword [0x635a90], eax
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov cl, 0xff
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
cmp dword [esi + 0x3c], 0x7d0
jl 0x57e0c0
cmp dword [esi + 0x268], 0
jne 0x57e0cc
mov cl, 1
or edx, 0xffffffff
mov eax, esi
call fcn.00583948
mov byte [0x62cc8c], 0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
mov eax, dword [esi + 0x54]
call fcn.0055f79c
pop edx
call fcn.005a61f4
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
cmp byte [eax + 0x38], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 1
cmp eax, 1
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
call fcn.00592720
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je case.0x57bbde.0
mov eax, esi
call fcn.00588d00
jmp case.0x57bbde.0
cmp byte [esi + 0x78], 0
je 0x57e6bc
cmp dword [esi + 0x268], 0
je 0x57e1a6
cmp dword [ebx + 4], 0x13
jne 0x57e1a6
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x57e1c5
cmp dword [ebx + 4], 0xffffffff
jne 0x57e1c5
mov edx, ebx
mov eax, dword [esi + 0x268]
call fcn.00590598
mov dword [ebx + 4], eax
mov eax, dword [ebx + 4]
cmp eax, 8
jge 0x57e1e0
sub eax, 3
je 0x57e263
sub eax, 2
je 0x57e250
jmp 0x57e39b
add eax, 0xfffffff8
sub eax, 2
jb 0x57e1fc
add eax, 0xfffffff6
sub eax, 2
jb 0x57e1fc
add eax, 0xffffffb1
sub eax, 3
jae 0x57e39b
cmp dword [0x62cc94], 0
je 0x57e241
cmp dword [ebx + 4], 0x67
jne 0x57e223
mov eax, dword [0x62cc94]
mov eax, dword [eax + 0x254]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
je case.0x57bbde.0
cmp dword [ebx + 4], 0x66
jne 0x57e241
mov eax, dword [0x62cc94]
mov eax, dword [eax + 0x254]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
mov edx, dword [ebx + 4]
mov eax, esi
call fcn.00583d2c
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
xor eax, eax
mov dword [ebx + 0xc], eax
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [ebx + 0xc], 0
jne case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov byte [0x62cc8c], 0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0x60], 0
jne 0x57e2b7
mov eax, 0xc8
call fcn.005955d4
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57e319
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je case.0x57bbde.0
lea edx, [esp + 8]
mov eax, esi
call fcn.00586d08
mov eax, dword [esi + 0x24c]
call fcn.00577064
add eax, dword [esp + 0xc]
add eax, 4
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
shl eax, 4
pop ecx
sub ecx, eax
mov edx, dword [esp + 8]
mov eax, esi
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
lea edx, [esp + 0x74]
mov eax, esi
call fcn.00586d08
mov ebx, dword [esp + 0x78]
mov dl, 1
mov eax, esi
call fcn.00578ad4
add ebx, eax
lea eax, [esi + 0x98]
xor edx, edx
call fcn.00594f4c
add ebx, eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov edx, dword [esi + 0x268]
call fcn.00577050
add ebx, eax
push ebx
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov edx, dword [esi + 0x268]
call fcn.00576ffc
mov ebx, eax
lea edx, [esp + 0x80]
mov eax, esi
call fcn.00586d08
add ebx, dword [esp + 0x80]
mov edx, ebx
mov eax, esi
pop ecx
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x4c]
call fcn.004384c0
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [ebx + 4]
mov edx, 0x3e8
call fcn.00594e10
test al, al
je 0x57e3ff
mov edx, dword [ebx + 4]
mov eax, esi
call fcn.00583d2c
movzx eax, word [0x582650]
push eax
movsx eax, word [ebx + 8]
push eax
movsx eax, word [ebx + 0xa]
push eax
mov edx, dword [ebx + 4]
sub edx, 0x3e8
mov eax, dword [esi + 0x4c]
call fcn.0058dd44
mov edx, dword [ebx + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0058dea8
jmp case.0x57bbde.0
mov eax, dword [ebx + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00594e10
test al, al
je 0x57e460
cmp dword [esi + 0xb0], 0
je case.0x57bbde.0
mov edx, dword [ebx + 4]
mov eax, esi
call fcn.00583d2c
movsx eax, word [ebx + 8]
push eax
movsx eax, word [ebx + 0xa]
push eax
mov edx, dword [ebx + 4]
sub edx, 0x7d0
mov eax, dword [esi + 0xb0]
mov eax, dword [eax + 0x3c]
call fcn.005708c0
movzx ecx, word [0x582650]
xor edx, edx
call fcn.0057009c
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57e491
push 0
mov ecx, 0xf012
mov edx, 0x112
mov eax, dword [esi + 0x24c]
call fcn.004b3684
jmp case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57e4ee
lea eax, [esp + 0x74]
push eax
movsx ecx, word [ebx + 0xa]
xor edx, edx
mov eax, esi
call fcn.00587184
mov edi, dword [esp + 0x78]
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov edx, dword [esi + 0x268]
call fcn.00577050
mov ebp, eax
mov dl, 1
mov eax, esi
call fcn.00578ca4
add ebp, eax
cmp edi, ebp
jle 0x57e683
push 0
lea eax, [esp + 0x15]
push eax
push 0
push 0x26
call sub.user32.dll_SystemParametersInfoW
cmp byte [esp + 0x11], 0
je 0x57e670
cmp byte [esi + 0x58], 1
jne 0x57e5ca
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je 0x57e5ca
mov eax, dword [ebx + 4]
sub eax, 5
je 0x57e5ca
mov eax, dword [ebx + 4]
sub eax, 2
je 0x57e53f
sub eax, 3
jne 0x57e54d
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx + 4]
add eax, 0xfffffff6
sub eax, 8
setb al
xor al, 1
mov byte [0x635a6c], al
lea ecx, [esp + 8]
movsx edx, word [ebx + 0xa]
movsx eax, word [ebx + 8]
call fcn.0040ab70
cmp byte [0x635a6c], 0
je 0x57e599
push 0
push 0xf010
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x57e5b6
push 0
push 0xf000
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, esi
call fcn.0058803c
jmp case.0x57bbde.0
cmp dword [ebx + 4], 2
jne 0x57e65d
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x57e65d
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x24]
cmp byte [eax + 6], 0
je 0x57e65d
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x57e65d
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x24]
cmp byte [eax + 8], 0xff
je 0x57e65d
cmp byte [esi + 0x94], 0
je 0x57e65d
cmp byte [esi + 0x244], 0
jne 0x57e640
mov byte [esi + 0x244], 1
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetFocus
mov eax, esi
call fcn.005766a8
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29d], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0xe8]
jmp case.0x57bbde.0
mov eax, dword [ebx + 4]
sub eax, 3
jne 0x57e7a6
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov byte [0x62cc8c], 0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57e724
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je case.0x57bbde.0
lea edx, [esp + 8]
mov eax, esi
call fcn.00586d08
mov dl, 1
mov eax, esi
call fcn.00578ca4
mov ecx, eax
add ecx, dword [esp + 0xc]
add ecx, 4
mov edx, dword [esp + 8]
mov eax, esi
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
lea edx, [esp + 0x74]
mov eax, esi
call fcn.00586d08
mov ebx, dword [esp + 0x78]
mov dl, 1
mov eax, esi
call fcn.00578ad4
add ebx, eax
lea eax, [esi + 0x98]
xor edx, edx
call fcn.00594f4c
add ebx, eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov edx, dword [esi + 0x268]
call fcn.00577050
add ebx, eax
push ebx
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov edx, dword [esi + 0x268]
call fcn.00576ffc
mov ebx, eax
lea edx, [esp + 0x80]
mov eax, esi
call fcn.00586d08
add ebx, dword [esp + 0x80]
mov edx, ebx
mov eax, esi
pop ecx
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
cmp dword [ebx + 4], 0x2f
jne 0x57e81d
cmp dword [esi + 0x21c], 0
je 0x57e81d
mov eax, dword [esi + 0x21c]
mov edx, dword [0x57545c]
call fcn.00405320
test al, al
je 0x57e81d
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov edi, dword [esi + 0x21c]
mov eax, edi
call fcn.005948c8
fild dword [edi + 0x68]
fstp qword [edi + 0x78]
wait
fild dword [edi + 0x6c]
fstp qword [edi + 0x80]
wait
fild dword [edi + 0x70]
fstp qword [edi + 0x88]
wait
fild dword [edi + 0x74]
fstp qword [edi + 0x90]
wait
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62f278]
cmp dword [eax], 0
je 0x57e863
mov eax, dword [0x62f278]
mov eax, dword [eax]
test byte [eax + 0x1c], 0x10
jne 0x57e863
mov eax, dword [0x62f278]
mov eax, dword [eax]
xor edx, edx
call fcn.005a61f4
cmp byte [esi + 0x58], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
lea ecx, [esp + 0x74]
movsx edx, word [ebx + 0xa]
movsx eax, word [ebx + 8]
call fcn.0040ab70
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [esi + 0x24c]
call fcn.004b1b90
mov eax, dword [esp + 8]
mov dword [esp + 4], eax
mov edi, dword [esp + 0xc]
cmp byte [0x635a6c], 0
je 0x57e92e
cmp byte [0x62cc7c], 0
je 0x57e8c9
mov byte [0x62cc7c], 0
cmp byte [0x62cc74], 0
je case.0x57bbde.0
mov ecx, dword [0x635a78]
mov edx, dword [0x635a7c]
mov eax, esi
call fcn.00588250
mov eax, dword [esp + 4]
sub eax, dword [0x635a88]
add dword [0x635a7c], eax
mov eax, edi
sub eax, dword [0x635a8c]
add dword [0x635a78], eax
mov dword [0x635a8c], edi
mov eax, dword [esp + 4]
mov dword [0x635a88], eax
mov ecx, dword [0x635a78]
mov edx, dword [0x635a7c]
mov eax, esi
call fcn.00588250
jmp case.0x57bbde.0
cmp byte [0x62cc7c], 0
je 0x57e94d
mov eax, dword [esp + 4]
mov dword [0x635a88], eax
mov dword [0x635a8c], edi
mov byte [0x62cc7c], 0
cmp byte [0x62cc74], 0
je case.0x57bbde.0
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.00588250
mov eax, dword [0x635a90]
add eax, 0xfffffff6
cmp eax, 6
ja case.default.0x57e976
jmp dword [eax*4 + 0x57e97d]
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a7c], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [0x635a84]
sub eax, dword [0x635a98]
mov dword [0x635a7c], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9074
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a84], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [0x635a98]
mov dword [0x635a84], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a80], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add eax, dword [0x635a94]
mov dword [0x635a80], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a78], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57ed08
mov eax, dword [0x635a80]
sub eax, dword [0x635a94]
mov dword [0x635a78], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a80], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57eb18
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add eax, dword [0x635a94]
mov dword [0x635a80], eax
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a7c], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [0x635a84]
sub eax, dword [0x635a98]
mov dword [0x635a7c], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a78], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57eb9a
mov eax, dword [0x635a80]
sub eax, dword [0x635a94]
mov dword [0x635a78], eax
mov eax, dword [esi + 0x24c]
call fcn.004d9074
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a84], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [0x635a98]
mov dword [0x635a84], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a78], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57ec2b
mov eax, dword [0x635a80]
sub eax, dword [0x635a94]
mov dword [0x635a78], eax
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a7c], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [0x635a84]
sub eax, dword [0x635a98]
mov dword [0x635a7c], eax
jmp 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x635a8c]
mov dword [0x635a80], edi
mov eax, dword [0x635a80]
sub eax, dword [0x635a78]
cmp eax, dword [0x635a94]
jge 0x57ecbc
mov eax, dword [esi + 0x24c]
call fcn.004d9094
add eax, dword [0x635a94]
mov dword [0x635a80], eax
mov eax, dword [esi + 0x24c]
call fcn.004d9074
mov edx, dword [esi + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x635a88]
mov dword [0x635a84], eax
mov eax, dword [0x635a84]
sub eax, dword [0x635a7c]
cmp eax, dword [0x635a98]
jge 0x57ed08
mov eax, dword [esi + 0x24c]
call fcn.004d9074
add eax, dword [0x635a98]
mov dword [0x635a84], eax
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.00588250
jmp case.0x57bbde.0
mov eax, dword [ebx + 4]
add eax, 0xfffffffe
sub eax, 2
jb case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, esi
call fcn.00578154
test al, al
je 0x57eda7
cmp dword [esi + 0x268], 0
je 0x57ed66
cmp dword [ebx + 4], 0xffffffff
jne 0x57ed66
mov edx, ebx
mov eax, dword [esi + 0x268]
call fcn.00590598
mov dword [ebx + 4], eax
jmp 0x57ed72
mov edx, ebx
mov eax, esi
call fcn.0057a7e0
mov dword [ebx + 4], eax
mov eax, dword [ebx + 4]
add eax, 0xfffffffe
sub eax, 2
jae case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov byte [0x62cc8c], 0
movsx ecx, word [ebx + 0xa]
movsx edx, word [ebx + 8]
mov eax, esi
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0x78], 0
je 0x57f415
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je 0x57f415
cmp dword [esi + 0x268], 0
je 0x57edf6
cmp dword [ebx + 4], 0xffffffff
jne 0x57edf6
mov edx, ebx
mov eax, dword [esi + 0x268]
call fcn.00590598
mov dword [ebx + 4], eax
mov eax, dword [ebx + 4]
cmp eax, 0x15
jg 0x57ee1e
je 0x57f0fd
sub eax, 8
je 0x57efa6
dec eax
je 0x57eec1
sub eax, 0xb
je 0x57ee3a
jmp 0x57f244
sub eax, 0x65
je 0x57f16b
dec eax
je 0x57f1b1
dec eax
je 0x57f1f3
jmp 0x57f244
cmp byte [0x62cc8c], 0
je case.0x57bbde.0
xor eax, eax
mov dword [esi + 0x134], eax
push 0
push 0xf060
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
mov eax, esi
call fcn.0058a964
cmp dword [esi + 0x24c], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x59], 0
je case.0x57bbde.0
cmp dword [esi + 0x54], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
jmp case.0x57bbde.0
mov eax, dword [esi + 0x254]
mov edx, dword [eax]
call dword [edx + 0x54]
test al, al
jne 0x57eef6
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne case.0x57bbde.0
mov eax, dword [esi + 0x254]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je case.0x57bbde.0
cmp byte [0x62cc8c], 0
je 0x57ef88
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57ef24
xor eax, eax
mov dword [0x62cc94], eax
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x57ef52
push 0
push 0xf120
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x57ef6f
push 0
push 0xf030
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
xor edx, edx
mov eax, dword [esi + 0x254]
call fcn.0058d828
mov byte [0x62cc8c], 0
jmp case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [0x62cc8c], 0
je 0x57f0df
cmp dword [esi + 0x268], 0
je 0x57eff3
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9094
movsx edx, word [ebx + 0xa]
sub edx, eax
push edx
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9074
push eax
movsx eax, word [ebx + 8]
pop edx
sub eax, edx
lea ecx, [esp + 0xc]
pop edx
call fcn.0040ab70
jmp 0x57f007
lea eax, [esp + 8]
push eax
movsx ecx, word [ebx + 0xa]
movsx edx, word [ebx + 8]
mov eax, esi
call fcn.00587184
lea edx, [esp + 8]
lea eax, [esi + 0xec]
call fcn.0040ab90
test al, al
je 0x57f0cc
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x57f068
mov byte [esi + 0x226], 1
push 0
push 0xf020
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov byte [esi + 0x226], 0
jmp 0x57f0b9
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57f09c
push 0
push 0xf120
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x57f0b9
push 0
push 0xf020
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov byte [esi + 0xbe], 1
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [0x62cc8c], 0
je 0x57f15b
push 0
push 0xf180
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
xor edx, edx
mov eax, dword [esi + 0x254]
call fcn.0058d828
mov byte [0x62cc8c], 0
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, dword [esi + 0x24c]
call fcn.004b3684
jmp case.0x57bbde.0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
jmp case.0x57bbde.0
cmp byte [0x62cc8c], 0
je case.0x57bbde.0
mov byte [0x62cc8c], 0
push 0
push 0xf060
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004da648
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.00583948
jmp case.0x57bbde.0
cmp byte [0x62cc8c], 0
je 0x57f1dc
push 0
push 0xf120
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004da648
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov byte [0x62cc8c], 0
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.00583948
jmp case.0x57bbde.0
cmp byte [0x62cc8c], 0
je 0x57f234
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.0055f53c
mov byte [0x62cc8c], 0
push 0
push 0xf020
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004da648
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
jmp case.0x57bbde.0
mov eax, dword [esi + 0x4c]
call fcn.004384c0
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [ebx + 4]
mov edx, 0x3e8
call fcn.00594e10
test al, al
je 0x57f2b9
cmp byte [0x62cc8c], 0
je 0x57f2a2
movzx eax, word [0x582650]
push eax
movsx eax, word [ebx + 8]
push eax
movsx eax, word [ebx + 0xa]
push eax
mov edx, dword [ebx + 4]
sub edx, 0x3e8
mov eax, dword [esi + 0x4c]
call fcn.0058dd44
mov edx, dword [ebx + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0058ded0
mov byte [0x62cc8c], 0
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
jmp 0x57f409
mov eax, dword [ebx + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00594e10
test al, al
je 0x57f328
cmp byte [0x62cc8c], 0
je 0x57f310
cmp dword [esi + 0xb0], 0
je 0x57f310
movsx eax, word [ebx + 8]
push eax
movsx eax, word [ebx + 0xa]
push eax
mov edx, dword [ebx + 4]
sub edx, 0x7d0
mov eax, dword [esi + 0xb0]
mov eax, dword [eax + 0x3c]
call fcn.005708c0
movzx ecx, word [0x582650]
xor edx, edx
call fcn.0057023c
mov byte [0x62cc8c], 0
mov edx, dword [ebx + 4]
mov cl, 1
mov eax, esi
call fcn.00583948
jmp 0x57f409
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57f394
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x57f384
lea edx, [esp + 0x74]
mov eax, esi
call fcn.00586d08
mov ebx, dword [esp + 0x74]
lea eax, [esp + 0x7c]
call fcn.00550580
add ebx, dword [esp + 0x7c]
push ebx
lea eax, [esp + 0xa8]
call fcn.00550580
mov ecx, dword [esp + 0xac]
mov eax, esi
pop edx
mov ebx, dword [eax]
call dword [ebx + 0x38]
jmp 0x57f409
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp 0x57f409
cmp byte [esi + 0x58], 1
jne 0x57f3fb
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je 0x57f3fb
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
je 0x57f3fb
cmp byte [0x62cc74], 0
je 0x57f3fb
lea ecx, [esp + 0x74]
movsx edx, word [ebx + 0xa]
movsx eax, word [ebx + 8]
call fcn.0040ab70
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [esi + 0x24c]
call fcn.004b1b90
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, esi
call fcn.00588150
call sub.user32.dll_ReleaseCapture
jmp 0x57f409
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov byte [0x62cc8c], 0
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
xor eax, eax
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x228], 0
je 0x57f454
lea eax, [esi + 0x228]
call fcn.0041ca80
mov eax, dword [esi + 0x54]
call fcn.0055f79c
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov edx, 3
pop ecx
call fcn.005542a0
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x384], 1
jne 0x57f4da
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x59], 0
je 0x57f4da
mov eax, esi
call fcn.00577428
test al, al
jne 0x57f4da
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je 0x57f4c7
mov dword [esi + 0x250], 0xffffffff
mov byte [esi + 0x236], 1
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
test byte [esi + 0x1c], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x384], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
xor ecx, ecx
mov dl, 1
call fcn.00577370
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57f596
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x57f596
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
test eax, eax
je 0x57f596
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x57f596
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
cmp eax, dword [esi + 0x24c]
jne case.0x57bbde.0
cmp byte [esi + 0xbd], 0
jne 0x57f5b1
mov eax, esi
call fcn.00587b98
test al, al
je 0x57f5b1
mov byte [esi + 0xbd], 1
mov eax, dword [ebx + 8]
and eax, 8
cmp eax, 8
jne 0x57f5d4
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebx + 4]
mov edx, 0x14
mov eax, esi
call fcn.0058aeb0
jmp case.0x57bbde.0
mov ebp, dword [ebx + 4]
mov eax, dword [esi + 0x54]
mov dword [eax + 0x58], ebp
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 0
cmp dword [esi + 0x268], 0
je 0x57f6df
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x39], 0
je 0x57f601
mov eax, esi
call fcn.0058512c
push 0xcc0020
push 0
push 0
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_BitBlt
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
mov edx, eax
mov eax, ebp
pop ecx
call fcn.004b056c
lea eax, [esp + 0x24]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.00594f4c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00594f38
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_IntersectClipRect
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
je 0x57f90a
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.0040ab70
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [esi + 0x24c]
mov eax, ebp
call fcn.00553b3c
jmp 0x57f90a
cmp byte [esi + 0x78], 0
je 0x57f822
mov eax, esi
call fcn.00578154
test al, al
jne 0x57f819
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
call fcn.00577cfc
test al, al
je 0x57f819
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x39], 0
je 0x57f720
mov eax, esi
call fcn.0058512c
mov eax, dword [esi + 0x24c]
mov edi, dword [eax + 0x1b8]
add edi, 3
push 0xcc0020
push 0
push 0
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
push edi
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x48]
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_BitBlt
push 0xcc0020
push edi
push 0
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
push edi
push edi
push 0
push ebp
call sub.gdi32.dll_BitBlt
push 0xcc0020
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x4c]
sub eax, edi
push eax
push edi
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
push edi
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x48]
sub eax, edi
push eax
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x4c]
sub eax, edi
push eax
push edi
push ebp
call sub.gdi32.dll_BitBlt
push 0xcc0020
push edi
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x30]
sub eax, edi
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
push edi
push edi
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x30]
sub eax, edi
push eax
push ebp
call sub.gdi32.dll_BitBlt
jmp 0x57f822
mov edx, ebp
mov eax, esi
call fcn.005830d4
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
mov edx, eax
mov eax, ebp
pop ecx
call fcn.004b056c
lea eax, [esp + 0x24]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.00594f4c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00594f38
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_IntersectClipRect
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
and ax, 1
cmp ax, 1
je 0x57f891
mov cl, 1
mov edx, ebp
mov eax, esi
call fcn.005833ac
jmp 0x57f90a
push ebp
call sub.gdi32.dll_SaveDC
mov dword [esp], eax
push 0
push 0
xor ecx, ecx
mov edx, dword [esi + 0x24c]
mov eax, ebp
call fcn.00566474
mov cl, 1
mov edx, ebp
mov eax, esi
call fcn.005833ac
mov eax, dword [esp]
push eax
push ebp
call sub.gdi32.dll_RestoreDC
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
je 0x57f90a
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.0040ab70
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [esi + 0x24c]
mov eax, ebp
call fcn.00553b3c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57f933
push 0
push ebp
push 0x317
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_SendMessageW
mov eax, dword [esi + 0x54]
xor edx, edx
mov dword [eax + 0x58], edx
mov eax, dword [esi + 0x24c]
cmp word [eax + 0x31a], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004da7e8
mov edx, ebp
call fcn.0045a0cc
mov ebx, dword [esi + 0x24c]
mov edx, dword [esi + 0x24c]
mov eax, dword [ebx + 0x31c]
call dword [ebx + 0x318]
mov eax, dword [esi + 0x24c]
call fcn.004da7e8
xor edx, edx
call fcn.0045a0cc
jmp case.0x57bbde.0
xor eax, eax
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
cmp dword [esi + 0x254], 0
jne 0x57f9aa
mov eax, esi
call fcn.00588d00
cmp byte [esi + 0x78], 0
je 0x57fa11
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
and ax, 0x400
cmp ax, 0x400
je case.0x57bbde.0
mov eax, esi
call fcn.00576fa0
test al, al
je 0x57f9fb
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x2b4]
cmp dword [eax + 0x3c], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
je case.0x57bbde.0
cmp byte [esi + 0x220], 0
je 0x57fa28
mov byte [esi + 0x220], 0
mov eax, esi
call fcn.0058ac90
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
je 0x57fa4f
mov eax, dword [esi + 0x54]
call fcn.0055f7b0
mov edx, dword [esi + 0x54]
mov byte [edx + 0x1c], al
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x57bbde.0
cmp byte [esi + 0x78], 0
je 0x57fb19
mov eax, dword [0x62ee30]
cmp byte [eax], 0
je 0x57fa76
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x57fb19
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x57fa92
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
cmp byte [esi + 0x227], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je case.0x57bbde.0
test byte [esi + 0x1c], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x55], 2
jne case.0x57bbde.0
cmp dword [esi + 0x254], 0
je case.0x57bbde.0
cmp dword [esi + 0x22c], 0
jne 0x57fae9
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x34]
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
jne 0x57fb08
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.005a6f14
mov edx, eax
mov eax, esi
call fcn.0058a740
mov eax, esi
call fcn.00589784
xor eax, eax
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57fe99
cmp byte [esi + 0xa8], 0
je 0x57fe99
mov eax, dword [esi + 0x54]
movzx eax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x57bbde.0
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x54], 0x80
jne 0x57fde0
mov eax, dword [ebx + 4]
cmp eax, dword [ebx + 8]
je 0x57fde0
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57fbd4
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57fd0c
mov eax, dword [esi + 0x24c]
call fcn.004da648
test eax, eax
je 0x57fd0c
mov eax, dword [esi + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x57fd0c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57fcd0
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x57fcd0
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x57fcd0
lea eax, [esp + 0x24]
push eax
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetClientRect
lea edx, [esp + 0x84]
mov eax, dword [esi + 0x24c]
call fcn.004b1a24
lea edx, [esp + 0x84]
lea eax, [esp + 0x24]
call fcn.0040ab90
test al, al
je 0x57fcd0
lea edx, [esp + 0x84]
mov eax, dword [esi + 0x24c]
call fcn.004b1a24
lea edx, [esp + 0x8c]
lea eax, [esp + 0x24]
call fcn.0040ab90
test al, al
je 0x57fcd0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov edx, dword [esi + 0x268]
call fcn.00577050
mov edi, eax
mov dl, 1
mov eax, esi
call fcn.00578ca4
add edi, eax
mov eax, esi
call fcn.00587444
mov ebp, eax
mov eax, esi
call fcn.00587b7c
imul ebp, eax
add edi, ebp
inc edi
push edi
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x24]
pop edx
call fcn.0040e468
mov edx, eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov edx, dword [ebx + 4]
mov eax, esi
call fcn.00589580
cmp byte [0x62cc90], 0
je 0x57fe8d
mov byte [0x62cc90], 0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x57fe8d
mov dword [0x62cc94], esi
jmp 0x57fe8d
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x57fe8d
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x57fdd0
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x39], 0
jne 0x57fdd0
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0040ab40
lea eax, [esp + 0x84]
push eax
mov eax, dword [ebx + 4]
push eax
push 0
push 0
push 0
mov eax, esi
call fcn.00587350
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1ac0
add edi, eax
push edi
lea eax, [esp + 0xac]
push eax
mov eax, esi
call fcn.005872b8
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.004b1a80
add edi, eax
push edi
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
pop edx
pop ecx
call fcn.0040ab40
lea ecx, [esp + 0xa8]
mov edx, dword [esi + 0x54]
mov eax, dword [esi + 0x24c]
call fcn.00561100
mov eax, dword [esi + 0x24c]
call fcn.005538e0
jmp 0x57fe8d
cmp dword [ebx + 4], 0
je 0x57fe8d
mov eax, dword [esi + 0x54]
cmp byte [eax + 0x39], 0
jne 0x57fe8d
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57fe4c
push 0xcc0020
mov eax, esi
call fcn.00587350
push eax
mov eax, esi
call fcn.005872b8
push eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0045f8dc
call fcn.0045a044
push eax
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x48]
push eax
push 0
push 0
mov eax, dword [ebx + 4]
push eax
call sub.gdi32.dll_BitBlt
jmp 0x57fe8d
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055e388
push eax
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x4c]
push eax
lea eax, [esp + 0x8c]
push eax
mov eax, dword [esi + 0x24c]
mov ecx, dword [eax + 0x48]
xor edx, edx
xor eax, eax
call fcn.0040ab40
lea edx, [esp + 0x88]
mov eax, dword [ebx + 4]
pop ecx
call fcn.005661d8
mov dword [ebx + 0xc], 1
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0xa8], 0
je 0x58006f
mov eax, dword [esi + 0x24c]
test byte [eax + 0x54], 0x80
jne case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x57ff10
mov eax, esi
call fcn.00577428
test al, al
jne 0x57ff10
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x57ff01
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x57ff10
mov cl, 0xff
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.005913b8
mov eax, dword [esi + 0x54]
call fcn.0055da28
test al, al
je 0x57ffc8
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x57ffb8
mov edx, ebx
mov eax, esi
call fcn.00589f24
cmp byte [0x62cc90], 0
je 0x57ff4c
mov byte [0x62cc90], 0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x57ffb1
cmp dword [ebx + 4], 0
jne 0x57ff74
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetDC
mov ebp, eax
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.0040ab70
lea eax, [esp + 0x74]
push eax
push 0
push 1
mov cl, 1
mov edx, dword [esi + 0x24c]
mov eax, ebp
call fcn.00553b3c
cmp dword [ebx + 4], 0
jne 0x57ffb1
push ebp
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_ReleaseDC
xor eax, eax
mov dword [ebx + 0xc], eax
jmp 0x580033
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp 0x580033
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x580025
test byte [esi + 0x1c], 8
jne 0x57fff2
push 0xffffffffffffffff
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
lea eax, [esp + 0x34]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_BeginPaint
lea eax, [esp + 0x34]
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_EndPaint
xor eax, eax
mov dword [ebx + 0xc], eax
jmp 0x580033
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp byte [esi + 0x78], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x2b4], 0
je case.0x57bbde.0
push 0
push 0
push 0x85
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62f480]
cmp dword [eax], 0
je 0x5800b9
mov eax, dword [esi + 0x24c]
call fcn.004bb48c
test al, al
je 0x5800b9
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
call fcn.00578da4
cmp byte [0x62cc70], 0
jne case.0x57bbde.0
jmp case.0x57bbde.0
test byte [esi + 0x1c], 8
jne 0x5807ba
cmp byte [esi + 0x78], 0
je 0x5807ba
mov eax, dword [esi + 0x24c]
call fcn.004bb48c
test al, al
je 0x5807ba
cmp dword [esi + 0x254], 0
jne 0x580102
mov eax, esi
call fcn.00588d00
or dword [esi + 0x230], 0x8000
mov eax, dword [esi + 0x230]
and eax, 0x80
cmp eax, 0x80
je 0x58012b
cmp dword [ebx + 4], 1
sbb eax, eax
inc eax
mov byte [esi + 0x244], al
cmp byte [esi + 0x244], 0
jne 0x580149
cmp byte [esi + 0x225], 3
jne 0x580149
mov byte [esi + 0x225], 0
jmp 0x5801fd
cmp byte [esi + 0x225], 3
je 0x5801eb
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x28], 0
jl 0x5801d8
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x24], 0
jl 0x5801b3
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd0]
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x24]
mov ecx, edx
add edx, edx
add edx, edx
add edx, edx
sub edx, ecx
cmp word [eax + edx*8 + 0x1c], 1
jg 0x5801aa
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd8]
mov edx, dword [esi + 0x54]
imul edx, dword [edx + 0x28], 0x43
cmp dword [eax + edx*4 + 8], 1
jle 0x5801df
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
jmp 0x5801df
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0xd8]
mov edx, dword [esi + 0x54]
imul edx, dword [edx + 0x28], 0x43
cmp dword [eax + edx*4 + 8], 1
jle 0x5801df
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
jmp 0x5801df
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
jmp 0x5801fd
cmp dword [esi + 0x268], 0
sete dl
mov eax, dword [esi + 0x54]
call fcn.0055fd3c
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x580517
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x580517
cmp word [ebx + 4], 0
setne al
cmp al, byte [esi + 0x244]
je 0x580240
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
call fcn.005772c4
test al, al
je 0x58038f
cmp dword [esi + 0x268], 0
jne 0x5802b8
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp byte [eax + 0xd3], 0
je 0x58029c
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
je 0x58029c
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp dword [eax + 0x44], 0
je 0x58029c
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp byte [eax + 0x29a], 1
je 0x5803e7
push 0
push 0
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x5803e7
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x5803e7
mov eax, esi
call fcn.00587444
test eax, eax
jle 0x5803e7
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
jne 0x5802eb
mov eax, dword [esi + 0x268]
call fcn.0059269c
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.00592534
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x340], 0
je 0x58034a
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
mov edx, dword [esi + 0x24c]
movzx ecx, byte [edx + 0x341]
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x44]
call fcn.00575ed8
jmp 0x58036a
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, 0xff
call fcn.00575ed8
push 0x613
push 0
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
jmp 0x5803e7
cmp byte [esi + 0x227], 0
jne 0x5803a1
cmp byte [esi + 0x220], 0
je 0x5803ba
push 0
push 0
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x5803e7
cmp dword [esi + 0x268], 0
je 0x5803ce
mov eax, esi
call fcn.00576fa0
test al, al
je 0x5803e7
mov eax, dword [esi + 0x24c]
cmp word [eax + 0x31a], 0
jne 0x5803e7
xor edx, edx
mov eax, esi
call fcn.005777d4
cmp dword [esi + 0x268], 0
je 0x58040b
cmp byte [esi + 0x227], 0
jne 0x58040b
call fcn.005772c4
test al, al
jne 0x58040b
xor edx, edx
mov eax, esi
call fcn.00577d14
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
call fcn.005772c4
test al, al
je 0x5804ac
cmp dword [esi + 0x268], 0
jne 0x580525
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp byte [eax + 0xd3], 0
je 0x580479
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
je 0x580479
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp dword [eax + 0x44], 0
je 0x580479
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp byte [eax + 0x29a], 1
je 0x580525
push 0
push 1
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
push 0x181
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp 0x580525
cmp byte [esi + 0x227], 0
jne 0x5804be
cmp byte [esi + 0x220], 0
je 0x5804d7
push 0
push 1
push 0xb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x5804f2
cmp dword [esi + 0x268], 0
je 0x5804eb
mov eax, esi
call fcn.00576fa0
test al, al
je 0x5804f2
mov eax, esi
call fcn.00577b1c
cmp byte [esi + 0x220], 0
je 0x580525
push 0x85
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp 0x580525
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x24c], 0
je 0x58060d
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x59], 0
je 0x58060d
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x58060d
mov eax, dword [esi + 0x24c]
test byte [eax + 0x384], 0x10
je 0x58060d
mov eax, dword [esi + 0x24c]
test byte [eax + 0x384], 4
je 0x58060d
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x58060d
mov eax, dword [0x62f54c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x58060d
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x240]
call fcn.0051845c
push 0
push 0
push 0x85
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
push 0
push 0
push 0x85
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0x37c]
push eax
call sub.user32.dll_SendMessageW
push 0xffffffffffffffec
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
and eax, 0x80000
cmp eax, 0x80000
jne 0x580645
cmp dword [esi + 0x21c], 0
jne 0x580645
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
mov eax, dword [esi + 0x24c]
test byte [eax + 0x54], 0x40
jne case.0x57bbde.0
mov eax, esi
call fcn.00578154
test al, al
je 0x5806fb
mov eax, dword [esi + 0x230]
and eax, 0x80
cmp eax, 0x80
je 0x5806fb
mov eax, esi
call fcn.00587b10
test al, al
je 0x5806d3
cmp word [ebx + 4], 0
jne 0x5806a0
mov eax, dword [esi + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29d], 0
je 0x5806fb
cmp word [ebx + 4], 0
jne 0x5806bf
mov eax, dword [esi + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29d], 0
jne 0x5806bf
xor eax, eax
jmp 0x5806c1
mov al, 1
mov byte [esi + 0x244], al
mov dword [esi + 0x250], 0xffffffff
jmp 0x5806fb
cmp word [ebx + 4], 0
setne al
cmp al, byte [esi + 0x244]
je 0x5806fb
cmp word [ebx + 4], 0
setne al
mov byte [esi + 0x244], al
mov dword [esi + 0x250], 0xffffffff
and dword [esi + 0x230], 0xffff7fff
cmp dword [esi + 0x21c], 0
je 0x58071a
mov eax, dword [esi + 0x21c]
cmp byte [eax + 0x34], 0
jne 0x580788
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, esi
call fcn.0058aeb0
cmp dword [esi + 0x268], 0
je 0x580788
mov eax, dword [esi + 0x24c]
movzx eax, byte [eax + 0x29a]
sub al, 1
jb 0x580779
dec al
jne 0x580788
mov eax, dword [0x62f16c]
cmp byte [eax], 0
je 0x580768
lea eax, [esi + 0x268]
call fcn.0041ca80
xor edx, edx
mov eax, esi
call fcn.00577d14
jmp 0x580788
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp 0x580788
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
mov eax, esi
call fcn.00588c84
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd40
test al, al
je case.0x57bbde.0
cmp dword [esi + 0x22c], 0
jne case.0x57bbde.0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x34]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62f3a4]
cmp dword [eax], 0
je 0x5807fe
mov eax, dword [0x62f3a4]
mov eax, dword [eax]
cmp byte [eax + 0x59], 0
je 0x5807fe
mov eax, dword [0x62f3a4]
mov eax, dword [eax]
call fcn.004dde14
cmp dword [ebx + 4], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x100
cmp eax, 0x100
je case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x580853
mov cl, 0xff
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne case.0x57bbde.0
cmp dword [ebx + 4], 1
jne case.0x57bbde.0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp byte [eax + 0x29a], 1
jne case.0x57bbde.0
cmp dword [esi + 0x21c], 0
je 0x5808a6
mov eax, dword [esi + 0x21c]
cmp byte [eax + 0xf4], 0
jne case.0x57bbde.0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
xor edx, edx
call fcn.004daef4
push 0xffffffffffffffff
push 0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
push 0x585
push 0
push 0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x5809cf
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x5809cf
mov eax, dword [0x62f54c]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne 0x5809cf
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
je 0x580999
mov byte [esi + 0xbd], 0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov byte [eax + 0x236], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x5809cf
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
mov al, 1
call fcn.0057afe4
mov dword [0x62cc94], esi
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x580a98
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x228], 0
jne 0x580a19
cmp byte [esi + 0x78], 0
je 0x580a19
lea edx, [esi + 0x228]
xor ecx, ecx
mov eax, esi
call fcn.00578050
mov eax, dword [esi + 0x24c]
test byte [eax + 0x54], 0x40
jne case.0x57bbde.0
mov dword [esi + 0x250], 0xffffffff
cmp word [ebx + 4], 1
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test byte [eax + 0x1c], 0x10
jne 0x580a5f
xor edx, edx
mov eax, dword [esi + 0x54]
call fcn.0055fd40
mov edx, eax
mov eax, esi
call fcn.00587fc0
cmp dword [esi + 0x254], 0
je 0x580a75
xor edx, edx
mov eax, dword [esi + 0x254]
call fcn.0058d828
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x299], 0
jne case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.005538e0
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0x220], 0
je 0x580ade
cmp dword [ebx + 4], 1
jne 0x580ade
mov byte [esi + 0x220], 0
mov eax, esi
call fcn.0058ac90
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.005a6f14
mov edx, eax
mov eax, esi
call fcn.0058a740
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [ebx + 4], 0
jne 0x580b33
cmp dword [esi + 0x54], 0
je 0x580b27
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x580b27
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne 0x580b27
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x44]
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x44]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, esi
call fcn.0058a964
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.005538e0
jmp case.0x57bbde.0
cmp byte [esi + 0x58], 1
jne 0x580ba1
cmp byte [0x62cc74], 0
je 0x580ba1
lea ecx, [esp + 0x74]
movsx edx, word [ebx + 0xa]
movsx eax, word [ebx + 8]
call fcn.0040ab70
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [esi + 0x24c]
call fcn.004b1b90
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, esi
call fcn.00588150
call sub.user32.dll_ReleaseCapture
mov byte [0x62cc74], 0
mov byte [0x62cc78], 0
mov eax, dword [ebx + 4]
sub eax, 2
je 0x580bdc
dec eax
jne 0x580ce1
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0x60], 0
jne 0x580bcc
mov eax, dword [esi + 0x54]
mov byte [eax + 0x1c], 1
mov eax, dword [esi + 0x24c]
call fcn.004dde14
jmp case.0x57bbde.0
mov eax, esi
call fcn.005879a4
test al, al
je 0x580c05
mov eax, dword [esi + 0x254]
mov edx, dword [eax]
call dword [edx + 0x54]
test al, al
jne 0x580c29
mov eax, dword [esi + 0x254]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
jne 0x580c29
mov eax, esi
call fcn.00578154
test al, al
jne 0x580c98
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x580c98
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
je 0x580c4d
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x580c6c
push 0
push 0xf120
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
jmp 0x580c89
push 0
push 0xf030
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
xor edx, edx
mov eax, dword [esi + 0x254]
call fcn.0058d828
jmp 0x580cd7
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x580cd7
push 0
push 0xf120
push 0x112
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
xor edx, edx
mov eax, dword [esi + 0x254]
call fcn.0058d828
xor eax, eax
mov dword [ebx + 4], eax
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 2
jne 0x580d13
mov eax, dword [0x62f54c]
cmp esi, dword [eax]
jne 0x580d13
mov eax, dword [0x62f54c]
mov dword [eax], esi
mov eax, esi
call fcn.00576fa0
test al, al
je 0x580d65
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x580d65
mov eax, dword [ebx + 8]
cmp dword [eax], 1
jne 0x580d65
mov eax, dword [ebx + 8]
mov edx, dword [eax + 8]
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x2b4]
xor ecx, ecx
call fcn.004a1104
mov edi, eax
test edi, edi
je 0x580d65
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x48]
mov cl, 1
mov edx, edi
call fcn.00559010
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x581077
movzx eax, word [ebx + 4]
sub ax, 0xf012
je 0x580db4
sub ax, 0xe
je 0x580e2b
sub ax, 0x10
je 0x580dc7
sub ax, 0xf0
je 0x580e8d
jmp 0x581077
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x94]
jmp 0x581077
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x581077
cmp dword [esi + 0x21c], 0
je 0x581077
mov eax, dword [esi + 0x21c]
cmp byte [eax + 0xf4], 0
je 0x581077
call fcn.00594e50
mov byte [esp + 0x12], al
xor eax, eax
call fcn.00594e80
mov eax, esi
call fcn.0057645c
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
movzx eax, byte [esp + 0x12]
call fcn.00594e80
jmp case.0x57bbde.0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
je 0x581077
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x581077
call fcn.00594e50
mov byte [esp + 0x12], al
xor eax, eax
call fcn.00594e80
mov eax, esi
call fcn.00576208
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
movzx eax, byte [esp + 0x12]
call fcn.00594e80
jmp case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
jne 0x580ee9
and dword [esi + 0x230], 0xfffffdff
cmp dword [esi + 0x268], 0
je 0x580ebc
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
call fcn.00594e50
mov byte [esp + 0x12], al
xor eax, eax
call fcn.00594e80
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
movzx eax, byte [esp + 0x12]
call fcn.00594e80
jmp case.0x57bbde.0
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
je 0x580fa4
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x580f48
call fcn.00594e50
mov byte [esp + 0x12], al
xor eax, eax
call fcn.00594e80
mov eax, esi
call fcn.0057645c
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
movzx eax, byte [esp + 0x12]
call fcn.00594e80
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x580f5d
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x580f79
cmp dword [esi + 0x268], 0
jne 0x581077
mov eax, esi
call fcn.0057b264
test al, al
je 0x581077
cmp dword [esi + 0x268], 0
je 0x580f8d
lea eax, [esi + 0x268]
call fcn.0041ca80
mov dl, 1
mov eax, esi
call fcn.0058a740
xor edx, edx
mov eax, esi
call fcn.00577d14
jmp 0x581077
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp byte [eax + 0xd3], 0
je 0x581077
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x581077
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x581077
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x581077
cmp dword [esi + 0x21c], 0
je 0x581023
mov eax, dword [ebx + 8]
push eax
mov eax, dword [ebx + 4]
push eax
mov eax, dword [ebx]
push eax
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x170]
push eax
call sub.user32.dll_SendMessageW
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
jne 0x581077
call fcn.005772c4
test al, al
je 0x581077
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
push 0x481
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
push 0xffffffffffffffff
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_InvalidateRect
jmp case.0x57bbde.0
cmp byte [esi + 0x58], 1
jne 0x5810fa
mov eax, dword [esi + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
je 0x5810fa
cmp byte [0x62cc74], 0
jne 0x5810fa
mov eax, dword [ebx + 4]
and eax, 0xfff0
cmp eax, 0xf010
jne 0x5810c5
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetCapture
mov byte [0x62cc7c], 1
mov byte [0x635a6c], 1
jmp 0x5810fa
mov eax, dword [ebx + 4]
and eax, 0xfff0
cmp eax, 0xf000
jne 0x5810fa
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetCapture
xor eax, eax
mov dword [0x635a90], eax
mov byte [0x62cc7c], 1
mov byte [0x635a6c], 0
mov eax, dword [esi + 0x24c]
movzx eax, byte [eax + 0x29e]
dec al
je 0x581118
dec al
je 0x5814d9
jmp 0x581568
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 2
jne 0x58113f
cmp dword [ebx + 4], 0xf030
je 0x58113f
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 0
jne 0x581143
xor eax, eax
jmp 0x581145
mov al, 1
mov byte [esp + 0x10], al
cmp byte [esp + 0x10], 0
je 0x581169
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x581169
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.0055f53c
mov eax, dword [ebx + 4]
and eax, 0xfff0
cmp eax, 0xf060
jg 0x581193
je 0x5811ac
sub eax, 0xf020
je 0x5813b2
sub eax, 0x10
je 0x5813ee
jmp 0x5814a7
sub eax, 0xf100
je 0x5814b5
sub eax, 0x20
je 0x581262
jmp 0x5814a7
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x5814b5
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x5811e2
mov eax, dword [0x62f54c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x5811e2
cmp byte [esp + 0x10], 0
je 0x5811e2
mov al, 1
call fcn.0057afe4
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov byte [eax + 0x223], 1
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne 0x58121b
test byte [esi + 0x1c], 8
jne 0x58121b
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.00583948
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov byte [eax + 0x223], 0
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je case.0x57bbde.0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je case.0x57bbde.0
cmp byte [esp + 0x10], 0
je case.0x57bbde.0
mov al, 1
call fcn.0057afe4
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 1
jne 0x581276
mov byte [esp + 0x10], 1
cmp byte [0x62cc90], 0
jne case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
cmp byte [esi + 0x78], 0
je 0x5812ca
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
and eax, 0xfff7ffff
push eax
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowLongW
push 0x505
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x581392
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da67c
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x581392
inc ebp
xor edi, edi
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.004da6c8
cmp eax, dword [esi + 0x24c]
je 0x58138e
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.004da6c8
cmp byte [eax + 0x29a], 2
jne 0x581366
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.004da6c8
xor edx, edx
call fcn.004daef4
push 0x506
push 0
push 0
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.004da6c8
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
inc edi
dec ebp
jne 0x581312
cmp byte [esp + 0x10], 0
je 0x5813a0
mov al, 1
call fcn.0057afe4
mov dl, 1
mov eax, dword [esi + 0x254]
call fcn.0058d828
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp byte [esp + 0x10], 0
je 0x5813ce
mov al, 1
call fcn.0057afe4
mov dl, 1
mov eax, dword [esi + 0x254]
call fcn.0058d828
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov al, 1
call fcn.0057afe4
jmp case.0x57bbde.0
mov dword [0x62cc94], esi
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
and eax, 0xefffffff
push eax
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowLongW
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_GetWindowLongW
or eax, 0x10000000
push eax
push 0xfffffffffffffff0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowLongW
push 0x506
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x581495
mov eax, dword [0x62f54c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x581495
mov al, 1
call fcn.0057afe4
mov dl, 1
mov eax, dword [esi + 0x254]
call fcn.0058d828
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x5817bf
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
xor edx, edx
call fcn.0055f708
jmp 0x5817bf
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx + 4]
sub eax, 0xf020
je 0x581501
sub eax, 0x10
je 0x581501
sub eax, 0xf0
jne 0x5817bf
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SendMessageW
cmp dword [ebx + 4], 0xf030
jne 0x5817bf
cmp dword [esi + 0x268], 0
je 0x5817bf
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp 0x5817bf
mov eax, dword [ebx + 4]
sub eax, 0xf030
je 0x581579
sub eax, 0xf0
jne 0x5815a0
cmp dword [esi + 0x268], 0
je 0x5815a0
mov eax, dword [0x62f16c]
cmp byte [eax], 0
jne 0x581595
cmp dword [ebx + 4], 0xf120
jne 0x5815a0
lea eax, [esi + 0x268]
call fcn.0041ca80
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx + 4]
sub eax, 0xf030
je 0x5816e2
sub eax, 0xd0
je 0x5815d1
sub eax, 0x20
je 0x5816e2
jmp 0x5817bf
cmp word [ebx + 8], 0x20
jne 0x5817bf
mov eax, esi
call fcn.005879a4
test al, al
je 0x5817bf
mov eax, esi
call fcn.00578154
test al, al
je 0x5817bf
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x58167a
lea edx, [esp + 0x74]
mov eax, esi
call fcn.00586d08
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, esi
call fcn.00578ad4
add edi, eax
lea eax, [esi + 0x98]
xor edx, edx
call fcn.00594f4c
add edi, eax
sub edi, 0x10
push edi
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov edx, dword [esi + 0x268]
call fcn.00576ffc
mov edi, eax
lea edx, [esp + 0x80]
mov eax, esi
call fcn.00586d08
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, esi
pop ecx
mov edi, dword [eax]
call dword [edi + 0x38]
jmp 0x5817bf
lea edx, [esp + 0x74]
mov eax, esi
call fcn.00586d08
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, esi
call fcn.00578ad4
add edi, eax
lea eax, [esi + 0x98]
xor edx, edx
call fcn.00594f4c
add edi, eax
push edi
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov edx, dword [esi + 0x268]
call fcn.00576ffc
mov edi, eax
lea edx, [esp + 0x80]
mov eax, esi
call fcn.00586d08
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, esi
pop ecx
mov edi, dword [eax]
call dword [edi + 0x38]
jmp 0x5817bf
mov eax, dword [esi + 0x254]
mov edx, dword [eax]
call dword [edx + 0x4c]
test al, al
je 0x5816f8
mov dword [esi + 0x3c], 9
mov cl, 1
xor edx, edx
mov eax, esi
call fcn.00583948
cmp dword [ebx + 4], 0xf120
jne 0x5817bf
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 1
mov byte [esi + 0xbe], 1
mov eax, esi
call fcn.00578154
test al, al
jne 0x581740
push 0xffffffffffffffff
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
jmp 0x5817bf
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x5817a5
mov eax, dword [esi + 0x54]
call fcn.0055f79c
call fcn.005a6f14
test al, al
je 0x5817a5
cmp byte [esi + 0x79], 0
je 0x5817a5
cmp byte [esi + 0x78], 0
je 0x5817a5
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x5817a5
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x5817a5
mov dl, 1
mov eax, esi
call fcn.0058a740
cmp dword [esi + 0x268], 0
je 0x5817a5
mov cl, 0xff
mov dl, 1
mov eax, dword [esi + 0x268]
call fcn.005913b8
push 0x481
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_RedrawWindow
movzx eax, word [ebx + 4]
sub ax, 0xf020
jne case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x5817e8
mov byte [esi + 0x227], 0
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x100
cmp eax, 0x100
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 1
mov eax, dword [esi + 0x268]
add eax, 0x18
call fcn.0041ca80
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 0
jmp case.0x57bbde.0
cmp byte [esi + 0x234], 0
jne 0x581dfb
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 1
jne 0x581dfb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsZoomed
test eax, eax
jne 0x581a96
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x581a96
mov eax, dword [ebx + 8]
cmp dword [eax + 8], 0
jne 0x5818a0
mov eax, dword [ebx + 8]
cmp dword [eax + 0xc], 0
je 0x581a96
mov ebp, dword [ebx + 8]
mov eax, dword [0x62f16c]
cmp byte [eax], 0
je 0x5818ee
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 0
jne 0x5818ee
cmp dword [esi + 0x268], 0
jne 0x5818ee
mov eax, esi
call fcn.0057b264
test al, al
je 0x5818ee
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5818ee
mov dl, 1
mov eax, esi
call fcn.0058a740
cmp byte [esi + 0x5a], 0
je 0x5819eb
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x1ea], 0
je 0x5819eb
lea edx, [esp + 0x24]
mov eax, dword [esi + 0x24c]
call fcn.0057b204
cmp dword [esi + 0x268], 0
je 0x58194c
mov eax, dword [esi + 0x268]
call fcn.00577168
mov edi, eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x34]
call fcn.0055f79c
mov eax, dword [eax + 0xcc]
movsx eax, word [eax + 0x32]
add edi, eax
jmp 0x58194e
xor edi, edi
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x48]
add eax, edi
push eax
lea eax, [ebp + 8]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esp + 0x30]
call fcn.0057b148
mov eax, dword [esi + 0x24c]
mov eax, dword [eax + 0x4c]
add eax, edi
push eax
lea eax, [ebp + 0xc]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esp + 0x34]
call fcn.0057b148
neg edi
push edi
lea eax, [ebp + 8]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esp + 0x28]
call fcn.0057b148
cmp dword [esi + 0x268], 0
je 0x5819da
mov eax, dword [esi + 0x268]
call fcn.0057712c
mov edi, eax
neg edi
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x34]
call fcn.0055f79c
mov eax, dword [eax + 0xcc]
movsx eax, word [eax + 0x32]
sub edi, eax
push edi
lea eax, [ebp + 0xc]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esp + 0x2c]
call fcn.0057b148
jmp 0x5819eb
push 0
lea eax, [ebp + 0xc]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esp + 0x2c]
call fcn.0057b148
test byte [esi + 0x231], 0x60
je 0x581a96
push esi
add esi, 0xd4
lea edi, [esp + 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [esi + 0x230]
and eax, 0x2000
cmp eax, 0x2000
jne 0x581a70
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov edx, dword [ebx + 8]
cmp eax, dword [edx + 0xc]
jne 0x581a54
mov eax, dword [ebx + 8]
mov edx, dword [esi + 0xd8]
mov dword [eax + 0xc], edx
mov eax, dword [esi + 0x24c]
call fcn.004d9094
mov edx, dword [esi + 0xd8]
sub edx, eax
mov eax, dword [ebx + 8]
sub dword [eax + 0x14], edx
jmp 0x581a66
mov eax, dword [esi + 0xd8]
add eax, dword [esi + 0xe0]
mov edx, dword [ebx + 8]
mov dword [edx + 0x14], eax
and dword [esi + 0x230], 0xffffdfff
mov eax, dword [esi + 0x230]
and eax, 0x4000
cmp eax, 0x4000
jne 0x581a8c
and dword [esi + 0x230], 0xffffbfff
xor eax, eax
mov dword [ebx + 0xc], eax
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x581dfb
call fcn.00561d6c
test al, al
je 0x581dfb
cmp byte [esi + 0x78], 0
je 0x581dfb
cmp byte [esi + 0x226], 0
jne 0x581dfb
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
je 0x581aec
mov eax, dword [ebx + 8]
cmp dword [eax + 8], 0xffff8300
jne 0x581caf
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x581caf
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x581c65
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0xc8], 2
je 0x581dfb
cmp byte [esi + 0x95], 0
je 0x581dfb
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x581dfb
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
je 0x581dfb
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x581dfb
or dword [esi + 0x230], 0x200
mov dl, 1
mov eax, esi
call fcn.00576d8c
mov edx, dword [esi + 0x54]
mov dword [edx + 0x44], eax
cmp dword [esi + 0x268], 0
je 0x581c4a
mov eax, dword [esi + 0x268]
mov byte [eax + 0x28], 1
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x340], 0
je 0x581bc0
mov eax, dword [esi + 0x24c]
movzx edi, byte [eax + 0x341]
jmp 0x581bc5
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.00592534
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.00575ed8
push 0x65b
push 0
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9094
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9074
push eax
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
jmp 0x581dfb
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
call fcn.00575ffc
mov dword [esi + 0xcc], eax
jmp 0x581dfb
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29a], 1
je 0x581dfb
mov eax, dword [ebx + 8]
cmp dword [eax + 8], 0xffff8300
jne 0x581dfb
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov dl, 1
mov eax, dword [esi + 0x24c]
call fcn.004daef4
mov eax, esi
call fcn.00576208
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x581dfb
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x581dfb
mov eax, dword [ebx + 8]
cmp dword [eax + 0x10], 0
je 0x581dfb
mov eax, dword [ebx + 8]
cmp dword [eax + 0x14], 0
je 0x581dfb
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 0x10
cmp eax, 0x10
jne 0x581dfb
mov eax, dword [esi + 0x230]
and eax, 0x100
cmp eax, 0x100
je 0x581dfb
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x581dfb
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 1
cmp eax, 1
je 0x581dfb
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x10]
cmp eax, dword [esi + 0x204]
jl 0x581d52
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x14]
cmp eax, dword [esi + 0x208]
jge 0x581dfb
cmp dword [esi + 0x228], 0
je 0x581d80
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x581dfb
mov eax, dword [esi + 0x228]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x581dfb
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb48c
test al, al
je 0x581dfb
or dword [esi + 0x230], 1
push 0
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x14]
mov eax, dword [ebx + 8]
mov edx, dword [eax + 0x10]
mov eax, dword [esi + 0x268]
call fcn.00592534
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
and dword [esi + 0x230], 0xfffffffe
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [0x62f778]
mov byte [eax], 1
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x581e3e
jmp 0x581e34
mov eax, dword [0x62f410]
mov eax, dword [eax]
call fcn.004e2cac
mov eax, dword [0x62f2fc]
cmp dword [eax], 0
jg 0x581e28
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
test eax, eax
je 0x5821c2
call fcn.00561d6c
test al, al
je 0x5821c2
cmp byte [esi + 0x78], 0
je 0x5821c2
cmp dword [esi + 0x268], 0
je 0x581eba
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x581eba
mov eax, esi
call fcn.0058c950
mov edi, eax
mov eax, dword [esi + 0x24c]
call fcn.00577064
add eax, 4
cmp edi, eax
setg al
mov byte [esi + 0x20c], al
jmp 0x581ec1
mov byte [esi + 0x20c], 0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne 0x582076
cmp byte [esi + 0x226], 0
jne 0x582076
mov eax, dword [esi + 0x54]
cmp dword [eax + 0x44], 0
je 0x582076
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x582076
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0xc8], 2
jne 0x581f5f
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x581f5f
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x582076
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov byte [esi + 0x227], 0
jmp case.0x57bbde.0
mov eax, dword [esi + 0x54]
call fcn.0055f79c
cmp byte [eax + 0xc8], 2
je 0x582053
cmp byte [esi + 0x95], 0
je 0x58202e
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x58202e
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x58202e
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je 0x58202e
call fcn.005772c4
test al, al
je 0x581fd5
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
mov dl, 1
call fcn.0057b170
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov byte [esi + 0x226], 1
mov eax, esi
call fcn.00551738
mov eax, dword [0x62f410]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne case.0x57bbde.0
call fcn.005772c4
test al, al
je 0x582022
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov cl, 1
xor edx, edx
call fcn.0057b170
mov byte [esi + 0x226], 0
jmp case.0x57bbde.0
cmp dword [esi + 0x268], 0
je 0x582076
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x582076
mov eax, dword [esi + 0x268]
add eax, 0x18
call fcn.0041ca80
jmp 0x582076
cmp dword [esi + 0x268], 0
je 0x582076
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x582076
mov eax, dword [esi + 0x268]
add eax, 0x18
call fcn.0041ca80
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp byte [esi + 0x224], 0
jne case.0x57bbde.0
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x59], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x57bbde.0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 8
cmp eax, 8
je case.0x57bbde.0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 0x20
cmp eax, 0x20
je case.0x57bbde.0
mov eax, dword [esi + 0x230]
and eax, 0x80
cmp eax, 0x80
je case.0x57bbde.0
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x18]
and eax, 3
cmp eax, 3
jne 0x5821ae
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je 0x5821ae
call fcn.005772c4
test al, al
je 0x58217c
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [esi + 0x24c]
jne 0x58217c
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
mov ebx, eax
call sub.user32.dll_GetActiveWindow
cmp ebx, eax
jne 0x58217c
push 0x65b
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x57bbde.0
push 0x65b
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0x24c]
call fcn.004bb0e0
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x57bbde.0
mov cl, 0xff
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.005913b8
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
cmp byte [esi + 0x95], 0
je 0x58234d
mov eax, dword [esi + 0x54]
call fcn.0055f79c
mov eax, dword [eax + 0x7c]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x58234d
cmp byte [esi + 0x78], 0
je 0x58234d
mov eax, dword [esi + 0x230]
and eax, 0x200
cmp eax, 0x200
je 0x58234d
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x34], 0
jne 0x58234d
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x57bbde.0
or dword [esi + 0x230], 0x200
mov dl, 1
mov eax, esi
call fcn.00576d8c
mov edx, dword [esi + 0x54]
mov dword [edx + 0x44], eax
and dword [esi + 0x230], 0xfffffdff
mov eax, dword [esi + 0x54]
mov byte [eax + 0x39], 0
cmp dword [esi + 0x268], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x18], 0
je case.0x57bbde.0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb48c
test al, al
je case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x340], 0
je 0x5822c3
mov eax, dword [esi + 0x24c]
movzx edi, byte [eax + 0x341]
jmp 0x5822c8
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [esi + 0x268]
call fcn.00592534
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
mov edx, dword [esi + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.00575ed8
push 0x65b
push 0
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9094
push eax
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004d9074
push eax
push 0
mov eax, dword [esi + 0x268]
mov eax, dword [eax + 0x18]
call fcn.004bb0e0
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
jne 0x5823da
mov eax, dword [0x62f54c]
cmp dword [eax], 0
jne 0x58238f
mov eax, dword [0x62f410]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.004bb0e0
xor edx, edx
call fcn.0050fa10
mov eax, dword [0x62f54c]
cmp dword [eax], 0
je 0x5823d3
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
test eax, eax
je 0x5823d3
mov eax, dword [0x62f54c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.004da648
cmp byte [eax + 0x29a], 2
jne 0x5823d3
mov byte [0x62cc90], 1
jmp 0x5823da
mov byte [0x62cc90], 0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [esi + 0x24c]
cmp byte [eax + 0x29e], 1
je case.0x57bbde.0
mov eax, esi
call fcn.00588d00
jmp case.0x57bbde.0
test byte [esi + 0x1c], 1
jne 0x5824b4
mov eax, dword [esi + 0x24c]
test byte [eax + 0x1c], 1
jne 0x5824b4
mov eax, dword [ebx + 4]
and eax, 0xffff
dec eax
je 0x582439
mov eax, dword [ebx + 4]
and eax, 0xffff
cmp eax, 2
jne 0x5824b4
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
cmp dword [esi + 0x22c], 0
je 0x582464
cmp word [ebx + 4], 1
jne 0x582464
xor edx, edx
mov eax, dword [esi + 0x22c]
call fcn.0058e438
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.0040cab0
mov edx, eax
mov eax, dword [0x62f274]
mov eax, dword [eax]
mov ecx, 1
call fcn.00594dbc
lea edx, [esp + 0x14]
mov eax, dword [esi + 0x24c]
call fcn.0055445c
cmp byte [esi + 0x78], 0
je case.0x57bbde.0
mov dl, 1
mov eax, dword [esi + 0x228]
call fcn.00520aa8
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx + 8]
mov eax, dword [eax + 8]
sub eax, 0xfffffdd9
jne case.0x57bbde.0
cmp dword [esi + 0x22c], 0
je case.0x57bbde.0
xor edx, edx
mov eax, dword [esi + 0x22c]
call fcn.0058e438
jmp case.0x57bbde.0
cmp dword [ebx + 4], 0
je 0x582598
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
mov eax, dword [ebx + 4]
mov edx, dword [0x4a9c58]
call fcn.00405320
test al, al
je 0x582577
cmp dword [esi + 0x22c], 0
je 0x582546
mov edx, dword [ebx + 4]
mov eax, dword [esi + 0x22c]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.0040cab0
mov edx, eax
mov eax, dword [0x62f274]
mov eax, dword [eax]
mov ecx, 1
call fcn.00594dbc
lea edx, [esp + 0x14]
mov eax, dword [ebx + 4]
call fcn.0055445c
push 1
mov dx, 0x24
xor eax, eax
call fcn.0040cab0
mov ecx, eax
mov edx, dword [0x62f274]
mov edx, dword [edx]
mov eax, dword [ebx + 4]
call fcn.004b3684
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
jmp case.0x57bbde.0
mov edx, ebx
mov eax, dword [esi + 0x23c]
call dword [esi + 0x238]
add esp, 0xac
pop ebp
pop edi
pop esi
pop ebx
ret