Function at 0x4f9970
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 [0x52b1d0]
cmp eax, dword [edx]
jne 0x4f9e18
movzx eax, word [esi + 6]
cmp eax, 0x22
jg 0x4f99be
je 0x4f9ca1
dec eax
je 0x4f9be9
dec eax
je 0x4f99dc
sub eax, 5
je 0x4f9c59
sub eax, 0x19
je 0x4f9c65
jmp 0x4f9e18
sub eax, 0x24
je 0x4f9e09
sub eax, 0x18
je 0x4f9c2d
dec eax
je 0x4f9c3c
jmp 0x4f9e18
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp eax, dword [esi + 8]
jne 0x4f9bd7
cmp dword [ebx + 0x21c], 0
je 0x4f9a01
lea eax, [ebx + 0x21c]
call fcn.0040e154
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
xor edx, edx
call fcn.004f5c98
mov eax, esi
mov edx, dword [ebx + 0x54]
call fcn.00522e04
mov dword [ebx + 0x248], 0xffffffff
mov dword [ebx + 0x208], 0xffffffff
mov dword [ebx + 0x20c], 0xffffffff
mov edx, esi
mov eax, dword [ebx + 0x244]
call fcn.004e25b8
mov eax, ebx
call fcn.00506ee0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4f9a64
mov al, 1
call fcn.004eed50
mov eax, dword [ebx + 0x244]
test eax, eax
je case.0x4fa234.0
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4f9b13
xor edx, edx
mov eax, ebx
call fcn.00505d4c
xor edx, edx
mov eax, ebx
call fcn.00507d6c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4f9abf
cmp dword [ebx + 0x238], 0
je 0x4f9abf
xor edx, edx
mov eax, ebx
call fcn.00506c28
mov eax, ebx
call fcn.004f6a04
test al, al
je 0x4f9ae8
cmp byte [ebx + 0x217], 0
jne 0x4f9ae8
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
mov eax, ebx
call fcn.0050593c
push 0x485
push 0
push 0
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
xor edx, edx
mov eax, ebx
call fcn.0050837c
mov eax, dword [ebx + 0x244]
call fcn.00448aa0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4f9b9e
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov edx, dword [0x43a11c]
call fcn.004036f8
test al, al
je 0x4f9b9a
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov eax, dword [eax + 0x68]
mov edx, 0xff000008
call fcn.004230c4
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
call fcn.0043c65c
test al, al
jne 0x4f9b9a
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov esi, dword [eax + 0x50]
or esi, dword [0x500694]
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov dword [eax + 0x50], esi
inc edi
dec ebp
jne 0x4f9b28
cmp byte [ebx + 0x60], 0
je 0x4f9bbd
mov eax, dword [ebx + 0x54]
cmp byte [eax + 9], 0
jne 0x4f9bbd
mov edx, 0xff00000f
mov eax, dword [ebx + 0x244]
call fcn.00445710
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je case.0x4fa234.0
add eax, 0x44
call fcn.0040e154
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x244]
call fcn.004e25b8
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne 0x4f9e18
cmp dword [ebx + 0x54], 0
je 0x4f9e18
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp eax, dword [esi + 8]
jne 0x4f9e18
cmp dword [ebx + 0x24c], 0
jne 0x4f9e18
mov eax, ebx
call fcn.005069b4
jmp 0x4f9e18
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, ebx
call fcn.0050512c
push eax
mov eax, ebx
call fcn.00505094
pop edx
call fcn.00407380
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov dword [esi + 0xc], 1
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov dx, word [eax + 0x52]
and dx, 0x400
cmp dx, 0x400
jne 0x4f9e18
and word [eax + 0x52], 0xfbff
push 0
push 0
push 0xb015
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4f9e18
cmp dword [ebx + 0x54], 0
je 0x4f9e18
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.004066ec
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 0x4f9cf7
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
je 0x4f9ce4
cmp byte [ebx + 0x218], 0
je 0x4f9cf7
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4f9cf7
mov eax, ebx
call fcn.00503070
mov eax, dword [esi + 8]
cmp byte [eax + 0x21], 0
je 0x4f9d1a
mov eax, ebx
call fcn.00505094
mov edx, dword [esi + 8]
add dword [edx + 8], eax
mov eax, ebx
call fcn.0050512c
mov edx, dword [esi + 8]
add dword [edx + 0xc], eax
mov eax, dword [ebx + 0x244]
cmp word [eax + 0x2ba], 0
je 0x4f9d68
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
mov dword [edx], eax
mov eax, ebx
call fcn.0050512c
push eax
mov eax, ebx
call fcn.00505094
lea ecx, [esp + 0x78]
pop edx
call fcn.004066ec
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.0x4fa234.0
mov edi, dword [ebx + 0x54]
cmp dword [edi + 0x28], 0xffffffff
jle 0x4f9da7
push 0
mov eax, edi
call fcn.00522850
mov eax, dword [eax + 0xc8]
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 + 0x23c]
call fcn.0042ad60
mov ecx, eax
mov edx, dword [esi + 8]
mov eax, edi
call fcn.00521170
jmp 0x4f9dc4
push 0
xor eax, eax
mov al, byte [ebx + 0x23c]
xor edx, edx
call fcn.0042ad60
mov ecx, eax
mov edx, dword [esi + 8]
mov eax, edi
call fcn.00521170
mov eax, dword [esi + 8]
cmp byte [eax + 0x20], 2
jne 0x4f9dea
cmp byte [eax + 0x21], 0
jne 0x4f9dea
cmp dword [eax], 0
jne 0x4f9dea
mov eax, ebx
call fcn.00503070
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
mov dword [edx], eax
mov eax, ebx
call fcn.00505094
mov edx, dword [esi + 8]
add dword [edx + 8], eax
mov eax, ebx
call fcn.0050512c
mov edx, dword [esi + 8]
add dword [edx + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
movzx eax, word [eax + 0x52]
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne 0x4f9e36
mov dl, 1
mov eax, dword [ebx + 0x54]
call fcn.00522da4
test al, al
jne 0x4fa211
mov eax, dword [esi]
mov edx, dword [0x52b1d0]
cmp eax, dword [edx]
jne 0x4fa039
mov ax, word [esi + 6]
dec ax
je 0x4f9e61
sub ax, 3
jne 0x4fa039
mov dword [esi + 0xc], ebx
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne 0x4fa039
cmp dword [ebx + 0x54], 0
je 0x4fa039
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp eax, dword [esi + 8]
jne case.0x4fa234.0
mov eax, ebx
call fcn.005085a4
mov al, 1
call fcn.004eed50
mov eax, dword [ebx + 0x54]
call fcn.005235dc
mov dword [ebx + 0x208], 0xffffffff
mov eax, ebx
call fcn.005086dc
mov dword [ebx + 0x208], eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, 0x5006a0
call fcn.0051e4a4
mov dword [ebx + 0x20c], eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4fa017
cmp dword [ebx + 0x260], 0
je 0x4f9f23
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x4f9f23
mov eax, ebx
call fcn.0050a460
mov esi, eax
mov eax, dword [ebx + 0x244]
call fcn.004f59e0
add eax, 4
cmp esi, eax
setg al
mov byte [ebx + 0x204], al
jmp 0x4f9f2a
mov byte [ebx + 0x204], 0
mov dl, 1
mov eax, ebx
call fcn.00507d6c
mov eax, ebx
call fcn.00506340
mov esi, dword [ebx + 0x244]
cmp byte [esi + 0x22f], 2
jne 0x4f9f64
mov eax, esi
call fcn.0045f69c
mov edx, dword [0x52b8f0]
mov edx, dword [edx]
cmp eax, dword [edx + 0x6c]
jne 0x4f9f64
mov byte [ebx + 0x23c], 1
mov eax, dword [ebx + 0x54]
call fcn.00522850
test byte [eax + 0x1c], 1
jne 0x4f9fb0
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x248], 0
je 0x4f9f91
cmp byte [ebx + 0xb9], 0
je 0x4f9f91
mov byte [ebx + 0xb5], 1
mov dl, 1
mov eax, ebx
call fcn.00505d4c
cmp byte [ebx + 0xb5], 0
jne 0x4f9fb0
mov eax, ebx
call fcn.0050593c
mov byte [ebx + 0xb5], al
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov dword [ebx + 0x248], 0xffffffff
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4f9fd9
mov dl, 1
mov eax, ebx
call fcn.00506c28
cmp byte [ebx + 0x60], 0
je 0x4fa002
mov eax, dword [ebx + 0x54]
cmp byte [eax + 9], 0
jne 0x4fa002
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00516864
mov edx, eax
mov eax, dword [ebx + 0x244]
call fcn.00445710
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov dl, byte [ebx + 0x78]
call fcn.004f5c98
mov eax, dword [ebx + 0x220]
test eax, eax
jne 0x4fa02d
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp case.0x4fa234.0
xor edx, edx
call fcn.0050bb44
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi]
sub eax, 0x47
je 0x4fa067
sub eax, 0x3b
je 0x4fa140
sub eax, 0xafc1
je 0x4fa203
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je case.0x4fa234.0
call fcn.004e3374
test al, al
je case.0x4fa234.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne case.0x4fa234.0
cmp byte [ebx + 0x95], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x4fa234.0
cmp byte [ebx + 0x21a], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0x3c], 0
je case.0x4fa234.0
cmp byte [ebx + 0x78], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je case.0x4fa234.0
mov eax, dword [0x52b064]
xor edx, edx
mov dword [eax], edx
mov byte [ebx + 0x21a], 1
mov eax, ebx
call fcn.004dfb70
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fa118
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor edx, edx
call fcn.004f9834
mov byte [ebx + 0x21a], 0
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne case.0x4fa234.0
mov eax, dword [0x52b744]
cmp dword [eax], 0
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
cmp dword [eax + 0x238], 0
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov dl, 1
call fcn.00522da4
test al, al
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
call fcn.0050626c
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
test eax, eax
jne case.0x4fa234.0
push 0x507
push 0
push 0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x4fa234.0
mov edx, esi
mov eax, ebx
call fcn.005087b8
jmp case.0x4fa234.0
mov eax, dword [esi]
mov edx, dword [0x52b1d0]
cmp eax, dword [edx]
jne 0x4fa7be
movzx eax, word [esi + 6]
cmp eax, 0x3e
ja case.0x4fa234.0
mov al, byte [eax + 0x4fa23b]
jmp dword [eax*4 + 0x4fa27a]
mov eax, dword [ebx + 0x244]
test eax, eax
je case.0x4fa234.0
test byte [eax + 0x1c], 1
jne case.0x4fa234.0
mov edx, dword [ebx + 0x220]
test edx, edx
je case.0x4fa234.0
cmp dword [esi + 8], 0
je 0x4fa2f4
mov eax, dword [esi + 8]
xchg edx, eax
call fcn.0050bb44
jmp case.0x4fa234.0
xchg edx, eax
call fcn.0050bb44
jmp case.0x4fa234.0
cmp dword [ebx + 0x54], 0
je case.0x4fa234.0
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fa328
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fa328
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x4fa32c
xor eax, eax
jmp 0x4fa32e
mov al, 1
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
je case.0x4fa234.0
mov byte [eax + 0x1c], 0
push 0x401
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x4fa234.0
mov eax, ebx
call fcn.004f6a4c
jmp case.0x4fa234.0
cmp word [esi + 4], 1
sete dl
mov eax, dword [ebx + 0x54]
call fcn.00522da0
mov eax, dword [ebx + 0x54]
call fcn.00522864
test al, al
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp eax, dword [esi + 8]
jne case.0x4fa234.0
cmp dword [ebx + 0x220], 0
jne 0x4fa3d0
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp 0x4fa3dd
xor edx, edx
mov eax, dword [ebx + 0x220]
call fcn.0050bb44
cmp byte [ebx + 0x78], 0
je 0x4fa3f2
lea edx, [ebx + 0x21c]
xor ecx, ecx
mov eax, ebx
call fcn.004f6900
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
je 0x4fa410
cmp byte [eax + 0x22f], 1
je 0x4fa410
mov eax, dword [ebx + 0x54]
and word [eax + 0x52], 0xfffe
mov dword [ebx + 0x248], 0xffffffff
mov eax, dword [ebx + 0x54]
call fcn.00522850
test byte [eax + 0x1c], 1
jne 0x4fa442
mov eax, ebx
call fcn.0050593c
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da4
mov edx, eax
mov eax, ebx
call fcn.00505d4c
mov eax, ebx
call fcn.004f6a04
test al, al
je 0x4fa451
mov byte [ebx + 0x34], 1
mov eax, ebx
call fcn.0050a29c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x57], 0
je case.0x4fa234.0
mov edi, dword [ebx + 0x54]
mov byte [edi + 0x39], 1
mov eax, edi
call fcn.00522850
call fcn.00520148
mov edx, eax
mov eax, ebx
call fcn.0050837c
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fa534
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fa4f0
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
test eax, eax
je 0x4fa4f0
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x4fa4f0
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
jmp 0x4fa534
push 0x545
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fa534
push 0x545
push 0
push 0
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
cmp byte [ebx + 0x60], 0
je 0x4fa55d
mov eax, dword [ebx + 0x54]
cmp byte [eax + 9], 0
jne 0x4fa55d
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00516864
mov edx, eax
mov eax, dword [ebx + 0x244]
call fcn.00445710
cmp dword [ebx + 0x238], 0
je 0x4fa571
mov eax, dword [ebx + 0x238]
call fcn.004a5d20
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da0
cmp dword [ebx + 0x24c], 0
je 0x4fa58f
mov eax, dword [ebx + 0x24c]
call fcn.0050afd4
mov edx, esi
mov eax, ebx
call fcn.00506f30
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc8]
mov edi, dword [ebx + 0x54]
imul edx, dword [edi + 0x28], 0x43
mov ebp, dword [eax + edx*4 + 0xa8]
mov eax, edi
call fcn.00522850
mov eax, dword [eax + 0xc8]
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.0x4fa234.0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.005215e8
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov dword [esi + 0xc], ebx
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp eax, dword [esi + 8]
jne case.0x4fa234.0
mov al, 1
call fcn.004eed50
mov eax, dword [ebx + 0x54]
call fcn.005235dc
mov dword [ebx + 0x208], 0xffffffff
mov eax, ebx
call fcn.005086dc
mov dword [ebx + 0x208], eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, 0x5006a0
call fcn.0051e4a4
mov dword [ebx + 0x20c], eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je case.0x4fa234.0
mov eax, ebx
call fcn.00506340
mov al, 1
call fcn.004eed50
mov dl, byte [ebx + 0x78]
mov eax, ebx
call fcn.00507d6c
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x44]
call fcn.004f0cbc
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov dword [ebx + 0x248], 0xffffffff
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne case.0x4fa234.0
mov dl, 1
mov eax, ebx
call fcn.00506c28
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov byte [0x52b000], 0
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522a44
test al, al
je case.0x4fa234.0
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522a44
test al, al
je case.0x4fa234.0
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
push 0x585
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x52b744]
cmp ebx, dword [eax]
jne case.0x4fa234.0
push 0x581
push 0
push 0
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x4fa234.0
mov eax, esi
mov edx, dword [ebx + 0x54]
call fcn.005236fc
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x38], 0
je case.0x4fa234.0
mov eax, ebx
call fcn.00503070
jmp case.0x4fa234.0
cmp eax, 0xa4
jg 0x4fa921
je 0x4fd178
cmp eax, 0x2c
jg 0x4fa882
je 0x4fef7c
cmp eax, 0x24
ja case.0x4fa7e7.0
jmp dword [eax*4 + 0x4fa7ee]
cmp eax, 0x81
jg 0x4fa8d8
je 0x4fc5f0
cmp eax, 0x4e
jg 0x4fa8b8
je 0x500599
sub eax, 0x46
je 0x4ff998
dec eax
je 0x4fff4d
sub eax, 3
je 0x4fab17
jmp case.0x4fa7e7.0
sub eax, 0x7b
je 0x4fabf7
sub eax, 2
je 0x4fada8
sub eax, 3
je 0x4facf6
jmp case.0x4fa7e7.0
cmp eax, 0xa0
jg 0x4fa903
je 0x4faa91
sub eax, 0x84
je 0x4fc34f
dec eax
je 0x4fddab
dec eax
je 0x4fe4b6
jmp case.0x4fa7e7.0
sub eax, 0xa1
je 0x4fc61d
dec eax
je 0x4fd21a
dec eax
je 0x4fede0
jmp case.0x4fa7e7.0
cmp eax, 0x318
jg 0x4fa9e4
je case.0x4fa234.0
cmp eax, 0x211
jg 0x4fa990
je 0x4fc1c7
cmp eax, 0x121
jg 0x4fa96e
je 0x4fd85c
sub eax, 0xa5
je 0x4fd19a
sub eax, 0x6d
je 0x4ff000
sub eax, 5
je 0x4fad88
jmp case.0x4fa7e7.0
sub eax, 0x200
je 0x4fccba
sub eax, 2
je 0x4fd21a
sub eax, 0xe
je 0x5004d9
jmp case.0x4fa7e7.0
cmp eax, 0x232
jg 0x4fa9c2
je 0x4fac71
sub eax, 0x212
je 0x4fc322
sub eax, 2
je 0x4fc540
add eax, 0xfffffff3
sub eax, 2
jb 0x4feb80
jmp case.0x4fa7e7.0
sub eax, 0x2a3
je 0x4fc56f
sub eax, 0x70
je 0x4fae41
sub eax, 4
je 0x4fd921
jmp case.0x4fa7e7.0
cmp eax, 0xb015
jg 0x4faa42
je 0x4fd8ac
cmp eax, 0xb00b
jg 0x4faa22
je 0x4fed38
sub eax, 0x323
je 0x4fabad
sub eax, 3
je 0x4fab82
sub eax, 0xa0da
je 0x4faad5
jmp case.0x4fa7e7.0
sub eax, 0xb00c
je 0x4fb738
sub eax, 7
je 0x4fc594
dec eax
je 0x4fc56f
jmp case.0x4fa7e7.0
cmp eax, 0xb03a
jg 0x4faa71
je 0x4fd866
sub eax, 0xb019
je 0x4fae7d
sub eax, 0x13
je 0x5005d7
sub eax, 7
je 0x4fe472
jmp case.0x4fa7e7.0
sub eax, 0xb043
je 0x4faab9
sub eax, 9
je 0x4fdda1
sub eax, 0xc01
je 0x4fdda1
jmp case.0x4fa7e7.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
pop edx
call fcn.0051f674
mov edx, esi
mov eax, ebx
call fcn.00508a14
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov edx, esi
mov eax, ebx
call fcn.005087b8
jmp case.0x4fa234.0
mov eax, dword [esi + 4]
dec eax
je 0x4faafb
sub eax, 2
je 0x4faae8
dec eax
je 0x4fab0b
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.00461fb8
jmp case.0x4fa234.0
mov dword [esi + 0xc], 1
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [esi + 0xc], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov edx, dword [0x52b6a8]
cmp eax, dword [edx]
jne case.0x4fa234.0
mov eax, dword [0x52b23c]
cmp byte [eax], 0
jne case.0x4fa234.0
mov eax, dword [0x52b23c]
mov byte [eax], 1
cmp dword [esi + 8], 0
je 0x4fab75
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, eax
mov eax, esi
call fcn.00514898
mov eax, dword [0x52b23c]
mov byte [eax], 0
jmp case.0x4fa234.0
mov eax, dword [0x52b2ac]
cmp byte [eax], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov edx, ebx
call fcn.004f46f4
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [0x52b2ac]
cmp byte [eax], 0
je case.0x4fa234.0
cmp word [esi + 0xa], 0
je case.0x4fa234.0
cmp word [esi + 8], 0
je case.0x4fa234.0
movzx eax, word [esi + 8]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
movzx ecx, word [esi + 0xa]
mov edx, ebx
call fcn.004f447c
and eax, 0x7f
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x7c], 0
je 0x4fac29
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov al, byte [eax + 0x58]
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x244]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.004f2168
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp dword [esi + 4], 1
jne 0x4fac58
mov edx, dword [ebx + 0xb0]
dec edx
xor eax, eax
call fcn.0042ae24
mov dword [ebx + 0xb0], eax
jmp 0x4fac5e
inc dword [ebx + 0xb0]
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov eax, dword [0x52b774]
cmp dword [eax], 0
je case.0x4fa234.0
mov eax, dword [0x52b774]
mov eax, dword [eax]
mov ebp, dword [eax + 8]
dec ebp
test ebp, ebp
jl case.0x4fa234.0
inc ebp
xor edi, edi
mov eax, dword [0x52b774]
mov eax, dword [eax]
mov edx, edi
call fcn.00418f48
test eax, eax
je 0x4facdf
mov eax, dword [0x52b774]
mov eax, dword [eax]
mov edx, edi
call fcn.00418f48
mov eax, dword [eax + 0x38]
xor ecx, ecx
mov edx, 0x12
call fcn.004e23fc
inc edi
dec ebp
jne 0x4facb0
jmp case.0x4fa234.0
mov edx, esi
mov eax, ebx
call fcn.0050842c
jmp case.0x4fa234.0
test byte [ebx + 0x1c], 1
jne 0x4fad75
cmp dword [esi + 8], 0
je 0x4fad75
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fad75
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fad75
call fcn.004f5c04
test al, al
jne 0x4fad3b
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
call fcn.004f5c04
test al, al
jne 0x4fad69
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov eax, ebx
call fcn.004f6a4c
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0x58], 0
je case.0x4fa234.0
mov edx, esi
mov eax, ebx
call fcn.00508040
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [esi + 4], 0xffffffec
jne case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x80
cmp eax, 0x80
je case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x100
cmp eax, 0x100
je case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x400
cmp eax, 0x400
je case.0x4fa234.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.0x4fa234.0
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
lea edx, [esp + 0x74]
mov eax, dword [0x52b87c]
mov eax, dword [eax]
call fcn.00450698
mov eax, dword [esp + 0x78]
push eax
lea edx, [esp + 0x80]
mov eax, dword [0x52b87c]
mov eax, dword [eax]
call fcn.00450698
mov edx, dword [esp + 0x80]
mov eax, ebx
pop ecx
call fcn.00504c28
jmp case.0x4fa234.0
mov dword [esp + 4], 0xff
cmp byte [ebx + 0x78], 0
je 0x4fb321
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fb2be
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4faec4
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4faedc
mov dl, 1
mov eax, ebx
call fcn.00506c28
and dword [ebx + 0x224], 0xfffffdff
cmp dword [ebx + 0x260], 0
je 0x4faef9
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
cmp dword [ebx + 0x210], 0
je 0x4faf22
mov eax, dword [ebx + 0x210]
mov edx, dword [0x4f4350]
call fcn.004036f8
test al, al
je 0x4faf22
lea eax, [ebx + 0x210]
call fcn.0040e154
mov eax, dword [0x52b0fc]
cmp byte [eax], 0
je 0x4faf6a
mov eax, dword [ebx + 0x244]
call fcn.0044c0ac
test al, al
je 0x4faf6a
mov eax, dword [0x52b64c]
mov eax, dword [eax]
cmp dword [eax + 0x44], 0
je 0x4faf5a
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne 0x4faf6a
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
call fcn.004f7610
mov eax, ebx
call fcn.00506938
cmp dword [ebx + 0x220], 0
je 0x4faf8b
mov edx, dword [ebx + 0x244]
mov eax, dword [ebx + 0x220]
call fcn.0050bb44
cmp byte [ebx + 0x95], 0
je 0x4fafd8
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4fafaf
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
jne 0x4fafd8
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
cmp byte [eax + 6], 0
je 0x4fafd8
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov edx, dword [0x52b6a8]
cmp eax, dword [edx]
jne 0x4fafdc
xor eax, eax
jmp 0x4fafde
mov al, 1
mov byte [ebx + 0x21b], al
mov byte [esp + 0x11], 0
cmp byte [ebx + 0x21b], 0
je 0x4fb0c1
mov dl, 1
mov eax, dword [ebx + 0x54]
call fcn.00522da0
mov byte [ebx + 0x218], 1
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov dl, 1
call fcn.004f9834
mov byte [esp + 0x11], al
mov dword [esp + 4], 0xff
cmp byte [esp + 0x11], 0
je 0x4fb03e
xor edx, edx
mov eax, ebx
call fcn.004f65c4
mov byte [ebx + 0x228], 0
jmp 0x4fb05c
mov eax, dword [ebx + 0x244]
movzx eax, byte [eax + 0x2e1]
mov dword [esp + 4], eax
xor edx, edx
mov eax, dword [ebx + 0x244]
call fcn.00462a40
mov eax, dword [ebx + 0x244]
call fcn.00448aa0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4fb0cb
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
cmp byte [eax + 0x57], 0
je 0x4fb0bb
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov edx, dword [0x5260a0]
call fcn.004036f8
test al, al
jne 0x4fb0bb
push 0
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
xor ecx, ecx
mov edx, 0xb
call fcn.0044673c
inc edi
dec ebp
jne 0x4fb071
jmp 0x4fb0cb
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da0
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00520148
mov edx, eax
mov eax, ebx
call fcn.0050837c
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da4
test al, al
jne 0x4fb1aa
cmp byte [ebx + 0x21b], 0
je 0x4fb1aa
mov eax, dword [ebx + 0x244]
call fcn.00448aa0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4fb158
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
cmp byte [eax + 0x57], 0
je 0x4fb154
push 0
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov ecx, 1
mov edx, 0xb
call fcn.0044673c
inc edi
dec ebp
jne 0x4fb123
push 0xffffffffffffffec
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xfff7ffff
push eax
push 0xffffffffffffffec
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowLongA
push 0x81
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov byte [ebx + 0x228], 0
jmp case.0x4fa234.0
lea edx, [ebx + 0x21c]
xor ecx, ecx
mov eax, ebx
call fcn.004f6900
cmp byte [ebx + 0x21b], 0
je 0x4fb272
mov eax, dword [ebx + 0x244]
call fcn.00448aa0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4fb210
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
cmp byte [eax + 0x57], 0
je 0x4fb20c
push 0
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.00448a64
mov ecx, 1
mov edx, 0xb
call fcn.0044673c
inc edi
dec ebp
jne 0x4fb1db
cmp byte [esp + 0x11], 0
je 0x4fb229
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor edx, edx
call fcn.004f9834
mov byte [ebx + 0x21b], 0
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
movzx edi, word [eax + 4]
mov eax, dword [ebx + 0x54]
call fcn.00522850
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.004df22c
mov byte [ebx + 0x228], 0
jmp 0x4fb28c
push 0x81
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne case.0x4fa234.0
mov al, 1
call fcn.004f96a8
jmp case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x4fb30e
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x4fb303
mov eax, dword [ebx + 0x54]
call fcn.00522850
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 0x4fb303
cmp byte [ebx + 0x95], 0
jne 0x4fb30e
lea eax, [ebx + 0x260]
call fcn.0040e154
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
call fcn.004f5c04
test al, al
je 0x4fb34f
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
call fcn.004f5c04
test al, al
je case.0x4fa234.0
push 0x181
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4fb4bb
cmp dword [esi + 4], 1
jne 0x4fb424
cmp dword [ebx + 0x260], 0
je 0x4fb3b2
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
mov eax, dword [ebx + 0x224]
and eax, 0x400
cmp eax, 0x400
jne 0x4fb3d0
mov dword [ebx + 0x224], 0x400
jmp 0x4fb3d8
xor eax, eax
mov dword [ebx + 0x224], eax
call fcn.004f5c04
test al, al
je 0x4fb424
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fb424
push 0xffffffffffffffec
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x80000
cmp eax, 0x80000
je 0x4fb424
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [esi + 8]
dec eax
je 0x4fb434
sub eax, 2
je 0x4fb482
jmp 0x4fb4bb
cmp byte [ebx + 0x219], 0
je 0x4fb4bb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fb45b
mov byte [ebx + 0x219], 2
jmp 0x4fb4bb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x4fb479
mov byte [ebx + 0x219], 3
jmp 0x4fb4bb
mov byte [ebx + 0x219], 1
jmp 0x4fb4bb
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x4fb4bb
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne 0x4fb4bb
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [esi + 4], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fb4fd
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fb4fd
mov eax, dword [0x52b744]
mov eax, dword [eax]
call fcn.0050626c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fb55e
mov eax, dword [ebx + 0x244]
call fcn.0045f6d0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4fb55e
inc ebp
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.0045f71c
call fcn.0044bda8
mov edx, 7
call fcn.004e24b0
test al, al
jne 0x4fb55a
mov edx, edi
mov eax, dword [ebx + 0x244]
call fcn.0045f71c
call fcn.0044bda8
xor edx, edx
call fcn.004c66f4
inc edi
dec ebp
jne 0x4fb521
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
and word [eax + 0x52], 0xfffe
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fb725
mov eax, dword [ebx + 0x244]
test byte [eax + 0x54], 0x40
jne 0x4fb725
cmp byte [ebx + 0x78], 0
je 0x4fb725
cmp dword [ebx + 0xbc], 0
je 0x4fb5d7
lea eax, [ebx + 0xbc]
call fcn.0040e154
cmp dword [ebx + 0xc0], 0
je 0x4fb5eb
lea eax, [ebx + 0xc0]
call fcn.0040e154
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fb644
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fb644
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
xor edx, edx
call fcn.004f60ec
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [0x52b744]
mov eax, dword [eax]
call fcn.004f63e8
jmp 0x4fb704
call fcn.004f5c04
test al, al
jne 0x4fb68e
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, ebx
call fcn.004f60ec
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, ebx
call fcn.004f63e8
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fb704
cmp dword [ebx + 0x260], 0
jne 0x4fb6ae
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x260], 0
jne 0x4fb6fd
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, ebx
call fcn.004f6a4c
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp byte [ebx + 0x78], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, ebx
call fcn.0050593c
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, ebx
call fcn.0050593c
mov eax, dword [0x52b744]
cmp dword [eax], 0
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
test eax, eax
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x4fb7ff
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x238]
call fcn.004a5dc0
jmp case.0x4fa234.0
mov dl, 1
mov eax, ebx
call fcn.00507d6c
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x4fc18c
mov eax, ebx
call fcn.004f5d04
test al, al
je 0x4fba22
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edi, dword [eax + 0x178]
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, edi
call fcn.005189f0
test al, al
je 0x4fba22
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00512338
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0051234c
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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 + 0x1f4]
xor edx, edx
call fcn.00512338
mov ebp, eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
cmp ebp, eax
jl 0x4fb915
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.0051234c
mov ebp, eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
cmp ebp, eax
jge 0x4fb980
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
jne 0x4fb980
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.00512338
test eax, eax
je 0x4fb980
mov eax, dword [ebx + 0x200]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x200]
sub edx, edi
mov eax, dword [ebx + 0x1fc]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x1fc]
call fcn.004066d0
mov eax, dword [ebx + 0x54]
call fcn.00520dac
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.00512338
mov ebp, eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
cmp ebp, eax
jg 0x4fb9bc
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.0051234c
mov ebp, eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
cmp ebp, eax
jle 0x4fba22
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
sub eax, edi
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
sub eax, dword [esp + 0x14]
pop edx
pop ecx
call fcn.004066d0
mov eax, dword [ebx + 0x54]
call fcn.00520dac
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.00512338
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
cmp edi, eax
jg 0x4fba73
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.0051234c
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
cmp edi, eax
jg 0x4fba73
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.00512338
test eax, eax
jne 0x4fbc77
push 0x5006b0
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, dword [ebx + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x28]
call fcn.0051e4fc
mov edi, eax
cmp edi, 0xffffffff
jle 0x4fbb75
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00512338
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0051234c
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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 + 0x200]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x200]
sub edx, edi
mov eax, dword [ebx + 0x1fc]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x1fc]
call fcn.004066d0
mov eax, dword [ebx + 0x54]
call fcn.00520dac
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
push 0x5006c4
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, dword [ebx + 0x54]
mov ecx, dword [edx + 4]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x28]
call fcn.0051e4fc
mov edi, eax
cmp edi, 0xffffffff
jle 0x4fbc77
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.00512338
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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.00522850
mov eax, dword [eax + 0xc0]
mov edx, edi
shl edx, 3
sub edx, edi
lea eax, [eax + edx*8 + 0xc]
xor edx, edx
call fcn.0051234c
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0xc0]
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 + 0x200]
push eax
lea eax, [esp + 0x28]
push eax
mov edx, dword [ebx + 0x200]
sub edx, edi
mov eax, dword [ebx + 0x1fc]
sub eax, dword [esp + 0xc]
mov ecx, dword [ebx + 0x1fc]
call fcn.004066d0
mov eax, dword [ebx + 0x54]
call fcn.00520dac
xor al, 1
neg al
sbb eax, eax
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
cmp dword [ebx + 0xbc], 0
je 0x4fbc8b
lea eax, [ebx + 0xbc]
call fcn.0040e154
cmp dword [ebx + 0xc0], 0
je 0x4fbc9f
lea eax, [ebx + 0xc0]
call fcn.0040e154
mov dword [ebx + 0x248], 0xffffffff
mov eax, dword [ebx + 0x224]
and eax, 0x80
cmp eax, 0x80
jne 0x4fbcc2
mov eax, ebx
call fcn.004f5400
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
jne 0x4fbcec
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x4fbcfa
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
jne 0x4fc14c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fc145
mov eax, ebx
call fcn.00505454
test al, al
je 0x4fc0ba
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fbd4c
cmp byte [ebx + 0x216], 0
jne 0x4fc0ba
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 0x4fbda4
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fbd98
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov edx, dword [ebx + 0x244]
cmp eax, dword [edx + 0x48]
jg 0x4fbd9c
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
mov edx, dword [ebx + 0x244]
cmp eax, dword [edx + 0x4c]
jg 0x4fbd9c
xor eax, eax
jmp 0x4fbd9e
mov al, 1
mov byte [esp + 0x10], al
jmp 0x4fbda9
mov byte [esp + 0x10], 0
cmp byte [ebx + 0x78], 0
je 0x4fc05e
mov eax, dword [0x52b11c]
cmp byte [eax], 0
je 0x4fbde0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fbde0
cmp dword [ebx + 0x260], 0
je 0x4fbde0
lea eax, [ebx + 0x260]
call fcn.0040e154
mov eax, dword [ebx + 0x260]
test eax, eax
je 0x4fbe96
cmp dword [eax + 0x18], 0
jne 0x4fbdf9
call fcn.0050faf4
cmp dword [ebx + 0x21c], 0
je 0x4fbe23
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x4fbe30
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x4fbe30
cmp byte [ebx + 0x58], 0
jne 0x4fbe30
or dword [ebx + 0x224], 1
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
and dword [ebx + 0x224], 0xfffffffe
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 1
push 0x61b
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
mov dl, 1
mov eax, ebx
call fcn.004f65c4
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 0
jmp 0x4fbea6
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x54]
and ax, 2
cmp ax, 2
jne 0x4fbee2
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.0051234c
mov esi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
cmp esi, eax
jne 0x4fbf11
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x54]
and ax, 1
cmp ax, 1
jne 0x4fbf44
lea eax, [ebx + 0x1f4]
xor edx, edx
call fcn.00512338
mov esi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
cmp esi, eax
je 0x4fbf44
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x14
mov ax, 1
call fcn.00407438
mov edx, eax
mov eax, dword [0x52b1d0]
mov eax, dword [eax]
xor ecx, ecx
call fcn.00512214
lea edx, [esp + 0x14]
mov eax, dword [ebx + 0x244]
call fcn.004e25b8
cmp dword [ebx + 0x260], 0
je 0x4fc037
mov eax, dword [ebx + 0x21c]
test eax, eax
je 0x4fbf93
cmp dword [eax + 0x80], 0
je 0x4fbf93
cmp dword [eax + 0x7c], 0
je 0x4fbf93
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x4fc037
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x4fc037
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
jne 0x4fbfaa
mov eax, dword [ebx + 0x260]
call fcn.0050faf4
push 0x101
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
cmp dword [ebx + 0x260], 0
je 0x4fc02c
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050f98c
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
jmp 0x4fc051
xor edx, edx
mov eax, ebx
call fcn.004f65c4
jmp 0x4fc051
push 0x921
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [ebx + 0x244]
call fcn.004e1c68
jmp 0x4fc07a
cmp byte [esp + 0x10], 0
je 0x4fc07a
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004066d0
lea esi, [esp + 0x84]
lea edi, [ebx + 0x1f4]
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.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fc0e7
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fc0e7
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
jmp 0x4fc14c
mov eax, dword [esi + 4]
sub eax, 2
jne 0x4fc14c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fc14c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fc14c
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov byte [eax + 0x22a], 1
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp 0x4fc14c
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004066d0
lea esi, [esp + 0x84]
lea edi, [ebx + 0x1f4]
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.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, ebx
call fcn.005085a4
xor eax, eax
call fcn.004cdea4
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fc30f
cmp byte [ebx + 0x217], 0
jne 0x4fc30f
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
test eax, eax
je 0x4fc30f
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x4fc30f
mov byte [ebx + 0x217], 1
cmp dword [0x52b00c], 0
jne 0x4fc23b
mov ecx, dword [0x52b64c]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x45b1dc]
call fcn.0045de08
mov dword [0x52b00c], eax
mov eax, dword [0x52b00c]
mov dword [eax + 0xc], 0xffffff9e
xor edx, edx
mov eax, dword [0x52b00c]
call fcn.0045ec4c
mov edx, 0x5006d8
mov eax, dword [0x52b00c]
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov eax, dword [0x52b00c]
mov dword [eax + 0x2bc], ebx
mov dword [eax + 0x2b8], 0x506f60
xor edx, edx
mov eax, dword [0x52b00c]
call fcn.0045f5cc
push 0x58
push 0xf
call sub.user32.dll_GetSystemMetrics
dec eax
add eax, 4
push eax
push 0x3c
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov edx, dword [ebx + 0x260]
call fcn.004f5978
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.004f59e0
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x44]
add edi, eax
push edi
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov edx, dword [ebx + 0x260]
call fcn.004f5978
push eax
lea edx, [esp + 0x98]
mov eax, dword [ebx + 0x244]
call fcn.00444f10
mov eax, dword [esp + 0xa0]
sub eax, 0x3c
pop edx
sub eax, edx
push eax
push 0
mov eax, dword [0x52b00c]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov byte [ebx + 0x217], 0
cmp dword [0x52b00c], 0
je 0x4fc33c
mov eax, 0x52b00c
call fcn.0040e154
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [ebx + 0x214], 0
je 0x4fc366
mov byte [ebx + 0x214], 0
mov eax, ebx
call fcn.005088c0
mov dl, 1
mov eax, ebx
call fcn.004f7510
test eax, eax
je 0x4fc379
cmp byte [ebx + 0x78], 0
jne 0x4fc38c
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, ebx
call fcn.004f8eac
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
add eax, 0xfffffff8
sub eax, 2
jb 0x4fc3a8
sub eax, 0xa
jne 0x4fc3c0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fc3c0
mov dl, 1
mov eax, ebx
call fcn.00507d6c
mov eax, dword [esi + 0xc]
sub eax, 3
jb 0x4fc3d9
sub eax, 2
je 0x4fc3d9
add eax, 0xfffffffb
sub eax, 8
jae 0x4fc4f5
mov eax, ebx
call fcn.004f5d04
test al, al
je 0x4fc4e2
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edi, dword [eax + 0x178]
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov edx, edi
call fcn.005189f0
test al, al
je 0x4fc4e2
lea eax, [esp + 8]
push eax
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00504f60
cmp dword [ebx + 0x260], 0
je 0x4fc4a8
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, ebx
call fcn.00505a9c
mov ebp, dword [esp + 0x78]
mov eax, dword [ebx + 0x260]
call fcn.004f5aa4
sub ebp, eax
lea edx, [esp + 0x84]
mov eax, ebx
call fcn.0050856c
sub ebp, dword [esp + 0x88]
cmp ebp, dword [esp + 0xc]
jge 0x4fc4e2
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, ebx
call fcn.00505a9c
mov edi, dword [esp + 0x7c]
mov eax, dword [ebx + 0x260]
call fcn.004f5ae0
sub edi, eax
lea edx, [esp + 0x94]
mov eax, ebx
call fcn.0050856c
sub edi, dword [esp + 0x94]
cmp edi, dword [esp + 8]
jge 0x4fc4e2
mov dword [esi + 0xc], 0x11
jmp case.0x4fa234.0
lea ecx, [esp + 0x74]
mov edx, edi
mov eax, ebx
call fcn.00505a9c
mov eax, dword [esp + 0x78]
cmp eax, dword [esp + 0xc]
jge 0x4fc4e2
lea ecx, [esp + 0x7c]
mov edx, edi
mov eax, ebx
call fcn.00505a9c
mov eax, dword [esp + 0x7c]
cmp eax, dword [esp + 8]
jge 0x4fc4e2
mov dword [esi + 0xc], 0x11
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [ebx + 0x58], 1
jne case.0x4fa234.0
cmp dword [0x52d28c], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x4fa234.0
mov eax, dword [esi + 0xc]
sub eax, 2
je 0x4fc533
add eax, 0xfffffff8
sub eax, 8
jae case.0x4fa234.0
mov eax, dword [esi + 0xc]
mov dword [0x52d28c], eax
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov byte [0x52b000], 0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
mov eax, dword [ebx + 0x54]
call fcn.00522850
pop edx
call fcn.0051f674
mov eax, dword [ebx + 0x260]
test eax, eax
je case.0x4fa234.0
cmp byte [eax + 0x38], 0
je case.0x4fa234.0
mov edx, dword [ebx + 0x224]
and edx, 1
cmp edx, 1
je case.0x4fa234.0
call fcn.0050fb78
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je case.0x4fa234.0
mov eax, ebx
call fcn.005069b4
jmp case.0x4fa234.0
cmp byte [ebx + 0x78], 0
je 0x4fcb49
cmp dword [ebx + 0x260], 0
je 0x4fc649
cmp dword [esi + 4], 0x13
jne 0x4fc649
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x4fc668
cmp dword [esi + 4], 0xffffffff
jne 0x4fc668
mov edx, esi
mov eax, dword [ebx + 0x260]
call fcn.0050db64
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, 8
jge 0x4fc683
sub eax, 3
je 0x4fc706
sub eax, 2
je 0x4fc6f3
jmp 0x4fc83e
add eax, 0xfffffff8
sub eax, 2
jb 0x4fc69f
add eax, 0xfffffff6
sub eax, 2
jb 0x4fc69f
add eax, 0xffffffb1
sub eax, 3
jae 0x4fc83e
cmp dword [0x52b008], 0
je 0x4fc6e4
cmp dword [esi + 4], 0x67
jne 0x4fc6c6
mov eax, dword [0x52b008]
mov eax, dword [eax + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x54]
test al, al
je case.0x4fa234.0
cmp dword [esi + 4], 0x66
jne 0x4fc6e4
mov eax, dword [0x52b008]
mov eax, dword [eax + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
je case.0x4fa234.0
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00501c90
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
xor eax, eax
mov dword [esi + 0xc], eax
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [esi + 0xc], 0
jne case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov byte [0x52b000], 0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0x58], 0
jne 0x4fc75a
mov eax, 0xc8
call fcn.00512738
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fc7bc
mov eax, dword [0x52b744]
cmp dword [eax], 0
je case.0x4fa234.0
lea edx, [esp + 8]
mov eax, ebx
call fcn.00504b1c
mov eax, dword [ebx + 0x244]
call fcn.004f59e0
add eax, dword [esp + 0xc]
add eax, 4
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
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.00504c28
jmp case.0x4fa234.0
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00504b1c
mov esi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.004f7358
add esi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0051234c
add esi, eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov edx, dword [ebx + 0x260]
call fcn.004f59cc
add esi, eax
push esi
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov edx, dword [ebx + 0x260]
call fcn.004f5978
mov esi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00504b1c
add esi, dword [esp + 0x80]
mov edx, esi
mov eax, ebx
pop ecx
call fcn.00504c28
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x4c]
call fcn.00419cdc
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [esi + 4]
mov edx, 0x3e8
call fcn.00512268
test al, al
je 0x4fc8a0
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00501c90
mov al, byte [0x5006e4]
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.0050b474
mov edx, dword [esi + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0050b5ec
jmp case.0x4fa234.0
mov eax, dword [esi + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00512268
test al, al
je 0x4fc900
cmp dword [ebx + 0xa8], 0
je case.0x4fa234.0
mov edx, dword [esi + 4]
mov eax, ebx
call fcn.00501c90
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 + 0xa8]
mov eax, dword [eax + 0x34]
call fcn.004a3154
mov cl, byte [0x5006e4]
xor edx, edx
call fcn.004a2a20
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fc931
push 0
mov ecx, 0xf012
mov edx, 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044673c
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fc98e
lea eax, [esp + 0x74]
push eax
movsx ecx, word [esi + 0xa]
xor edx, edx
mov eax, ebx
call fcn.00504f60
mov edi, dword [esp + 0x78]
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov cl, 1
mov edx, dword [ebx + 0x260]
call fcn.004f59cc
mov ebp, eax
mov dl, 1
mov eax, ebx
call fcn.004f7510
add ebp, eax
cmp edi, ebp
jle 0x4fcb23
push 0
lea eax, [esp + 0x15]
push eax
push 0
push 0x26
call sub.user32.dll_SystemParametersInfoA
cmp byte [esp + 0x11], 0
je 0x4fcb10
cmp byte [ebx + 0x58], 1
jne 0x4fca6a
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x4fca6a
mov eax, dword [esi + 4]
sub eax, 5
je 0x4fca6a
mov eax, dword [esi + 4]
sub eax, 2
je 0x4fc9df
sub eax, 3
jne 0x4fc9ed
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi + 4]
add eax, 0xfffffff6
sub eax, 8
setb al
xor al, 1
mov byte [0x52d268], al
lea ecx, [esp + 8]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.004066ec
cmp byte [0x52d268], 0
je 0x4fca39
push 0
push 0xf010
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fca56
push 0
push 0xf000
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00505dc8
jmp case.0x4fa234.0
cmp dword [esi + 4], 2
jne 0x4fcafd
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4fcafd
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp byte [eax + 6], 0
je 0x4fcafd
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x4fcafd
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x24]
cmp byte [eax + 8], 0xff
je 0x4fcafd
cmp byte [ebx + 0x94], 0
je 0x4fcafd
cmp byte [ebx + 0x23c], 0
jne 0x4fcae0
mov byte [ebx + 0x23c], 1
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetFocus
mov eax, ebx
call fcn.004f5040
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22e], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp case.0x4fa234.0
mov eax, dword [esi + 4]
sub eax, 3
jne 0x4fcc33
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov byte [0x52b000], 0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fcbb1
mov eax, dword [0x52b744]
cmp dword [eax], 0
je case.0x4fa234.0
lea edx, [esp + 8]
mov eax, ebx
call fcn.00504b1c
mov dl, 1
mov eax, ebx
call fcn.004f7510
mov ecx, eax
add ecx, dword [esp + 0xc]
add ecx, 4
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00504c28
jmp case.0x4fa234.0
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00504b1c
mov esi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.004f7358
add esi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0051234c
add esi, eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov edx, dword [ebx + 0x260]
call fcn.004f59cc
add esi, eax
push esi
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov cl, 1
mov edx, dword [ebx + 0x260]
call fcn.004f5978
mov esi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00504b1c
add esi, dword [esp + 0x80]
mov edx, esi
mov eax, ebx
pop ecx
call fcn.00504c28
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp dword [esi + 4], 0x2f
jne 0x4fcca7
cmp dword [ebx + 0x210], 0
je 0x4fcca7
mov eax, dword [ebx + 0x210]
mov edx, dword [0x4f4350]
call fcn.004036f8
test al, al
je 0x4fcca7
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edi, dword [ebx + 0x210]
mov eax, edi
call fcn.00511af0
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 + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [0x52b528]
cmp dword [eax], 0
je 0x4fcced
mov eax, dword [0x52b528]
mov eax, dword [eax]
test byte [eax + 0x1c], 0x10
jne 0x4fcced
mov eax, dword [0x52b528]
mov eax, dword [eax]
xor edx, edx
call fcn.0051f674
cmp byte [ebx + 0x58], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je case.0x4fa234.0
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.004066ec
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x244]
call fcn.00445088
mov eax, dword [esp + 8]
mov dword [esp + 4], eax
mov edi, dword [esp + 0xc]
cmp byte [0x52d268], 0
je 0x4fcdb8
cmp byte [0x52aff0], 0
je 0x4fcd53
mov byte [0x52aff0], 0
cmp byte [0x52afe8], 0
je case.0x4fa234.0
mov ecx, dword [0x52d274]
mov edx, dword [0x52d278]
mov eax, ebx
call fcn.00505fc8
mov eax, dword [esp + 4]
sub eax, dword [0x52d284]
add dword [0x52d278], eax
mov eax, edi
sub eax, dword [0x52d288]
add dword [0x52d274], eax
mov dword [0x52d288], edi
mov eax, dword [esp + 4]
mov dword [0x52d284], eax
mov ecx, dword [0x52d274]
mov edx, dword [0x52d278]
mov eax, ebx
call fcn.00505fc8
jmp case.0x4fa234.0
cmp byte [0x52aff0], 0
je 0x4fcdd7
mov eax, dword [esp + 4]
mov dword [0x52d284], eax
mov dword [0x52d288], edi
mov byte [0x52aff0], 0
cmp byte [0x52afe8], 0
je case.0x4fa234.0
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.00505fc8
mov eax, dword [0x52d28c]
add eax, 0xfffffff6
cmp eax, 6
ja case.default.0x4fce00
jmp dword [eax*4 + 0x4fce07]
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d278], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [0x52d280]
sub eax, dword [0x52d294]
mov dword [0x52d278], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d280], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [0x52d294]
mov dword [0x52d280], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x52d288]
mov dword [0x52d27c], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
add eax, dword [0x52d290]
mov dword [0x52d27c], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
add edi, dword [eax + 0x44]
sub edi, dword [0x52d288]
mov dword [0x52d274], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fd168
mov eax, dword [0x52d27c]
sub eax, dword [0x52d290]
mov dword [0x52d274], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x52d288]
mov dword [0x52d27c], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fcf90
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
add eax, dword [0x52d290]
mov dword [0x52d27c], eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d278], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [0x52d280]
sub eax, dword [0x52d294]
mov dword [0x52d278], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
add edi, dword [eax + 0x44]
sub edi, dword [0x52d288]
mov dword [0x52d274], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fd00c
mov eax, dword [0x52d27c]
sub eax, dword [0x52d290]
mov dword [0x52d274], eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d280], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [0x52d294]
mov dword [0x52d280], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
add edi, dword [eax + 0x44]
sub edi, dword [0x52d288]
mov dword [0x52d274], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fd095
mov eax, dword [0x52d27c]
sub eax, dword [0x52d290]
mov dword [0x52d274], eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d278], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [0x52d280]
sub eax, dword [0x52d294]
mov dword [0x52d278], eax
jmp 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x4c]
add edi, eax
sub edi, dword [0x52d288]
mov dword [0x52d27c], edi
mov eax, dword [0x52d27c]
sub eax, dword [0x52d274]
cmp eax, dword [0x52d290]
jge 0x4fd120
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
add eax, dword [0x52d290]
mov dword [0x52d27c], eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
mov edx, dword [ebx + 0x244]
add eax, dword [edx + 0x48]
add eax, dword [esp + 4]
sub eax, dword [0x52d284]
mov dword [0x52d280], eax
mov eax, dword [0x52d280]
sub eax, dword [0x52d278]
cmp eax, dword [0x52d294]
jge 0x4fd168
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x40]
add eax, dword [0x52d294]
mov dword [0x52d280], eax
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.00505fc8
jmp case.0x4fa234.0
mov eax, dword [esi + 4]
add eax, 0xfffffffe
sub eax, 2
jb case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, ebx
call fcn.004f6a04
test al, al
je 0x4fd207
cmp dword [ebx + 0x260], 0
je 0x4fd1c6
cmp dword [esi + 4], 0xffffffff
jne 0x4fd1c6
mov edx, esi
mov eax, dword [ebx + 0x260]
call fcn.0050db64
mov dword [esi + 4], eax
jmp 0x4fd1d2
mov edx, esi
mov eax, ebx
call fcn.004f8eac
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add eax, 0xfffffffe
sub eax, 2
jae case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov byte [0x52b000], 0
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00504c28
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [ebx + 0x78], 0
je 0x4fd849
cmp dword [ebx + 0x260], 0
je 0x4fd243
cmp dword [esi + 4], 0xffffffff
jne 0x4fd243
mov edx, esi
mov eax, dword [ebx + 0x260]
call fcn.0050db64
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, 0x15
jg 0x4fd26b
je 0x4fd534
sub eax, 8
je 0x4fd3e9
dec eax
je 0x4fd304
sub eax, 0xb
je 0x4fd287
jmp 0x4fd67b
sub eax, 0x65
je 0x4fd5a2
dec eax
je 0x4fd5e8
dec eax
je 0x4fd62a
jmp 0x4fd67b
cmp byte [0x52b000], 0
je case.0x4fa234.0
xor eax, eax
mov dword [ebx + 0x12c], eax
push 0
push 0xf060
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
mov eax, ebx
call fcn.005085a4
cmp dword [ebx + 0x244], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x57], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x4fd339
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne case.0x4fa234.0
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
je case.0x4fa234.0
cmp byte [0x52b000], 0
je 0x4fd3cb
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fd367
xor eax, eax
mov dword [0x52b008], eax
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4fd395
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fd3b2
push 0
push 0xf030
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
mov byte [0x52b000], 0
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [0x52b000], 0
je 0x4fd516
cmp dword [ebx + 0x260], 0
je 0x4fd42a
movsx edx, word [esi + 0xa]
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
sub edx, dword [eax + 0x44]
movsx eax, word [esi + 8]
mov ecx, dword [ebx + 0x260]
mov ecx, dword [ecx + 0x18]
sub eax, dword [ecx + 0x40]
lea ecx, [esp + 8]
call fcn.004066ec
jmp 0x4fd43e
lea eax, [esp + 8]
push eax
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov eax, ebx
call fcn.00504f60
lea edx, [esp + 8]
lea eax, [ebx + 0xe4]
call fcn.004066f4
test al, al
je 0x4fd503
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne 0x4fd49f
mov byte [ebx + 0x21a], 1
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov byte [ebx + 0x21a], 0
jmp 0x4fd4f0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fd4d3
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fd4f0
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov byte [ebx + 0xb6], 1
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [0x52b000], 0
je 0x4fd592
push 0
push 0xf180
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
mov byte [0x52b000], 0
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, dword [ebx + 0x244]
call fcn.0044673c
jmp case.0x4fa234.0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp case.0x4fa234.0
cmp byte [0x52b000], 0
je case.0x4fa234.0
mov byte [0x52b000], 0
push 0
push 0xf060
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp case.0x4fa234.0
cmp byte [0x52b000], 0
je 0x4fd613
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov byte [0x52b000], 0
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp case.0x4fa234.0
cmp byte [0x52b000], 0
je 0x4fd66b
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.005225f4
mov byte [0x52b000], 0
push 0
push 0xf020
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x4c]
call fcn.00419cdc
mov ecx, eax
add ecx, 0x3e8
dec ecx
mov eax, dword [esi + 4]
mov edx, 0x3e8
call fcn.00512268
test al, al
je 0x4fd6ee
cmp byte [0x52b000], 0
je 0x4fd6d7
mov al, byte [0x5006e4]
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.0050b474
mov edx, dword [esi + 4]
sub edx, 0x3e8
xor ecx, ecx
call fcn.0050b614
mov byte [0x52b000], 0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
jmp 0x4fd83d
mov eax, dword [esi + 4]
mov ecx, 0x8cf
mov edx, 0x7d0
call fcn.00512268
test al, al
je 0x4fd75c
cmp byte [0x52b000], 0
je 0x4fd744
cmp dword [ebx + 0xa8], 0
je 0x4fd744
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 + 0xa8]
mov eax, dword [eax + 0x34]
call fcn.004a3154
mov cl, byte [0x5006e4]
xor edx, edx
call fcn.004a2b8c
mov byte [0x52b000], 0
mov edx, dword [esi + 4]
mov cl, 1
mov eax, ebx
call fcn.005018f0
jmp 0x4fd83d
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fd7c8
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4fd7b8
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00504b1c
mov esi, dword [esp + 0x74]
lea eax, [esp + 0x7c]
call fcn.004dea3c
add esi, dword [esp + 0x7c]
push esi
lea eax, [esp + 0xa8]
call fcn.004dea3c
mov ecx, dword [esp + 0xac]
mov eax, ebx
pop edx
call fcn.00504c28
jmp 0x4fd83d
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp 0x4fd83d
cmp byte [ebx + 0x58], 1
jne 0x4fd82f
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x4fd82f
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
je 0x4fd82f
cmp byte [0x52afe8], 0
je 0x4fd82f
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.004066ec
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x244]
call fcn.00445088
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00505ec8
call sub.user32.dll_ReleaseCapture
jmp 0x4fd83d
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov byte [0x52b000], 0
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x21c], 0
je 0x4fd888
lea eax, [ebx + 0x21c]
call fcn.0040e154
mov eax, dword [ebx + 0x54]
call fcn.00522850
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov edx, 3
pop ecx
call fcn.004e23fc
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x2f4], 1
jne 0x4fd90e
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x57], 0
je 0x4fd90e
mov eax, ebx
call fcn.004f5d4c
test al, al
jne 0x4fd90e
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je 0x4fd8fb
mov dword [ebx + 0x248], 0xffffffff
mov byte [ebx + 0x22a], 1
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
test byte [ebx + 0x1c], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x2f4], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor ecx, ecx
mov dl, 1
call fcn.004f5c98
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fd9ca
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4fd9ca
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
test eax, eax
je 0x4fd9ca
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x4fd9ca
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
cmp eax, dword [ebx + 0x244]
jne case.0x4fa234.0
cmp byte [ebx + 0xb5], 0
jne 0x4fd9e5
mov eax, ebx
call fcn.0050593c
test al, al
je 0x4fd9e5
mov byte [ebx + 0xb5], 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 + 0x260], 0
je 0x4fdaf0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x4fda12
mov eax, ebx
call fcn.00503070
push 0xcc0020
push 0
push 0
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.00428b44
call fcn.00424194
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.0050512c
push eax
mov eax, ebx
call fcn.00505094
mov edx, eax
mov eax, ebp
pop ecx
call fcn.00443eac
lea eax, [esp + 0x24]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.0051234c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00512338
push eax
push 0
push 0
push ebp
call sub.gdi32.dll_IntersectClipRect
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
je 0x4fdd1b
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.004066ec
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [ebx + 0x244]
mov eax, ebp
call fcn.004e1e84
jmp 0x4fdd1b
cmp byte [ebx + 0x78], 0
je 0x4fdc33
mov eax, ebx
call fcn.004f6a04
test al, al
jne 0x4fdc2a
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
call fcn.004f65ac
test al, al
je 0x4fdc2a
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x4fdb31
mov eax, ebx
call fcn.00503070
mov eax, dword [ebx + 0x244]
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.00428b44
call fcn.00424194
push eax
push edi
mov eax, dword [ebx + 0x244]
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.00428b44
call fcn.00424194
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 + 0x244]
mov eax, dword [eax + 0x4c]
sub eax, edi
push eax
push edi
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.00428b44
call fcn.00424194
push eax
push edi
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x48]
sub eax, edi
push eax
mov eax, dword [ebx + 0x244]
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.00428b44
call fcn.00424194
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 0x4fdc33
mov edx, ebp
mov eax, ebx
call fcn.005010d0
mov eax, ebx
call fcn.0050512c
push eax
mov eax, ebx
call fcn.00505094
mov edx, eax
mov eax, ebp
pop ecx
call fcn.00443eac
lea eax, [esp + 0x24]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetClientRect
lea eax, [esp + 0x24]
xor edx, edx
call fcn.0051234c
push eax
lea eax, [esp + 0x28]
xor edx, edx
call fcn.00512338
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 0x4fdca2
mov cl, 1
mov edx, ebp
mov eax, ebx
call fcn.00501370
jmp 0x4fdd1b
push ebp
call sub.gdi32.dll_SaveDC
mov dword [esp], eax
push 0
push 0
xor ecx, ecx
mov edx, dword [ebx + 0x244]
mov eax, ebp
call fcn.004e72fc
mov cl, 1
mov edx, ebp
mov eax, ebx
call fcn.00501370
mov eax, dword [esp]
push eax
push ebp
call sub.gdi32.dll_RestoreDC
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
je 0x4fdd1b
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.004066ec
lea eax, [esp + 0x74]
push eax
push 0
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
sete al
xor al, 1
push eax
mov cl, 1
mov edx, dword [ebx + 0x244]
mov eax, ebp
call fcn.004e1e84
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fdd44
push 0
push ebp
push 0x317
mov eax, dword [ebx + 0x244]
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 + 0x244]
cmp word [eax + 0x2ba], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0045f884
mov edx, ebp
call fcn.00424214
mov esi, dword [ebx + 0x244]
mov edx, dword [ebx + 0x244]
mov eax, dword [esi + 0x2bc]
call dword [esi + 0x2b8]
mov eax, dword [ebx + 0x244]
call fcn.0045f884
xor edx, edx
call fcn.00424214
jmp case.0x4fa234.0
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
cmp dword [ebx + 0x24c], 0
jne 0x4fddbb
mov eax, ebx
call fcn.005069b4
cmp byte [ebx + 0x78], 0
je 0x4fde22
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x400
cmp ax, 0x400
je case.0x4fa234.0
mov eax, ebx
call fcn.004f591c
test al, al
je 0x4fde0c
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x248]
cmp dword [eax + 0x38], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
je case.0x4fa234.0
cmp byte [ebx + 0x214], 0
je 0x4fde39
mov byte [ebx + 0x214], 0
mov eax, ebx
call fcn.005088c0
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
je 0x4fde60
mov eax, dword [ebx + 0x54]
call fcn.00522864
mov edx, dword [ebx + 0x54]
mov byte [edx + 0x1c], al
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x4fa234.0
cmp byte [ebx + 0x78], 0
je 0x4fdf2a
mov eax, dword [0x52b1e8]
cmp byte [eax], 0
je 0x4fde87
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4fdf2a
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fdea3
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp byte [ebx + 0x21b], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je case.0x4fa234.0
test byte [ebx + 0x1c], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x55], 2
jne case.0x4fa234.0
cmp dword [ebx + 0x24c], 0
je case.0x4fa234.0
cmp dword [ebx + 0x220], 0
jne 0x4fdefa
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
jne 0x4fdf19
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00520148
mov edx, eax
mov eax, ebx
call fcn.0050837c
mov eax, ebx
call fcn.005073c8
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fe29d
mov eax, dword [ebx + 0x54]
mov ax, word [eax + 0x52]
and ax, 0x800
cmp ax, 0x800
je case.0x4fa234.0
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x54], 0x80
jne 0x4fe1e4
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x4fe1e4
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fdfd8
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fe110
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
test eax, eax
je 0x4fe110
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x4fe110
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fe0d4
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x4fe0d4
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4fe0d4
lea eax, [esp + 0x24]
push eax
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetClientRect
lea edx, [esp + 0x84]
mov eax, dword [ebx + 0x244]
call fcn.00444f10
lea edx, [esp + 0x84]
lea eax, [esp + 0x24]
call fcn.004066f4
test al, al
je 0x4fe0d4
lea edx, [esp + 0x84]
mov eax, dword [ebx + 0x244]
call fcn.00444f10
lea edx, [esp + 0x8c]
lea eax, [esp + 0x24]
call fcn.004066f4
test al, al
je 0x4fe0d4
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov cl, 1
mov edx, dword [ebx + 0x260]
call fcn.004f59cc
mov edi, eax
mov dl, 1
mov eax, ebx
call fcn.004f7510
add edi, eax
mov eax, ebx
call fcn.00505220
mov ebp, eax
mov eax, ebx
call fcn.00505920
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.0042ad60
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.005071c4
cmp byte [0x52b004], 0
je 0x4fe291
mov byte [0x52b004], 0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fe291
mov dword [0x52b008], ebx
jmp 0x4fe291
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x1c], 0
jne 0x4fe291
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x4fe1d4
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
jne 0x4fe1d4
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
push eax
lea eax, [esp + 0x88]
push eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004066d0
lea eax, [esp + 0x84]
push eax
mov eax, dword [esi + 4]
push eax
push 0
push 0
push 0
mov eax, ebx
call fcn.0050512c
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444fb8
add edi, eax
push edi
lea eax, [esp + 0xac]
push eax
mov eax, ebx
call fcn.00505094
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.00444f74
add edi, eax
push edi
mov eax, ebx
call fcn.0050512c
push eax
mov eax, ebx
call fcn.00505094
pop edx
pop ecx
call fcn.004066d0
lea ecx, [esp + 0xa8]
mov edx, dword [ebx + 0x54]
mov eax, dword [ebx + 0x244]
call fcn.00523f1c
mov eax, dword [ebx + 0x244]
call fcn.004e1c68
jmp 0x4fe291
cmp dword [esi + 4], 0
je 0x4fe291
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
jne 0x4fe291
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fe250
push 0xcc0020
mov eax, ebx
call fcn.0050512c
push eax
mov eax, ebx
call fcn.00505094
push eax
mov eax, dword [ebx + 0x54]
mov eax, dword [eax + 0x44]
call fcn.00428b44
call fcn.00424194
push eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x48]
push eax
push 0
push 0
mov eax, dword [esi + 4]
push eax
call sub.gdi32.dll_BitBlt
jmp 0x4fe291
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.005215e8
push eax
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x4c]
push eax
lea eax, [esp + 0x8c]
push eax
mov eax, dword [ebx + 0x244]
mov ecx, dword [eax + 0x48]
xor edx, edx
xor eax, eax
call fcn.004066d0
lea edx, [esp + 0x88]
mov eax, dword [esi + 4]
pop ecx
call fcn.004e7060
mov dword [esi + 0xc], 1
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x54], 0x80
jne case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x4fe307
mov eax, ebx
call fcn.004f5d4c
test al, al
jne 0x4fe307
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je 0x4fe2f8
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x4fe307
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050e948
mov eax, dword [ebx + 0x54]
call fcn.00520dac
test al, al
je 0x4fe3c2
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fe3b2
mov edx, esi
mov eax, ebx
call fcn.00507b60
cmp byte [0x52b004], 0
je 0x4fe343
mov byte [0x52b004], 0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fe3a8
cmp dword [esi + 4], 0
jne 0x4fe36b
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetDC
mov ebp, eax
lea ecx, [esp + 0x74]
xor edx, edx
xor eax, eax
call fcn.004066ec
lea eax, [esp + 0x74]
push eax
push 0
push 1
mov cl, 1
mov edx, dword [ebx + 0x244]
mov eax, ebp
call fcn.004e1e84
cmp dword [esi + 4], 0
jne 0x4fe3a8
push ebp
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_ReleaseDC
xor eax, eax
mov dword [esi + 0xc], eax
jmp 0x4fe436
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp 0x4fe436
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fe428
test byte [ebx + 0x1c], 8
jne 0x4fe3f5
mov eax, dword [ebx + 0x54]
cmp byte [eax + 0x39], 0
je 0x4fe3f5
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
lea eax, [esp + 0x34]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_BeginPaint
lea eax, [esp + 0x34]
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_EndPaint
xor eax, eax
mov dword [esi + 0xc], eax
jmp 0x4fe436
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp byte [ebx + 0x78], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x248], 0
je case.0x4fa234.0
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [0x52b6a8]
cmp dword [eax], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044c0ac
test al, al
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
call fcn.004f7610
jmp case.0x4fa234.0
test byte [ebx + 0x1c], 8
jne 0x4fea8c
cmp byte [ebx + 0x78], 0
je 0x4fea8c
mov eax, dword [ebx + 0x244]
call fcn.0044c0ac
test al, al
je 0x4fea8c
cmp dword [ebx + 0x24c], 0
jne 0x4fe4ed
mov eax, ebx
call fcn.005069b4
or dword [ebx + 0x224], 0x8000
mov eax, dword [ebx + 0x224]
and eax, 0x80
cmp eax, 0x80
je 0x4fe516
cmp dword [esi + 4], 1
sbb eax, eax
inc eax
mov byte [ebx + 0x23c], al
cmp byte [ebx + 0x23c], 0
jne 0x4fe531
cmp byte [ebx + 0x219], 3
jne 0x4fe531
mov byte [ebx + 0x219], 0
jmp 0x4fe55f
cmp byte [ebx + 0x219], 3
je 0x4fe54d
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da0
jmp 0x4fe55f
cmp dword [ebx + 0x260], 0
sete dl
mov eax, dword [ebx + 0x54]
call fcn.00522da0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fe7ea
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4fe7ea
cmp word [esi + 4], 0
setne al
cmp al, byte [ebx + 0x23c]
je 0x4fe5a2
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
call fcn.004f5c04
test al, al
je 0x4fe6ac
cmp dword [ebx + 0x260], 0
jne 0x4fe5d4
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fe704
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x4fe704
mov eax, ebx
call fcn.00505220
test eax, eax
jle 0x4fe704
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
jne 0x4fe607
mov eax, dword [ebx + 0x260]
call fcn.0050faf4
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050f98c
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x2e0], 0
je 0x4fe667
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
mov edx, dword [ebx + 0x244]
xor ecx, ecx
mov cl, byte [edx + 0x2e1]
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
call fcn.004f48fc
jmp 0x4fe687
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, 0xff
call fcn.004f48fc
push 0x613
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
jmp 0x4fe704
cmp byte [ebx + 0x21b], 0
jne 0x4fe6be
cmp byte [ebx + 0x214], 0
je 0x4fe6d7
push 0
push 0
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fe704
cmp dword [ebx + 0x260], 0
je 0x4fe6eb
mov eax, ebx
call fcn.004f591c
test al, al
je 0x4fe704
mov eax, dword [ebx + 0x244]
cmp word [eax + 0x2ba], 0
jne 0x4fe704
xor edx, edx
mov eax, ebx
call fcn.004f60ec
cmp dword [ebx + 0x260], 0
je 0x4fe728
cmp byte [ebx + 0x21b], 0
jne 0x4fe728
call fcn.004f5c04
test al, al
jne 0x4fe728
xor edx, edx
mov eax, ebx
call fcn.004f65c4
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
call fcn.004f5c04
test al, al
je 0x4fe77f
cmp dword [ebx + 0x260], 0
jne 0x4fe7f8
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
push 0x181
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp 0x4fe7f8
cmp byte [ebx + 0x21b], 0
jne 0x4fe791
cmp byte [ebx + 0x214], 0
je 0x4fe7aa
push 0
push 1
push 0xb
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fe7c5
cmp dword [ebx + 0x260], 0
je 0x4fe7be
mov eax, ebx
call fcn.004f591c
test al, al
je 0x4fe7c5
mov eax, ebx
call fcn.004f63e8
cmp byte [ebx + 0x214], 0
je 0x4fe7f8
push 0x85
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp 0x4fe7f8
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x244], 0
je 0x4fe8e0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x57], 0
je 0x4fe8e0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fe8e0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x2f4], 0x10
je 0x4fe8e0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x2f4], 4
je 0x4fe8e0
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4fe8e0
mov eax, dword [0x52b744]
mov eax, dword [eax]
cmp dword [eax + 0x238], 0
je 0x4fe8e0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov dword [eax + 0x248], 0xffffffff
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x238]
call fcn.004a5dc0
push 0
push 0
push 0x85
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
push 0
push 0
push 0x85
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov eax, dword [eax + 0x254]
push eax
call sub.user32.dll_SendMessageA
push 0xffffffffffffffec
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x80000
cmp eax, 0x80000
jne 0x4fe918
cmp dword [ebx + 0x210], 0
jne 0x4fe918
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
mov eax, dword [ebx + 0x244]
test byte [eax + 0x54], 0x40
jne case.0x4fa234.0
mov eax, ebx
call fcn.004f6a04
test al, al
je 0x4fe9ce
mov eax, dword [ebx + 0x224]
and eax, 0x80
cmp eax, 0x80
je 0x4fe9ce
mov eax, ebx
call fcn.005058b4
test al, al
je 0x4fe9a6
cmp word [esi + 4], 0
jne 0x4fe973
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22e], 0
je 0x4fe9ce
cmp word [esi + 4], 0
jne 0x4fe992
mov eax, dword [ebx + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22e], 0
jne 0x4fe992
xor eax, eax
jmp 0x4fe994
mov al, 1
mov byte [ebx + 0x23c], al
mov dword [ebx + 0x248], 0xffffffff
jmp 0x4fe9ce
cmp word [esi + 4], 0
setne al
cmp al, byte [ebx + 0x23c]
je 0x4fe9ce
cmp word [esi + 4], 0
setne al
mov byte [ebx + 0x23c], al
mov dword [ebx + 0x248], 0xffffffff
and dword [ebx + 0x224], 0xffff7fff
cmp dword [ebx + 0x210], 0
je 0x4fe9ed
mov eax, dword [ebx + 0x210]
cmp byte [eax + 0x30], 0
jne 0x4fea5a
push 0
xor ecx, ecx
mov edx, 0x85
mov eax, ebx
call fcn.00508ac0
cmp dword [ebx + 0x260], 0
je 0x4fea5a
mov eax, dword [ebx + 0x244]
mov al, byte [eax + 0x22b]
sub al, 1
jb 0x4fea4b
dec al
jne 0x4fea5a
mov eax, dword [0x52b11c]
cmp byte [eax], 0
je 0x4fea3a
lea eax, [ebx + 0x260]
call fcn.0040e154
xor edx, edx
mov eax, ebx
call fcn.004f65c4
jmp 0x4fea5a
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp 0x4fea5a
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
mov eax, ebx
call fcn.00506938
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da4
test al, al
je case.0x4fa234.0
cmp dword [ebx + 0x220], 0
jne case.0x4fa234.0
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x224]
and eax, 0x100
cmp eax, 0x100
je case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x4feae0
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne case.0x4fa234.0
cmp dword [esi + 4], 1
jne case.0x4fa234.0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp byte [eax + 0x22b], 1
jne case.0x4fa234.0
cmp dword [ebx + 0x210], 0
je 0x4feb33
mov eax, dword [ebx + 0x210]
cmp byte [eax + 0xec], 0
jne case.0x4fa234.0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
xor edx, edx
call fcn.0045fd44
push 0xffffffffffffffff
push 0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0044bda8
push eax
call sub.user32.dll_InvalidateRect
push 0x585
push 0
push 0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x4fec5c
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4fec5c
mov eax, dword [0x52b744]
mov eax, dword [eax]
test byte [eax + 0x1c], 8
jne 0x4fec5c
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
je 0x4fec26
mov byte [ebx + 0xb5], 0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov byte [eax + 0x22a], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov dword [eax + 0x248], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fec5c
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
push 0
push 0
push 0x85
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
mov al, 1
call fcn.004f96a8
mov dword [0x52b008], ebx
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4fed25
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x21c], 0
jne 0x4feca6
cmp byte [ebx + 0x78], 0
je 0x4feca6
lea edx, [ebx + 0x21c]
xor ecx, ecx
mov eax, ebx
call fcn.004f6900
mov eax, dword [ebx + 0x244]
test byte [eax + 0x54], 0x40
jne case.0x4fa234.0
mov dword [ebx + 0x248], 0xffffffff
cmp word [esi + 4], 1
jne case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test byte [eax + 0x1c], 0x10
jne 0x4fecec
xor edx, edx
mov eax, dword [ebx + 0x54]
call fcn.00522da4
mov edx, eax
mov eax, ebx
call fcn.00505d4c
cmp dword [ebx + 0x24c], 0
je 0x4fed02
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x229], 0
jne case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.004e1c68
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [ebx + 0x214], 0
je 0x4fed6b
cmp dword [esi + 4], 1
jne 0x4fed6b
mov byte [ebx + 0x214], 0
mov eax, ebx
call fcn.005088c0
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00520148
mov edx, eax
mov eax, ebx
call fcn.0050837c
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [esi + 4], 0
jne 0x4fedc0
cmp dword [ebx + 0x54], 0
je 0x4fedb4
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x4fedb4
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne 0x4fedb4
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.005085a4
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.004e1c68
jmp case.0x4fa234.0
cmp byte [ebx + 0x58], 1
jne 0x4fee2e
cmp byte [0x52afe8], 0
je 0x4fee2e
lea ecx, [esp + 0x74]
movsx edx, word [esi + 0xa]
movsx eax, word [esi + 8]
call fcn.004066ec
lea edx, [esp + 0x74]
lea ecx, [esp + 8]
mov eax, dword [ebx + 0x244]
call fcn.00445088
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov eax, ebx
call fcn.00505ec8
call sub.user32.dll_ReleaseCapture
mov byte [0x52afe8], 0
mov byte [0x52afec], 0
mov eax, dword [esi + 4]
sub eax, 2
je 0x4fee69
dec eax
jne 0x4fef69
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0x58], 0
jne 0x4fee59
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x1c], 1
mov eax, dword [ebx + 0x244]
call fcn.00461fb8
jmp case.0x4fa234.0
cmp byte [ebx + 0x43], 0
je 0x4fee8d
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x4feeb1
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
jne 0x4feeb1
mov eax, ebx
call fcn.004f6a04
test al, al
jne 0x4fef20
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fef20
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
je 0x4feed5
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4feef4
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fef11
push 0
push 0xf030
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
jmp 0x4fef5f
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4fef5f
push 0
push 0xf120
push 0x112
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
xor eax, eax
mov dword [esi + 4], eax
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 2
jne 0x4fef9b
mov eax, dword [0x52b744]
cmp ebx, dword [eax]
jne 0x4fef9b
mov eax, dword [0x52b744]
mov dword [eax], ebx
mov eax, ebx
call fcn.004f591c
test al, al
je 0x4fefed
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4fefed
mov eax, dword [esi + 8]
cmp dword [eax], 1
jne 0x4fefed
mov eax, dword [esi + 8]
mov edx, dword [eax + 8]
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x248]
xor ecx, ecx
call fcn.00458c24
mov edi, eax
test edi, edi
je 0x4fefed
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x44]
mov cl, 1
mov edx, edi
call fcn.004f1e7c
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4ff203
mov ax, word [esi + 4]
sub ax, 0xf012
je 0x4ff03c
sub ax, 0xe
je 0x4ff0b2
sub ax, 0x10
je 0x4ff04f
sub ax, 0xf0
je 0x4ff0fb
jmp 0x4ff203
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x4ff203
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
jne 0x4ff203
cmp dword [ebx + 0x210], 0
je 0x4ff203
mov eax, dword [ebx + 0x210]
cmp byte [eax + 0xec], 0
je 0x4ff203
call fcn.005122a8
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005122d8
mov eax, ebx
call fcn.004f4e34
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov al, byte [esp + 0x12]
call fcn.005122d8
jmp case.0x4fa234.0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
je 0x4ff203
call fcn.005122a8
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005122d8
mov eax, ebx
call fcn.004f4c20
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov al, byte [esp + 0x12]
call fcn.005122d8
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
jne 0x4ff156
and dword [ebx + 0x224], 0xfffffdff
cmp dword [ebx + 0x260], 0
je 0x4ff12a
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
call fcn.005122a8
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005122d8
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov al, byte [esp + 0x12]
call fcn.005122d8
jmp case.0x4fa234.0
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
je 0x4ff203
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4ff1b4
call fcn.005122a8
mov byte [esp + 0x12], al
xor eax, eax
call fcn.005122d8
mov eax, ebx
call fcn.004f4e34
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov al, byte [esp + 0x12]
call fcn.005122d8
jmp case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x4ff1c9
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je 0x4ff1dd
cmp dword [ebx + 0x260], 0
jne 0x4ff203
mov eax, ebx
call fcn.004f9920
test al, al
je 0x4ff203
cmp dword [ebx + 0x260], 0
je 0x4ff1f1
lea eax, [ebx + 0x260]
call fcn.0040e154
mov dl, 1
mov eax, ebx
call fcn.0050837c
xor edx, edx
mov eax, ebx
call fcn.004f65c4
cmp byte [ebx + 0x58], 1
jne 0x4ff286
mov eax, dword [ebx + 0x244]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x4ff286
cmp byte [0x52afe8], 0
jne 0x4ff286
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf010
jne 0x4ff251
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetCapture
mov byte [0x52aff0], 1
mov byte [0x52d268], 1
jmp 0x4ff286
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf000
jne 0x4ff286
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetCapture
xor eax, eax
mov dword [0x52d28c], eax
mov byte [0x52aff0], 1
mov byte [0x52d268], 0
mov eax, dword [ebx + 0x244]
mov al, byte [eax + 0x22f]
dec al
je 0x4ff2a3
dec al
je 0x4ff634
jmp 0x4ff6c3
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 2
jne 0x4ff2ca
cmp dword [esi + 4], 0xf030
je 0x4ff2ca
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 0
jne 0x4ff2ce
xor eax, eax
jmp 0x4ff2d0
mov al, 1
mov byte [esp + 0x10], al
cmp byte [esp + 0x10], 0
je 0x4ff2ea
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
call fcn.005225f4
mov eax, dword [esi + 4]
and eax, 0xfff0
cmp eax, 0xf060
jg 0x4ff314
je 0x4ff32d
sub eax, 0xf020
je 0x4ff517
sub eax, 0x10
je 0x4ff553
jmp 0x4ff602
sub eax, 0xf100
je 0x4ff610
sub eax, 0x20
je 0x4ff3d5
jmp 0x4ff602
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4ff355
mov eax, dword [0x52b744]
mov eax, dword [eax]
cmp dword [eax + 0x238], 0
je 0x4ff355
cmp byte [esp + 0x10], 0
je 0x4ff355
mov al, 1
call fcn.004f96a8
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov byte [eax + 0x217], 1
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne 0x4ff38e
test byte [ebx + 0x1c], 8
jne 0x4ff38e
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005018f0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov byte [eax + 0x217], 0
mov eax, dword [0x52b744]
cmp dword [eax], 0
je case.0x4fa234.0
mov eax, dword [0x52b744]
mov eax, dword [eax]
cmp dword [eax + 0x238], 0
je case.0x4fa234.0
cmp byte [esp + 0x10], 0
je case.0x4fa234.0
mov al, 1
call fcn.004f96a8
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 1
jne 0x4ff3e9
mov byte [esp + 0x10], 1
cmp byte [0x52b004], 0
jne case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
cmp byte [ebx + 0x78], 0
je 0x4ff43d
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xfff7ffff
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowLongA
push 0x505
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f6d0
mov ebp, eax
dec ebp
test ebp, ebp
jl 0x4ff4f7
inc ebp
xor edi, edi
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov edx, edi
call fcn.0045f71c
cmp eax, dword [ebx + 0x244]
je 0x4ff4f3
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov edx, edi
call fcn.0045f71c
cmp byte [eax + 0x22b], 2
jne 0x4ff4cb
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov edx, edi
call fcn.0045f71c
xor edx, edx
call fcn.0045fd44
push 0x506
push 0
push 0
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
mov edx, edi
call fcn.0045f71c
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
inc edi
dec ebp
jne 0x4ff477
cmp byte [esp + 0x10], 0
je 0x4ff505
mov al, 1
call fcn.004f96a8
mov dl, 1
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp byte [esp + 0x10], 0
je 0x4ff533
mov al, 1
call fcn.004f96a8
mov dl, 1
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov al, 1
call fcn.004f96a8
jmp case.0x4fa234.0
mov dword [0x52b008], ebx
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0xefffffff
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowLongA
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x10000000
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowLongA
push 0x506
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov eax, dword [0x52b744]
mov eax, dword [eax]
cmp dword [eax + 0x238], 0
je 0x4ff5f0
mov al, 1
call fcn.004f96a8
mov dl, 1
mov eax, dword [ebx + 0x24c]
call fcn.0050afd8
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [0x52b744]
cmp dword [eax], 0
je 0x4ff915
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
xor edx, edx
call fcn.005227bc
jmp 0x4ff915
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi + 4]
sub eax, 0xf020
je 0x4ff65c
sub eax, 0x10
je 0x4ff65c
sub eax, 0xf0
jne 0x4ff915
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov byte [eax + 0x39], 1
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov dword [eax + 0x248], 0xffffffff
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SendMessageA
cmp dword [esi + 4], 0xf030
jne 0x4ff915
cmp dword [ebx + 0x260], 0
je 0x4ff915
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp 0x4ff915
mov eax, dword [esi + 4]
sub eax, 0xf030
je 0x4ff6d4
sub eax, 0xf0
jne 0x4ff6fb
cmp dword [ebx + 0x260], 0
je 0x4ff6fb
mov eax, dword [0x52b11c]
cmp byte [eax], 0
jne 0x4ff6f0
cmp dword [esi + 4], 0xf120
jne 0x4ff6fb
lea eax, [ebx + 0x260]
call fcn.0040e154
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi + 4]
sub eax, 0xf030
je 0x4ff838
sub eax, 0xd0
je 0x4ff72c
sub eax, 0x20
je 0x4ff838
jmp 0x4ff915
cmp word [esi + 8], 0x20
jne 0x4ff915
cmp byte [ebx + 0x43], 0
je 0x4ff915
mov eax, ebx
call fcn.004f6a04
test al, al
je 0x4ff915
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
je 0x4ff7d0
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00504b1c
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.004f7358
add edi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0051234c
add edi, eax
sub edi, 0x10
push edi
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov cl, 1
mov edx, dword [ebx + 0x260]
call fcn.004f5978
mov edi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00504b1c
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, ebx
pop ecx
call fcn.00504c28
jmp 0x4ff915
lea edx, [esp + 0x74]
mov eax, ebx
call fcn.00504b1c
mov edi, dword [esp + 0x78]
mov dl, 1
mov eax, ebx
call fcn.004f7358
add edi, eax
lea eax, [ebx + 0x96]
xor edx, edx
call fcn.0051234c
add edi, eax
push edi
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov cl, 1
mov edx, dword [ebx + 0x260]
call fcn.004f5978
mov edi, eax
lea edx, [esp + 0x80]
mov eax, ebx
call fcn.00504b1c
add edi, dword [esp + 0x80]
mov edx, edi
mov eax, ebx
pop ecx
call fcn.00504c28
jmp 0x4ff915
mov eax, dword [ebx + 0x24c]
mov edx, dword [eax]
call dword [edx + 0x48]
test al, al
je 0x4ff84e
mov dword [ebx + 0x38], 9
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.005018f0
cmp dword [esi + 4], 0xf120
jne 0x4ff915
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 1
mov byte [ebx + 0xb6], 1
mov eax, ebx
call fcn.004f6a04
test al, al
jne 0x4ff896
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
jmp 0x4ff915
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4ff8fb
mov eax, dword [ebx + 0x54]
call fcn.00522850
call fcn.00520148
test al, al
je 0x4ff8fb
cmp byte [ebx + 0x79], 0
je 0x4ff8fb
cmp byte [ebx + 0x78], 0
je 0x4ff8fb
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
jne 0x4ff8fb
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4ff8fb
mov dl, 1
mov eax, ebx
call fcn.0050837c
cmp dword [ebx + 0x260], 0
je 0x4ff8fb
mov cl, 0xff
mov dl, 1
mov eax, dword [ebx + 0x260]
call fcn.0050e948
push 0x481
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_RedrawWindow
mov ax, word [esi + 4]
sub ax, 0xf020
jne case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x4ff93e
mov byte [ebx + 0x21b], 0
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x100
cmp eax, 0x100
je case.0x4fa234.0
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 1
mov eax, dword [ebx + 0x260]
add eax, 0x18
call fcn.0040e154
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 0
jmp case.0x4fa234.0
cmp byte [ebx + 0x228], 0
jne 0x4ffef7
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 1
jne 0x4ffef7
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsZoomed
test eax, eax
jne 0x4ffbe6
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x4ffbe6
mov eax, dword [esi + 8]
cmp dword [eax + 8], 0
jne 0x4ff9f6
mov eax, dword [esi + 8]
cmp dword [eax + 0xc], 0
je 0x4ffbe6
mov ebp, dword [esi + 8]
mov eax, dword [0x52b11c]
cmp byte [eax], 0
je 0x4ffa44
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22b], 0
jne 0x4ffa44
cmp dword [ebx + 0x260], 0
jne 0x4ffa44
mov eax, ebx
call fcn.004f9920
test al, al
je 0x4ffa44
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4ffa44
mov dl, 1
mov eax, ebx
call fcn.0050837c
cmp byte [ebx + 0x5a], 0
je 0x4ffb41
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x1a6], 0
je 0x4ffb41
lea edx, [esp + 0x24]
mov eax, dword [ebx + 0x244]
call fcn.004f98c0
cmp dword [ebx + 0x260], 0
je 0x4ffaa2
mov eax, dword [ebx + 0x260]
call fcn.004f5ae0
mov edi, eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x34]
call fcn.00522850
mov eax, dword [eax + 0xbc]
movsx eax, word [eax + 0x32]
add edi, eax
jmp 0x4ffaa4
xor edi, edi
mov eax, dword [ebx + 0x244]
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.004f980c
mov eax, dword [ebx + 0x244]
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.004f980c
neg edi
push edi
lea eax, [ebp + 8]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x28]
call fcn.004f980c
cmp dword [ebx + 0x260], 0
je 0x4ffb30
mov eax, dword [ebx + 0x260]
call fcn.004f5aa4
mov edi, eax
neg edi
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x34]
call fcn.00522850
mov eax, dword [eax + 0xbc]
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.004f980c
jmp 0x4ffb41
push 0
lea eax, [ebp + 0xc]
mov ecx, dword [ebx + 0x5c]
mov edx, dword [esp + 0x2c]
call fcn.004f980c
test byte [ebx + 0x225], 0x60
je 0x4ffbe6
push esi
lea esi, [ebx + 0xcc]
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 + 0x224]
and eax, 0x2000
cmp eax, 0x2000
jne 0x4ffbc0
mov eax, dword [ebx + 0x244]
mov eax, dword [eax + 0x44]
mov edx, dword [esi + 8]
cmp eax, dword [edx + 0xc]
jne 0x4ffba4
mov eax, dword [esi + 8]
mov edx, dword [ebx + 0xd0]
mov dword [eax + 0xc], edx
mov eax, dword [ebx + 0x244]
mov edx, dword [ebx + 0xd0]
sub edx, dword [eax + 0x44]
mov eax, dword [esi + 8]
sub dword [eax + 0x14], edx
jmp 0x4ffbb6
mov eax, dword [ebx + 0xd0]
add eax, dword [ebx + 0xd8]
mov edx, dword [esi + 8]
mov dword [edx + 0x14], eax
and dword [ebx + 0x224], 0xffffdfff
mov eax, dword [ebx + 0x224]
and eax, 0x4000
cmp eax, 0x4000
jne 0x4ffbdc
and dword [ebx + 0x224], 0xffffbfff
xor eax, eax
mov dword [esi + 0xc], eax
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x4ffef7
call fcn.004e3374
test al, al
je 0x4ffef7
cmp byte [ebx + 0x78], 0
je 0x4ffef7
cmp byte [ebx + 0x21a], 0
jne 0x4ffef7
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne 0x4ffdc1
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x4ffdc1
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x4ffef7
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0xb9], 2
je 0x4ffef7
cmp byte [ebx + 0x95], 0
je 0x4ffef7
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x4ffef7
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp word [eax + 4], 0
jbe 0x4ffef7
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
je 0x4ffef7
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x4ffef7
or dword [ebx + 0x224], 0x200
mov dl, 1
mov eax, ebx
call fcn.004f570c
mov edx, dword [ebx + 0x54]
mov dword [edx + 0x44], eax
cmp dword [ebx + 0x260], 0
je 0x4ffda6
mov eax, dword [ebx + 0x260]
mov byte [eax + 0x28], 1
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x2e0], 0
je 0x4ffd20
mov eax, dword [ebx + 0x244]
movzx edi, byte [eax + 0x2e1]
jmp 0x4ffd25
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050f98c
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.004f48fc
push 0x65b
push 0
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x40]
push eax
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
jmp 0x4ffef7
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
call fcn.004f4a20
mov dword [ebx + 0xc4], eax
jmp 0x4ffef7
cmp dword [ebx + 0x260], 0
je 0x4ffef7
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je 0x4ffef7
mov eax, dword [esi + 8]
cmp dword [eax + 0x10], 0
je 0x4ffef7
mov eax, dword [esi + 8]
cmp dword [eax + 0x14], 0
je 0x4ffef7
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x10
cmp eax, 0x10
jne 0x4ffef7
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 2
cmp eax, 2
je 0x4ffef7
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 1
cmp eax, 1
je 0x4ffef7
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebx + 0x1fc]
jl 0x4ffe4e
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x14]
cmp eax, dword [ebx + 0x200]
jge 0x4ffef7
cmp dword [ebx + 0x21c], 0
je 0x4ffe7c
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
jne 0x4ffef7
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x7c]
cmp byte [eax + 6], 0
jne 0x4ffef7
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044c0ac
test al, al
je 0x4ffef7
or dword [ebx + 0x224], 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 + 0x260]
call fcn.0050f98c
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
and dword [ebx + 0x224], 0xfffffffe
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [0x52b8d8]
mov byte [eax], 1
mov eax, dword [0x52b64c]
mov eax, dword [eax]
cmp byte [eax + 0x9c], 0
jne 0x4fff3a
jmp 0x4fff30
mov eax, dword [0x52b64c]
mov eax, dword [eax]
call fcn.004654bc
mov eax, dword [0x52b584]
cmp dword [eax], 0
jg 0x4fff24
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
test eax, eax
je 0x500299
call fcn.004e3374
test al, al
je 0x500299
cmp byte [ebx + 0x78], 0
je 0x500299
cmp dword [ebx + 0x260], 0
je 0x4fffb6
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x4fffb6
mov eax, ebx
call fcn.0050a460
mov edi, eax
mov eax, dword [ebx + 0x244]
call fcn.004f59e0
add eax, 4
cmp edi, eax
setg al
mov byte [ebx + 0x204], al
jmp 0x4fffbd
mov byte [ebx + 0x204], 0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x80
cmp eax, 0x80
jne 0x50014d
cmp byte [ebx + 0x21a], 0
jne 0x50014d
mov eax, dword [ebx + 0x54]
cmp dword [eax + 0x44], 0
je 0x50014d
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x50014d
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0xb9], 2
jne 0x50005b
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne 0x50005b
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x20]
cmp byte [eax + 6], 0
je 0x50014d
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov byte [ebx + 0x21b], 0
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x54]
call fcn.00522850
cmp byte [eax + 0xb9], 2
je 0x50012a
cmp byte [ebx + 0x95], 0
je 0x50014d
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x50014d
mov eax, dword [ebx + 0x244]
cmp dword [eax + 0x30], 0
jne 0x50014d
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je 0x50014d
call fcn.004f5c04
test al, al
je 0x5000d3
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov dl, 1
call fcn.004f9834
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov byte [ebx + 0x21a], 1
mov eax, ebx
call fcn.004dfb70
mov eax, dword [0x52b64c]
mov eax, dword [eax]
cmp byte [eax + 0x9c], 0
jne case.0x4fa234.0
call fcn.004f5c04
test al, al
je 0x50011e
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
xor edx, edx
call fcn.004f9834
mov byte [ebx + 0x21a], 0
jmp case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je 0x50014d
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je 0x50014d
mov eax, dword [ebx + 0x260]
add eax, 0x18
call fcn.0040e154
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp byte [ebx + 0x218], 0
jne case.0x4fa234.0
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x57], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne case.0x4fa234.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 8
cmp eax, 8
je case.0x4fa234.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 0x20
cmp eax, 0x20
je case.0x4fa234.0
mov eax, dword [ebx + 0x224]
and eax, 0x80
cmp eax, 0x80
je case.0x4fa234.0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x18]
and eax, 3
cmp eax, 3
jne 0x500285
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je 0x500285
call fcn.004f5c04
test al, al
je 0x500253
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
cmp eax, dword [ebx + 0x244]
jne 0x500253
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
mov esi, eax
call sub.user32.dll_GetActiveWindow
cmp esi, eax
jne 0x500253
push 0x65b
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x4fa234.0
push 0x65b
push 0
push 0
push 0
push 0
mov eax, dword [ebx + 0x244]
call fcn.0044bda8
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x4fa234.0
mov cl, 0xff
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050e948
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
cmp byte [ebx + 0x95], 0
je 0x500429
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp byte [eax + 6], 0
je 0x500429
mov eax, dword [ebx + 0x54]
call fcn.00522850
mov eax, dword [eax + 0x74]
mov eax, dword [eax + 0x10]
cmp word [eax + 4], 0
jbe 0x500429
cmp byte [ebx + 0x78], 0
je 0x500429
mov eax, dword [ebx + 0x224]
and eax, 0x200
cmp eax, 0x200
je 0x500429
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 8
jne case.0x4fa234.0
or dword [ebx + 0x224], 0x200
mov dl, 1
mov eax, ebx
call fcn.004f570c
mov edx, dword [ebx + 0x54]
mov dword [edx + 0x44], eax
and dword [ebx + 0x224], 0xfffffdff
mov eax, dword [ebx + 0x54]
mov byte [eax + 0x39], 0
cmp dword [ebx + 0x260], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x260]
cmp dword [eax + 0x18], 0
je case.0x4fa234.0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044c0ac
test al, al
je case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x2e0], 0
je 0x5003a3
mov eax, dword [ebx + 0x244]
movzx edi, byte [eax + 0x2e1]
jmp 0x5003a8
mov edi, 0xff
push 0
xor ecx, ecx
xor edx, edx
mov eax, dword [ebx + 0x260]
call fcn.0050f98c
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowRgn
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
mov edx, dword [ebx + 0x54]
mov edx, dword [edx + 0x44]
mov ecx, edi
call fcn.004f48fc
push 0x65b
push 0
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x40]
push eax
push 0
mov eax, dword [ebx + 0x260]
mov eax, dword [eax + 0x18]
call fcn.0044bda8
push eax
call sub.user32.dll_SetWindowPos
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
jne 0x5004ac
mov eax, dword [0x52b744]
cmp dword [eax], 0
jne 0x50046b
mov eax, dword [0x52b64c]
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
call fcn.0044bda8
xor edx, edx
call fcn.004c66f4
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
test eax, eax
je 0x5004a5
mov eax, dword [0x52b744]
mov eax, dword [eax]
mov eax, dword [eax + 0x244]
call fcn.0045f69c
cmp byte [eax + 0x22b], 2
jne 0x5004a5
mov byte [0x52b004], 1
jmp 0x5004ac
mov byte [0x52b004], 0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [ebx + 0x244]
cmp byte [eax + 0x22f], 1
je case.0x4fa234.0
mov eax, ebx
call fcn.005069b4
jmp case.0x4fa234.0
test byte [ebx + 0x1c], 1
jne 0x500586
mov eax, dword [ebx + 0x244]
test byte [eax + 0x1c], 1
jne 0x500586
mov eax, dword [esi + 4]
and eax, 0xffff
dec eax
je 0x50050b
mov eax, dword [esi + 4]
and eax, 0xffff
cmp eax, 2
jne 0x500586
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
cmp dword [ebx + 0x220], 0
je 0x500536
cmp word [esi + 4], 1
jne 0x500536
xor edx, edx
mov eax, dword [ebx + 0x220]
call fcn.0050bb44
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.00407438
mov edx, eax
mov eax, dword [0x52b1d0]
mov eax, dword [eax]
mov ecx, 1
call fcn.00512214
lea edx, [esp + 0x14]
mov eax, dword [ebx + 0x244]
call fcn.004e25b8
cmp byte [ebx + 0x78], 0
je case.0x4fa234.0
mov dl, 1
mov eax, dword [ebx + 0x21c]
call fcn.004a95b8
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi + 8]
mov eax, dword [eax + 8]
sub eax, 0xfffffdd9
jne case.0x4fa234.0
cmp dword [ebx + 0x220], 0
je case.0x4fa234.0
xor edx, edx
mov eax, dword [ebx + 0x220]
call fcn.0050bb44
jmp case.0x4fa234.0
cmp dword [esi + 4], 0
je 0x50066a
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
mov eax, dword [esi + 4]
mov edx, dword [0x4414ec]
call fcn.004036f8
test al, al
je 0x500649
cmp dword [ebx + 0x220], 0
je 0x500618
mov edx, dword [esi + 4]
mov eax, dword [ebx + 0x220]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
push 0
lea eax, [esp + 0x18]
push eax
mov dx, 0x24
xor eax, eax
call fcn.00407438
mov edx, eax
mov eax, dword [0x52b1d0]
mov eax, dword [eax]
mov ecx, 1
call fcn.00512214
lea edx, [esp + 0x14]
mov eax, dword [esi + 4]
call fcn.004e25b8
push 1
mov dx, 0x24
xor eax, eax
call fcn.00407438
mov ecx, eax
mov edx, dword [0x52b1d0]
mov edx, dword [edx]
mov eax, dword [esi + 4]
call fcn.0044673c
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
jmp case.0x4fa234.0
mov edx, esi
mov eax, dword [ebx + 0x234]
call dword [ebx + 0x230]
add esp, 0xac
pop ebp
pop edi
pop esi
pop ebx
ret