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

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff54
mov esi, edx
mov ebx, eax
mov eax, dword [esi]
mov edx, dword [0x555a14]
cmp eax, dword [edx]
jne 0x50cc38
movzx eax, word [esi + 6]
cmp eax, 0x22
jg 0x50c7de
je 0x50cac1
dec eax
je 0x50ca09
dec eax
je 0x50c7fc
sub eax, 5
je 0x50ca79
sub eax, 0x19
je 0x50ca85
jmp 0x50cc38
sub eax, 0x24
je 0x50cc29
sub eax, 0x18
je 0x50ca4d
dec eax
je 0x50ca5c
jmp 0x50cc38
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp eax, dword [esi + 8]
jne 0x50c9f7
cmp dword [ebx + 0x224], 0
je 0x50c821
lea eax, [ebx + 0x224]
call fcn.0040ea00
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
xor edx, edx
call fcn.00508a64
mov eax, esi
mov edx, dword [ebx + 0x54]
call fcn.004febcc
mov dword [ebx + 0x250], 0xffffffff
mov dword [ebx + 0x20c], 0xffffffff
mov dword [ebx + 0x214], 0xffffffff
mov edx, esi
mov eax, dword [ebx + 0x24c]
call fcn.004dde4c
mov eax, ebx
call fcn.00519f30
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x50c884
mov al, 1
call fcn.005018dc
mov eax, dword [ebx + 0x24c]
test eax, eax
je case.0x50d054.0
test byte [eax + 0x1c], 8
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov edx, esi
mov eax, dword [ebx + 0x24c]
call fcn.004dde4c
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne 0x50cc38
cmp dword [ebx + 0x54], 0
je 0x50cc38
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp eax, dword [esi + 8]
jne 0x50cc38
cmp dword [ebx + 0x254], 0
jne 0x50cc38
mov eax, ebx
call fcn.00519a04
jmp 0x50cc38
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
pop edx
call fcn.004078dc
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov dword [esi + 0xc], 1
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov dx, word [eax + 0x52]
and dx, 0x400
cmp dx, 0x400
jne 0x50cc38
and word [eax + 0x52], 0xfbff
push 0
push 0
push 0xb015
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x50cc38
cmp dword [ebx + 0x54], 0
je 0x50cc38
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.00406c14
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x74]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x78]
mov dword [eax + 0xc], edx
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x50cb17
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
je 0x50cb04
cmp byte [ebx + 0x220], 0
je 0x50cb17
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x50cb17
mov eax, ebx
call fcn.005160b8
mov eax, dword [esi + 8]
cmp byte [eax + 0x21], 0
je 0x50cb3a
mov eax, ebx
call fcn.005180dc
mov edx, dword [esi + 8]
add dword [edx + 8], eax
mov eax, ebx
call fcn.00518174
mov edx, dword [esi + 8]
add dword [edx + 0xc], eax
mov eax, dword [ebx + 0x24c]
cmp word [eax + 0x2ba], 0
je 0x50cb88
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
mov dword [edx], eax
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
lea ecx, [esp + 0x78]
pop edx
call fcn.00406c14
mov edi, dword [esi + 8]
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 0xc], eax
mov byte [edi + 0x20], 2
jmp case.0x50d054.0
mov edi, dword [ebx + 0x54]
cmp dword [edi + 0x28], 0xffffffff
jle 0x50cbc7
push 0
mov eax, edi
call fcn.004fe590
mov eax, dword [eax + 0xd0]
mov edx, dword [ebx + 0x54]
imul edx, dword [edx + 0x28], 0x43
mov edx, dword [eax + edx*4 + 8]
dec edx
xor eax, eax
mov al, byte [ebx + 0x244]
call fcn.0042ddf4
mov ecx, eax
mov edx, dword [esi + 8]
mov eax, edi
call fcn.004fce5c
jmp 0x50cbe4
push 0
xor eax, eax
mov al, byte [ebx + 0x244]
xor edx, edx
call fcn.0042ddf4
mov ecx, eax
mov edx, dword [esi + 8]
mov eax, edi
call fcn.004fce5c
mov eax, dword [esi + 8]
cmp byte [eax + 0x20], 2
jne 0x50cc0a
cmp byte [eax + 0x21], 0
jne 0x50cc0a
cmp dword [eax], 0
jne 0x50cc0a
mov eax, ebx
call fcn.005160b8
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
mov dword [edx], eax
mov eax, ebx
call fcn.005180dc
mov edx, dword [esi + 8]
add dword [edx + 8], eax
mov eax, ebx
call fcn.00518174
mov edx, dword [esi + 8]
add dword [edx + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
movzx eax, word [eax + 0x52]
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne 0x50cc56
mov dl, 1
mov eax, dword [ebx + 0x54]
call fcn.004feb24
test al, al
jne 0x50d031
mov eax, dword [esi]
mov edx, dword [0x555a14]
cmp eax, dword [edx]
jne 0x50ce59
mov ax, word [esi + 6]
dec ax
je 0x50cc81
sub ax, 3
jne 0x50ce59
mov dword [esi + 0xc], ebx
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne 0x50ce59
cmp dword [ebx + 0x54], 0
je 0x50ce59
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp eax, dword [esi + 8]
jne case.0x50d054.0
mov eax, ebx
call fcn.0051b5f4
mov al, 1
call fcn.005018dc
mov eax, dword [ebx + 0x54]
call fcn.004ff3b4
mov dword [ebx + 0x20c], 0xffffffff
mov eax, ebx
call fcn.0051b730
mov dword [ebx + 0x20c], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, 0x5136a8
call fcn.004f9e98
mov dword [ebx + 0x214], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x50ce37
cmp dword [ebx + 0x268], 0
je 0x50cd43
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x50cd43
mov eax, ebx
call fcn.0051d4f8
mov esi, eax
mov eax, dword [ebx + 0x24c]
call fcn.005087ac
add eax, 4
cmp esi, eax
setg al
mov byte [ebx + 0x208], al
jmp 0x50cd4a
mov byte [ebx + 0x208], 0
mov dl, 1
mov eax, ebx
call fcn.0051adbc
mov eax, ebx
call fcn.00519390
mov esi, dword [ebx + 0x24c]
cmp byte [esi + 0x22f], 2
jne 0x50cd84
mov eax, esi
call fcn.00472fa8
mov edx, dword [0x556104]
mov edx, dword [edx]
cmp eax, dword [edx + 0x6c]
jne 0x50cd84
mov byte [ebx + 0x244], 1
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test byte [eax + 0x1c], 1
jne 0x50cdd0
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x248], 0
je 0x50cdb1
cmp byte [ebx + 0xbd], 0
je 0x50cdb1
mov byte [ebx + 0xb9], 1
mov dl, 1
mov eax, ebx
call fcn.00518d9c
cmp byte [ebx + 0xb9], 0
jne 0x50cdd0
mov eax, ebx
call fcn.0051898c
mov byte [ebx + 0xb9], al
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov dword [ebx + 0x250], 0xffffffff
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50cdf9
mov dl, 1
mov eax, ebx
call fcn.00519c78
cmp byte [ebx + 0x60], 0
je 0x50ce22
mov eax, dword [ebx + 0x54]
cmp byte [eax + 9], 0
jne 0x50ce22
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004f224c
mov edx, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458fb8
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov dl, byte [ebx + 0x78]
call fcn.00508a64
mov eax, dword [ebx + 0x228]
test eax, eax
jne 0x50ce4d
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp case.0x50d054.0
xor edx, edx
call fcn.0051ee5c
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi]
sub eax, 0x47
je 0x50ce87
sub eax, 0x3b
je 0x50cf60
sub eax, 0xafc1
je 0x50d023
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je case.0x50d054.0
call fcn.004e020c
test al, al
je case.0x50d054.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne case.0x50d054.0
cmp byte [ebx + 0x95], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x50d054.0
cmp byte [ebx + 0x222], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0x3c], 0
je case.0x50d054.0
cmp byte [ebx + 0x78], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je case.0x50d054.0
mov eax, dword [0x5558c8]
xor edx, edx
mov dword [eax], edx
mov byte [ebx + 0x222], 1
mov eax, ebx
call fcn.004db3f4
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50cf38
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor edx, edx
call fcn.0050c654
mov byte [ebx + 0x222], 0
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne case.0x50d054.0
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov dl, 1
call fcn.004feb24
test al, al
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
call fcn.005192bc
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
test eax, eax
jne case.0x50d054.0
push 0x507
push 0
push 0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x50d054.0
mov edx, esi
mov eax, ebx
call fcn.0051b80c
jmp case.0x50d054.0
mov eax, dword [esi]
mov edx, dword [0x555a14]
cmp eax, dword [edx]
jne 0x50d5f5
movzx eax, word [esi + 6]
cmp eax, 0x3e
ja case.0x50d054.0
mov al, byte [eax + 0x50d05b]
jmp dword [eax*4 + 0x50d09a]
mov eax, dword [ebx + 0x24c]
test eax, eax
je case.0x50d054.0
test byte [eax + 0x1c], 1
jne case.0x50d054.0
mov edx, dword [ebx + 0x228]
test edx, edx
je case.0x50d054.0
cmp dword [esi + 8], 0
je 0x50d114
mov eax, dword [esi + 8]
xchg edx, eax
call fcn.0051ee5c
jmp case.0x50d054.0
xchg edx, eax
call fcn.0051ee5c
jmp case.0x50d054.0
cmp dword [ebx + 0x54], 0
je case.0x50d054.0
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50d148
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x50d148
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x50d14c
xor eax, eax
jmp 0x50d14e
mov al, 1
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
je case.0x50d054.0
mov byte [eax + 0x1c], 0
push 0x401
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x50d054.0
cmp dword [esi + 8], 1
jne 0x50d1a2
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, ebx
call fcn.00509818
jmp case.0x50d054.0
cmp word [esi + 4], 1
sete dl
mov eax, dword [ebx + 0x54]
call fcn.004feb20
mov eax, dword [ebx + 0x54]
call fcn.004fe5a4
test al, al
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp eax, dword [esi + 8]
jne case.0x50d054.0
cmp dword [ebx + 0x228], 0
jne 0x50d1fd
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp 0x50d20a
xor edx, edx
mov eax, dword [ebx + 0x228]
call fcn.0051ee5c
cmp byte [ebx + 0x78], 0
je 0x50d228
cmp byte [ebx + 0xa6], 0
je 0x50d228
lea edx, [ebx + 0x224]
xor ecx, ecx
mov eax, ebx
call fcn.005096cc
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
je 0x50d246
cmp byte [eax + 0x22f], 1
je 0x50d246
mov eax, dword [ebx + 0x54]
and word [eax + 0x52], 0xfffe
mov dword [ebx + 0x250], 0xffffffff
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test byte [eax + 0x1c], 1
jne 0x50d278
mov eax, ebx
call fcn.0051898c
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb24
mov edx, eax
mov eax, ebx
call fcn.00518d9c
mov eax, ebx
call fcn.005097d0
test al, al
je 0x50d287
mov byte [ebx + 0x34], 1
mov eax, ebx
call fcn.0051d334
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x57], 0
je case.0x50d054.0
mov edi, dword [ebx + 0x54]
mov byte [edi + 0x39], 1
mov eax, edi
call fcn.004fe590
call fcn.004fbb4c
mov edx, eax
mov eax, ebx
call fcn.0051b3cc
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50d36a
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50d326
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
test eax, eax
je 0x50d326
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x50d326
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
jmp 0x50d36a
push 0x545
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50d36a
push 0x545
push 0
push 0
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
cmp byte [ebx + 0x60], 0
je 0x50d393
mov eax, dword [ebx + 0x54]
cmp byte [eax + 9], 0
jne 0x50d393
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004f224c
mov edx, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458fb8
cmp dword [ebx + 0x240], 0
je 0x50d3a7
mov eax, dword [ebx + 0x240]
call fcn.004a0cc0
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb20
cmp dword [ebx + 0x254], 0
je 0x50d3c5
mov eax, dword [ebx + 0x254]
call fcn.0051e2e4
mov edx, esi
mov eax, ebx
call fcn.00519f80
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xd0]
mov edi, dword [ebx + 0x54]
imul edx, dword [edi + 0x28], 0x43
mov ebp, dword [eax + edx*4 + 0xa8]
mov eax, edi
call fcn.004fe590
mov eax, dword [eax + 0xd0]
mov edx, dword [ebx + 0x54]
imul edx, dword [edx + 0x28], 0x43
add ebp, dword [eax + edx*4 + 0xb4]
test ebp, ebp
setg al
mov ebp, eax
and ebp, 0x7f
mov dword [esi + 8], ebp
mov dword [esi + 0xc], ebp
jmp case.0x50d054.0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004fd2d4
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov dword [esi + 0xc], ebx
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp eax, dword [esi + 8]
jne case.0x50d054.0
mov al, 1
call fcn.005018dc
mov eax, dword [ebx + 0x54]
call fcn.004ff3b4
mov dword [ebx + 0x20c], 0xffffffff
mov eax, ebx
call fcn.0051b730
mov dword [ebx + 0x20c], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, 0x5136a8
call fcn.004f9e98
mov dword [ebx + 0x214], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je case.0x50d054.0
mov eax, ebx
call fcn.00519390
mov al, 1
call fcn.005018dc
mov dl, byte [ebx + 0x78]
mov eax, ebx
call fcn.0051adbc
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x44]
call fcn.005038e4
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov dword [ebx + 0x250], 0xffffffff
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne case.0x50d054.0
mov dl, 1
mov eax, ebx
call fcn.00519c78
jmp case.0x50d054.0
mov cl, 1
or edx, 0xffffffff
mov eax, ebx
call fcn.005148fc
mov byte [0x5549fc], 0
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe784
test al, al
je case.0x50d054.0
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe784
test al, al
je case.0x50d054.0
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
push 0x585
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x555f5c]
cmp ebx, dword [eax]
jne case.0x50d054.0
push 0x581
push 0
push 0
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x50d054.0
mov eax, esi
mov edx, dword [ebx + 0x54]
call fcn.004ff4d4
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x38], 0
je case.0x50d054.0
mov eax, ebx
call fcn.005160b8
jmp case.0x50d054.0
cmp eax, 0xa4
jg 0x50d758
je 0x510067
cmp eax, 0x2c
jg 0x50d6b9
je 0x511f53
cmp eax, 0x24
ja case.0x50d61e.0
jmp dword [eax*4 + 0x50d625]
cmp eax, 0x81
jg 0x50d70f
je 0x50f4c8
cmp eax, 0x4e
jg 0x50d6ef
je 0x5135a0
sub eax, 0x46
je 0x51299f
dec eax
je 0x512f54
sub eax, 3
je 0x50d961
jmp case.0x50d61e.0
sub eax, 0x7b
je 0x50da41
sub eax, 2
je 0x50dbf2
sub eax, 3
je 0x50db40
jmp case.0x50d61e.0
cmp eax, 0xa0
jg 0x50d73a
je 0x50d8c8
sub eax, 0x84
je 0x50f21b
dec eax
je 0x510cad
dec eax
je 0x5113e5
jmp case.0x50d61e.0
sub eax, 0xa1
je 0x50f4f9
dec eax
je 0x510109
dec eax
je 0x511db7
jmp case.0x50d61e.0
cmp eax, 0x318
jg 0x50d81b
je case.0x50d054.0
cmp eax, 0x211
jg 0x50d7c7
je 0x50f093
cmp eax, 0x121
jg 0x50d7a5
je 0x51075e
sub eax, 0xa5
je 0x510089
sub eax, 0x6d
je 0x511fd7
sub eax, 5
je 0x50dbd2
jmp case.0x50d61e.0
sub eax, 0x200
je 0x50fba9
sub eax, 2
je 0x510109
sub eax, 0xe
je 0x5134e0
jmp case.0x50d61e.0
cmp eax, 0x232
jg 0x50d7f9
je 0x50dabb
sub eax, 0x212
je 0x50f1ee
sub eax, 2
je 0x50f40c
add eax, 0xfffffff3
sub eax, 2
jb 0x511b57
jmp case.0x50d61e.0
sub eax, 0x2a3
je 0x50f43b
sub eax, 0x70
je 0x50dc8b
sub eax, 4
je 0x510823
jmp case.0x50d61e.0
cmp eax, 0xb015
jg 0x50d879
je 0x5107ae
cmp eax, 0xb00b
jg 0x50d859
je 0x511d0f
sub eax, 0x323
je 0x50d9f7
sub eax, 3
je 0x50d9cc
sub eax, 0xa0da
je 0x50d91f
jmp case.0x50d61e.0
sub eax, 0xb00c
je 0x50e5cb
sub eax, 7
je 0x50f461
dec eax
je 0x50f43b
jmp case.0x50d61e.0
cmp eax, 0xb03a
jg 0x50d8a8
je 0x510768
sub eax, 0xb019
je 0x50dcc7
sub eax, 0x13
je 0x5135de
sub eax, 7
je 0x5113a1
jmp case.0x50d61e.0
sub eax, 0xb043
je 0x50d903
sub eax, 9
je 0x510ca3
sub eax, 0xc01
je 0x510ca3
jmp case.0x50d61e.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
pop edx
call fcn.004fb078
mov edx, esi
mov eax, ebx
call fcn.0051ba68
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov edx, esi
mov eax, ebx
call fcn.0051b80c
jmp case.0x50d054.0
mov eax, dword [esi + 4]
dec eax
je 0x50d945
sub eax, 2
je 0x50d932
dec eax
je 0x50d955
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.004758cc
jmp case.0x50d054.0
mov dword [esi + 0xc], 1
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 0xc], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov edx, dword [0x555ecc]
cmp eax, dword [edx]
jne case.0x50d054.0
mov eax, dword [0x555a70]
cmp byte [eax], 0
jne case.0x50d054.0
mov eax, dword [0x555a70]
mov byte [eax], 1
cmp dword [esi + 8], 0
je 0x50d9bf
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, eax
mov eax, esi
call fcn.004f0280
mov eax, dword [0x555a70]
mov byte [eax], 0
jmp case.0x50d054.0
mov eax, dword [0x555ad0]
cmp byte [eax], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov edx, ebx
call fcn.005074b8
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [0x555ad0]
cmp byte [eax], 0
je case.0x50d054.0
cmp word [esi + 0xa], 0
je case.0x50d054.0
cmp word [esi + 8], 0
je case.0x50d054.0
movzx eax, word [esi + 8]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
movzx ecx, word [esi + 0xa]
mov edx, ebx
call fcn.00507240
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x7c], 0
je 0x50da73
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov al, byte [eax + 0x58]
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x24c]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.00504d68
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp dword [esi + 4], 1
jne 0x50daa2
mov edx, dword [ebx + 0xb4]
dec edx
xor eax, eax
call fcn.0042deb8
mov dword [ebx + 0xb4], eax
jmp 0x50daa8
inc dword [ebx + 0xb4]
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov eax, dword [0x555f8c]
cmp dword [eax], 0
je case.0x50d054.0
mov eax, dword [0x555f8c]
mov eax, dword [eax]
mov ebp, dword [eax + 8]
dec ebp
test ebp, ebp
jl case.0x50d054.0
inc ebp
xor edi, edi
mov eax, dword [0x555f8c]
mov eax, dword [eax]
mov edx, edi
call fcn.0041a3e8
test eax, eax
je 0x50db29
mov eax, dword [0x555f8c]
mov eax, dword [eax]
mov edx, edi
call fcn.0041a3e8
mov eax, dword [eax + 0x38]
xor ecx, ecx
mov edx, 0x12
call fcn.004ddc90
inc edi
dec ebp
jne 0x50dafa
jmp case.0x50d054.0
mov edx, esi
mov eax, ebx
call fcn.0051b47c
jmp case.0x50d054.0
test byte [ebx + 0x1c], 1
jne 0x50dbbf
cmp dword [esi + 8], 0
je 0x50dbbf
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50dbbf
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x50dbbf
call fcn.005089d0
test al, al
jne 0x50db85
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
call fcn.005089d0
test al, al
jne 0x50dbb3
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov eax, ebx
call fcn.00509818
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0x58], 0
je case.0x50d054.0
mov edx, esi
mov eax, ebx
call fcn.0051b090
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 4], 0xffffffec
jne case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x80
cmp eax, 0x80
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x100
cmp eax, 0x100
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x400
cmp eax, 0x400
je case.0x50d054.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 4]
and eax, 0x80000
mov edx, dword [esi + 8]
mov edx, dword [edx]
and edx, 0x80000
cmp eax, edx
je case.0x50d054.0
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
lea edx, [esp + 0x74]
mov eax, dword [0x55607c]
mov eax, dword [eax]
call fcn.00464054
mov eax, dword [esp + 0x78]
push eax
lea edx, [esp + 0x80]
mov eax, dword [0x55607c]
mov eax, dword [eax]
call fcn.00464054
mov edx, dword [esp + 0x80]
mov eax, ebx
pop ecx
call fcn.00517c70
jmp case.0x50d054.0
mov dword [esp + 4], 0xff
cmp byte [ebx + 0x78], 0
je 0x50e188
cmp byte [ebx + 0xa6], 0
je 0x50e188
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x50e125
cmp byte [eax + 0x22f], 1
jne 0x50dd2b
cmp dword [ebx + 0x228], 0
je 0x50dd18
mov edx, eax
mov eax, dword [ebx + 0x228]
call fcn.0051ee5c
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50dd43
mov dl, 1
mov eax, ebx
call fcn.00519c78
and dword [ebx + 0x22c], 0xfffffdff
cmp dword [ebx + 0x268], 0
je 0x50dd60
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
cmp dword [ebx + 0x218], 0
je 0x50dd89
mov eax, dword [ebx + 0x218]
mov edx, dword [0x507114]
call fcn.00403b34
test al, al
je 0x50dd89
lea eax, [ebx + 0x218]
call fcn.0040ea00
mov eax, dword [0x55595c]
cmp byte [eax], 0
je 0x50ddd1
mov eax, dword [ebx + 0x24c]
call fcn.0045fa68
test al, al
je 0x50ddd1
mov eax, dword [0x555e70]
mov eax, dword [eax]
cmp dword [eax + 0x44], 0
je 0x50ddc1
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne 0x50ddd1
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
call fcn.0050a3dc
mov eax, ebx
call fcn.00519988
cmp dword [ebx + 0x228], 0
je 0x50ddf2
mov edx, dword [ebx + 0x24c]
mov eax, dword [ebx + 0x228]
call fcn.0051ee5c
cmp byte [ebx + 0x95], 0
je 0x50de3f
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x50de16
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
jne 0x50de3f
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
cmp byte [eax + 6], 0
je 0x50de3f
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov edx, dword [0x555ecc]
cmp eax, dword [edx]
jne 0x50de43
xor eax, eax
jmp 0x50de45
mov al, 1
mov byte [ebx + 0x223], al
mov byte [esp + 0x11], 0
cmp byte [ebx + 0x223], 0
je 0x50df28
mov dl, 1
mov eax, dword [ebx + 0x54]
call fcn.004feb20
mov byte [ebx + 0x220], 1
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov dl, 1
call fcn.0050c654
mov byte [esp + 0x11], al
mov dword [esp + 4], 0xff
cmp byte [esp + 0x11], 0
je 0x50dea5
xor edx, edx
mov eax, ebx
call fcn.00509390
mov byte [ebx + 0x230], 0
jmp 0x50dec3
mov eax, dword [ebx + 0x24c]
movzx eax, byte [eax + 0x2e1]
mov dword [esp + 4], eax
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.00476354
mov eax, dword [ebx + 0x24c]
call fcn.0045c494
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x50df32
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
cmp byte [eax + 0x57], 0
je 0x50df22
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
mov edx, dword [0x5500a4]
call fcn.00403b34
test al, al
jne 0x50df22
push 0
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
xor ecx, ecx
mov edx, 0xb
call fcn.0045a01c
inc edi
dec ebp
jne 0x50ded8
jmp 0x50df32
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb20
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004fbb4c
mov edx, eax
mov eax, ebx
call fcn.0051b3cc
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb24
test al, al
jne 0x50e011
cmp byte [ebx + 0x223], 0
je 0x50e011
mov eax, dword [ebx + 0x24c]
call fcn.0045c494
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x50dfbf
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
cmp byte [eax + 0x57], 0
je 0x50dfbb
push 0
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
mov ecx, 1
mov edx, 0xb
call fcn.0045a01c
inc edi
dec ebp
jne 0x50df8a
push 0xffffffffffffffec
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xfff7ffff
push eax
push 0xffffffffffffffec
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowLongA
push 0x81
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov byte [ebx + 0x230], 0
jmp case.0x50d054.0
lea edx, [ebx + 0x224]
xor ecx, ecx
mov eax, ebx
call fcn.005096cc
cmp byte [ebx + 0x223], 0
je 0x50e0d9
mov eax, dword [ebx + 0x24c]
call fcn.0045c494
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x50e077
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
cmp byte [eax + 0x57], 0
je 0x50e073
push 0
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.0045c458
mov ecx, 1
mov edx, 0xb
call fcn.0045a01c
inc edi
dec ebp
jne 0x50e042
cmp byte [esp + 0x11], 0
je 0x50e090
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor edx, edx
call fcn.0050c654
mov byte [ebx + 0x223], 0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
movzx edi, word [eax + 4]
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 7]
mov byte [esp + 0x13], al
mov al, byte [esp + 0x13]
push eax
mov ecx, dword [esp + 8]
mov edx, edi
mov eax, ebx
call fcn.004daab4
mov byte [ebx + 0x230], 0
jmp 0x50e0f3
push 0x81
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne case.0x50d054.0
mov al, 1
call fcn.0050c4c8
jmp case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x50e175
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x50e16a
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
movzx eax, word [eax + 4]
mov ecx, 0xc
xor edx, edx
div ecx
test eax, eax
je 0x50e16a
cmp byte [ebx + 0x95], 0
jne 0x50e175
lea eax, [ebx + 0x268]
call fcn.0040ea00
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
call fcn.005089d0
test al, al
je 0x50e1c5
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x50e1c5
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
call fcn.005089d0
test al, al
je case.0x50d054.0
push 0x181
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x50e331
cmp dword [esi + 4], 1
jne 0x50e29a
cmp dword [ebx + 0x268], 0
je 0x50e228
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
mov eax, dword [ebx + 0x22c]
and eax, 0x400
cmp eax, 0x400
jne 0x50e246
mov dword [ebx + 0x22c], 0x400
jmp 0x50e24e
xor eax, eax
mov dword [ebx + 0x22c], eax
call fcn.005089d0
test al, al
je 0x50e29a
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50e29a
push 0xffffffffffffffec
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x80000
cmp eax, 0x80000
je 0x50e29a
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [esi + 8]
dec eax
je 0x50e2aa
sub eax, 2
je 0x50e2f8
jmp 0x50e331
cmp byte [ebx + 0x221], 0
je 0x50e331
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x50e2d1
mov byte [ebx + 0x221], 2
jmp 0x50e331
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x50e2ef
mov byte [ebx + 0x221], 3
jmp 0x50e331
mov byte [ebx + 0x221], 1
jmp 0x50e331
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x50e331
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne 0x50e331
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 4], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50e373
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x50e373
mov eax, dword [0x555f5c]
mov eax, dword [eax]
call fcn.005192bc
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50e3d4
mov eax, dword [ebx + 0x24c]
call fcn.00472fdc
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x50e3d4
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.00473028
call fcn.0045f764
mov edx, 7
call fcn.004ddd44
test al, al
jne 0x50e3d0
mov edx, edi
mov eax, dword [ebx + 0x24c]
call fcn.00473028
call fcn.0045f764
xor edx, edx
call fcn.004c1f4c
inc edi
dec ebp
jne 0x50e397
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
and word [eax + 0x52], 0xfffe
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045fa68
test al, al
je 0x50e5b8
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x50e5b8
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x54], 0x40
jne 0x50e5b8
cmp byte [ebx + 0x78], 0
je 0x50e5b8
cmp dword [ebx + 0xc0], 0
je 0x50e466
lea eax, [ebx + 0xc0]
call fcn.0040ea00
cmp dword [ebx + 0xc4], 0
je 0x50e47a
lea eax, [ebx + 0xc4]
call fcn.0040ea00
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50e4d3
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x50e4d3
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
xor edx, edx
call fcn.00508eb8
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [0x555f5c]
mov eax, dword [eax]
call fcn.005091b4
jmp 0x50e597
call fcn.005089d0
test al, al
jne 0x50e51d
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, ebx
call fcn.00508eb8
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, ebx
call fcn.005091b4
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x50e597
cmp dword [ebx + 0x268], 0
jne 0x50e53d
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x268], 0
jne 0x50e590
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, ebx
call fcn.00509818
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp byte [ebx + 0x78], 0
je case.0x50d054.0
mov esi, dword [ebx + 0x268]
test esi, esi
je 0x50e608
cmp dword [esi + 0x18], 0
je 0x50e608
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
mov edx, eax
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x64]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, ebx
call fcn.0051898c
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, ebx
call fcn.0051898c
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
test eax, eax
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x50e6b7
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x240]
call fcn.004a0d60
jmp case.0x50d054.0
mov dl, 1
mov eax, ebx
call fcn.0051adbc
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x50f058
mov eax, ebx
call fcn.00508ad0
test al, al
je 0x50e8da
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edi, dword [eax + 0x180]
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, edi
call fcn.004f43e4
test al, al
je 0x50e8da
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00525778
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0052578c
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
mov ebp, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
cmp ebp, eax
jl 0x50e7cd
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.0052578c
mov ebp, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
cmp ebp, eax
jge 0x50e838
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
jne 0x50e838
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
test eax, eax
je 0x50e838
mov eax, dword [ebx + 0x204]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x204]
sub edx, edi
mov eax, dword [ebx + 0x200]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x200]
call fcn.00406bf8
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
mov ebp, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
cmp ebp, eax
jg 0x50e874
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.0052578c
mov ebp, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
cmp ebp, eax
jle 0x50e8da
mov eax, dword [ebx + 0x24c]
call fcn.00458860
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
push eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
sub eax, edi
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
sub eax, dword [esp + 0x14]
pop edx
pop ecx
call fcn.00406bf8
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
cmp edi, eax
jg 0x50e92b
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.0052578c
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
cmp edi, eax
jg 0x50e92b
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
test eax, eax
jne 0x50eb2f
push 0x5136b8
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, dword [ebx + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x28]
call fcn.004f9ef0
mov edi, eax
cmp edi, 0xffffffff
jle 0x50ea2d
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00525778
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0052578c
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
mov eax, dword [ebx + 0x204]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x204]
sub edx, edi
mov eax, dword [ebx + 0x200]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x200]
call fcn.00406bf8
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
push 0x5136cc
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, dword [ebx + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x28]
call fcn.004f9ef0
mov edi, eax
cmp edi, 0xffffffff
jle 0x50eb2f
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00525778
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1c]
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0052578c
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, edi
shl edx, 3
sub edx, edi
movsx eax, word [eax + edx*8 + 0x1e]
inc eax
pop edx
xchg edx, eax
mov ecx, edx
cdq
idiv ecx
mov edi, eax
mov eax, dword [ebx + 0x204]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x204]
sub edx, edi
mov eax, dword [ebx + 0x200]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x200]
call fcn.00406bf8
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
cmp dword [ebx + 0xc0], 0
je 0x50eb43
lea eax, [ebx + 0xc0]
call fcn.0040ea00
cmp dword [ebx + 0xc4], 0
je 0x50eb57
lea eax, [ebx + 0xc4]
call fcn.0040ea00
mov dword [ebx + 0x250], 0xffffffff
mov eax, dword [ebx + 0x22c]
and eax, 0x80
cmp eax, 0x80
jne 0x50eb7a
mov eax, ebx
call fcn.005081cc
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
jne 0x50ebad
cmp byte [ebx + 0xa6], 0
je 0x50ebad
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x50ebbb
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [0x555a20]
cmp byte [eax], 0
jne 0x50f018
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x50f011
mov eax, ebx
call fcn.005184a4
test al, al
je 0x50ef86
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x50ec0d
cmp byte [ebx + 0x21e], 0
jne 0x50ef86
mov byte [ebx + 0x34], 1
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x50ec65
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x50ec59
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov edx, dword [ebx + 0x24c]
cmp eax, dword [edx + 0x48]
jg 0x50ec5d
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
mov edx, dword [ebx + 0x24c]
cmp eax, dword [edx + 0x4c]
jg 0x50ec5d
xor eax, eax
jmp 0x50ec5f
mov al, 1
mov byte [esp + 0x10], al
jmp 0x50ec6a
mov byte [esp + 0x10], 0
cmp byte [ebx + 0x78], 0
je 0x50ef2a
mov eax, dword [0x555974]
cmp byte [eax], 0
je 0x50eca1
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x50eca1
cmp dword [ebx + 0x268], 0
je 0x50eca1
lea eax, [ebx + 0x268]
call fcn.0040ea00
mov eax, dword [ebx + 0x268]
test eax, eax
je 0x50ed57
cmp dword [eax + 0x18], 0
jne 0x50ecba
call fcn.00522e80
cmp dword [ebx + 0x224], 0
je 0x50ece4
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x50ecf1
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x50ecf1
cmp byte [ebx + 0x58], 0
jne 0x50ecf1
or dword [ebx + 0x22c], 1
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
and dword [ebx + 0x22c], 0xfffffffe
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 1
push 0x61b
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
mov dl, 1
mov eax, ebx
call fcn.00509390
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x50ed67
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x54]
and ax, 2
cmp ax, 2
jne 0x50eda3
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.0052578c
mov esi, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
cmp esi, eax
jne 0x50edd2
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x54]
and ax, 1
cmp ax, 1
jne 0x50ee05
lea eax, [ebx + 0x1f8]
xor edx, edx
call fcn.00525778
mov esi, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
cmp esi, eax
je 0x50ee05
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x14
mov ax, 1
call fcn.0040799c
mov edx, eax
mov eax, dword [0x555a14]
mov eax, dword [eax]
xor ecx, ecx
call fcn.005255fc
lea edx, [esp + 0x14]
mov eax, dword [ebx + 0x24c]
call fcn.004dde4c
cmp dword [ebx + 0x268], 0
je 0x50ef03
cmp dword [ebx + 0x224], 0
je 0x50ee5f
mov eax, dword [ebx + 0x224]
cmp dword [eax + 0x80], 0
je 0x50ee5f
mov eax, dword [ebx + 0x224]
cmp dword [eax + 0x7c], 0
je 0x50ee5f
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x50ef03
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x50ef03
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
jne 0x50ee76
mov eax, dword [ebx + 0x268]
call fcn.00522e80
push 0x101
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
cmp dword [ebx + 0x268], 0
je 0x50eef8
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00522d18
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
jmp 0x50ef1d
xor edx, edx
mov eax, ebx
call fcn.00509390
jmp 0x50ef1d
push 0x921
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x24c]
call fcn.004dd4fc
jmp 0x50ef46
cmp byte [esp + 0x10], 0
je 0x50ef46
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
mov eax, dword [ebx + 0x24c]
call fcn.00458860
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.00406bf8
lea esi, [esp + 0x84]
lea edi, [ebx + 0x1f8]
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.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50efb3
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x50efb3
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
jmp 0x50f018
mov eax, dword [esi + 4]
sub eax, 2
jne 0x50f018
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50f018
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x50f018
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov byte [eax + 0x232], 1
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp 0x50f018
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 0x24c]
call fcn.00458860
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.00406bf8
lea esi, [esp + 0x84]
lea edi, [ebx + 0x1f8]
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.0x50d054.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, ebx
call fcn.0051b5f4
xor eax, eax
call fcn.004c9720
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x50f1db
cmp byte [ebx + 0x21f], 0
jne 0x50f1db
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
test eax, eax
je 0x50f1db
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x50f1db
mov byte [ebx + 0x21f], 1
cmp dword [0x554a08], 0
jne 0x50f107
mov ecx, dword [0x555e70]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x46ec24]
call fcn.00471704
mov dword [0x554a08], eax
mov eax, dword [0x554a08]
mov dword [eax + 0xc], 0xffffff9e
xor edx, edx
mov eax, dword [0x554a08]
call fcn.00472558
mov edx, 0x5136e0
mov eax, dword [0x554a08]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [0x554a08]
mov dword [eax + 0x2bc], ebx
mov dword [eax + 0x2b8], 0x519fb0
xor edx, edx
mov eax, dword [0x554a08]
call fcn.00472ed8
push 0x58
push 0xf
call sub.user32.dll_GetSystemMetrics
dec eax
add eax, 4
push eax
push 0x3c
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov edx, dword [ebx + 0x268]
call fcn.00508744
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.005087ac
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x44]
add edi, eax
push edi
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov edx, dword [ebx + 0x268]
call fcn.00508744
push eax
lea edx, [esp + 0x98]
mov eax, dword [ebx + 0x24c]
call fcn.004587b8
mov eax, dword [esp + 0xa0]
sub eax, 0x3c
pop edx
sub eax, edx
push eax
push 0
mov eax, dword [0x554a08]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov byte [ebx + 0x21f], 0
cmp dword [0x554a08], 0
je 0x50f208
mov eax, 0x554a08
call fcn.0040ea00
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0x21c], 0
je 0x50f232
mov byte [ebx + 0x21c], 0
mov eax, ebx
call fcn.0051b914
mov dl, 1
mov eax, ebx
call fcn.0050a2dc
test eax, eax
je 0x50f245
cmp byte [ebx + 0x78], 0
jne 0x50f258
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, ebx
call fcn.0050bccc
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
add eax, 0xfffffff8
sub eax, 2
jb 0x50f274
sub eax, 0xa
jne 0x50f28c
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50f28c
mov dl, 1
mov eax, ebx
call fcn.0051adbc
mov eax, dword [esi + 0xc]
sub eax, 3
jb 0x50f2a5
sub eax, 2
je 0x50f2a5
add eax, 0xfffffffb
sub eax, 8
jae 0x50f3c1
mov eax, ebx
call fcn.00508ad0
test al, al
je 0x50f3ae
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edi, dword [eax + 0x180]
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov edx, edi
call fcn.004f43e4
test al, al
je 0x50f3ae
lea eax, [esp + 8]
push eax
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00517fa8
cmp dword [ebx + 0x268], 0
je 0x50f374
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, ebx
call fcn.00518aec
mov ebp, dword [esp + 0x78]
mov eax, dword [ebx + 0x268]
call fcn.00508870
sub ebp, eax
lea edx, [esp + 0x84]
mov eax, ebx
call fcn.0051b5bc
sub ebp, dword [esp + 0x88]
cmp ebp, dword [esp + 0xc]
jge 0x50f3ae
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, ebx
call fcn.00518aec
mov edi, dword [esp + 0x7c]
mov eax, dword [ebx + 0x268]
call fcn.005088ac
sub edi, eax
lea edx, [esp + 0x94]
mov eax, ebx
call fcn.0051b5bc
sub edi, dword [esp + 0x94]
cmp edi, dword [esp + 8]
jge 0x50f3ae
mov dword [esi + 0xc], 0x11
jmp case.0x50d054.0
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, ebx
call fcn.00518aec
mov eax, dword [esp + 0x78]
cmp eax, dword [esp + 0xc]
jge 0x50f3ae
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, ebx
call fcn.00518aec
mov eax, dword [esp + 0x7c]
cmp eax, dword [esp + 8]
jge 0x50f3ae
mov dword [esi + 0xc], 0x11
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0x58], 1
jne case.0x50d054.0
cmp dword [0x557fd4], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x50d054.0
mov eax, dword [esi + 0xc]
sub eax, 2
je 0x50f3ff
add eax, 0xfffffff8
sub eax, 8
jae case.0x50d054.0
mov eax, dword [esi + 0xc]
mov dword [0x557fd4], eax
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
mov cl, 1
or edx, 0xffffffff
mov eax, ebx
call fcn.005148fc
mov byte [0x5549fc], 0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
mov eax, dword [ebx + 0x54]
call fcn.004fe590
pop edx
call fcn.004fb078
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
cmp byte [eax + 0x38], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 1
cmp eax, 1
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
call fcn.00522f04
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov byte [ebx + 0x43], 0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je case.0x50d054.0
mov eax, ebx
call fcn.00519a04
jmp case.0x50d054.0
cmp byte [ebx + 0x78], 0
je 0x50fa38
cmp dword [ebx + 0x268], 0
je 0x50f525
cmp dword [esi + 4], 0x13
jne 0x50f525
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x50f544
cmp dword [esi + 4], 0xffffffff
jne 0x50f544
mov edx, esi
mov eax, dword [ebx + 0x268]
call fcn.00520eec
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, 8
jge 0x50f55f
sub eax, 3
je 0x50f5e2
sub eax, 2
je 0x50f5cf
jmp 0x50f71a
add eax, 0xfffffff8
sub eax, 2
jb 0x50f57b
add eax, 0xfffffff6
sub eax, 2
jb 0x50f57b
add eax, 0xffffffb1
sub eax, 3
jae 0x50f71a
cmp dword [0x554a04], 0
je 0x50f5c0
cmp dword [esi + 4], 0x67
jne 0x50f5a2
mov eax, dword [0x554a04]
mov eax, dword [eax + 0x254]
mov edx, dword [eax]
call dword [edx + 0x54]
test al, al
je case.0x50d054.0
cmp dword [esi + 4], 0x66
jne 0x50f5c0
mov eax, dword [0x554a04]
mov eax, dword [eax + 0x254]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
je case.0x50d054.0
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00514cd8
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
xor eax, eax
mov dword [esi + 0xc], eax
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 0xc], 0
jne case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov byte [0x5549fc], 0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0x58], 0
jne 0x50f636
mov eax, 0xc8
call fcn.00525b78
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50f698
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je case.0x50d054.0
lea edx, [esp + 8]
mov eax, ebx
call fcn.00517b64
mov eax, dword [ebx + 0x24c]
call fcn.005087ac
add eax, dword [esp + 0xc]
add eax, 4
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
shl eax, 4
pop ecx
sub ecx, eax
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00517c70
jmp case.0x50d054.0
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00517b64
mov esi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.0050a124
add esi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0052578c
add esi, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov edx, dword [ebx + 0x268]
call fcn.00508798
add esi, eax
push esi
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov edx, dword [ebx + 0x268]
call fcn.00508744
mov esi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00517b64
add esi, dword [esp + 0x80]
mov edx, esi
mov eax, ebx
pop ecx
call fcn.00517c70
jmp case.0x50d054.0
mov eax, dword [ebx + 0x4c]
call fcn.0041b140
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [esi + 4]
mov edx, 0x3e8
call fcn.00525650
test al, al
je 0x50f77c
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00514cd8
mov al, byte [0x5136ec]
push eax
movsx eax, word [esi + 8]
push eax
movsx eax, word [esi + 0xa]
push eax
mov edx, dword [esi + 4]
sub edx, 0x3e8
mov eax, dword [ebx + 0x4c]
call fcn.0051e78c
mov edx, dword [esi + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0051e904
jmp case.0x50d054.0
mov eax, dword [esi + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00525650
test al, al
je 0x50f7dc
cmp dword [ebx + 0xac], 0
je case.0x50d054.0
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00514cd8
movsx eax, word [esi + 8]
push eax
movsx eax, word [esi + 0xa]
push eax
mov edx, dword [esi + 4]
sub edx, 0x7d0
mov eax, dword [ebx + 0xac]
mov eax, dword [eax + 0x34]
call fcn.00496814
mov cl, byte [0x5136ec]
xor edx, edx
call fcn.00496074
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x50f80d
push 0
mov ecx, 0xf012
mov edx, 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045a01c
jmp case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x50f86a
lea eax, [esp + 0x74]
push eax
movsx ecx, word [esi + 0xa]
xor edx, edx
mov eax, ebx
call fcn.00517fa8
mov edi, dword [esp + 0x78]
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov cl, 1
mov edx, dword [ebx + 0x268]
call fcn.00508798
mov ebp, eax
mov dl, 1
mov eax, ebx
call fcn.0050a2dc
add ebp, eax
cmp edi, ebp
jle 0x50f9ff
push 0
lea eax, [esp + 0x15]
push eax
push 0
push 0x26
call sub.user32.dll_SystemParametersInfoA
cmp byte [esp + 0x11], 0
je 0x50f9ec
cmp byte [ebx + 0x58], 1
jne 0x50f946
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x50f946
mov eax, dword [esi + 4]
sub eax, 5
je 0x50f946
mov eax, dword [esi + 4]
sub eax, 2
je 0x50f8bb
sub eax, 3
jne 0x50f8c9
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi + 4]
add eax, 0xfffffff6
sub eax, 8
setb al
xor al, 1
mov byte [0x557fb0], al
lea ecx, [esp + 8]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.00406c14
cmp byte [0x557fb0], 0
je 0x50f915
push 0
push 0xf010
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x50f932
push 0
push 0xf000
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00518e18
jmp case.0x50d054.0
cmp dword [esi + 4], 2
jne 0x50f9d9
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x50f9d9
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp byte [eax + 6], 0
je 0x50f9d9
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x50f9d9
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp byte [eax + 8], 0xff
je 0x50f9d9
cmp byte [ebx + 0x94], 0
je 0x50f9d9
cmp byte [ebx + 0x244], 0
jne 0x50f9bc
mov byte [ebx + 0x244], 1
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetFocus
mov eax, ebx
call fcn.00507e0c
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22e], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp case.0x50d054.0
mov eax, dword [esi + 4]
sub eax, 3
jne 0x50fb22
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov byte [0x5549fc], 0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x50faa0
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je case.0x50d054.0
lea edx, [esp + 8]
mov eax, ebx
call fcn.00517b64
mov dl, 1
mov eax, ebx
call fcn.0050a2dc
mov ecx, eax
add ecx, dword [esp + 0xc]
add ecx, 4
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00517c70
jmp case.0x50d054.0
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00517b64
mov esi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.0050a124
add esi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0052578c
add esi, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov edx, dword [ebx + 0x268]
call fcn.00508798
add esi, eax
push esi
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov cl, 1
mov edx, dword [ebx + 0x268]
call fcn.00508744
mov esi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00517b64
add esi, dword [esp + 0x80]
mov edx, esi
mov eax, ebx
pop ecx
call fcn.00517c70
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp dword [esi + 4], 0x2f
jne 0x50fb96
cmp dword [ebx + 0x218], 0
je 0x50fb96
mov eax, dword [ebx + 0x218]
mov edx, dword [0x507114]
call fcn.00403b34
test al, al
je 0x50fb96
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edi, dword [ebx + 0x218]
mov eax, edi
call fcn.00524e8c
fild dword [edi + 0x60]
fstp qword [edi + 0x70]
wait
fild dword [edi + 0x64]
fstp qword [edi + 0x78]
wait
fild dword [edi + 0x68]
fstp qword [edi + 0x80]
wait
fild dword [edi + 0x6c]
fstp qword [edi + 0x88]
wait
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [0x555d48]
cmp dword [eax], 0
je 0x50fbdc
mov eax, dword [0x555d48]
mov eax, dword [eax]
test byte [eax + 0x1c], 0x10
jne 0x50fbdc
mov eax, dword [0x555d48]
mov eax, dword [eax]
xor edx, edx
call fcn.004fb078
cmp byte [ebx + 0x58], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x50d054.0
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.00406c14
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x24c]
call fcn.00458930
mov eax, dword [esp + 8]
mov dword [esp + 4], eax
mov edi, dword [esp + 0xc]
cmp byte [0x557fb0], 0
je 0x50fca7
cmp byte [0x5549ec], 0
je 0x50fc42
mov byte [0x5549ec], 0
cmp byte [0x5549e4], 0
je case.0x50d054.0
mov ecx, dword [0x557fbc]
mov edx, dword [0x557fc0]
mov eax, ebx
call fcn.00519018
mov eax, dword [esp + 4]
sub eax, dword [0x557fcc]
add dword [0x557fc0], eax
mov eax, edi
sub eax, dword [0x557fd0]
add dword [0x557fbc], eax
mov dword [0x557fd0], edi
mov eax, dword [esp + 4]
mov dword [0x557fcc], eax
mov ecx, dword [0x557fbc]
mov edx, dword [0x557fc0]
mov eax, ebx
call fcn.00519018
jmp case.0x50d054.0
cmp byte [0x5549ec], 0
je 0x50fcc6
mov eax, dword [esp + 4]
mov dword [0x557fcc], eax
mov dword [0x557fd0], edi
mov byte [0x5549ec], 0
cmp byte [0x5549e4], 0
je case.0x50d054.0
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.00519018
mov eax, dword [0x557fd4]
add eax, 0xfffffff6
cmp eax, 6
ja case.default.0x50fcef
jmp dword [eax*4 + 0x50fcf6]
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc0], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [0x557fc8]
sub eax, dword [0x557fdc]
mov dword [0x557fc0], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc8], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [0x557fdc]
mov dword [0x557fc8], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x557fd0]
mov dword [0x557fc4], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
add eax, dword [0x557fd8]
mov dword [0x557fc4], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
add edi, dword [eax + 0x44]
sub edi, dword [0x557fd0]
mov dword [0x557fbc], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x510057
mov eax, dword [0x557fc4]
sub eax, dword [0x557fd8]
mov dword [0x557fbc], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x557fd0]
mov dword [0x557fc4], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x50fe7f
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
add eax, dword [0x557fd8]
mov dword [0x557fc4], eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc0], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [0x557fc8]
sub eax, dword [0x557fdc]
mov dword [0x557fc0], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
add edi, dword [eax + 0x44]
sub edi, dword [0x557fd0]
mov dword [0x557fbc], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x50fefb
mov eax, dword [0x557fc4]
sub eax, dword [0x557fd8]
mov dword [0x557fbc], eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc8], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [0x557fdc]
mov dword [0x557fc8], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
add edi, dword [eax + 0x44]
sub edi, dword [0x557fd0]
mov dword [0x557fbc], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x50ff84
mov eax, dword [0x557fc4]
sub eax, dword [0x557fd8]
mov dword [0x557fbc], eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc0], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [0x557fc8]
sub eax, dword [0x557fdc]
mov dword [0x557fc0], eax
jmp 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x557fd0]
mov dword [0x557fc4], edi
mov eax, dword [0x557fc4]
sub eax, dword [0x557fbc]
cmp eax, dword [0x557fd8]
jge 0x51000f
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
add eax, dword [0x557fd8]
mov dword [0x557fc4], eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x24c]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x557fcc]
mov dword [0x557fc8], eax
mov eax, dword [0x557fc8]
sub eax, dword [0x557fc0]
cmp eax, dword [0x557fdc]
jge 0x510057
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x40]
add eax, dword [0x557fdc]
mov dword [0x557fc8], eax
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.00519018
jmp case.0x50d054.0
mov eax, dword [esi + 4]
add eax, 0xfffffffe
sub eax, 2
jb case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, ebx
call fcn.005097d0
test al, al
je 0x5100f6
cmp dword [ebx + 0x268], 0
je 0x5100b5
cmp dword [esi + 4], 0xffffffff
jne 0x5100b5
mov edx, esi
mov eax, dword [ebx + 0x268]
call fcn.00520eec
mov dword [esi + 4], eax
jmp 0x5100c1
mov edx, esi
mov eax, ebx
call fcn.0050bccc
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add eax, 0xfffffffe
sub eax, 2
jae case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov byte [0x5549fc], 0
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00517c70
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0x78], 0
je 0x51074b
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x51074b
cmp dword [ebx + 0x268], 0
je 0x510145
cmp dword [esi + 4], 0xffffffff
jne 0x510145
mov edx, esi
mov eax, dword [ebx + 0x268]
call fcn.00520eec
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, 0x15
jg 0x51016d
je 0x510436
sub eax, 8
je 0x5102eb
dec eax
je 0x510206
sub eax, 0xb
je 0x510189
jmp 0x51057d
sub eax, 0x65
je 0x5104a4
dec eax
je 0x5104ea
dec eax
je 0x51052c
jmp 0x51057d
cmp byte [0x5549fc], 0
je case.0x50d054.0
xor eax, eax
mov dword [ebx + 0x130], eax
push 0
push 0xf060
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x50d054.0
mov eax, ebx
call fcn.0051b5f4
cmp dword [ebx + 0x24c], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x57], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp case.0x50d054.0
mov eax, dword [ebx + 0x254]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x51023b
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne case.0x50d054.0
mov eax, dword [ebx + 0x254]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
je case.0x50d054.0
cmp byte [0x5549fc], 0
je 0x5102cd
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x510269
xor eax, eax
mov dword [0x554a04], eax
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x510297
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x5102b4
push 0
push 0xf030
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
mov byte [0x5549fc], 0
jmp case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [0x5549fc], 0
je 0x510418
cmp dword [ebx + 0x268], 0
je 0x51032c
movsx edx, word [esi + 0xa]
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
sub edx, dword [eax + 0x44]
movsx eax, word [esi + 8]
mov ecx, dword [ebx + 0x268]
mov ecx, dword [ecx + 0x18]
sub eax, dword [ecx + 0x40]
lea ecx, [esp + 8]
call fcn.00406c14
jmp 0x510340
lea eax, [esp + 8]
push eax
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00517fa8
lea edx, [esp + 8]
lea eax, [ebx + 0xe8]
call fcn.00406c1c
test al, al
je 0x510405
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne 0x5103a1
mov byte [ebx + 0x222], 1
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov byte [ebx + 0x222], 0
jmp 0x5103f2
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x5103d5
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x5103f2
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov byte [ebx + 0xba], 1
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [0x5549fc], 0
je 0x510494
push 0
push 0xf180
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
xor edx, edx
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
mov byte [0x5549fc], 0
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, dword [ebx + 0x24c]
call fcn.0045a01c
jmp case.0x50d054.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp case.0x50d054.0
cmp byte [0x5549fc], 0
je case.0x50d054.0
mov byte [0x5549fc], 0
push 0
push 0xf060
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp case.0x50d054.0
cmp byte [0x5549fc], 0
je 0x510515
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov byte [0x5549fc], 0
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp case.0x50d054.0
cmp byte [0x5549fc], 0
je 0x51056d
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.004fe330
mov byte [0x5549fc], 0
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp case.0x50d054.0
mov eax, dword [ebx + 0x4c]
call fcn.0041b140
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [esi + 4]
mov edx, 0x3e8
call fcn.00525650
test al, al
je 0x5105f0
cmp byte [0x5549fc], 0
je 0x5105d9
mov al, byte [0x5136ec]
push eax
movsx eax, word [esi + 8]
push eax
movsx eax, word [esi + 0xa]
push eax
mov edx, dword [esi + 4]
sub edx, 0x3e8
mov eax, dword [ebx + 0x4c]
call fcn.0051e78c
mov edx, dword [esi + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0051e92c
mov byte [0x5549fc], 0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
jmp 0x51073f
mov eax, dword [esi + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00525650
test al, al
je 0x51065e
cmp byte [0x5549fc], 0
je 0x510646
cmp dword [ebx + 0xac], 0
je 0x510646
movsx eax, word [esi + 8]
push eax
movsx eax, word [esi + 0xa]
push eax
mov edx, dword [esi + 4]
sub edx, 0x7d0
mov eax, dword [ebx + 0xac]
mov eax, dword [eax + 0x34]
call fcn.00496814
mov cl, byte [0x5136ec]
xor edx, edx
call fcn.004961f8
mov byte [0x5549fc], 0
mov edx, dword [esi + 4]
mov cl, 1
mov eax, ebx
call fcn.005148fc
jmp 0x51073f
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x5106ca
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x5106ba
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00517b64
mov esi, dword [esp + 0x74]
lea eax, [esp + 0x7c]
call fcn.004da2c4
add esi, dword [esp + 0x7c]
push esi
lea eax, [esp + 0xa8]
call fcn.004da2c4
mov ecx, dword [esp + 0xac]
mov eax, ebx
pop edx
call fcn.00517c70
jmp 0x51073f
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp 0x51073f
cmp byte [ebx + 0x58], 1
jne 0x510731
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x510731
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
je 0x510731
cmp byte [0x5549e4], 0
je 0x510731
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.00406c14
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x24c]
call fcn.00458930
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00518f18
call sub.user32.dll_ReleaseCapture
jmp 0x51073f
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov byte [0x5549fc], 0
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x224], 0
je 0x51078a
lea eax, [ebx + 0x224]
call fcn.0040ea00
mov eax, dword [ebx + 0x54]
call fcn.004fe590
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov edx, 3
pop ecx
call fcn.004ddc90
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x2f4], 1
jne 0x510810
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x57], 0
je 0x510810
mov eax, ebx
call fcn.00508b18
test al, al
jne 0x510810
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je 0x5107fd
mov dword [ebx + 0x250], 0xffffffff
mov byte [ebx + 0x232], 1
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
test byte [ebx + 0x1c], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x2f4], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor ecx, ecx
mov dl, 1
call fcn.00508a64
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x5108cc
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x5108cc
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
test eax, eax
je 0x5108cc
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x5108cc
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
cmp eax, dword [ebx + 0x24c]
jne case.0x50d054.0
cmp byte [ebx + 0xb9], 0
jne 0x5108e7
mov eax, ebx
call fcn.0051898c
test al, al
je 0x5108e7
mov byte [ebx + 0xb9], 1
mov ebp, dword [esi + 4]
mov eax, dword [ebx + 0x54]
mov dword [eax + 0x58], ebp
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
cmp dword [ebx + 0x268], 0
je 0x5109f2
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x510914
mov eax, ebx
call fcn.005160b8
push 0xcc0020
push 0
push 0
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_BitBlt
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
mov edx, eax
mov eax, ebp
pop ecx
call fcn.00457754
lea eax, [esp + 0x24]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.0052578c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00525778
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_IntersectClipRect
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
je 0x510c1d
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.00406c14
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [ebx + 0x24c]
mov eax, ebp
call fcn.004dd718
jmp 0x510c1d
cmp byte [ebx + 0x78], 0
je 0x510b35
mov eax, ebx
call fcn.005097d0
test al, al
jne 0x510b2c
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
call fcn.00509378
test al, al
je 0x510b2c
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x510a33
mov eax, ebx
call fcn.005160b8
mov eax, dword [ebx + 0x24c]
mov edi, dword [eax + 0x16c]
add edi, 3
push 0xcc0020
push 0
push 0
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
push edi
mov eax, dword [ebx + 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 [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
push edi
push edi
push 0
push ebp
call sub.gdi32.dll_BitBlt
push 0xcc0020
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x4c]
sub eax, edi
push eax
push edi
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
push edi
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x48]
sub eax, edi
push eax
mov eax, dword [ebx + 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 [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
sub eax, edi
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
push edi
push edi
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
sub eax, edi
push eax
push ebp
call sub.gdi32.dll_BitBlt
jmp 0x510b35
mov edx, ebp
mov eax, ebx
call fcn.005140dc
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
mov edx, eax
mov eax, ebp
pop ecx
call fcn.00457754
lea eax, [esp + 0x24]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.0052578c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00525778
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_IntersectClipRect
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 1
cmp ax, 1
je 0x510ba4
mov cl, 1
mov edx, ebp
mov eax, ebx
call fcn.0051437c
jmp 0x510c1d
push ebp
call sub.gdi32.dll_SaveDC
mov dword [esp], eax
push 0
push 0
xor ecx, ecx
mov edx, dword [ebx + 0x24c]
mov eax, ebp
call fcn.004e4190
mov cl, 1
mov edx, ebp
mov eax, ebx
call fcn.0051437c
mov eax, dword [esp]
push eax
push ebp
call sub.gdi32.dll_RestoreDC
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
je 0x510c1d
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.00406c14
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [ebx + 0x24c]
mov eax, ebp
call fcn.004dd718
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x510c46
push 0
push ebp
push 0x317
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
xor edx, edx
mov dword [eax + 0x58], edx
mov eax, dword [ebx + 0x24c]
cmp word [eax + 0x2ba], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.00473190
mov edx, ebp
call fcn.004277dc
mov esi, dword [ebx + 0x24c]
mov edx, dword [ebx + 0x24c]
mov eax, dword [esi + 0x2bc]
call dword [esi + 0x2b8]
mov eax, dword [ebx + 0x24c]
call fcn.00473190
xor edx, edx
call fcn.004277dc
jmp case.0x50d054.0
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
cmp dword [ebx + 0x254], 0
jne 0x510cbd
mov eax, ebx
call fcn.00519a04
cmp byte [ebx + 0x78], 0
je 0x510d24
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x400
cmp ax, 0x400
je case.0x50d054.0
mov eax, ebx
call fcn.005086e8
test al, al
je 0x510d0e
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x248]
cmp dword [eax + 0x38], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
je case.0x50d054.0
cmp byte [ebx + 0x21c], 0
je 0x510d3b
mov byte [ebx + 0x21c], 0
mov eax, ebx
call fcn.0051b914
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
je 0x510d62
mov eax, dword [ebx + 0x54]
call fcn.004fe5a4
mov edx, dword [ebx + 0x54]
mov byte [edx + 0x1c], al
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x50d054.0
cmp byte [ebx + 0x78], 0
je 0x510e2c
mov eax, dword [0x555a20]
cmp byte [eax], 0
je 0x510d89
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x510e2c
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x510da5
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp byte [ebx + 0x223], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je case.0x50d054.0
test byte [ebx + 0x1c], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x55], 2
jne case.0x50d054.0
cmp dword [ebx + 0x254], 0
je case.0x50d054.0
cmp dword [ebx + 0x228], 0
jne 0x510dfc
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
jne 0x510e1b
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004fbb4c
mov edx, eax
mov eax, ebx
call fcn.0051b3cc
mov eax, ebx
call fcn.0051a418
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x5111ac
cmp byte [ebx + 0xa6], 0
je 0x5111ac
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x50d054.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x54], 0x80
jne 0x5110f3
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x5110f3
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x510ee7
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x51101f
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
test eax, eax
je 0x51101f
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x51101f
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x510fe3
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x510fe3
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x510fe3
lea eax, [esp + 0x24]
push eax
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetClientRect
lea edx, [esp + 0x84]
mov eax, dword [ebx + 0x24c]
call fcn.004587b8
lea edx, [esp + 0x84]
lea eax, [esp + 0x24]
call fcn.00406c1c
test al, al
je 0x510fe3
lea edx, [esp + 0x84]
mov eax, dword [ebx + 0x24c]
call fcn.004587b8
lea edx, [esp + 0x8c]
lea eax, [esp + 0x24]
call fcn.00406c1c
test al, al
je 0x510fe3
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov cl, 1
mov edx, dword [ebx + 0x268]
call fcn.00508798
mov edi, eax
mov dl, 1
mov eax, ebx
call fcn.0050a2dc
add edi, eax
mov eax, ebx
call fcn.00518268
mov ebp, eax
mov eax, ebx
call fcn.00518970
imul ebp, eax
add edi, ebp
inc edi
push edi
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
pop edx
call fcn.0042ddf4
mov edx, eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.0051a214
cmp byte [0x554a00], 0
je 0x5111a0
mov byte [0x554a00], 0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x5111a0
mov dword [0x554a04], ebx
jmp 0x5111a0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x5111a0
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x5110e3
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
jne 0x5110e3
mov eax, dword [ebx + 0x24c]
call fcn.00458860
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.00406bf8
lea eax, [esp + 0x84]
push eax
mov eax, dword [esi + 4]
push eax
push 0
push 0
push 0
mov eax, ebx
call fcn.00518174
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.00458860
add edi, eax
push edi
lea eax, [esp + 0xac]
push eax
mov eax, ebx
call fcn.005180dc
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.0045881c
add edi, eax
push edi
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
pop edx
pop ecx
call fcn.00406bf8
lea ecx, [esp + 0xa8]
mov edx, dword [ebx + 0x54]
mov eax, dword [ebx + 0x24c]
call fcn.004ffcf8
mov eax, dword [ebx + 0x24c]
call fcn.004dd4fc
jmp 0x5111a0
cmp dword [esi + 4], 0
je 0x5111a0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
jne 0x5111a0
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x51115f
push 0xcc0020
mov eax, ebx
call fcn.00518174
push eax
mov eax, ebx
call fcn.005180dc
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.0042bc28
call fcn.0042775c
push eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x48]
push eax
push 0
push 0
mov eax, dword [esi + 4]
push eax
call sub.gdi32.dll_BitBlt
jmp 0x5111a0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004fd2d4
push eax
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x4c]
push eax
lea eax, [esp + 0x8c]
push eax
mov eax, dword [ebx + 0x24c]
mov ecx, dword [eax + 0x48]
xor edx, edx
xor eax, eax
call fcn.00406bf8
lea edx, [esp + 0x88]
mov eax, dword [esi + 4]
pop ecx
call fcn.004e3ef4
mov dword [esi + 0xc], 1
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0xa6], 0
je 0x51138e
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x54], 0x80
jne case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x511223
mov eax, ebx
call fcn.00508b18
test al, al
jne 0x511223
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je 0x511214
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x511223
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
mov eax, dword [ebx + 0x54]
call fcn.004fca1c
test al, al
je 0x5112de
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x5112ce
mov edx, esi
mov eax, ebx
call fcn.0051abb0
cmp byte [0x554a00], 0
je 0x51125f
mov byte [0x554a00], 0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x5112c4
cmp dword [esi + 4], 0
jne 0x511287
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetDC
mov ebp, eax
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.00406c14
lea eax, [esp + 0x74]
push eax
push 0
push 1
mov cl, 1
mov edx, dword [ebx + 0x24c]
mov eax, ebp
call fcn.004dd718
cmp dword [esi + 4], 0
jne 0x5112c4
push ebp
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_ReleaseDC
xor eax, eax
mov dword [esi + 0xc], eax
jmp 0x511352
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp 0x511352
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x511344
test byte [ebx + 0x1c], 8
jne 0x511311
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x511311
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
lea eax, [esp + 0x34]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_BeginPaint
lea eax, [esp + 0x34]
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_EndPaint
xor eax, eax
mov dword [esi + 0xc], eax
jmp 0x511352
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp byte [ebx + 0x78], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x248], 0
je case.0x50d054.0
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [0x555ecc]
cmp dword [eax], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045fa68
test al, al
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
call fcn.0050a3dc
jmp case.0x50d054.0
test byte [ebx + 0x1c], 8
jne 0x511a41
cmp byte [ebx + 0x78], 0
je 0x511a41
mov eax, dword [ebx + 0x24c]
call fcn.0045fa68
test al, al
je 0x511a41
cmp dword [ebx + 0x254], 0
jne 0x51141c
mov eax, ebx
call fcn.00519a04
or dword [ebx + 0x22c], 0x8000
mov eax, dword [ebx + 0x22c]
and eax, 0x80
cmp eax, 0x80
je 0x511445
cmp dword [esi + 4], 1
sbb eax, eax
inc eax
mov byte [ebx + 0x244], al
cmp byte [ebx + 0x244], 0
jne 0x511463
cmp byte [ebx + 0x221], 3
jne 0x511463
mov byte [ebx + 0x221], 0
jmp 0x511514
cmp byte [ebx + 0x221], 3
je 0x511502
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x28], 0
jl 0x5114ef
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x24], 0
jl 0x5114ca
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xc8]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x24]
mov ecx, edx
shl edx, 3
sub edx, ecx
cmp word [eax + edx*8 + 0x1c], 1
jg 0x5114c1
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xd0]
mov edx, dword [ebx + 0x54]
imul edx, dword [edx + 0x28], 0x43
cmp dword [eax + edx*4 + 8], 1
jle 0x5114f6
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp 0x5114f6
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0xd0]
mov edx, dword [ebx + 0x54]
imul edx, dword [edx + 0x28], 0x43
cmp dword [eax + edx*4 + 8], 1
jle 0x5114f6
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp 0x5114f6
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb20
jmp 0x511514
cmp dword [ebx + 0x268], 0
sete dl
mov eax, dword [ebx + 0x54]
call fcn.004feb20
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x51179f
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x51179f
cmp word [esi + 4], 0
setne al
cmp al, byte [ebx + 0x244]
je 0x511557
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
call fcn.005089d0
test al, al
je 0x511661
cmp dword [ebx + 0x268], 0
jne 0x511589
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x5116b9
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x5116b9
mov eax, ebx
call fcn.00518268
test eax, eax
jle 0x5116b9
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
jne 0x5115bc
mov eax, dword [ebx + 0x268]
call fcn.00522e80
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00522d18
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x2e0], 0
je 0x51161c
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
mov edx, dword [ebx + 0x24c]
xor ecx, ecx
mov cl, byte [edx + 0x2e1]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
call fcn.005076c0
jmp 0x51163c
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, 0xff
call fcn.005076c0
push 0x613
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
jmp 0x5116b9
cmp byte [ebx + 0x223], 0
jne 0x511673
cmp byte [ebx + 0x21c], 0
je 0x51168c
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x5116b9
cmp dword [ebx + 0x268], 0
je 0x5116a0
mov eax, ebx
call fcn.005086e8
test al, al
je 0x5116b9
mov eax, dword [ebx + 0x24c]
cmp word [eax + 0x2ba], 0
jne 0x5116b9
xor edx, edx
mov eax, ebx
call fcn.00508eb8
cmp dword [ebx + 0x268], 0
je 0x5116dd
cmp byte [ebx + 0x223], 0
jne 0x5116dd
call fcn.005089d0
test al, al
jne 0x5116dd
xor edx, edx
mov eax, ebx
call fcn.00509390
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
call fcn.005089d0
test al, al
je 0x511734
cmp dword [ebx + 0x268], 0
jne 0x5117ad
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
push 0x181
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp 0x5117ad
cmp byte [ebx + 0x223], 0
jne 0x511746
cmp byte [ebx + 0x21c], 0
je 0x51175f
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x51177a
cmp dword [ebx + 0x268], 0
je 0x511773
mov eax, ebx
call fcn.005086e8
test al, al
je 0x51177a
mov eax, ebx
call fcn.005091b4
cmp byte [ebx + 0x21c], 0
je 0x5117ad
push 0x85
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp 0x5117ad
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x24c], 0
je 0x511895
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x57], 0
je 0x511895
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x511895
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x2f4], 0x10
je 0x511895
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x2f4], 4
je 0x511895
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x511895
mov eax, dword [0x555f5c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x511895
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x240]
call fcn.004a0d60
push 0
push 0
push 0x85
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
push 0
push 0
push 0x85
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_SendMessageA
push 0xffffffffffffffec
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x80000
cmp eax, 0x80000
jne 0x5118cd
cmp dword [ebx + 0x218], 0
jne 0x5118cd
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x54], 0x40
jne case.0x50d054.0
mov eax, ebx
call fcn.005097d0
test al, al
je 0x511983
mov eax, dword [ebx + 0x22c]
and eax, 0x80
cmp eax, 0x80
je 0x511983
mov eax, ebx
call fcn.00518904
test al, al
je 0x51195b
cmp word [esi + 4], 0
jne 0x511928
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22e], 0
je 0x511983
cmp word [esi + 4], 0
jne 0x511947
mov eax, dword [ebx + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22e], 0
jne 0x511947
xor eax, eax
jmp 0x511949
mov al, 1
mov byte [ebx + 0x244], al
mov dword [ebx + 0x250], 0xffffffff
jmp 0x511983
cmp word [esi + 4], 0
setne al
cmp al, byte [ebx + 0x244]
je 0x511983
cmp word [esi + 4], 0
setne al
mov byte [ebx + 0x244], al
mov dword [ebx + 0x250], 0xffffffff
and dword [ebx + 0x22c], 0xffff7fff
cmp dword [ebx + 0x218], 0
je 0x5119a2
mov eax, dword [ebx + 0x218]
cmp byte [eax + 0x30], 0
jne 0x511a0f
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.0051bb14
cmp dword [ebx + 0x268], 0
je 0x511a0f
mov eax, dword [ebx + 0x24c]
mov al, byte [eax + 0x22b]
sub al, 1
jb 0x511a00
dec al
jne 0x511a0f
mov eax, dword [0x555974]
cmp byte [eax], 0
je 0x5119ef
lea eax, [ebx + 0x268]
call fcn.0040ea00
xor edx, edx
mov eax, ebx
call fcn.00509390
jmp 0x511a0f
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp 0x511a0f
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
mov eax, ebx
call fcn.00519988
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb24
test al, al
je case.0x50d054.0
cmp dword [ebx + 0x228], 0
jne case.0x50d054.0
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 4], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x100
cmp eax, 0x100
je case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x511ab7
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne case.0x50d054.0
cmp dword [esi + 4], 1
jne case.0x50d054.0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp byte [eax + 0x22b], 1
jne case.0x50d054.0
cmp dword [ebx + 0x218], 0
je 0x511b0a
mov eax, dword [ebx + 0x218]
cmp byte [eax + 0xec], 0
jne case.0x50d054.0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
xor edx, edx
call fcn.00473650
push 0xffffffffffffffff
push 0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0045f764
push eax
call sub.user32.dll_InvalidateRect
push 0x585
push 0
push 0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x511c33
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x511c33
mov eax, dword [0x555f5c]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne 0x511c33
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
je 0x511bfd
mov byte [ebx + 0xb9], 0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov byte [eax + 0x232], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x511c33
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
mov al, 1
call fcn.0050c4c8
mov dword [0x554a04], ebx
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x511cfc
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x224], 0
jne 0x511c7d
cmp byte [ebx + 0x78], 0
je 0x511c7d
lea edx, [ebx + 0x224]
xor ecx, ecx
mov eax, ebx
call fcn.005096cc
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x54], 0x40
jne case.0x50d054.0
mov dword [ebx + 0x250], 0xffffffff
cmp word [esi + 4], 1
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test byte [eax + 0x1c], 0x10
jne 0x511cc3
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.004feb24
mov edx, eax
mov eax, ebx
call fcn.00518d9c
cmp dword [ebx + 0x254], 0
je 0x511cd9
xor edx, edx
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x229], 0
jne case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.004dd4fc
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0x21c], 0
je 0x511d42
cmp dword [esi + 4], 1
jne 0x511d42
mov byte [ebx + 0x21c], 0
mov eax, ebx
call fcn.0051b914
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004fbb4c
mov edx, eax
mov eax, ebx
call fcn.0051b3cc
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [esi + 4], 0
jne 0x511d97
cmp dword [ebx + 0x54], 0
je 0x511d8b
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x511d8b
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne 0x511d8b
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, ebx
call fcn.0051b5f4
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.004dd4fc
jmp case.0x50d054.0
cmp byte [ebx + 0x58], 1
jne 0x511e05
cmp byte [0x5549e4], 0
je 0x511e05
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.00406c14
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x24c]
call fcn.00458930
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00518f18
call sub.user32.dll_ReleaseCapture
mov byte [0x5549e4], 0
mov byte [0x5549e8], 0
mov eax, dword [esi + 4]
sub eax, 2
je 0x511e40
dec eax
jne 0x511f40
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0x58], 0
jne 0x511e30
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
mov eax, dword [ebx + 0x24c]
call fcn.004758cc
jmp case.0x50d054.0
cmp byte [ebx + 0x43], 0
je 0x511e64
mov eax, dword [ebx + 0x254]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x511e88
mov eax, dword [ebx + 0x254]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
jne 0x511e88
mov eax, ebx
call fcn.005097d0
test al, al
jne 0x511ef7
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x511ef7
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
je 0x511eac
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x511ecb
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
jmp 0x511ee8
push 0
push 0xf030
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
jmp 0x511f36
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x511f36
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
xor eax, eax
mov dword [esi + 4], eax
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 2
jne 0x511f72
mov eax, dword [0x555f5c]
cmp ebx, dword [eax]
jne 0x511f72
mov eax, dword [0x555f5c]
mov dword [eax], ebx
mov eax, ebx
call fcn.005086e8
test al, al
je 0x511fc4
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x511fc4
mov eax, dword [esi + 8]
cmp dword [eax], 1
jne 0x511fc4
mov eax, dword [esi + 8]
mov edx, dword [eax + 8]
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x248]
xor ecx, ecx
call fcn.0046c670
mov edi, eax
test edi, edi
je 0x511fc4
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x44]
mov cl, 1
mov edx, edi
call fcn.00504a7c
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x5121da
mov ax, word [esi + 4]
sub ax, 0xf012
je 0x512013
sub ax, 0xe
je 0x512089
sub ax, 0x10
je 0x512026
sub ax, 0xf0
je 0x5120d2
jmp 0x5121da
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x5121da
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
jne 0x5121da
cmp dword [ebx + 0x218], 0
je 0x5121da
mov eax, dword [ebx + 0x218]
cmp byte [eax + 0xec], 0
je 0x5121da
call fcn.00525690
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005256c0
mov eax, ebx
call fcn.00507bf8
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov al, byte [esp + 0x12]
call fcn.005256c0
jmp case.0x50d054.0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
je 0x5121da
call fcn.00525690
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005256c0
mov eax, ebx
call fcn.005079e4
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov al, byte [esp + 0x12]
call fcn.005256c0
jmp case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
jne 0x51212d
and dword [ebx + 0x22c], 0xfffffdff
cmp dword [ebx + 0x268], 0
je 0x512101
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
call fcn.00525690
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005256c0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov al, byte [esp + 0x12]
call fcn.005256c0
jmp case.0x50d054.0
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
je 0x5121da
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x51218b
call fcn.00525690
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005256c0
mov eax, ebx
call fcn.00507bf8
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov al, byte [esp + 0x12]
call fcn.005256c0
jmp case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x5121a0
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je 0x5121b4
cmp dword [ebx + 0x268], 0
jne 0x5121da
mov eax, ebx
call fcn.0050c740
test al, al
je 0x5121da
cmp dword [ebx + 0x268], 0
je 0x5121c8
lea eax, [ebx + 0x268]
call fcn.0040ea00
mov dl, 1
mov eax, ebx
call fcn.0051b3cc
xor edx, edx
mov eax, ebx
call fcn.00509390
cmp byte [ebx + 0x58], 1
jne 0x51225d
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x51225d
cmp byte [0x5549e4], 0
jne 0x51225d
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf010
jne 0x512228
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetCapture
mov byte [0x5549ec], 1
mov byte [0x557fb0], 1
jmp 0x51225d
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf000
jne 0x51225d
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetCapture
xor eax, eax
mov dword [0x557fd4], eax
mov byte [0x5549ec], 1
mov byte [0x557fb0], 0
mov eax, dword [ebx + 0x24c]
mov al, byte [eax + 0x22f]
dec al
je 0x51227a
dec al
je 0x51263b
jmp 0x5126ca
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 2
jne 0x5122a1
cmp dword [esi + 4], 0xf030
je 0x5122a1
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 0
jne 0x5122a5
xor eax, eax
jmp 0x5122a7
mov al, 1
mov byte [esp + 0x10], al
cmp byte [esp + 0x10], 0
je 0x5122cb
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x5122cb
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.004fe330
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf060
jg 0x5122f5
je 0x51230e
sub eax, 0xf020
je 0x512514
sub eax, 0x10
je 0x512550
jmp 0x512609
sub eax, 0xf100
je 0x512617
sub eax, 0x20
je 0x5123c4
jmp 0x512609
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x512617
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x512344
mov eax, dword [0x555f5c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x512344
cmp byte [esp + 0x10], 0
je 0x512344
mov al, 1
call fcn.0050c4c8
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov byte [eax + 0x21f], 1
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne 0x51237d
test byte [ebx + 0x1c], 8
jne 0x51237d
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005148fc
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov byte [eax + 0x21f], 0
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je case.0x50d054.0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je case.0x50d054.0
cmp byte [esp + 0x10], 0
je case.0x50d054.0
mov al, 1
call fcn.0050c4c8
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 1
jne 0x5123d8
mov byte [esp + 0x10], 1
cmp byte [0x554a00], 0
jne case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp byte [ebx + 0x78], 0
je 0x51242c
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xfff7ffff
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowLongA
push 0x505
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x5124f4
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fdc
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x5124f4
inc ebp
xor edi, edi
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.00473028
cmp eax, dword [ebx + 0x24c]
je 0x5124f0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.00473028
cmp byte [eax + 0x22b], 2
jne 0x5124c8
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.00473028
xor edx, edx
call fcn.00473650
push 0x506
push 0
push 0
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
mov edx, edi
call fcn.00473028
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
inc edi
dec ebp
jne 0x512474
cmp byte [esp + 0x10], 0
je 0x512502
mov al, 1
call fcn.0050c4c8
mov dl, 1
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp byte [esp + 0x10], 0
je 0x512530
mov al, 1
call fcn.0050c4c8
mov dl, 1
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov al, 1
call fcn.0050c4c8
jmp case.0x50d054.0
mov dword [0x554a04], ebx
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xefffffff
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowLongA
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x10000000
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowLongA
push 0x506
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x5125f7
mov eax, dword [0x555f5c]
mov eax, dword [eax]
cmp dword [eax + 0x240], 0
je 0x5125f7
mov al, 1
call fcn.0050c4c8
mov dl, 1
mov eax, dword [ebx + 0x254]
call fcn.0051e2e8
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [0x555f5c]
cmp dword [eax], 0
je 0x51291c
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
xor edx, edx
call fcn.004fe4fc
jmp 0x51291c
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi + 4]
sub eax, 0xf020
je 0x512663
sub eax, 0x10
je 0x512663
sub eax, 0xf0
jne 0x51291c
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov dword [eax + 0x250], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SendMessageA
cmp dword [esi + 4], 0xf030
jne 0x51291c
cmp dword [ebx + 0x268], 0
je 0x51291c
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp 0x51291c
mov eax, dword [esi + 4]
sub eax, 0xf030
je 0x5126db
sub eax, 0xf0
jne 0x512702
cmp dword [ebx + 0x268], 0
je 0x512702
mov eax, dword [0x555974]
cmp byte [eax], 0
jne 0x5126f7
cmp dword [esi + 4], 0xf120
jne 0x512702
lea eax, [ebx + 0x268]
call fcn.0040ea00
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi + 4]
sub eax, 0xf030
je 0x51283f
sub eax, 0xd0
je 0x512733
sub eax, 0x20
je 0x51283f
jmp 0x51291c
cmp word [esi + 8], 0x20
jne 0x51291c
cmp byte [ebx + 0x43], 0
je 0x51291c
mov eax, ebx
call fcn.005097d0
test al, al
je 0x51291c
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x5127d7
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00517b64
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.0050a124
add edi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0052578c
add edi, eax
sub edi, 0x10
push edi
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov cl, 1
mov edx, dword [ebx + 0x268]
call fcn.00508744
mov edi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00517b64
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, ebx
pop ecx
call fcn.00517c70
jmp 0x51291c
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00517b64
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.0050a124
add edi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0052578c
add edi, eax
push edi
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov cl, 1
mov edx, dword [ebx + 0x268]
call fcn.00508744
mov edi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00517b64
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, ebx
pop ecx
call fcn.00517c70
jmp 0x51291c
mov eax, dword [ebx + 0x254]
mov edx, dword [eax]
call dword [edx + 0x48]
test al, al
je 0x512855
mov dword [ebx + 0x38], 9
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005148fc
cmp dword [esi + 4], 0xf120
jne 0x51291c
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov byte [ebx + 0xba], 1
mov eax, ebx
call fcn.005097d0
test al, al
jne 0x51289d
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
jmp 0x51291c
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x512902
mov eax, dword [ebx + 0x54]
call fcn.004fe590
call fcn.004fbb4c
test al, al
je 0x512902
cmp byte [ebx + 0x79], 0
je 0x512902
cmp byte [ebx + 0x78], 0
je 0x512902
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
jne 0x512902
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x512902
mov dl, 1
mov eax, ebx
call fcn.0051b3cc
cmp dword [ebx + 0x268], 0
je 0x512902
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_RedrawWindow
mov ax, word [esi + 4]
sub ax, 0xf020
jne case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x512945
mov byte [ebx + 0x223], 0
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x100
cmp eax, 0x100
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 1
mov eax, dword [ebx + 0x268]
add eax, 0x18
call fcn.0040ea00
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 0
jmp case.0x50d054.0
cmp byte [ebx + 0x230], 0
jne 0x512efe
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 1
jne 0x512efe
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsZoomed
test eax, eax
jne 0x512bed
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x512bed
mov eax, dword [esi + 8]
cmp dword [eax + 8], 0
jne 0x5129fd
mov eax, dword [esi + 8]
cmp dword [eax + 0xc], 0
je 0x512bed
mov ebp, dword [esi + 8]
mov eax, dword [0x555974]
cmp byte [eax], 0
je 0x512a4b
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22b], 0
jne 0x512a4b
cmp dword [ebx + 0x268], 0
jne 0x512a4b
mov eax, ebx
call fcn.0050c740
test al, al
je 0x512a4b
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x512a4b
mov dl, 1
mov eax, ebx
call fcn.0051b3cc
cmp byte [ebx + 0x5a], 0
je 0x512b48
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x1a6], 0
je 0x512b48
lea edx, [esp + 0x24]
mov eax, dword [ebx + 0x24c]
call fcn.0050c6e0
cmp dword [ebx + 0x268], 0
je 0x512aa9
mov eax, dword [ebx + 0x268]
call fcn.005088ac
mov edi, eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x34]
call fcn.004fe590
mov eax, dword [eax + 0xc4]
movsx eax, word [eax + 0x32]
add edi, eax
jmp 0x512aab
xor edi, edi
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x48]
add eax, edi
push eax
lea eax, [ebp + 8]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x30]
call fcn.0050c62c
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x4c]
add eax, edi
push eax
lea eax, [ebp + 0xc]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x34]
call fcn.0050c62c
neg edi
push edi
lea eax, [ebp + 8]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x28]
call fcn.0050c62c
cmp dword [ebx + 0x268], 0
je 0x512b37
mov eax, dword [ebx + 0x268]
call fcn.00508870
mov edi, eax
neg edi
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x34]
call fcn.004fe590
mov eax, dword [eax + 0xc4]
movsx eax, word [eax + 0x32]
sub edi, eax
push edi
lea eax, [ebp + 0xc]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x2c]
call fcn.0050c62c
jmp 0x512b48
push 0
lea eax, [ebp + 0xc]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x2c]
call fcn.0050c62c
test byte [ebx + 0x22d], 0x60
je 0x512bed
push esi
lea esi, [ebx + 0xd0]
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 [ebx + 0x22c]
and eax, 0x2000
cmp eax, 0x2000
jne 0x512bc7
mov eax, dword [ebx + 0x24c]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
cmp eax, dword [edx + 0xc]
jne 0x512bab
mov eax, dword [esi + 8]
mov edx, dword [ebx + 0xd4]
mov dword [eax + 0xc], edx
mov eax, dword [ebx + 0x24c]
mov edx, dword [ebx + 0xd4]
sub edx, dword [eax + 0x44]
mov eax, dword [esi + 8]
sub dword [eax + 0x14], edx
jmp 0x512bbd
mov eax, dword [ebx + 0xd4]
add eax, dword [ebx + 0xdc]
mov edx, dword [esi + 8]
mov dword [edx + 0x14], eax
and dword [ebx + 0x22c], 0xffffdfff
mov eax, dword [ebx + 0x22c]
and eax, 0x4000
cmp eax, 0x4000
jne 0x512be3
and dword [ebx + 0x22c], 0xffffbfff
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x512efe
call fcn.004e020c
test al, al
je 0x512efe
cmp byte [ebx + 0x78], 0
je 0x512efe
cmp byte [ebx + 0x222], 0
jne 0x512efe
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne 0x512dc8
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x512dc8
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x512efe
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0xc0], 2
je 0x512efe
cmp byte [ebx + 0x95], 0
je 0x512efe
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x512efe
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp word [eax + 4], 0
jbe 0x512efe
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
je 0x512efe
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x512efe
or dword [ebx + 0x22c], 0x200
mov dl, 1
mov eax, ebx
call fcn.005084d8
mov edx, dword [ebx + 0x54]
mov dword [edx + 0x44], eax
cmp dword [ebx + 0x268], 0
je 0x512dad
mov eax, dword [ebx + 0x268]
mov byte [eax + 0x28], 1
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x2e0], 0
je 0x512d27
mov eax, dword [ebx + 0x24c]
movzx edi, byte [eax + 0x2e1]
jmp 0x512d2c
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00522d18
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.005076c0
push 0x65b
push 0
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x40]
push eax
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
jmp 0x512efe
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
call fcn.005077e4
mov dword [ebx + 0xc8], eax
jmp 0x512efe
cmp dword [ebx + 0x268], 0
je 0x512efe
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je 0x512efe
mov eax, dword [esi + 8]
cmp dword [eax + 0x10], 0
je 0x512efe
mov eax, dword [esi + 8]
cmp dword [eax + 0x14], 0
je 0x512efe
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x10
cmp eax, 0x10
jne 0x512efe
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x512efe
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 1
cmp eax, 1
je 0x512efe
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebx + 0x200]
jl 0x512e55
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x14]
cmp eax, dword [ebx + 0x204]
jge 0x512efe
cmp dword [ebx + 0x224], 0
je 0x512e83
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x512efe
mov eax, dword [ebx + 0x224]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x512efe
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045fa68
test al, al
je 0x512efe
or dword [ebx + 0x22c], 1
push 0
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x14]
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x10]
mov eax, dword [ebx + 0x268]
call fcn.00522d18
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
and dword [ebx + 0x22c], 0xfffffffe
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [0x5560e0]
mov byte [eax], 1
mov eax, dword [0x555e70]
mov eax, dword [eax]
cmp byte [eax + 0x9c], 0
jne 0x512f41
jmp 0x512f37
mov eax, dword [0x555e70]
mov eax, dword [eax]
call fcn.00478e9c
mov eax, dword [0x555da8]
cmp dword [eax], 0
jg 0x512f2b
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
test eax, eax
je 0x5132a0
call fcn.004e020c
test al, al
je 0x5132a0
cmp byte [ebx + 0x78], 0
je 0x5132a0
cmp dword [ebx + 0x268], 0
je 0x512fbd
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x512fbd
mov eax, ebx
call fcn.0051d4f8
mov edi, eax
mov eax, dword [ebx + 0x24c]
call fcn.005087ac
add eax, 4
cmp edi, eax
setg al
mov byte [ebx + 0x208], al
jmp 0x512fc4
mov byte [ebx + 0x208], 0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne 0x513154
cmp byte [ebx + 0x222], 0
jne 0x513154
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x513154
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x513154
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0xc0], 2
jne 0x513062
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne 0x513062
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x513154
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov byte [ebx + 0x223], 0
jmp case.0x50d054.0
mov eax, dword [ebx + 0x54]
call fcn.004fe590
cmp byte [eax + 0xc0], 2
je 0x513131
cmp byte [ebx + 0x95], 0
je 0x513154
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x513154
mov eax, dword [ebx + 0x24c]
cmp dword [eax + 0x30], 0
jne 0x513154
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je 0x513154
call fcn.005089d0
test al, al
je 0x5130da
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov dl, 1
call fcn.0050c654
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov byte [ebx + 0x222], 1
mov eax, ebx
call fcn.004db3f4
mov eax, dword [0x555e70]
mov eax, dword [eax]
cmp byte [eax + 0x9c], 0
jne case.0x50d054.0
call fcn.005089d0
test al, al
je 0x513125
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
xor edx, edx
call fcn.0050c654
mov byte [ebx + 0x222], 0
jmp case.0x50d054.0
cmp dword [ebx + 0x268], 0
je 0x513154
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je 0x513154
mov eax, dword [ebx + 0x268]
add eax, 0x18
call fcn.0040ea00
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp byte [ebx + 0x220], 0
jne case.0x50d054.0
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x57], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x50d054.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 8
cmp eax, 8
je case.0x50d054.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x20
cmp eax, 0x20
je case.0x50d054.0
mov eax, dword [ebx + 0x22c]
and eax, 0x80
cmp eax, 0x80
je case.0x50d054.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 3
cmp eax, 3
jne 0x51328c
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je 0x51328c
call fcn.005089d0
test al, al
je 0x51325a
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x24c]
jne 0x51325a
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
mov esi, eax
call sub.user32.dll_GetActiveWindow
cmp esi, eax
jne 0x51325a
push 0x65b
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x50d054.0
push 0x65b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x24c]
call fcn.0045f764
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x50d054.0
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00521cd4
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
cmp byte [ebx + 0x95], 0
je 0x513430
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x513430
mov eax, dword [ebx + 0x54]
call fcn.004fe590
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp word [eax + 4], 0
jbe 0x513430
cmp byte [ebx + 0x78], 0
je 0x513430
mov eax, dword [ebx + 0x22c]
and eax, 0x200
cmp eax, 0x200
je 0x513430
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 8
jne case.0x50d054.0
or dword [ebx + 0x22c], 0x200
mov dl, 1
mov eax, ebx
call fcn.005084d8
mov edx, dword [ebx + 0x54]
mov dword [edx + 0x44], eax
and dword [ebx + 0x22c], 0xfffffdff
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 0
cmp dword [ebx + 0x268], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
cmp dword [eax + 0x18], 0
je case.0x50d054.0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045fa68
test al, al
je case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x2e0], 0
je 0x5133aa
mov eax, dword [ebx + 0x24c]
movzx edi, byte [eax + 0x2e1]
jmp 0x5133af
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x268]
call fcn.00522d18
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.005076c0
push 0x65b
push 0
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x40]
push eax
push 0
mov eax, dword [ebx + 0x268]
mov eax, dword [eax + 0x18]
call fcn.0045f764
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
jne 0x5134b3
mov eax, dword [0x555f5c]
cmp dword [eax], 0
jne 0x513472
mov eax, dword [0x555e70]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0045f764
xor edx, edx
call fcn.004c1f4c
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
test eax, eax
je 0x5134ac
mov eax, dword [0x555f5c]
mov eax, dword [eax]
mov eax, dword [eax + 0x24c]
call fcn.00472fa8
cmp byte [eax + 0x22b], 2
jne 0x5134ac
mov byte [0x554a00], 1
jmp 0x5134b3
mov byte [0x554a00], 0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [ebx + 0x24c]
cmp byte [eax + 0x22f], 1
je case.0x50d054.0
mov eax, ebx
call fcn.00519a04
jmp case.0x50d054.0
test byte [ebx + 0x1c], 1
jne 0x51358d
mov eax, dword [ebx + 0x24c]
test byte [eax + 0x1c], 1
jne 0x51358d
mov eax, dword [esi + 4]
and eax, 0xffff
dec eax
je 0x513512
mov eax, dword [esi + 4]
and eax, 0xffff
cmp eax, 2
jne 0x51358d
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
cmp dword [ebx + 0x228], 0
je 0x51353d
cmp word [esi + 4], 1
jne 0x51353d
xor edx, edx
mov eax, dword [ebx + 0x228]
call fcn.0051ee5c
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.0040799c
mov edx, eax
mov eax, dword [0x555a14]
mov eax, dword [eax]
mov ecx, 1
call fcn.005255fc
lea edx, [esp + 0x14]
mov eax, dword [ebx + 0x24c]
call fcn.004dde4c
cmp byte [ebx + 0x78], 0
je case.0x50d054.0
mov dl, 1
mov eax, dword [ebx + 0x224]
call fcn.004a4574
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi + 8]
mov eax, dword [eax + 8]
sub eax, 0xfffffdd9
jne case.0x50d054.0
cmp dword [ebx + 0x228], 0
je case.0x50d054.0
xor edx, edx
mov eax, dword [ebx + 0x228]
call fcn.0051ee5c
jmp case.0x50d054.0
cmp dword [esi + 4], 0
je 0x513671
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
mov eax, dword [esi + 4]
mov edx, dword [0x454bf8]
call fcn.00403b34
test al, al
je 0x513650
cmp dword [ebx + 0x228], 0
je 0x51361f
mov edx, dword [esi + 4]
mov eax, dword [ebx + 0x228]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.0040799c
mov edx, eax
mov eax, dword [0x555a14]
mov eax, dword [eax]
mov ecx, 1
call fcn.005255fc
lea edx, [esp + 0x14]
mov eax, dword [esi + 4]
call fcn.004dde4c
push 1
mov dx, 0x24
xor eax, eax
call fcn.0040799c
mov ecx, eax
mov edx, dword [0x555a14]
mov edx, dword [edx]
mov eax, dword [esi + 4]
call fcn.0045a01c
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]
jmp case.0x50d054.0
mov edx, esi
mov eax, dword [ebx + 0x23c]
call dword [ebx + 0x238]