Function at 0x489d50
Capabilities:
Capture screenshot
Get graphical window text
Hide graphical window
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x4f5858
push 0x4e22be
mov eax, dword fs:[0]
push eax
sub esp, 0x61c
mov eax, dword [0x50dc10]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x608], esi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x620], edi
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x604], ecx
mov dword [ebp - 0x628], ecx
mov dword [ebp - 0x44c], esi
test edi, edi
je 0x489e2f
mov edx, dword [0x52e838]
test edx, edx
je 0x489dff
test dword [edx + 4], 0x40000000
je 0x489dde
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x489dff
test dword [edx + 4], 0x40000000
je 0x489dff
mov eax, dword [edx + 0x1f2c]
test eax, eax
je 0x489dff
push str.NS_
push edi
call eax
jmp 0x489e0a
push str.NS_
push edi
call fcn.004939c0
add esp, 8
test eax, eax
je 0x489e29
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
jmp 0x48f1ef
mov ecx, dword [ebp - 0x604]
mov edx, dword [ebp + 0xc]
cmp edx, 0x100
ja 0x48c80d
je 0x48c7d3
lea eax, [edx - 1]
cmp eax, 0x83
ja case.0x48db7d.36875
movzx eax, byte [eax + 0x48f25c]
jmp dword [eax*4 + 0x48f210]
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov ecx, eax
test ecx, ecx
je case.0x48db7d.36875
mov eax, dword [ebp - 0x604]
mov dword [ecx + 0x148], eax
jmp case.default.0x48ce50
mov dword [ebp - 0x614], 0x4eb673
mov dword [ebp - 0x618], 0x4eb673
push 0x64
push 0
lea eax, [ebp - 0x84]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x63
lea eax, [ebp - 0x84]
push eax
push edi
call dword [0x595d94]
push eax
call dword [0x595d74]
mov ecx, 0x4e5858
lea eax, [ebp - 0x84]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x489ef2
test dl, dl
je 0x489eee
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x489ef2
add eax, 2
add ecx, 2
test dl, dl
jne 0x489ed2
xor eax, eax
jmp 0x489ef7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x489f2b
push 0x1e06
push str.LibMain.c
push 1
push str.NS_
push edi
call fcn.004a06f0
push esi
push dword [ebp - 0x604]
mov ecx, dword [ebp + 0xc]
push ecx
push edi
call fcn.00487050
add esp, 0x24
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov ecx, eax
mov dword [ebp - 0x414], eax
test ecx, ecx
jne 0x489f74
push 0x188
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
mov ecx, eax
mov dword [ebp - 0x414], ecx
test ecx, ecx
je 0x489f74
push 0x188
push 0
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, dword [ebp - 0x414]
mov eax, dword [esi + 0x20]
mov dword [ecx + 0x48], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x42c], xmm0
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0x63
lea eax, [ebp - 0x84]
push eax
push edi
call dword [0x595d74]
mov ecx, 0x4ef60c
lea eax, [ebp - 0x84]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x489fd0
test dl, dl
je 0x489fcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x489fd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x489fb0
xor eax, eax
jmp 0x489fd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x489ff3
push 0x1e12
push str.LibMain.c
push 1
push str.WCNT_
push edi
call fcn.004a06f0
add esp, 0x14
mov ecx, dword [esi + 0x24]
push 0x4e586c
mov eax, 0x4eb673
test ecx, ecx
cmovne eax, ecx
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll__stricmp
add esp, 8
test eax, eax
je 0x48a05e
mov ecx, dword [ebp - 0x414]
or dword [ecx + 0xb8], 0x200
mov eax, dword [0x52e838]
mov eax, dword [eax + 4]
and eax, 0x900000
cmp eax, 0x900000
jne 0x48a05e
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
or eax, 0x6000000
push eax
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, dword [ebp - 0x414]
or dword [eax + 0xb8], 0x100
mov eax, dword [esi + 0x20]
test eax, 0x100000
je 0x48a0ae
xorps xmm0, xmm0
movlpd qword [ebp - 0x440], xmm0
movlpd qword [ebp - 0x438], xmm0
mov dword [ebp - 0x430], 0
mov dword [ebp - 0x448], 0x1c
mov dword [ebp - 0x444], 7
push 1
lea eax, [ebp - 0x448]
push eax
push 0
push edi
call dword [sym.imp.USER32.dll_SetScrollInfo]
mov eax, dword [esi + 0x20]
test eax, 0x200000
je 0x48a0f8
xorps xmm0, xmm0
movlpd qword [ebp - 0x440], xmm0
movlpd qword [ebp - 0x438], xmm0
mov dword [ebp - 0x430], 0
mov dword [ebp - 0x448], 0x1c
mov dword [ebp - 0x444], 7
push 1
lea eax, [ebp - 0x448]
push eax
push 1
push edi
call dword [sym.imp.USER32.dll_SetScrollInfo]
mov eax, dword [ebp - 0x414]
add eax, 0x34
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x414]
add eax, 0x14
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push dword [esi + 0xc]
call dword [sym.imp.USER32.dll_GetClientRect]
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x40000000
je 0x48a1ab
mov eax, dword [esi + 0x24]
mov ecx, 0x4eb673
test eax, eax
cmovne ecx, eax
cmp byte [ecx], 0
je 0x48a1ab
push 6
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov esi, eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x46c], xmm0
lea eax, [ebp - 0x46c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x414]
sub dword [eax + 0x40], esi
sub dword [eax + 0x3c], esi
push 6
mov eax, dword [ebp - 0x460]
sub eax, dword [ebp - 0x468]
sub eax, esi
push eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x46c]
sub eax, esi
push eax
push 0
push 0
push 0
push edi
call dword [0x595d70]
mov esi, dword [ebp - 0x608]
mov eax, dword [ebp - 0x414]
add eax, 4
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x1e3f
push str.LibMain.c
push 0x14
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push eax
push 0x4e587c
push edi
call fcn.004a06f0
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x70], edi
mov eax, dword [0x52e888]
mov dword [ecx + 0x60], eax
mov dword [ecx + 0x84], 1
mov eax, dword [esi + 0x2c]
mov dword [ecx + 0x4c], eax
mov eax, dword [ecx + 0x48]
shr eax, 0x12
and eax, 1
mov dword [ecx + 0x8c], eax
mov ecx, dword [esi + 0x24]
push 0x3b
mov eax, 0x4eb673
test ecx, ecx
cmovne eax, ecx
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 0x1c
test eax, eax
je 0x48a303
mov byte [eax], 0
inc eax
mov dword [ebp - 0x614], eax
push 0x3b
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
je 0x48a303
mov byte [eax], 0
inc eax
mov dword [ebp - 0x618], eax
push 0x3b
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
je 0x48a2e4
mov byte [eax], 0
inc eax
mov dword [ebp - 0x418], eax
cmp byte [eax], 0
je 0x48a2d6
push 0
push 0x10
push 0x10
push 1
push eax
mov eax, dword [0x52e838]
push dword [eax + 0x10]
call dword [sym.imp.USER32.dll_LoadImageA]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x68], eax
push 0
push 0x20
push 0x20
push 1
push dword [ebp - 0x418]
mov eax, dword [0x52e838]
push dword [eax + 0x10]
call dword [sym.imp.USER32.dll_LoadImageA]
mov ecx, eax
mov eax, dword [ebp - 0x414]
mov dword [eax + 0x6c], ecx
mov edx, dword [eax + 0x68]
test edx, edx
jne 0x48a2cf
mov dword [eax + 0x68], ecx
jmp 0x48a2d6
test ecx, ecx
jne 0x48a2d6
mov dword [eax + 0x6c], edx
mov eax, dword [ebp - 0x618]
cmp byte [eax], 0
je 0x48a303
push eax
jmp 0x48a2ea
push dword [ebp - 0x618]
call sub.api_ms_win_crt_convert_l1_1_0.dll_atoi
add esp, 4
test eax, eax
jne 0x48a303
mov eax, dword [ebp - 0x414]
mov dword [eax + 0x60], 0
mov eax, dword [ebp - 0x614]
cmp byte [eax], 0
je 0x48a3be
push 0x78
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
jne 0x48a339
push 0x58
push dword [ebp - 0x614]
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
jne 0x48a339
xor ecx, ecx
jmp 0x48a33e
mov ecx, 1
mov eax, dword [ebp - 0x414]
mov dword [eax + 0xa8], ecx
push 0x79
push dword [ebp - 0x614]
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
jne 0x48a376
push 0x59
push dword [ebp - 0x614]
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
jne 0x48a376
xor ecx, ecx
jmp 0x48a37b
mov ecx, 1
mov eax, dword [ebp - 0x414]
mov dword [eax + 0xac], ecx
push 0x63
push dword [ebp - 0x614]
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
jne 0x48a3af
push 0x43
push dword [ebp - 0x614]
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
je 0x48a3be
mov eax, dword [ebp - 0x414]
or dword [eax + 0xb8], 0x20
jmp 0x48a3c4
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x60], 0
je 0x48a633
mov eax, dword [ebp - 0x618]
cmp byte [eax], 0x40
je 0x48a633
mov dword [ebp - 0x610], edi
mov byte [ebp - 0x1b4], 0
mov byte [ebp - 0x2e4], 0
push edi
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0x78], eax
mov ecx, dword [esi + 0x24]
mov eax, 0x4eb673
test ecx, ecx
cmovne eax, ecx
cmp byte [eax], 0
je 0x48a434
push 0x12c
push ecx
lea eax, [ebp - 0x2e0]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbsnbcpy
add esp, 0xc
mov cl, byte [ebp - 0x2e0]
test cl, cl
je 0x48a440
jmp 0x48a47a
mov byte [ebp - 0x2e0], 0
nop dword [eax + eax]
push dword [ebp - 0x610]
call dword [0x595d94]
mov dword [ebp - 0x610], eax
test eax, eax
je 0x48a474
lea ecx, [ebp - 0x2e0]
push ecx
push 0x64
push 0xd
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov cl, byte [ebp - 0x2e0]
test cl, cl
je 0x48a440
jmp 0x48a47a
mov cl, byte [ebp - 0x2e0]
mov eax, dword [esi + 0x24]
test eax, eax
mov edx, 0x4eb673
cmovne edx, eax
cmp byte [edx], 0
jne 0x48a49c
lea eax, [ebp - 0x2e0]
mov edx, str.Default
test cl, cl
cmove eax, edx
push eax
mov eax, dword [0x52e838]
add eax, 0x144
push eax
push 0x4e5888
push 0x12c
lea eax, [ebp - 0x410]
push eax
call fcn.00482630
add esp, 0x14
lea eax, [ebp - 0x600]
push eax
lea eax, [ebp - 0x410]
push eax
call dword [0x595e44]
cmp eax, 0xffffffff
je 0x48a506
push eax
call dword [0x595e94]
push 0x2010
push 0
push 0
push 0
lea eax, [ebp - 0x410]
push eax
push 0
call dword [sym.imp.USER32.dll_LoadImageA]
mov esi, dword [ebp - 0x414]
mov dword [esi + 0x64], eax
jmp 0x48a50c
mov esi, dword [ebp - 0x414]
cmp dword [esi + 0x64], 0
jne 0x48a584
mov eax, dword [ebp - 0x618]
cmp byte [eax], 0
je 0x48a563
push eax
mov eax, dword [0x52e838]
add eax, 0x144
push eax
push str._s_s.bmp
push 0x12c
lea eax, [ebp - 0x410]
push eax
call fcn.00482630
add esp, 0x14
push 0x2010
push 0
push 0
push 0
lea eax, [ebp - 0x410]
push eax
push 0
call dword [sym.imp.USER32.dll_LoadImageA]
mov dword [esi + 0x64], eax
test eax, eax
jne 0x48a584
push 0x2000
push 0
push 0
push 0
mov eax, dword [0x52e838]
push str.Background
push dword [eax + 0x10]
call dword [sym.imp.USER32.dll_LoadImageA]
mov dword [esi + 0x64], eax
push dword [esi + 0x78]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [esi + 0x7c], eax
test eax, eax
je 0x48a622
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
push 0xffffffffffffffff
push eax
push 0xc0c0c0
push dword [esi + 0x64]
call fcn.00485110
add esp, 0x10
mov eax, dword [0x52e838]
cmp dword [eax + 0xdd0], 0
je 0x48a616
mov eax, dword [esi + 0x64]
test eax, eax
je 0x48a616
push 8
push 0x20
push eax
push 0
push 0
call fcn.00484340
add esp, 0x14
mov eax, dword [0x52e838]
mov eax, dword [eax + 0xdcc]
test eax, eax
je 0x48a5fe
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [0x52e838]
mov dword [eax + 0xdcc], 0
push dword [0x52e878]
call dword [sym.imp.GDI32.dll_CreatePalette]
mov ecx, dword [0x52e838]
mov dword [ecx + 0xdcc], eax
push dword [esi + 0x64]
push dword [esi + 0x7c]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [esi + 0x64]
call dword [sym.imp.GDI32.dll_CreatePatternBrush]
mov dword [esi + 0x80], eax
jmp 0x48a639
mov esi, dword [ebp - 0x414]
push 0x1e9b
push str.LibMain.c
push esi
push 0x4ef64c
push edi
call fcn.004a06f0
add esp, 0x14
push 0
push 8
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov esi, dword [0x52e870]
mov dword [ebp - 0x61c], esi
test esi, esi
je case.0x48db7d.36875
mov eax, edi
xor edx, edx
div dword [esi]
mov ecx, edx
mov dword [ebp - 0x418], ecx
mov eax, dword [esi + 0xc]
mov edx, dword [eax + ecx*4]
test edx, edx
je 0x48a6a3
nop dword [eax]
cmp edi, dword [edx]
je 0x48a69b
mov edx, dword [edx + 8]
test edx, edx
jne 0x48a690
test edx, edx
jne 0x48a72b
push 0xc
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
mov ecx, eax
mov dword [ebp - 0x610], ecx
test ecx, ecx
je case.0x48db7d.36875
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
mov eax, dword [esi + 0xc]
mov edx, dword [ebp - 0x418]
mov eax, dword [eax + edx*4]
mov dword [ecx + 8], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0xc]
mov dword [eax + edx*4], ecx
inc dword [esi + 4]
xor ecx, ecx
mov eax, dword [esi + 4]
mov esi, 4
mul esi
seto cl
neg ecx
or ecx, eax
push ecx
mov esi, dword [ebp - 0x61c]
push dword [esi + 8]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
mov dword [esi + 8], eax
mov edx, dword [ebp - 0x610]
mov ecx, dword [edx + 4]
mov dword [eax + ecx*4], edx
mov dword [edx], edi
jmp case.0x48db7d.36875
push esi
push ecx
push edx
push edi
call fcn.004be650
add esp, 0x10
test eax, eax
jne case.0x48db7d.36875
mov eax, dword [esi]
cmp eax, 2
jne 0x48a768
push esi
call fcn.00493cd0
add esp, 4
test eax, eax
je case.0x48db7d.36875
mov eax, 1
jmp 0x48f1ef
cmp eax, 0x66
jne case.0x48db7d.36875
mov dword [ebp - 0x610], 0
mov eax, dword [0x52e838]
test eax, eax
je 0x48a7ad
cmp dword [eax + 0xdd0], 0
je 0x48a7ad
push 0
push dword [eax + 0xdcc]
push dword [esi + 0x18]
call dword [sym.imp.GDI32.dll_SelectPalette]
mov dword [ebp - 0x610], eax
push dword [esi + 0x18]
call dword [sym.imp.GDI32.dll_RealizePalette]
push esi
push edi
call fcn.004d09e0
add esp, 8
mov eax, dword [0x52e838]
test eax, eax
je case.0x48db7d.36875
cmp dword [eax + 0xdd0], 0
je case.0x48db7d.36875
push 0
push dword [ebp - 0x610]
push dword [esi + 0x18]
call dword [sym.imp.GDI32.dll_SelectPalette]
jmp case.0x48db7d.36875
push esi
push ecx
push edx
push edi
call fcn.004be650
add esp, 0x10
test eax, eax
jne 0x48e165
mov eax, dword [esi]
cmp eax, 2
jne 0x48a843
push dword [ebp - 0x604]
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp dword [esi], 2
jne case.0x48db7d.36875
xorps xmm0, xmm0
movups xmmword [ebp - 0x46c], xmm0
lea ecx, [ebp - 0x46c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x464]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], 0x10
mov eax, 1
jmp 0x48f1ef
cmp eax, 0x66
jne case.0x48db7d.36875
push esi
push edi
call fcn.004d0a30
add esp, 8
mov eax, dword [ebp - 0x604]
mov esi, dword [ebp - 0x608]
wait
mov dword [ebp - 4], 0
push esi
push eax
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
mov dword [ebp - 0x62c], eax
wait
mov dword [ebp - 4], 0xfffffffe
mov eax, dword [ebp - 0x604]
jmp 0x48e74e
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
push 0x270e
push 1
push 0x111
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48db7d.36875
push 0x14
mov esi, dword [sym.imp.USER32.dll_GetSysColor]
call esi
mov ecx, dword [0x52e838]
mov dword [ecx + 0xddc], eax
push 0x10
call esi
mov ecx, dword [0x52e838]
mov dword [ecx + 0xde0], eax
push 0xf
call esi
mov ecx, dword [0x52e838]
mov dword [ecx + 0xde4], eax
jmp case.0x48db7d.36875
test ecx, ecx
jne case.0x48db7d.36875
call fcn.004d0500
mov eax, dword [eax + 0x114]
mov dword [ebp - 0x604], eax
mov dword [ebp - 0x628], eax
jmp case.default.0x48ce50
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x60c], eax
test eax, eax
je case.0x48db7d.36875
cmp dword [eax + 0x8c], 1
jne 0x48aa30
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
jne 0x48aa30
movsx eax, si
mov dword [ebp - 0x41c], eax
mov eax, esi
shr eax, 0x10
cwde
mov dword [ebp - 0x418], eax
lea eax, [ebp - 0x41c]
push eax
push edi
call dword [sym.imp.USER32.dll_ScreenToClient]
xorps xmm0, xmm0
movups xmmword [ebp - 0x42c], xmm0
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x420]
add eax, 0xfffffff0
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x60c]
test dword [eax + 0x4c], 0x4000
jne 0x48a9ba
mov eax, dword [ebp - 0x424]
add eax, 0xfffffff0
mov dword [ebp - 0x42c], eax
jmp 0x48a9c9
mov eax, dword [ebp - 0x42c]
add eax, 0x10
mov dword [ebp - 0x424], eax
call dword [0x595e7c]
test eax, eax
je 0x48aa30
push dword [ebp - 0x418]
push dword [ebp - 0x41c]
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x48aa30
mov esi, dword [ebp - 0x60c]
cmp dword [esi + 0x90], 0
jne 0x48aa1d
mov dword [esi + 0x90], 1
lea eax, [esi + 0x94]
push eax
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [esi + 0x4c]
shr eax, 0xe
not eax
and eax, 1
or eax, 0x10
jmp 0x48f1ef
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
jne case.0x48db7d.36875
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x40000
je case.0x48db7d.36875
mov eax, dword [ebp - 0x60c]
cmp dword [eax + 0xa8], 0
jne case.0x48db7d.36875
cmp dword [eax + 0xac], 0
jne case.0x48db7d.36875
movsx edi, si
mov eax, esi
shr eax, 0x10
movsx esi, ax
lea eax, [ebp - 0x46c]
push eax
push dword [ebp - 0x620]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x464]
add eax, 0xffffffe9
mov dword [ebp - 0x46c], eax
mov eax, dword [ebp - 0x460]
add eax, 0xffffffe1
mov dword [ebp - 0x468], eax
push esi
push edi
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x48e0d3
mov eax, 0x11
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push 0
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
call esi
mov edi, eax
push 1
call esi
mov edx, eax
mov esi, dword [ebp - 0x418]
mov ecx, dword [esi + 0x3c]
sub ecx, dword [esi + 0x34]
cmp ecx, edi
cmovl edi, ecx
mov ecx, dword [ebp - 0x608]
mov dword [ecx + 0x18], edi
mov eax, dword [esi + 0x40]
sub eax, dword [esi + 0x38]
inc eax
cmp eax, edx
cmovl edx, eax
mov dword [ecx + 0x1c], edx
cmp dword [esi + 0xac], 0
je 0x48ab40
mov eax, dword [esi + 0x40]
sub eax, dword [esi + 0x38]
je 0x48ab40
mov dword [ecx + 0x24], eax
cmp dword [esi + 0xa8], 0
je 0x48ab54
mov eax, dword [esi + 0x3c]
sub eax, dword [esi + 0x34]
je 0x48ab54
mov dword [ecx + 0x20], eax
push ecx
push dword [ebp - 0x604]
mov ecx, dword [ebp + 0xc]
push ecx
push dword [ebp - 0x620]
call fcn.00487050
add esp, 0x10
mov eax, 1
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov edx, eax
mov dword [ebp - 0x610], edx
test edx, edx
je case.0x48db7d.36875
cmp dword [edx + 0x8c], 1
jne 0x48ac05
lea ecx, [edx + 0x94]
push ecx
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
add dword [ebp - 0x428], 8
push 1
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_InvalidateRect]
sub dword [ebp - 0x428], 8
mov eax, dword [ebp - 0x610]
test dword [eax + 0x4c], 0x4000
jne 0x48abe8
add dword [ebp - 0x42c], 8
jmp 0x48abef
sub dword [ebp - 0x424], 8
push 1
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_InvalidateRect]
mov edx, dword [ebp - 0x610]
test dword [edx + 0x48], 0x300000
je case.0x48db7d.36875
mov ecx, dword [edx + 0x3c]
sub ecx, dword [edx + 0x34]
mov eax, dword [esi + 0x10]
cmp eax, ecx
cmovle eax, ecx
mov dword [esi + 0x10], eax
mov ecx, dword [edx + 0x40]
sub ecx, dword [edx + 0x38]
mov eax, dword [esi + 0x14]
cmp eax, ecx
cmovle eax, ecx
mov dword [esi + 0x14], eax
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x414], eax
test eax, eax
je case.0x48db7d.36875
push 0x270f
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x11c], 0
je 0x48ac8e
push 0
push edi
call fcn.0049da40
add esp, 8
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x130], 0
je case.0x48db7d.36875
mov eax, dword [ebp - 0x604]
cmp eax, 1
jne 0x48aca4
mov dword [ecx + 0xb0], eax
jmp case.default.0x48ce50
test esi, esi
jne 0x48acda
lea eax, [ecx + 0x24]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x414]
movzx esi, word [ecx + 0x30]
shl esi, 0x10
movzx eax, word [ecx + 0x2c]
or esi, eax
mov dword [ebp - 0x608], esi
mov dword [ebp - 0x44c], esi
jmp 0x48ad06
cmp esi, 0xffffffff
je 0x48acef
movzx eax, si
mov dword [ecx + 0x2c], eax
mov eax, esi
shr eax, 0x10
mov dword [ecx + 0x30], eax
jmp 0x48ad06
lea eax, [ecx + 0x24]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x414]
cmp esi, 0xffffffff
je 0x48ad80
cmp dword [ecx + 0x44], 0
jne 0x48ad80
test byte [ecx + 0xb8], 0x80
jne 0x48ad80
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x40000000
je 0x48ad80
mov eax, dword [ebp - 0x414]
add eax, 4
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
movzx eax, si
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0xc], eax
mov eax, esi
shr eax, 0x10
mov esi, ecx
mov dword [esi + 0x10], eax
lea eax, [esi + 0x34]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [esi + 0x14]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetClientRect]
jmp case.0x48db7d.36875
mov eax, dword [ebp - 0x414]
cmp dword [eax + 0x5c], 0
je case.0x48db7d.36875
push dword [eax + 0x50]
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x610], eax
mov ecx, dword [ebp - 0x414]
mov esi, dword [ecx + 0x5c]
test esi, esi
je 0x48b2d8
mov edi, dword [ebp - 0x608]
nop word [eax + eax]
mov byte [esi + 0x4e], 0
cmp dword [0x52eab8], 0
jne 0x48addd
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0x44], 2
je 0x48ae0d
cmp byte [esi + 0x4d], 0
je 0x48b2c7
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
test eax, 0x10000000
jne 0x48ae0d
cmp dword [esi + 0x50], 4
jne 0x48ae0d
cmp edi, 0xffffffff
jne 0x48b2c1
lea eax, [esi + 4]
push eax
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0x30]
sub edx, dword [ecx + 0x10]
movss xmm1, dword [esi + 0x3c]
mov eax, dword [ecx + 0x2c]
sub eax, dword [ecx + 0xc]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
xorps xmm7, xmm7
ucomiss xmm1, xmm7
lahf
test ah, 0x44
jnp 0x48ae51
movaps xmm0, xmm2
divss xmm0, xmm1
jmp 0x48ae54
xorps xmm0, xmm0
movd xmm1, dword [ebp - 0x42c]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movd xmm0, dword [ecx + 0x16c]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x614], eax
movss xmm1, dword [esi + 0x40]
movd xmm3, edx
cvtdq2ps xmm3, xmm3
ucomiss xmm1, xmm7
lahf
test ah, 0x44
jnp 0x48ae9a
movaps xmm0, xmm3
divss xmm0, xmm1
jmp 0x48ae9d
xorps xmm0, xmm0
movd xmm1, dword [ebp - 0x428]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movd xmm0, dword [ecx + 0x170]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x624], eax
movss xmm5, dword [esi + 0x44]
ucomiss xmm5, xmm7
lahf
test ah, 0x44
jnp 0x48aedc
movaps xmm4, xmm2
divss xmm4, xmm5
jmp 0x48aedf
xorps xmm4, xmm4
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x42c]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movd xmm6, dword [ecx + 0x174]
cvtdq2ps xmm6, xmm6
mov edx, dword [esi + 0x34]
mov dword [ebp - 0x618], edx
movaps xmm0, xmm1
addss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
cmp edx, eax
jg 0x48af3d
ucomiss xmm5, xmm7
lahf
test ah, 0x44
jnp 0x48af28
divss xmm2, xmm5
jmp 0x48af2b
xorps xmm2, xmm2
addss xmm1, xmm2
addss xmm1, xmm6
cvttss2si eax, xmm1
mov dword [ebp - 0x618], eax
movss xmm4, dword [esi + 0x48]
ucomiss xmm4, xmm7
lahf
test ah, 0x44
jnp 0x48af54
movaps xmm2, xmm3
divss xmm2, xmm4
jmp 0x48af57
xorps xmm2, xmm2
mov eax, dword [ebp - 0x420]
sub eax, dword [ebp - 0x428]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movd xmm5, dword [ecx + 0x178]
cvtdq2ps xmm5, xmm5
mov edx, dword [esi + 0x38]
mov dword [ebp - 0x60c], edx
movaps xmm0, xmm1
addss xmm0, xmm2
addss xmm0, xmm5
cvttss2si eax, xmm0
cmp edx, eax
jg 0x48afb5
ucomiss xmm4, xmm7
lahf
test ah, 0x44
jnp 0x48afa0
divss xmm3, xmm4
jmp 0x48afa3
xorps xmm3, xmm3
addss xmm1, xmm3
addss xmm1, xmm5
cvttss2si edx, xmm1
mov dword [ebp - 0x60c], edx
mov eax, dword [ecx + 0xb8]
test al, 2
je 0x48afd1
mov edi, dword [ebp - 0x614]
sub edi, dword [ecx + 0x13c]
mov dword [ebp - 0x614], edi
test al, 4
mov eax, dword [ebp - 0x624]
je 0x48afe7
sub eax, dword [ecx + 0x144]
mov dword [ebp - 0x624], eax
mov dword [ebp - 0x428], eax
mov edi, dword [ebp - 0x614]
mov dword [ebp - 0x42c], edi
add eax, edx
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x618]
add eax, edi
mov dword [ebp - 0x424], eax
cmp dword [ecx + 0x44], 2
jne 0x48b02c
lea eax, [ebp - 0x42c]
push eax
lea eax, [esi + 4]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov ecx, dword [ebp - 0x414]
cmp dword [0x52eab8], 0
jne 0x48b0ae
mov eax, dword [esi + 0x50]
cmp eax, 2
jne 0x48b043
test byte [esi + 0x4c], 1
jne 0x48b0ae
mov edx, dword [ecx + 0x44]
cmp edx, 3
je 0x48b04f
test eax, eax
je 0x48b094
test byte [esi + 0x4c], 1
je 0x48b094
cmp dword [ecx + 0xb0], 0
jne 0x48b08d
lea edx, [esi + 0x14]
lea ecx, [ebp - 0x42c]
mov dword [ebp - 0x61c], 0xc
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x48b08d
add ecx, 4
add edx, 4
sub dword [ebp - 0x61c], 4
jae 0x48b071
xor al, al
mov byte [esi + 0x4e], al
jmp 0x48b0b2
mov al, 1
mov byte [esi + 0x4e], al
jmp 0x48b0b2
cmp edx, 3
je 0x48b0a2
test eax, eax
jne 0x48b0a2
mov byte [esi + 0x4e], al
jmp 0x48b0b2
push dword [esi]
call dword [0x595d88]
test eax, eax
je 0x48b0b2
mov byte [esi + 0x4e], 1
cmp byte [esi + 0x4e], 0
jne 0x48b0d3
mov eax, dword [esi + 0x50]
test eax, eax
je 0x48b0c4
cmp eax, 8
jne 0x48b0ca
cmp byte [esi + 0x4c], 0
jne 0x48b0d3
mov byte [esi + 0x4e], 0
jmp 0x48b24d
push 0x134
push dword [ebp - 0x60c]
push dword [ebp - 0x618]
push dword [ebp - 0x624]
push dword [ebp - 0x614]
push 0
push dword [esi]
push dword [ebp - 0x610]
call dword [sym.imp.USER32.dll_DeferWindowPos]
mov dword [ebp - 0x610], eax
mov eax, dword [esi + 0x50]
test eax, eax
je 0x48b116
cmp eax, 8
jne 0x48b24d
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0x1c]
sub eax, ecx
cmp dword [ebp - 0x618], eax
jne 0x48b14a
mov edx, dword [esi + 0x18]
mov eax, dword [esi + 0x20]
sub eax, edx
cmp dword [ebp - 0x60c], eax
jne 0x48b14a
cmp dword [ebp - 0x614], ecx
jne 0x48b14a
cmp dword [ebp - 0x624], edx
je 0x48b24d
lea eax, [ebp - 0x45c]
push eax
push 2
push 0xd
push dword [esi]
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x614]
cmp eax, dword [esi + 0x14]
jne 0x48b236
mov eax, dword [ebp - 0x624]
cmp eax, dword [esi + 0x18]
jne 0x48b236
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
test al, 3
jne 0x48b236
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0x14]
sub eax, dword [ecx]
cmp dword [ebp - 0x618], eax
jg 0x48b1af
mov eax, dword [esi + 0x20]
sub eax, dword [esi + 0x18]
cmp dword [ebp - 0x60c], eax
jle 0x48b24d
push ecx
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [ebp - 0x468]
neg eax
push eax
mov eax, dword [ebp - 0x46c]
neg eax
push eax
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [esi + 0x1c]
sub eax, dword [esi + 0x14]
mov ecx, dword [ebp - 0x618]
cmp ecx, eax
jle 0x48b1ff
mov eax, dword [ebp - 0x464]
dec eax
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x464], ecx
mov eax, dword [esi + 0x20]
sub eax, dword [esi + 0x18]
mov ecx, dword [ebp - 0x60c]
cmp ecx, eax
jle 0x48b21f
mov eax, dword [esi + 0x10]
dec eax
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x460], ecx
lea eax, [ebp - 0x46c]
push eax
lea eax, [esi + 0x24]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov byte [esi + 0x4e], 5
jmp 0x48b24d
mov eax, 6
cmp byte [ebp - 0x45c], 0
mov ecx, 3
cmovne eax, ecx
mov byte [esi + 0x4e], al
mov eax, dword [esi + 0x18]
cmp eax, dword [ebp - 0x428]
jne 0x48b265
lea ecx, [esi + 0x14]
mov eax, dword [ecx]
cmp eax, dword [ebp - 0x42c]
je 0x48b26e
mov byte [esi + 0x54], 1
lea ecx, [esi + 0x14]
mov eax, dword [ecx]
mov edx, dword [esi + 0x20]
sub edx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
sub edi, eax
mov dword [ebp - 0x418], edi
mov edi, dword [ebp - 0x608]
je 0x48b29b
mov eax, dword [ebp - 0x420]
sub eax, dword [ebp - 0x428]
cmp dword [ebp - 0x418], eax
jne 0x48b2af
test edx, edx
je 0x48b2b3
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x42c]
cmp edx, eax
je 0x48b2b3
mov byte [esi + 0x55], 1
lea eax, [ebp - 0x42c]
push eax
push ecx
call dword [sym.imp.USER32.dll_CopyRect]
mov ecx, dword [ebp - 0x414]
mov esi, dword [esi + 0x5c]
test esi, esi
jne 0x48adc0
mov edi, dword [ebp - 0x620]
mov esi, dword [ebp - 0x608]
cmp esi, 0xffffffff
je 0x48b315
cmp dword [ecx + 0x44], 2
jne 0x48b315
lea eax, [ecx + 4]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
movzx eax, si
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0xc], eax
mov eax, esi
shr eax, 0x10
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x44], 3
mov eax, dword [ebp - 0x610]
test eax, eax
je 0x48b459
push eax
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
push edi
call dword [0x595ec0]
mov ecx, dword [ebp - 0x414]
test eax, eax
je 0x48b459
mov eax, dword [ecx + 0x5c]
mov dword [ebp - 0x418], eax
test eax, eax
je 0x48b459
mov esi, eax
cmp dword [esi + 0x50], 0
jne 0x48b418
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
test eax, 0x10000000
je 0x48b418
push 2
lea eax, [ebp - 0x45c]
push eax
push dword [esi]
call dword [0x595d80]
test eax, eax
je 0x48b38f
cmp byte [ebp - 0x45c], 0x7c
je 0x48b3fe
mov eax, dword [esi]
mov dword [ebp - 0x418], eax
test eax, eax
je 0x48b404
mov edx, dword [0x52e838]
test edx, edx
je 0x48b3ec
test dword [edx + 4], 0x40000000
je 0x48b3cb
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
mov eax, dword [ebp - 0x418]
test edx, edx
je 0x48b3ec
test dword [edx + 4], 0x40000000
je 0x48b3ec
mov ecx, dword [edx + 0x1f2c]
test ecx, ecx
je 0x48b3ec
push 0x4e58d0
push eax
call ecx
jmp 0x48b3f7
push 0x4e58d0
push eax
call fcn.004939c0
add esp, 8
test eax, eax
je 0x48b404
mov byte [esi + 0x4e], 6
jmp 0x48b418
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
and al, 0xf
cmp al, 8
jne 0x48b418
mov byte [esi + 0x4e], 4
mov al, byte [esi + 0x4e]
cmp al, 6
jne 0x48b42d
push 0
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x48b442
cmp al, 3
jne 0x48b442
push 0x961
push 0
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_RedrawWindow]
mov esi, dword [esi + 0x5c]
test esi, esi
jne 0x48b352
mov esi, dword [ebp - 0x608]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0xb0], 0
mov eax, dword [ecx + 0x130]
test eax, eax
jle 0x48b489
add eax, 0xffffffff
mov dword [ecx + 0x130], eax
jne 0x48b489
push 4
push edi
call fcn.0049da40
add esp, 8
mov ecx, dword [ebp - 0x414]
cmp dword [ecx + 0xf4], 0
je 0x48b543
mov dword [ebp - 0x60c], 0
cmp dword [ecx + 0xf0], 0
jle 0x48b543
xor esi, esi
nop
mov edx, dword [ecx + 0xf4]
add edx, esi
mov dword [ebp - 0x61c], edx
xor ecx, ecx
mov dword [ebp - 0x610], ecx
cmp dword [edx + 4], ecx
jle 0x48b502
nop dword [eax + eax]
mov eax, dword [edx + 8]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x48b502
push 0xfffffffffffffff0
push eax
call dword [0x595d8c]
mov ecx, dword [ebp - 0x610]
mov edx, dword [ebp - 0x61c]
test eax, 0x10000000
jne 0x48b502
inc ecx
mov dword [ebp - 0x610], ecx
cmp ecx, dword [edx + 4]
jl 0x48b4d0
mov eax, dword [edx + 8]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x48b51c
push 0
push 1
push 0x9004
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x60c]
inc eax
mov dword [ebp - 0x60c], eax
add esi, 0x48
mov ecx, dword [ebp - 0x414]
cmp eax, dword [ecx + 0xf0]
jl 0x48b4b0
jmp case.0x48db7d.36875
mov eax, dword [ebp - 0x604]
jmp 0x48a85e
push edi
call dword [0x595d88]
mov esi, eax
test esi, esi
je case.0x48db7d.36875
nop
push 3
push 0
push 0
push esi
call dword [sym.imp.USER32.dll_RedrawWindow]
push 2
push esi
call dword [0x595ee0]
mov esi, eax
test esi, esi
jne 0x48b560
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x60c], eax
test eax, eax
je 0x48b66b
mov ecx, dword [ebp - 0x604]
mov dword [eax + 0x88], ecx
mov dword [0x52eab8], 1
cmp ecx, 1
jne 0x48b652
lea ecx, [ebp - 0x444]
push ecx
push dword [eax]
call fcn.00493be0
add esp, 8
test eax, eax
je 0x48b620
test byte [ebp - 0x434], 1
je 0x48b620
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
jne 0x48b646
push 4
mov eax, dword [ebp - 0x438]
mov edx, dword [ebp - 0x440]
sub eax, edx
push eax
mov eax, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x444]
sub eax, ecx
push eax
push edx
push ecx
push 0
push edi
call dword [0x595d70]
push 3
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x48b646
push edi
call dword [0x595d94]
mov ecx, dword [ebp - 0x60c]
cmp dword [ecx + 0x74], eax
jne 0x48b646
push 0xffffffffffffffff
push 0
push 5
push edi
call dword [0x595d94]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x60c]
test ecx, ecx
je 0x48b66b
mov eax, dword [eax + 0xf8]
test eax, eax
je 0x48b66b
push 0xffffffffffffffff
push eax
call fcn.0049dea0
add esp, 8
push esi
mov esi, dword [ebp - 0x604]
push esi
mov ecx, dword [ebp + 0xc]
push ecx
push edi
call fcn.00487050
add esp, 0x10
mov dword [ebp - 0x44c], eax
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x10000000
je 0x48b69f
xor ecx, ecx
test esi, esi
sete cl
jmp 0x48b6a1
mov ecx, esi
test ecx, ecx
je 0x48b74a
push edi
call dword [0x595d94]
mov esi, eax
test esi, esi
je 0x48b706
push 0xfffffffffffffff0
push esi
call dword [0x595d8c]
test eax, 0x10000000
je 0x48b6d3
push esi
call dword [0x595d94]
mov esi, eax
test esi, esi
jne 0x48b6b6
test esi, esi
je 0x48b706
push 0x12c
lea eax, [ebp - 0x2e0]
push eax
push esi
call dword [0x595d80]
push str.MainPaneDialog
lea eax, [ebp - 0x2e0]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp
add esp, 8
test eax, eax
je 0x48b706
test esi, esi
jne 0x48b74a
push str.SS_
push edi
call fcn.00493b70
add esp, 8
dec eax
mov esi, dword [ebp - 0x604]
cmp esi, eax
je 0x48b74a
push 0x21e9
push str.LibMain.c
lea eax, [esi + 1]
push eax
push str.SS_
push edi
call fcn.004a06f0
add esp, 0x14
push 0
push esi
push 0x901c
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [0x52eab8], 0
mov eax, dword [ebp - 0x44c]
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov ecx, eax
mov dword [ebp - 0x418], ecx
test ecx, ecx
je case.0x48db7d.36875
mov eax, dword [0x52e838]
test eax, eax
je 0x48b7cc
push str.HCUR
push dword [eax + 0xdb4]
call fcn.00493b70
add esp, 8
test eax, eax
je 0x48b7c6
push str.HCUR
mov eax, dword [0x52e838]
push dword [eax + 0xdb4]
call fcn.00493b70
add esp, 8
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
jmp 0x48f1ef
mov ecx, dword [ebp - 0x418]
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x418], eax
test eax, eax
je 0x48b815
cmp dword [eax + 0x64], 0
je 0x48b815
mov ecx, dword [eax + 0x54]
push ecx
cmp dword [eax + 0x58], 0
jne 0x48b805
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, dword [ebp - 0x418]
mov dword [ecx + 0x58], eax
mov eax, 1
jmp 0x48f1ef
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, 1
jmp 0x48f1ef
mov eax, dword [ebp - 0x604]
test eax, eax
jne 0x48b834
test esi, esi
sete al
mov dword [ecx + 0xb4], eax
mov eax, 1
jmp 0x48f1ef
cmp dword [ecx + 0xb4], 0
jne 0x48e165
jmp case.default.0x48ce50
mov eax, dword [esi + 8]
add eax, 0x2f2
cmp eax, 0xe9
ja case.0x48b85c.752
movzx eax, byte [eax + 0x48f2f0]
jmp dword [eax*4 + 0x48f2e0]
push dword [esi + 4]
call fcn.004a5d40
add esp, 4
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48b85c.752
lea esi, [eax + 0x54fc]
push esi
push 1
push 0x41f
push dword [eax + 0x552c]
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x15
push 0
push 0
mov eax, dword [ebp - 0x418]
push dword [eax + 0x5500]
push dword [esi]
push 0
push dword [eax + 0x552c]
call dword [0x595d70]
mov esi, dword [ebp - 0x608]
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push dword [esi]
call fcn.004a5d40
add esp, 4
mov dword [ebp - 0x61c], eax
test eax, eax
je case.0x48db7d.36875
push str.NOCB_
push dword [esi]
call fcn.00493b70
add esp, 8
test eax, eax
jne case.0x48db7d.36875
mov eax, dword [ebp - 0x418]
mov ecx, dword [eax + 0xc0]
sub ecx, 1
js 0x48b931
mov eax, dword [eax + 0xc4]
lea eax, [eax + ecx*4]
mov edx, dword [ebp - 0x61c]
cmp dword [eax], edx
je 0x48b931
sub eax, 4
sub ecx, 1
jns 0x48b925
test ecx, ecx
js case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
mov ecx, dword [ebp + 0xc]
push ecx
push edi
call fcn.004a88e0
mov esi, eax
push dword [ebp - 0x608]
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x20
mov ecx, dword [0x52e838]
mov ecx, dword [ecx + 0xd18]
call ecx
mov eax, esi
jmp 0x48f1ef
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48b85c.752
mov eax, dword [esi + 8]
cmp eax, 0xfffffd0e
jne 0x48b9ba
push 0x270c
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebp - 0x418]
or dword [eax + 0x5c], 1
jmp case.0x48b85c.752
cmp eax, 0xfffffd0f
jne case.0x48b85c.752
push 0
push 0x32
push 0x270c
push edi
call dword [sym.imp.USER32.dll_SetTimer]
jmp case.0x48b85c.752
push esi
push ecx
push edx
push edi
call fcn.00487050
add esp, 0x10
test eax, eax
jne 0x48e165
cmp dword [esi + 8], 0xfffffdd9
jne 0x48e165
push eax
push 0xffffffffffffffff
push dword [esi + 4]
push edi
call fcn.00499fe0
add esp, 0x10
mov eax, 1
jmp 0x48f1ef
push edi
call dword [0x595d88]
mov dword [ebp - 0x44c], eax
test eax, eax
je 0x48ba57
mov esi, eax
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
nop dword [eax]
push 0
push 0
push 0x901f
push esi
call edi
push 2
push esi
call dword [0x595ee0]
mov esi, eax
test esi, esi
jne 0x48ba30
mov edi, dword [ebp - 0x620]
mov esi, dword [ebp - 0x608]
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x618], eax
test eax, eax
je 0x48e165
mov ecx, dword [eax + 0x17c]
test ecx, ecx
je 0x48ba90
mov edx, dword [0x595804]
test edx, edx
je 0x48ba90
push ecx
call edx
mov eax, dword [ebp - 0x618]
mov dword [eax + 0x17c], 0
mov edx, dword [eax + 0x180]
test edx, edx
je 0x48bab7
mov ecx, dword [0x595804]
test ecx, ecx
je 0x48bab7
push edx
call ecx
mov eax, dword [ebp - 0x618]
mov dword [eax + 0x180], 0
push 0x4e587c
push edi
call fcn.0049cd40
add esp, 8
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x270f
push edi
call dword [sym.imp.USER32.dll_KillTimer]
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
mov dword [ebp - 0x628], eax
push 0x4ef64c
push edi
call fcn.0049cd40
add esp, 0x18
mov esi, dword [ebp - 0x618]
mov ecx, dword [esi + 0x5c]
test ecx, ecx
je 0x48bb2b
mov esi, dword [ecx + 0x5c]
push ecx
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
mov ecx, esi
test esi, esi
jne 0x48bb13
mov esi, dword [ebp - 0x618]
mov eax, dword [esi + 0xf4]
test eax, eax
je 0x48bc08
mov dword [ebp - 0x61c], 0
cmp dword [esi + 0xf0], 0
jle 0x48bbf5
xor ecx, ecx
mov dword [ebp - 0x610], ecx
nop dword [eax + eax]
mov edi, dword [esi + 0xf4]
add edi, ecx
xor esi, esi
cmp dword [edi + 4], esi
jle 0x48bb84
nop
mov eax, dword [edi + 0xc]
push dword [eax + esi*4]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
inc esi
cmp esi, dword [edi + 4]
jl 0x48bb70
push dword [edi + 0xc]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
push dword [edi + 8]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
push dword [edi + 0x40]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 0xc
push 0
push 0
push 0x1302
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x48bbbb
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_Destroy]
mov eax, dword [ebp - 0x61c]
inc eax
mov dword [ebp - 0x61c], eax
mov ecx, dword [ebp - 0x610]
add ecx, 0x48
mov dword [ebp - 0x610], ecx
mov esi, dword [ebp - 0x618]
cmp eax, dword [esi + 0xf0]
jl 0x48bb60
mov eax, dword [esi + 0xf4]
mov edi, dword [ebp - 0x620]
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
mov dword [esi + 0xf0], 0
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x610], eax
test eax, eax
je 0x48bc5c
cmp dword [eax], 0
jle 0x48bc46
xor edi, edi
mov esi, eax
mov eax, dword [esi + 4]
push dword [eax + edi*4]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
inc edi
cmp edi, dword [esi]
jl 0x48bc21
mov edi, dword [ebp - 0x620]
mov esi, dword [ebp - 0x618]
mov eax, dword [ebp - 0x610]
push dword [eax + 4]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
push dword [ebp - 0x610]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 8
cmp dword [esi + 0x60], 0
je 0x48bc75
push dword [esi + 0x7c]
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [esi + 0x78]
push edi
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [esi + 0x80]
test eax, eax
je 0x48bc90
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esi + 0x80], 0
mov eax, dword [esi + 0x64]
test eax, eax
je 0x48bca5
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esi + 0x64], 0
mov eax, dword [esi + 0x68]
test eax, eax
je 0x48bcda
mov ecx, dword [esi + 0x6c]
cmp ecx, eax
je 0x48bcc8
test ecx, ecx
je 0x48bcc8
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
mov dword [esi + 0x6c], 0
mov eax, dword [esi + 0x68]
test eax, eax
je 0x48bcda
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
mov dword [esi + 0x68], 0
cmp dword [esi + 0x8c], 1
jne 0x48bcec
push 1
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x34]
jle 0x48bd9b
mov eax, dword [esi + 0x40]
cmp eax, dword [esi + 0x38]
jle 0x48bd9b
test byte [esi + 0xb8], 0x40
jne 0x48bd9b
xorps xmm0, xmm0
movups xmmword [ebp - 0x444], xmm0
movq qword [ebp - 0x434], xmm0
lea eax, [ebp - 0x444]
push eax
push dword [esi]
call fcn.00493be0
add esp, 8
mov eax, dword [esi + 0xc8]
mov dword [ebp - 0x430], eax
and dword [ebp - 0x434], 0xfffffffe
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x20000000
jne 0x48bd9b
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
je 0x48bd70
or dword [ebp - 0x434], 1
jmp 0x48bd88
xorps xmm0, xmm0
movups xmmword [ebp - 0x444], xmm0
lea eax, [ebp - 0x444]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 7
lea eax, [ebp - 0x444]
push eax
push dword [esi]
call fcn.004a07e0
add esp, 0xc
mov eax, dword [esi]
test eax, eax
je 0x48bdaa
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
mov eax, dword [esi + 0xc4]
test eax, eax
je 0x48bdbd
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
mov eax, dword [esi + 0xbc]
test eax, eax
je 0x48bdd0
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
push esi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
test edi, edi
je 0x48be4e
mov edx, dword [0x52e838]
test edx, edx
je 0x48be34
test dword [edx + 4], 0x40000000
je 0x48be07
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x48be34
test dword [edx + 4], 0x40000000
je 0x48be34
mov eax, dword [edx + 0x1f28]
test eax, eax
je 0x48be34
push 0x2307
push str.LibMain.c
push 0
push 0x4ef64c
push edi
call eax
jmp 0x48be4b
push 0x2307
push str.LibMain.c
push 0
push 0x4ef64c
push edi
call fcn.004a0480
add esp, 0x14
mov ecx, dword [0x52e870]
mov dword [ebp - 0x61c], ecx
test ecx, ecx
je 0x48bf06
mov eax, edi
xor edx, edx
div dword [ecx]
mov eax, dword [ecx + 0xc]
lea esi, [eax + edx*4]
mov eax, dword [esi]
test eax, eax
je 0x48bf06
mov ecx, eax
nop word [eax + eax]
mov eax, ecx
cmp edi, dword [ecx]
je 0x48be91
lea esi, [ecx + 8]
mov eax, dword [esi]
mov ecx, eax
test eax, eax
jne 0x48be80
mov ecx, dword [ebp - 0x61c]
test eax, eax
je 0x48bf06
mov eax, dword [ecx + 4]
sub eax, 1
mov dword [ecx + 4], eax
mov edi, dword [esi]
mov dword [ebp - 0x44c], edi
mov edx, edi
je 0x48bef8
mov edx, dword [ecx + 8]
mov ecx, dword [edi + 4]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov ecx, dword [edi + 4]
mov edi, dword [ebp - 0x61c]
mov eax, dword [edi + 8]
mov eax, dword [eax + ecx*4]
mov dword [eax + 4], ecx
xor ecx, ecx
mov eax, dword [edi + 4]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
push dword [edi + 8]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
mov dword [edi + 8], eax
mov edx, dword [esi]
mov edi, dword [ebp - 0x44c]
mov eax, dword [edx + 8]
mov dword [esi], eax
push edi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
mov eax, dword [ebp - 0x628]
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
jmp 0x48a84f
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x614], eax
test eax, eax
je case.0x48db7d.36875
mov dword [ebp - 0x624], 0
mov dword [ebp - 0x418], 0
mov ecx, dword [0x52e838]
mov ecx, dword [ecx + 0xe00]
mov dword [ebp - 0x618], ecx
mov esi, dword [eax + 0x5c]
test esi, esi
je 0x48bfb4
mov ecx, dword [sym.imp.USER32.dll_RedrawWindow]
cmp byte [esi + 0x4f], 0
je 0x48bf89
push 0x401
push 0
push 0
push dword [esi]
call ecx
mov byte [esi + 0x4f], 0
jmp 0x48bfa7
mov eax, dword [esi + 0x50]
test eax, eax
je 0x48bf9a
cmp eax, 3
je 0x48bf9a
cmp eax, 9
jne 0x48bfad
push 0x100
push 0
push 0
push dword [esi]
call ecx
mov ecx, dword [sym.imp.USER32.dll_RedrawWindow]
mov esi, dword [esi + 0x5c]
test esi, esi
jne 0x48bf70
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x10000000
je 0x48e165
mov eax, dword [ebp - 0x614]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0x184], ecx
mov esi, dword [eax + 0x5c]
test esi, esi
je 0x48c26d
mov ecx, dword [esi + 0x50]
mov eax, dword [0x52e838]
mov eax, dword [eax + 4]
and eax, 0x900000
cmp eax, 0x900000
jne 0x48c0ca
cmp ecx, 1
je 0x48c262
cmp ecx, 0xa
je 0x48c24b
test ecx, ecx
jne 0x48c262
push 0xffffffffffffffec
push dword [esi]
call dword [0x595d8c]
test eax, 0x200
je 0x48c262
push 2
lea eax, [ebp - 0x45c]
push eax
push dword [esi]
call dword [0x595d80]
test eax, eax
je 0x48c04e
cmp byte [ebp - 0x45c], 0x7c
je 0x48c262
mov eax, dword [esi]
mov dword [ebp - 0x44c], eax
test eax, eax
je 0x48c256
mov edx, dword [0x52e838]
test edx, edx
je 0x48c0af
test dword [edx + 4], 0x40000000
je 0x48c08e
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
mov eax, dword [ebp - 0x44c]
test edx, edx
je 0x48c0af
test dword [edx + 4], 0x40000000
je 0x48c0af
mov ecx, dword [edx + 0x1f2c]
test ecx, ecx
je 0x48c0af
push 0x4e58d0
push eax
call ecx
jmp 0x48c0ba
push 0x4e58d0
push eax
call fcn.004939c0
add esp, 8
test eax, eax
jne 0x48c262
jmp 0x48c256
mov eax, dword [esi]
cmp ecx, 4
jne 0x48c171
push 0
push 0
push 0x1304
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, eax
mov dword [ebp - 0x44c], ecx
xor eax, eax
mov dword [ebp - 0x61c], eax
test ecx, ecx
jle 0x48c262
nop dword [eax]
lea ecx, [ebp - 0x46c]
push ecx
push eax
push 0x130a
push dword [esi]
call dword [sym.imp.USER32.dll_SendMessageA]
push 2
push 2
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.USER32.dll_InflateRect]
lea eax, [ebp - 0x46c]
push eax
push edi
call dword [sym.imp.USER32.dll_ValidateRect]
push 2
lea eax, [ebp - 0x46c]
push eax
push dword [esi]
push edi
call dword [sym.imp.USER32.dll_MapWindowPoints]
push 0
lea eax, [ebp - 0x46c]
push eax
push dword [esi]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [ebp - 0x61c]
inc eax
mov dword [ebp - 0x61c], eax
cmp eax, dword [ebp - 0x44c]
jl 0x48c100
jmp 0x48c262
push 0xfffffffffffffff0
push eax
call dword [0x595d8c]
test eax, 0x10000000
je 0x48c262
cmp dword [esi + 0x50], 0
jne 0x48c262
push 2
lea eax, [ebp - 0x414]
push eax
push dword [esi]
call dword [0x595d80]
test eax, eax
je 0x48c1b1
cmp byte [ebp - 0x414], 0x7c
je 0x48c256
mov eax, dword [esi]
mov dword [ebp - 0x44c], eax
test eax, eax
je 0x48c220
mov edx, dword [0x52e838]
test edx, edx
je 0x48c20e
test dword [edx + 4], 0x40000000
je 0x48c1ed
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
mov eax, dword [ebp - 0x44c]
test edx, edx
je 0x48c20e
test dword [edx + 4], 0x40000000
je 0x48c20e
mov ecx, dword [edx + 0x1f2c]
test ecx, ecx
je 0x48c20e
push 0x4e58d0
push eax
call ecx
jmp 0x48c219
push 0x4e58d0
push eax
call fcn.004939c0
add esp, 8
test eax, eax
jne 0x48c256
push 0xfffffffffffffff0
push dword [esi]
call dword [0x595d8c]
and eax, 0xf
mov ecx, dword [esi]
cmp eax, 8
jne 0x48c23b
push 0
push 0
push ecx
jmp 0x48c25c
push 0xffffffffffffffec
push ecx
call dword [0x595d8c]
test eax, 0x200
je 0x48c262
lea eax, [esi + 0x14]
push eax
push edi
call dword [sym.imp.USER32.dll_ValidateRect]
push 0
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov esi, dword [esi + 0x5c]
test esi, esi
jne 0x48bfe2
push 0
mov esi, dword [ebp - 0x614]
lea eax, [esi + 0x15c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetUpdateRect]
cmp dword [esi + 0x60], 0
je 0x48c5d8
cmp dword [ebp - 0x618], 0
jne 0x48c5d8
cmp dword [0x52e888], 0
je 0x48c5d8
cmp dword [esi + 0x11c], 0
jne 0x48c5d8
cmp dword [esi + 0x7c], 0
je 0x48d3b6
mov eax, dword [esi + 0x64]
test eax, eax
je 0x48c2d5
lea ecx, [ebp - 0x444]
push ecx
push 0x18
push eax
call dword [sym.imp.GDI32.dll_GetObjectA]
lea eax, [ebp - 0x4c0]
push eax
push edi
call dword [sym.imp.USER32.dll_BeginPaint]
mov esi, eax
mov dword [ebp - 0x414], esi
mov ecx, dword [0x52e838]
mov eax, dword [ecx + 0xdcc]
test eax, eax
je 0x48c348
push 0
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectPalette]
mov dword [ebp - 0x624], eax
push esi
mov esi, dword [sym.imp.GDI32.dll_RealizePalette]
call esi
push 0
mov ecx, dword [0x52e838]
push dword [ecx + 0xdcc]
mov eax, dword [ebp - 0x614]
push dword [eax + 0x7c]
call dword [sym.imp.GDI32.dll_SelectPalette]
mov dword [ebp - 0x418], eax
mov eax, dword [ebp - 0x614]
push dword [eax + 0x7c]
call esi
mov esi, dword [ebp - 0x414]
push 3
push esi
call dword [sym.imp.GDI32.dll_SetStretchBltMode]
movups xmm0, xmmword [ebp - 0x4c0]
movups xmmword [ebp - 0x60], xmm0
movups xmm0, xmmword [ebp - 0x4b0]
movups xmmword [ebp - 0x50], xmm0
movups xmm0, xmmword [ebp - 0x4a0]
movups xmmword [ebp - 0x40], xmm0
movups xmm0, xmmword [ebp - 0x490]
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x60c], esi
cmp dword [0x595ce8], 0
je 0x48c399
cmp dword [0x595cc0], edi
jne 0x48c40e
jmp 0x48c3fd
cmp dword [0x595cc8], 0
je 0x48c40e
push 0
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0xcc0020
push 0
push 0
push dword [0x595cd0]
push dword [0x595ce4]
push dword [0x595ce0]
push dword [0x595cdc]
push dword [0x595cd8]
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
push esi
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [0x595cc4]
cmp eax, dword [0x595cc0]
je 0x48c3f7
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, dword [ebp - 0x414]
mov dword [ebp - 0x60c], 0
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x614]
test byte [eax + 0xb8], 1
je 0x48c442
mov dword [ebp - 0x64], esi
lea eax, [ebp - 0x64]
push eax
push 1
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
cmp dword [ebp - 0x64], 0
je 0x48c569
mov eax, dword [ebp - 0x614]
cmp dword [ebp - 0x60c], 0
je 0x48c569
cmp dword [eax + 0x64], 0
jne 0x48c46e
push dword [eax + 0x80]
lea eax, [ebp - 0x4b8]
push eax
push esi
call dword [sym.imp.USER32.dll_FillRect]
jmp 0x48c569
movups xmm0, xmmword [ebp - 0x4c0]
psrldq xmm0, 0xc
movd ecx, xmm0
mov dword [ebp - 0x60c], ecx
movups xmm0, xmmword [ebp - 0x4b0]
psrldq xmm0, 4
movd eax, xmm0
mov dword [ebp - 0x610], eax
cmp ecx, eax
jge 0x48c569
mov esi, dword [ebp - 0x4b0]
nop dword [eax + eax]
mov eax, ecx
cdq
idiv dword [ebp - 0x43c]
mov dword [ebp - 0x44c], edx
mov eax, dword [ebp - 0x43c]
sub eax, edx
mov edx, dword [ebp - 0x610]
sub edx, ecx
cmp edx, eax
cmovge edx, eax
mov dword [ebp - 0x61c], edx
mov edi, dword [ebp - 0x4b8]
cmp edi, esi
jge 0x48c54d
mov eax, edi
cdq
mov ecx, dword [ebp - 0x440]
idiv ecx
sub ecx, edx
sub esi, edi
cmp esi, ecx
cmovge esi, ecx
push 0xcc0020
push dword [ebp - 0x44c]
push edx
mov eax, dword [ebp - 0x614]
push dword [eax + 0x7c]
push dword [ebp - 0x61c]
push esi
push dword [ebp - 0x60c]
push edi
push dword [ebp - 0x414]
call dword [sym.imp.GDI32.dll_BitBlt]
add edi, esi
mov esi, dword [ebp - 0x4b0]
cmp edi, esi
jl 0x48c4e4
mov eax, dword [ebp - 0x4ac]
mov dword [ebp - 0x610], eax
mov ecx, dword [ebp - 0x60c]
mov edx, dword [ebp - 0x61c]
jmp 0x48c553
mov eax, dword [ebp - 0x610]
add ecx, edx
mov dword [ebp - 0x60c], ecx
cmp ecx, eax
jl 0x48c4b0
mov edi, dword [ebp - 0x620]
mov eax, dword [ebp - 0x614]
mov esi, dword [ebp - 0x414]
test byte [eax + 0xb8], 1
je 0x48c5ca
movups xmm0, xmmword [ebp - 0x4c0]
movups xmmword [ebp - 0x60], xmm0
movups xmm0, xmmword [ebp - 0x4b0]
movups xmmword [ebp - 0x50], xmm0
movups xmm0, xmmword [ebp - 0x4a0]
movups xmmword [ebp - 0x40], xmm0
movups xmm0, xmmword [ebp - 0x490]
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x64], esi
lea eax, [ebp - 0x64]
push eax
push 1
push dword [ebp + 0xc]
push edi
call fcn.00487050
mov ecx, dword [ebp - 0x62c]
mov dword [ebp - 0x610], ecx
jmp 0x48c602
mov ecx, dword [ebp - 0x62c]
mov dword [ebp - 0x610], ecx
jmp 0x48c60b
push edi
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
mov dword [ebp - 0x414], esi
push dword [ebp - 0x608]
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x614]
add esp, 0x10
cmp dword [eax + 0x8c], 1
jne 0x48c751
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
jne 0x48c74b
xorps xmm0, xmm0
movups xmmword [ebp - 0x42c], xmm0
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [0x52e838]
test eax, eax
je 0x48c6e4
mov eax, dword [eax + 4]
and eax, 0x900000
cmp eax, 0x900000
jne 0x48c6e4
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x61c], eax
mov ecx, dword [0x595880]
test ecx, ecx
je 0x48c6c2
push 2
push dword [eax + 0x17c]
call ecx
mov ecx, dword [ebp - 0x424]
sub ecx, eax
mov dword [ebp - 0x42c], ecx
push 3
mov eax, dword [ebp - 0x61c]
push dword [eax + 0x17c]
call dword [0x595880]
mov ecx, dword [ebp - 0x420]
sub ecx, eax
mov dword [ebp - 0x428], ecx
mov eax, dword [ebp - 0x61c]
mov ecx, dword [0x595808]
test ecx, ecx
je 0x48c732
push 0
lea edx, [ebp - 0x42c]
push edx
push 0
push 3
push esi
push dword [eax + 0x17c]
call ecx
jmp 0x48c732
dec dword [ebp - 0x420]
dec dword [ebp - 0x424]
push 2
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
call esi
mov ecx, dword [ebp - 0x424]
sub ecx, eax
mov dword [ebp - 0x42c], ecx
push 3
call esi
mov ecx, dword [ebp - 0x420]
sub ecx, eax
mov dword [ebp - 0x428], ecx
push 8
push 3
lea eax, [ebp - 0x42c]
push eax
mov esi, dword [ebp - 0x414]
push esi
call dword [sym.imp.USER32.dll_DrawFrameControl]
lea eax, [ebp - 0x42c]
push eax
mov eax, dword [ebp - 0x614]
add eax, 0x94
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [ebp - 0x614]
cmp dword [eax + 0x60], 0
je 0x48c7c0
cmp dword [ebp - 0x618], 0
jne 0x48c7c0
cmp dword [0x52e888], 0
je 0x48c7c0
cmp dword [eax + 0x11c], 0
jne 0x48c7c0
mov ecx, dword [ebp - 0x624]
test ecx, ecx
je 0x48c790
push 0
push ecx
push esi
mov esi, dword [sym.imp.GDI32.dll_SelectPalette]
call esi
mov eax, dword [ebp - 0x614]
jmp 0x48c796
mov esi, dword [sym.imp.GDI32.dll_SelectPalette]
mov ecx, dword [ebp - 0x418]
test ecx, ecx
je 0x48c7a8
push 0
push ecx
push dword [eax + 0x7c]
call esi
lea eax, [ebp - 0x4c0]
push eax
push edi
call dword [sym.imp.USER32.dll_EndPaint]
mov eax, 1
jmp 0x48f1ef
push esi
push edi
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp - 0x610]
jmp 0x48f1ef
cmp ecx, 9
jne case.0x48db7d.36875
call dword [sym.imp.USER32.dll_GetFocus]
push 2
push eax
call dword [0x595ee0]
test eax, eax
jne case.0x48db7d.36875
push 2
push edi
call dword [0x595ee0]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, 1
jmp 0x48f1ef
cmp edx, 0x2a3
ja 0x48d936
je 0x48d87b
lea eax, [edx - 0x110]
cmp eax, 0xf2
ja case.0x48db7d.36875
movzx eax, byte [eax + 0x48f40c]
jmp dword [eax*4 + 0x48f3dc]
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x614], eax
test eax, eax
je case.0x48db7d.36875
mov eax, dword [0x595800]
test eax, eax
je 0x48c88f
push 0x4e5828
push edi
call eax
mov ecx, dword [ebp - 0x614]
mov dword [ecx + 0x17c], eax
push str.MENU
push edi
call dword [0x595800]
mov ecx, dword [ebp - 0x614]
mov dword [ecx + 0x180], eax
cmp esi, 0x5958e0
jne 0x48c8fc
mov eax, dword [0x52e838]
mov eax, dword [eax + 0xd1c]
mov dword [ebp - 0x418], eax
push 4
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [ebp - 0x418]
cmp eax, ecx
je 0x48c8fc
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
push ecx
call dword [sym.imp.USER32.dll_CallWindowProcA]
push 0x1d95
push str.LibMain.c
push 0xfffffffffffffffc
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
push eax
push str.MP_
push edi
call fcn.004a06f0
add esp, 0x14
mov eax, dword [0x52e838]
push dword [eax + 0xd1c]
jmp 0x48c951
cmp esi, 0x5958c0
jne 0x48c95a
push 4
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp eax, 0x4c9270
je 0x48c95a
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
push 0x4c9270
call dword [sym.imp.USER32.dll_CallWindowProcA]
push 0x1d9a
push str.LibMain.c
push 0xfffffffffffffffc
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
push eax
push str.TP_
push edi
call fcn.004a06f0
add esp, 0x14
push 0x4c9270
push 0xfffffffffffffffc
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x52eab8], 0
push edi
call dword [0x595d94]
mov esi, dword [ebp - 0x614]
mov dword [esi + 0x74], eax
test eax, eax
je 0x48c9af
push 0x32
lea ecx, [ebp - 0x4b4]
push ecx
push eax
call dword [0x595d74]
push str.SysTabControl32
lea eax, [ebp - 0x4b4]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp
add esp, 8
test eax, eax
jne 0x48c9af
push dword [esi + 0x74]
call dword [0x595d94]
mov dword [esi + 0xf8], eax
lea eax, [esi + 0x14]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov ecx, dword [esi + 0x74]
test ecx, ecx
je 0x48c9c7
push eax
push ecx
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x12c
lea eax, [ebp - 0x1b0]
push eax
push edi
call dword [0x595d80]
push 0x3b
lea eax, [ebp - 0x1b0]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
je 0x48c9f2
mov byte [eax], 0
push edi
call dword [0x595d88]
mov esi, eax
test esi, esi
je 0x48ca63
nop
push 0x64
lea eax, [ebp - 0x84]
push eax
push esi
call dword [0x595d80]
mov eax, dword [0x52e838]
test dword [eax + 4], 0x280
jne 0x48ca31
mov eax, dword [0x52e85c]
test eax, eax
je 0x48ca31
push 0x4e5854
push 0
push esi
call eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x1b0]
push eax
push 0xfffffffffffffff0
push esi
call dword [0x595d8c]
push eax
push 0
push esi
call fcn.004839b0
add esp, 0x14
push 2
push esi
call dword [0x595ee0]
mov esi, eax
test esi, esi
jne 0x48ca00
push 0x12c
lea eax, [ebp - 0x1b0]
push eax
push edi
call dword [0x595d80]
push 0x3b
lea eax, [ebp - 0x1b0]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr
add esp, 8
test eax, eax
je 0x48cb4b
mov byte [eax], 0
lea eax, [ebp - 0x1b0]
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov al, byte [ebp - 0x1b0]
test al, al
jne 0x48cac4
push 4
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov esi, eax
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
and eax, 0xff3bffff
jmp 0x48caf5
cmp al, 0x40
jne 0x48cb4b
push 4
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov esi, eax
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
mov ecx, 0xff3fffff
mov edx, 0xff3bffff
cmp byte [ebp - 0x1af], 0x40
cmove ecx, edx
and eax, ecx
push eax
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
lea eax, [ebp - 0x46c]
push eax
xorps xmm0, xmm0
push edi
movups xmmword [ebp - 0x46c], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x614]
sub dword [eax + 0x40], esi
mov eax, dword [ebp - 0x460]
sub eax, dword [ebp - 0x468]
push 6
sub eax, esi
push eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x46c]
push eax
push 0
push 0
push 0
push edi
call dword [0x595d70]
lea ecx, [ebp - 0x1b0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x48cb54
sub ecx, edx
lea eax, [ecx + 1]
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
mov esi, dword [ebp - 0x614]
push dword [esi]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
mov dword [esi], eax
lea edx, [ebp - 0x1b0]
nop dword [eax]
mov cl, byte [edx]
mov byte [eax], cl
lea edx, [edx + 1]
lea eax, [eax + 1]
test cl, cl
jne 0x48cb90
cmp dword [esi + 0x8c], 1
jne 0x48cbb7
push 0x48f9a0
push 0x32
push 0
push edi
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [esi + 0x68]
test eax, eax
je 0x48cbe7
push eax
push 0
push 0x80
push edi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
mov eax, dword [ebp - 0x614]
push dword [eax + 0x6c]
push 1
push 0x80
push edi
call esi
jmp 0x48ccc1
push 0xffffffffffffffde
push edi
call dword [sym.imp.USER32.dll_GetClassLongA]
test eax, eax
jne 0x48ccc1
push edi
call dword [0x595d94]
mov dword [ebp - 0x618], eax
push 0
push 0
push 0x7f
push eax
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
mov dword [ebp - 0x60c], eax
push 0
push 1
push 0x7f
push dword [ebp - 0x618]
call esi
mov esi, eax
mov eax, dword [ebp - 0x60c]
test eax, eax
jne 0x48cc38
mov eax, esi
jmp 0x48cc3d
test esi, esi
cmove esi, eax
test eax, eax
jne 0x48cca3
cmp dword [ebp - 0x618], 0
je 0x48cca3
push 0xffffffffffffffde
push edi
call dword [0x595d94]
push eax
mov esi, dword [sym.imp.USER32.dll_GetClassLongA]
call esi
mov dword [ebp - 0x60c], eax
push 0xfffffffffffffff2
push edi
call dword [0x595d94]
push eax
call esi
mov esi, eax
mov eax, dword [ebp - 0x60c]
test eax, eax
jne 0x48cc82
mov dword [ebp - 0x60c], esi
jmp 0x48cc87
test esi, esi
cmove esi, eax
push dword [ebp - 0x618]
call dword [0x595d94]
mov dword [ebp - 0x618], eax
mov eax, dword [ebp - 0x60c]
test eax, eax
je 0x48cc41
push eax
push 0
push 0x80
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 1
push 0x80
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 5
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x270f
push edi
call dword [sym.imp.USER32.dll_KillTimer]
jmp case.0x48db7d.36875
mov eax, dword [0x52e838]
test eax, eax
je case.0x48db7d.36875
test dword [eax + 4], 0x8000
je case.0x48db7d.36875
push esi
push ecx
push edx
push edi
call fcn.004be650
add esp, 0x10
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
cmp esi, dword [eax + 0x150]
jne case.0x48db7d.36875
mov eax, dword [eax + 0x14c]
cmp eax, 0xffffffff
jle case.0x48db7d.36875
test al, 1
je case.0x48db7d.36875
push 1
mov edi, dword [ebp - 0x604]
push edi
call dword [sym.imp.GDI32.dll_SetBkMode]
mov esi, dword [ebp - 0x418]
push dword [esi + 0x158]
push edi
call dword [sym.imp.GDI32.dll_SetBkColor]
mov eax, dword [esi + 0x154]
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov esi, eax
test esi, esi
je case.0x48db7d.36875
mov eax, dword [ebp - 0x604]
cmp eax, 0x270b
ja 0x48ce41
je 0x48cde3
cmp eax, 0x3e7
jne case.default.0x48ce50
cmp dword [esi + 0x14c], 0xffffffff
jge 0x48cdc7
push eax
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, 1
jmp 0x48f1ef
push dword [esi + 0x150]
call dword [sym.imp.USER32.dll_UpdateWindow]
dec dword [esi + 0x14c]
mov eax, 1
jmp 0x48f1ef
push 0x270b
push edi
call dword [sym.imp.USER32.dll_KillTimer]
push 0x1f5e
push str.LibMain.c
push 0
push str.WP_
push edi
call fcn.004a06f0
mov esi, eax
push 0x1f5f
push str.LibMain.c
push 0
push str.LP_
push edi
call fcn.004a06f0
add esp, 0x28
push eax
push esi
push 0x9022
push edi
call dword [0x595d94]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, 1
jmp 0x48f1ef
lea ecx, [eax - 0x270c]
cmp ecx, 3
ja case.default.0x48ce50
jmp dword [ecx*4 + 0x48f500]
push 0x32
push 0
lea eax, [ebp - 0x4b4]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x270d
push edi
call dword [sym.imp.USER32.dll_KillTimer]
push edi
call fcn.00492e00
add esp, 4
mov esi, eax
test esi, esi
je 0x48e165
push esi
call dword [sym.imp.USER32.dll_SetFocus]
push 0x32
lea eax, [ebp - 0x4b4]
push eax
push esi
call dword [0x595d74]
push str.edit
lea eax, [ebp - 0x4b4]
push eax
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp
add esp, 8
test eax, eax
jne 0x48e165
push 0xffffffffffffffff
push eax
push 0xb1
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, 1
jmp 0x48f1ef
push 0x270f
push edi
call dword [sym.imp.USER32.dll_KillTimer]
push 0
push 0
push 0x900e
push edi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
call esi
push 0
push 0
push 0x9004
push edi
call esi
mov eax, 1
jmp 0x48f1ef
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je 0x48cf25
test byte [eax + 0x5c], 1
jne case.0x48db7d.36875
call dword [sym.imp.USER32.dll_GetFocus]
push eax
push edi
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
jne 0x48e165
push 0x270e
push edi
call dword [sym.imp.USER32.dll_KillTimer]
push 0x270e
push 1
push 0x111
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, 1
jmp 0x48f1ef
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
mov esi, eax
push 0x270c
push edi
call dword [sym.imp.USER32.dll_KillTimer]
test esi, esi
je 0x48e165
and dword [esi + 0x5c], 0xfffffffe
mov eax, 1
jmp 0x48f1ef
movzx eax, cx
cmp eax, 1
je 0x48cfa7
cmp eax, 2
jne 0x48d042
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x80880000
jne 0x48d042
push 0x1fa6
push str.LibMain.c
push dword [ebp - 0x604]
push str.WP_
push edi
call fcn.004a06f0
mov dword [ebp - 0x61c], eax
push 0x1fa7
push str.LibMain.c
push esi
push str.LP_
push edi
call fcn.004a06f0
add esp, 0x28
mov dword [ebp - 0x418], eax
mov edx, dword [ebp - 0x61c]
test edx, edx
je 0x48d032
mov eax, dword [ebp - 0x604]
movzx ecx, ax
mov eax, dword [ebp - 0x418]
cmp dx, cx
jne 0x48d01d
cmp eax, esi
je 0x48d032
push eax
push edx
push 0x9022
push edi
call dword [0x595d94]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 0xa
push 0x270b
push edi
call dword [sym.imp.USER32.dll_SetTimer]
mov ecx, dword [ebp - 0x604]
movzx eax, cx
cmp eax, 1
je 0x48d059
cmp eax, 2
jne 0x48d184
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je 0x48d184
push 0x270e
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebp - 0x418]
mov dword [eax + 0x40], 0
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
mov dword [ebp - 0x61c], eax
mov eax, dword [ebp - 0x418]
cmp dword [eax + 0x40], 0
jne 0x48d169
test byte [eax + 0x5c], 1
jne 0x48d169
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x44c], eax
test eax, eax
je 0x48d15e
push 0x4f2080
push edi
call fcn.0049cd40
add esp, 8
push edi
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edi, dword [ebp - 0x44c]
mov eax, dword [edi + 0x4c]
test eax, eax
je 0x48d116
push dword [edi + 0x48]
push dword [edi + 0x44]
push dword [edi + 0x30]
push dword [edi + 0x2c]
push dword [edi + 0x58]
push dword [edi + 0x54]
call eax
add esp, 0x18
cmp esi, 0x270e
je 0x48d126
push dword [edi]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [edi + 0x54]
mov eax, dword [ecx + 0x55c8]
cmp eax, dword [edi + 4]
jne 0x48d141
mov dword [ecx + 0x55c8], 0
mov ecx, dword [edi + 0x54]
and dword [ecx + 0x55d4], 0xff7fffff
push 0
push dword [edi + 0x44]
mov eax, dword [edi + 0x68]
call eax
push edi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 0xc
mov eax, dword [ebp - 0x61c]
jmp 0x48f1ef
push 0
push 0x32
push 0x270e
push edi
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [ebp - 0x61c]
jmp 0x48f1ef
mov eax, dword [0x52e838]
test eax, eax
je case.0x48db7d.36875
mov eax, dword [eax + 0xd18]
test eax, eax
je case.0x48db7d.36875
call eax
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov esi, eax
test esi, esi
je case.0x48db7d.36875
mov eax, dword [ebp - 0x604]
cmp eax, 0xf060
je 0x48d1f9
cmp eax, 0xf020
je 0x48d1f9
cmp eax, 0xf030
je 0x48d1f9
push str.WCNT_
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
mov eax, 1
jmp 0x48f1ef
xorps xmm0, xmm0
movups xmmword [ebp - 0x444], xmm0
movq qword [ebp - 0x434], xmm0
lea eax, [ebp - 0x444]
push eax
push dword [esi]
call fcn.00493be0
add esp, 8
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x20000000
jne case.0x48db7d.36875
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x1000000
je 0x48d249
or dword [ebp - 0x434], 1
jmp 0x48d261
xorps xmm0, xmm0
movups xmmword [ebp - 0x444], xmm0
lea eax, [ebp - 0x444]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x444]
push eax
push dword [esi]
call fcn.004a07e0
add esp, 0xc
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
test eax, eax
jne 0x48f1ef
push 0xffffffffffffffec
push esi
call dword [0x595d8c]
cmp dword [0x52e888], 0
je 0x48d3b6
mov ecx, dword [0x52e838]
cmp dword [ecx + 0xe00], 0
jne 0x48d3b6
mov edi, dword [ebp - 0x418]
cmp dword [edi + 0x60], 0
je 0x48d3b6
test al, 0x10
je 0x48d3b6
push 1
mov esi, dword [ebp - 0x604]
push esi
call dword [sym.imp.GDI32.dll_SetBkMode]
push 0
mov eax, dword [0x52e838]
push dword [eax + 0xdcc]
push esi
call dword [sym.imp.GDI32.dll_SelectPalette]
mov eax, dword [edi + 0x80]
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
test eax, eax
jne 0x48f1ef
push 0xfffffffffffffff0
push esi
call dword [0x595d8c]
push 0xffffffffffffffec
push esi
call dword [0x595d8c]
mov ecx, eax
test ecx, 0x200
je 0x48d38a
test cl, 0x10
jne 0x48d3b6
push 0x4e587c
push edi
call fcn.00493b70
add esp, 8
jmp 0x48f1ef
cmp dword [0x52e888], 0
je 0x48d3b6
mov eax, dword [0x52e838]
cmp dword [eax + 0xe00], 0
jne 0x48d3b6
mov edi, dword [ebp - 0x418]
cmp dword [edi + 0x60], 0
je 0x48d3b6
test cl, 0x10
je 0x48d2f1
xor eax, eax
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x618], eax
test eax, eax
je case.0x48db7d.36875
cmp dword [eax + 0x64], 2
jne 0x48d3f7
push eax
push edi
call fcn.00492650
add esp, 8
movsx eax, si
mov ecx, dword [ebp - 0x618]
mov dword [ecx + 0x68], eax
mov eax, esi
shr eax, 0x10
cwde
mov esi, ecx
mov dword [esi + 0x6c], eax
mov dword [esi + 0x60], 0
mov ecx, 1
mov dword [ebp - 0x60c], ecx
cmp dword [esi], ecx
jle case.0x48db7d.36875
nop dword [eax + eax]
cmp dword [esi + 0x60], 0
jne case.0x48db7d.36875
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
test byte [eax + 0x88], 0x10
jne 0x48d581
call dword [0x595e7c]
test eax, eax
je 0x48d581
push dword [esi + 0x6c]
push dword [esi + 0x68]
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x60c]
mov eax, dword [eax + ecx*4]
add eax, 0x8c
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x48d581
mov ecx, dword [ebp - 0x60c]
mov dword [esi + 0x60], ecx
mov dword [esi + 0x64], 2
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0xa8], 1
push dword [esi + 0x78]
call dword [sym.imp.USER32.dll_SetCapture]
xorps xmm0, xmm0
movups xmmword [esi + 0x7c], xmm0
mov ecx, dword [esi + 0x60]
sub ecx, 1
mov dword [esi + 0x5c], ecx
js 0x48d4e4
mov edi, ecx
mov eax, dword [esi + 4]
lea edx, [eax + edi*4]
mov eax, dword [edx]
test byte [eax + 0x88], 1
jne 0x48d4de
lea ecx, [edi - 1]
mov dword [esi + 0x5c], ecx
mov edi, ecx
sub edx, 4
test ecx, ecx
jns 0x48d4c4
mov edi, dword [ebp - 0x620]
test ecx, ecx
js 0x48d581
mov eax, dword [0x52e838]
test eax, eax
je 0x48d532
test dword [eax + 4], 0x4000
jne 0x48d52b
test eax, eax
je 0x48d532
test dword [eax + 4], 0x2000
jne 0x48d532
push 0
lea eax, [ebp - 0x418]
push eax
push 0
push 0x26
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
test eax, eax
je 0x48d52b
cmp dword [ebp - 0x418], 0
jne 0x48d532
mov eax, 1
jmp 0x48d534
xor eax, eax
add esi, 0x8c
push eax
push 1
push esi
call fcn.00481a00
add esp, 0xc
test byte [esi], 1
mov esi, dword [ebp - 0x618]
je 0x48d574
mov ecx, dword [esi + 0x60]
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
add eax, 0x8c
push eax
lea eax, [esi + 0x7c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
push esi
push edi
call fcn.00491650
add esp, 8
push 2
push dword [esi + 0x78]
call fcn.0049da40
add esp, 8
mov eax, dword [ebp - 0x60c]
inc eax
mov dword [ebp - 0x60c], eax
cmp eax, dword [esi]
mov ecx, eax
jl 0x48d430
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
push dword [eax + 0x11c]
push edi
call fcn.00492650
add esp, 8
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x61c], ecx
test ecx, ecx
je case.0x48db7d.36875
xor ecx, ecx
mov dword [ebp - 0x610], ecx
mov dword [ebp - 0x418], ecx
movzx eax, si
mov edx, esi
shr edx, 0x10
mov esi, dword [ebp - 0x61c]
cmp dword [esi + 0x64], 2
jne 0x48d777
mov ecx, edx
mov dword [ebp - 0x60c], ecx
movzx ecx, cx
mov dword [ebp - 0x418], ecx
mov dword [ebp - 0x610], eax
cmp dword [esi + 0x60], 0
je case.0x48db7d.36875
movsx edx, ax
mov eax, ecx
movsx ecx, ax
cmp dword [esi + 0x70], edx
jne 0x48d649
cmp dword [esi + 0x74], ecx
je case.0x48db7d.36875
mov eax, dword [esi + 0x5c]
test eax, eax
js case.0x48db7d.36875
mov eax, 2
cmp ax, word [ebp - 0x610]
cmovg edx, eax
cmp ax, word [ebp - 0x60c]
cmovg ecx, eax
mov eax, dword [esi + 0x24]
sub eax, 6
cmp eax, edx
cmovge eax, edx
mov dword [ebp - 0x610], eax
mov dword [esi + 0x70], eax
mov edx, dword [esi + 0x28]
sub edx, 6
cmp edx, ecx
cmovge edx, ecx
mov dword [esi + 0x74], edx
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x5c]
mov ecx, dword [eax + ecx*4]
mov dword [ebp - 0x60c], ecx
mov edi, dword [esi + 0x60]
mov eax, dword [eax + edi*4]
mov dword [ebp - 0x418], eax
cmp dword [esi + 8], 1
jne 0x48d6c7
sub edx, dword [esi + 0x6c]
mov dword [ecx + 0x7c], edx
mov eax, dword [esi + 0x6c]
sub eax, dword [esi + 0x74]
mov edx, dword [ebp - 0x418]
mov dword [edx + 0x7c], eax
jmp 0x48d6e2
mov eax, dword [ebp - 0x610]
sub eax, dword [esi + 0x68]
mov dword [ecx + 0x78], eax
mov eax, dword [esi + 0x68]
sub eax, dword [esi + 0x70]
mov edx, dword [ebp - 0x418]
mov dword [edx + 0x78], eax
test byte [esi + 0x8c], 1
mov edi, dword [ebp - 0x620]
jne 0x48d700
push 0
push dword [esi + 0x78]
call fcn.0049da40
jmp 0x48a84f
cmp dword [ecx + 0x7c], 0
jne 0x48d710
cmp dword [ecx + 0x78], 0
je case.0x48db7d.36875
push esi
push edi
call fcn.00491650
add esp, 8
mov ecx, dword [esi + 0x60]
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
add eax, 0x8c
add esi, 0x7c
push eax
push esi
call dword [sym.imp.USER32.dll_CopyRect]
mov edx, dword [ebp - 0x60c]
mov eax, dword [edx + 0x7c]
inc eax
mov ecx, dword [ebp - 0x61c]
add dword [ecx + 0x80], eax
mov eax, dword [edx + 0x7c]
add dword [ecx + 0x88], eax
mov eax, dword [edx + 0x78]
inc eax
add dword [esi], eax
mov eax, dword [edx + 0x78]
add dword [ecx + 0x84], eax
push ecx
push edi
call fcn.00491650
add esp, 8
push edi
call dword [sym.imp.USER32.dll_UpdateWindow]
jmp case.0x48db7d.36875
cwde
mov dword [esi + 0x68], eax
movsx eax, dx
mov dword [esi + 0x6c], eax
mov dword [ebp - 0x60c], 1
cmp dword [esi], 1
jle 0x48d843
test ecx, ecx
jne 0x48d843
call dword [0x595e7c]
test eax, eax
je 0x48d83d
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x60c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ecx + 0x88]
and al, 0x11
cmp al, 1
jne 0x48d820
push dword [esi + 0x6c]
push dword [esi + 0x68]
lea eax, [ecx + 0x8c]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x48d820
mov eax, dword [ebp - 0x60c]
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x418], 1
mov dword [ebp - 0x46c], 0x10
mov dword [ebp - 0x468], 2
mov dword [ebp - 0x464], edi
mov dword [ebp - 0x460], 0
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov eax, dword [ebp - 0x60c]
inc eax
mov dword [ebp - 0x60c], eax
cmp eax, dword [esi]
mov ecx, dword [ebp - 0x610]
jl 0x48d794
jmp 0x48d843
mov ecx, dword [ebp - 0x610]
mov edx, dword [esi + 0x60]
cmp edx, ecx
je 0x48d86d
mov eax, dword [esi + 4]
mov eax, dword [eax + edx*4]
mov dword [eax + 0xa8], 0
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0xa8], 1
mov dword [esi + 0x60], ecx
mov eax, dword [ebp - 0x418]
mov dword [esi + 0x64], eax
jmp case.0x48db7d.36875
test edi, edi
je case.0x48db7d.36875
mov edx, dword [0x52e838]
test edx, edx
je 0x48d8ce
test dword [edx + 4], 0x40000000
je 0x48d8ad
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x48d8ce
test dword [edx + 4], 0x40000000
je 0x48d8ce
mov eax, dword [edx + 0x1f2c]
test eax, eax
je 0x48d8ce
push 0x4ef64c
push edi
call eax
jmp 0x48d8d9
push 0x4ef64c
push edi
call fcn.004939c0
add esp, 8
test eax, eax
je case.0x48db7d.36875
mov esi, dword [eax + 0x11c]
test esi, esi
je case.0x48db7d.36875
mov ecx, dword [esi + 0x60]
test ecx, ecx
je 0x48d910
mov dword [esi + 0x60], 0
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0xa8], 0
mov dword [esi + 0x64], 0
mov eax, dword [esi + 0x58]
test eax, eax
je 0x48d925
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [esi + 0x58], 0
mov eax, 1
jmp 0x48f1ef
cmp edx, 0x9000
ja 0x48db67
je 0x48da4d
mov eax, edx
sub eax, 0x30f
je 0x48d9e6
sub eax, 2
je 0x48d9de
sub eax, 9
jne case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov esi, eax
test esi, esi
je case.0x48db7d.36875
mov eax, dword [esi + 0x17c]
test eax, eax
je 0x48d996
mov ecx, dword [0x595804]
test ecx, ecx
je 0x48d996
push eax
call ecx
push 0x4e5828
push edi
call dword [0x595800]
mov dword [esi + 0x17c], eax
mov ecx, dword [esi + 0x180]
test ecx, ecx
je 0x48d9be
mov eax, dword [0x595804]
test eax, eax
je 0x48d9be
push ecx
call eax
mov eax, dword [0x595800]
test eax, eax
je case.0x48db7d.36875
push str.Menu
push edi
call eax
mov dword [esi + 0x180], eax
jmp case.0x48db7d.36875
cmp ecx, edi
je case.0x48db7d.36875
push edi
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0
mov ecx, dword [0x52e838]
push dword [ecx + 0xdcc]
push esi
call dword [sym.imp.GDI32.dll_SelectPalette]
mov dword [ebp - 0x44c], eax
push esi
call dword [sym.imp.GDI32.dll_RealizePalette]
mov dword [ebp - 0x628], eax
test eax, eax
jne 0x48da2b
cmp dword [ebp + 0xc], 0x311
jne 0x48da2b
push esi
call dword [sym.imp.GDI32.dll_UpdateColors]
push 0
push dword [ebp - 0x44c]
push esi
call dword [sym.imp.GDI32.dll_SelectPalette]
push esi
push edi
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp - 0x628]
jmp 0x48f1ef
push 0x4f2080
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je 0x48db39
lea edx, [eax + 0xc]
mov dword [ebp - 0x628], edx
mov ecx, dword [eax + 0x34]
shr ecx, 0x1e
and ecx, 1
push ecx
push edx
push dword [eax + 0x30]
push dword [eax + 0x58]
push dword [eax]
call fcn.004a7420
add esp, 0x14
mov ecx, dword [ebp - 0x418]
mov eax, dword [ecx + 0x20]
add dword [ecx + 0x10], eax
mov eax, dword [ecx + 0x28]
add dword [ecx + 0x18], eax
mov eax, dword [ecx + 0x1c]
add dword [ecx + 0xc], eax
mov eax, dword [ecx + 0x24]
add dword [ecx + 0x14], eax
cmp dword [ecx + 0x10], 0xa
jge 0x48dac6
push 0xfffffffffffffff0
push dword [ecx]
call dword [0x595d8c]
test eax, 0x4000
jne 0x48dac6
push 0
jmp 0x48dac8
push 5
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x44c], eax
test eax, eax
je 0x48db26
mov dword [eax + 0x44], 1
mov eax, dword [ebp - 0x418]
mov edx, dword [eax + 0x10]
mov esi, dword [eax + 0xc]
push 4
mov ecx, dword [eax + 0x18]
sub ecx, edx
push ecx
mov eax, dword [eax + 0x14]
sub eax, esi
push eax
push edx
push esi
push 0
push edi
call dword [0x595d70]
mov eax, dword [ebp - 0x44c]
mov dword [eax + 0x44], 0
mov esi, dword [ebp - 0x608]
push dword [ebp - 0x628]
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
push esi
push dword [ebp - 0x604]
push 0x9000
push edi
call fcn.00487050
add esp, 0x10
mov esi, eax
push 0
push 0
push 0x900e
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, esi
jmp 0x48f1ef
lea eax, [edx - 0x9003]
cmp eax, 0x1f
ja case.0x48db7d.36875
movzx eax, byte [eax + 0x48f558]
jmp dword [eax*4 + 0x48f510]
mov eax, dword [0x52e838]
test eax, eax
je case.0x48db7d.36875
cmp edi, dword [eax + 0xdb4]
jne case.0x48db7d.36875
test esi, esi
je case.0x48db7d.36875
push dword [esi + 0x20]
push dword [esi + 0x1c]
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [esi + 8]
push dword [esi + 4]
push dword [esi]
call fcn.004c8470
add esp, 0x24
mov dword [esi + 0x24], eax
jmp case.0x48db7d.36875
mov eax, dword [0x52e838]
test eax, eax
je case.0x48db7d.36875
cmp edi, dword [eax + 0xdb4]
jne case.0x48db7d.36875
test esi, esi
je case.0x48db7d.36875
push dword [esi + 4]
push dword [esi]
call fcn.004c9970
mov dword [esi + 8], eax
jmp 0x48a84f
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x618], eax
test eax, eax
je case.0x48db7d.36875
movsx eax, si
mov dword [ebp - 0x418], eax
mov ecx, esi
shr ecx, 0x10
movsx eax, cx
mov dword [ebp - 0x61c], eax
mov esi, dword [ebp - 0x618]
cmp dword [esi + 0x64], 0
je case.0x48db7d.36875
mov eax, dword [esi + 0x7c]
test eax, eax
je case.0x48db7d.36875
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x60c], eax
lea eax, [ebp - 0x444]
push eax
push 0x18
push dword [esi + 0x64]
call dword [sym.imp.GDI32.dll_GetObjectA]
push dword [ebp - 0x43c]
push dword [ebp - 0x440]
push dword [esi + 0x7c]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
push dword [ebp - 0x60c]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x414], eax
lea ecx, [esi + 0x114]
mov eax, dword [ebp - 0x418]
sub eax, dword [ecx]
mov dword [ebp - 0x614], eax
jns 0x48dcc3
mov ecx, dword [ebp - 0x440]
add eax, ecx
js 0x48dcb3
mov dword [ebp - 0x614], eax
lea ecx, [esi + 0x114]
mov edx, dword [ebp - 0x61c]
sub edx, dword [esi + 0x118]
mov dword [ebp - 0x624], edx
jns 0x48dcea
mov eax, dword [ebp - 0x43c]
nop dword [eax]
add edx, eax
js 0x48dce0
mov dword [ebp - 0x624], edx
test ecx, ecx
jne 0x48dd00
push 8
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x624]
mov eax, dword [ebp - 0x418]
mov dword [ecx], eax
mov eax, dword [ebp - 0x61c]
mov dword [ecx + 4], eax
xor ecx, ecx
mov dword [ebp - 0x610], ecx
mov eax, dword [ebp - 0x43c]
mov esi, dword [ebp - 0x440]
test eax, eax
jle 0x48ddd5
mov edi, eax
nop
lea eax, [ecx + edx]
cdq
idiv edi
mov dword [ebp - 0x61c], edx
mov eax, edi
sub eax, edx
mov edx, edi
sub edx, ecx
cmp edx, eax
cmovge edx, eax
mov dword [ebp - 0x418], edx
xor edi, edi
test esi, esi
jle 0x48ddad
mov eax, dword [ebp - 0x614]
add eax, edi
cdq
idiv esi
mov eax, esi
sub eax, edx
sub esi, edi
cmp esi, eax
cmovge esi, eax
push 0xcc0020
push dword [ebp - 0x61c]
push edx
mov eax, dword [ebp - 0x618]
push dword [eax + 0x7c]
push dword [ebp - 0x418]
push esi
push ecx
push edi
push dword [ebp - 0x60c]
call dword [sym.imp.GDI32.dll_BitBlt]
add edi, esi
mov esi, dword [ebp - 0x440]
cmp edi, esi
mov ecx, dword [ebp - 0x610]
jl 0x48dd55
mov edx, dword [ebp - 0x418]
add ecx, edx
mov dword [ebp - 0x610], ecx
mov edi, dword [ebp - 0x43c]
cmp ecx, edi
mov edx, dword [ebp - 0x624]
jl 0x48dd30
mov edi, dword [ebp - 0x620]
mov eax, dword [ebp - 0x43c]
push 0xcc0020
push 0
push 0
push dword [ebp - 0x60c]
push eax
push esi
push 0
push 0
mov eax, dword [ebp - 0x618]
push dword [eax + 0x7c]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x414]
push dword [ebp - 0x60c]
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
call esi
push dword [ebp - 0x60c]
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebp - 0x618]
push dword [eax + 0x80]
call esi
mov esi, dword [ebp - 0x618]
push dword [esi + 0x64]
call dword [sym.imp.GDI32.dll_CreatePatternBrush]
mov dword [esi + 0x80], eax
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
mov dword [eax + 0x150], esi
mov esi, eax
mov eax, dword [esi + 0x154]
test eax, eax
je 0x48de87
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esi + 0x154], 0
mov eax, dword [ebp - 0x604]
cmp eax, 0xffffffff
jne 0x48decd
push 0x3e7
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov dword [esi + 0x154], 0
mov dword [esi + 0x14c], 0
mov dword [esi + 0x158], 0
push dword [esi + 0x150]
call dword [sym.imp.USER32.dll_UpdateWindow]
jmp case.0x48db7d.36875
or eax, 0x2000000
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [esi + 0x154], eax
mov eax, dword [ebp - 0x604]
mov dword [esi + 0x158], eax
mov dword [esi + 0x14c], 7
push 0
push 0x64
push 0x3e7
push edi
call dword [sym.imp.USER32.dll_SetTimer]
jmp case.0x48db7d.36875
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
test eax, 0x80880000
je 0x48df4e
mov eax, dword [ebp - 0x604]
cmp esi, 0xffffffff
jne case.default.0x48ce50
movzx ecx, ax
cmp ecx, 1
je 0x48df3a
cmp ecx, 2
jne case.default.0x48ce50
push 0xffffffffffffffff
push eax
push 0x111
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
push 0x9022
push edi
call dword [0x595d94]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48db7d.36875
push dword [esi + 0x14]
push dword [esi + 0xc]
push edi
push dword [esi + 8]
push dword [esi + 4]
call dword [sym.imp.USER32.dll_CreateDialogParamA]
push 0
push 0xffffffffffffffff
push eax
push dword [esi + 0x10]
push dword [esi]
push dword [ebp - 0x604]
push edi
call fcn.00484b60
add esp, 0x1c
jmp case.0x48db7d.36875
push esi
push ecx
push edi
call fcn.00498140
add esp, 0xc
jmp case.0x48db7d.36875
test edi, edi
je case.0x48db7d.36875
mov edx, dword [0x52e838]
test edx, edx
je 0x48e009
test dword [edx + 4], 0x40000000
je 0x48dfe0
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x48e009
test dword [edx + 4], 0x40000000
je 0x48e009
mov eax, dword [edx + 0x1f2c]
test eax, eax
je 0x48e009
push 0x4ef64c
push edi
call eax
mov ecx, eax
mov dword [ebp - 0x61c], ecx
jmp 0x48e01c
push 0x4ef64c
push edi
call fcn.004939c0
mov ecx, eax
mov dword [ebp - 0x61c], eax
add esp, 8
test ecx, ecx
je case.0x48db7d.36875
mov edx, dword [ecx + 0xf0]
test edx, edx
je case.0x48db7d.36875
xor eax, eax
mov dword [ebp - 0x60c], eax
test edx, edx
jle case.0x48db7d.36875
xor edx, edx
mov dword [ebp - 0x610], edx
mov edi, dword [ebp - 0x604]
test edi, edi
js 0x48e069
mov eax, dword [ecx + 0xf4]
cmp dword [edx + eax + 0x3c], edi
mov eax, dword [ebp - 0x60c]
jne 0x48e0bb
mov edi, dword [ecx + 0xf4]
add edi, edx
je 0x48e0b5
xor ecx, ecx
mov dword [ebp - 0x418], ecx
mov eax, dword [edi + 8]
mov eax, dword [ecx + eax]
test eax, eax
je 0x48e0a3
test esi, esi
js 0x48e09e
push 0
push esi
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x418]
add ecx, 4
jmp 0x48e075
mov edx, dword [ebp - 0x610]
mov ecx, dword [ebp - 0x61c]
mov eax, dword [ebp - 0x60c]
mov edi, dword [ebp - 0x604]
inc eax
mov dword [ebp - 0x60c], eax
add edx, 0x48
mov dword [ebp - 0x610], edx
cmp eax, dword [ecx + 0xf0]
jl 0x48e053
mov edi, dword [ebp - 0x620]
jmp case.0x48db7d.36875
push esi
push ecx
push edi
call fcn.004a0770
add esp, 0xc
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
test eax, eax
jne 0x48e165
movzx edx, si
mov edi, 0xffff
test dx, dx
je 0x48e146
mov eax, edx
xor ecx, ecx
cmp dx, di
cmovne ecx, eax
mov edx, dword [ebp - 0x418]
add ecx, dword [edx + 0x34]
mov dword [edx + 0x3c], ecx
jmp 0x48e14c
mov edx, dword [ebp - 0x418]
shr esi, 0x10
test si, si
je 0x48e165
movzx eax, si
xor ecx, ecx
cmp si, di
cmovne ecx, eax
add ecx, dword [edx + 0x38]
mov dword [edx + 0x40], ecx
mov eax, 1
jmp 0x48f1ef
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov esi, eax
test esi, esi
je case.0x48db7d.36875
push edi
call dword [0x595d94]
cmp eax, dword [esi + 0x74]
je 0x48e2e2
inc dword [esi + 0x10c]
nop dword [eax]
xorps xmm0, xmm0
movups xmmword [ebp - 0x42c], xmm0
lea eax, [ebp - 0x42c]
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esi + 4]
sub eax, dword [esi + 0xfc]
add eax, dword [ebp - 0x42c]
mov dword [ebp - 0x41c], eax
mov eax, dword [esi + 8]
sub eax, dword [esi + 0x100]
add eax, dword [ebp - 0x428]
mov dword [ebp - 0x418], eax
mov eax, dword [esi + 0xc]
sub eax, dword [ebp - 0x42c]
sub eax, dword [esi + 0x104]
add eax, dword [ebp - 0x424]
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x108]
sub eax, dword [ebp - 0x428]
add eax, dword [ebp - 0x420]
mov dword [esi + 0x58], eax
push 1
lea eax, [ebp - 0x41c]
push eax
push edi
call dword [0x595d94]
push eax
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [esi + 0x10c]
test eax, eax
jle 0x48e246
dec eax
mov dword [esi + 0x10c], eax
test eax, eax
jg 0x48e1a0
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [0x595d94]
push eax
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov edx, dword [ebp - 0x41c]
mov ecx, dword [ebp - 0x418]
cmp edx, dword [ebp - 0x42c]
jne 0x48e2a7
cmp ecx, dword [ebp - 0x428]
jne 0x48e2a7
mov eax, dword [esi + 0x54]
add eax, edx
cmp eax, dword [ebp - 0x424]
jne 0x48e2a7
mov eax, dword [esi + 0x58]
add eax, ecx
cmp eax, dword [ebp - 0x420]
je case.0x48db7d.36875
xor eax, eax
cmp dword [ebp - 0x604], eax
setne al
lea eax, [eax*2 + 1]
mov dword [esi + 0x44], eax
push 4
push dword [esi + 0x58]
push dword [esi + 0x54]
push ecx
push edx
push 0
push edi
call dword [0x595d70]
mov dword [esi + 0x44], 0
push edi
call dword [sym.imp.USER32.dll_UpdateWindow]
jmp case.0x48db7d.36875
lea eax, [ebp - 0x46c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [esi + 0x24]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [esi + 0x2c]
sub edx, dword [esi + 0x1c]
add edx, dword [esi + 0xc]
mov dword [esi + 0x54], edx
mov ecx, dword [esi + 0x30]
sub ecx, dword [esi + 0x20]
add ecx, dword [esi + 0x10]
mov dword [esi + 0x58], ecx
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x46c]
cmp edx, eax
jne 0x48e33f
mov eax, dword [ebp - 0x460]
sub eax, dword [ebp - 0x468]
cmp ecx, eax
je case.0x48db7d.36875
mov dword [esi + 0x44], 1
push 6
push ecx
push edx
push 0
push 0
jmp 0x48e2c6
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
movzx ecx, si
mov dword [eax + 0x54], ecx
mov ecx, esi
shr ecx, 0x10
mov esi, eax
mov dword [esi + 0x58], ecx
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0
lea eax, [esi + 0x14]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetClientRect]
mov dword [esi + 0x44], 2
push 0x26
push dword [esi + 0x58]
push dword [esi + 0x54]
push 0
push 0
push 0
push edi
call dword [0x595d70]
cmp dword [esi + 0x44], 2
jne 0x48e3db
movzx ecx, word [esi + 0x58]
shl ecx, 0x10
movzx eax, word [esi + 0x54]
or ecx, eax
push ecx
push 0
push 5
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esi + 0x44], 0
lea eax, [esi + 0x34]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
movzx ecx, si
mov dword [eax + 0x54], ecx
mov ecx, esi
shr ecx, 0x10
mov esi, eax
mov dword [esi + 0x58], ecx
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0
lea eax, [esi + 0x14]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetClientRect]
mov dword [esi + 0x44], 2
push 4
push dword [esi + 0x58]
push dword [esi + 0x54]
mov ecx, dword [ebp - 0x604]
mov eax, ecx
shr eax, 0x10
cwde
push eax
movsx eax, cx
push eax
push 0
push edi
call dword [0x595d70]
jmp 0x48e3db
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x610], eax
push edi
call dword [0x595d88]
mov esi, eax
mov dword [ebp - 0x418], esi
test esi, esi
je 0x48e543
mov edi, dword [sym.imp.USER32.dll_RedrawWindow]
push 0xa
lea eax, [ebp - 0x428]
push eax
push esi
call dword [0x595d74]
test eax, eax
je 0x48e512
mov ecx, str.32770
lea eax, [ebp - 0x428]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48e4e3
test dl, dl
je 0x48e4df
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48e4e3
add eax, 2
add ecx, 2
test dl, dl
jne 0x48e4c3
xor eax, eax
jmp 0x48e4e8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48e512
push 0xfffffffffffffff0
push esi
call dword [0x595d8c]
test eax, 0x10000000
je 0x48e524
push 0
push dword [ebp - 0x604]
push 0x901c
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x48e524
cmp dword [ebp - 0x604], 0
je 0x48e524
push 3
push 0
push 0
push esi
call edi
push 2
push esi
call dword [0x595ee0]
mov esi, eax
test esi, esi
jne 0x48e4a4
mov dword [ebp - 0x418], esi
mov edi, dword [ebp - 0x620]
mov eax, dword [ebp - 0x604]
mov ecx, dword [ebp - 0x610]
test eax, eax
je 0x48e5bb
test ecx, ecx
je case.default.0x48ce50
mov eax, dword [ecx + 0x5c]
mov dword [ebp - 0x61c], eax
test eax, eax
je 0x48e5a2
mov edi, eax
mov esi, dword [sym.imp.USER32.dll_RedrawWindow]
push 0xfffffffffffffff0
push dword [edi]
call dword [0x595d8c]
test eax, 0x10000000
je 0x48e58f
mov byte [edi + 0x4f], 1
push 3
push 0
push 0
push dword [edi]
call esi
mov edi, dword [edi + 0x5c]
test edi, edi
jne 0x48e570
mov edi, dword [ebp - 0x620]
mov esi, dword [ebp - 0x418]
push 3
push 0
push 0
push esi
call dword [sym.imp.USER32.dll_RedrawWindow]
mov eax, dword [ebp - 0x604]
mov ecx, dword [ebp - 0x610]
test ecx, ecx
je case.default.0x48ce50
cmp dword [ecx + 0xc0], 0
je case.default.0x48ce50
push 0
test eax, eax
je 0x48e5e9
push 4
push 0x900e
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x48db7d.36875
push 2
push 0x900e
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
test eax, eax
je case.0x48db7d.36875
test esi, esi
je 0x48e61f
cmp dword [esi + 0x55ac], 0
jne 0x48e62c
cmp dword [eax + 0xc0], 0
je case.0x48db7d.36875
push dword [ebp - 0x604]
push esi
push edi
call fcn.004b2c40
add esp, 0xc
jmp case.0x48db7d.36875
push 0x4ef64c
push edi
call fcn.00493b70
add esp, 8
mov dword [ebp - 0x418], eax
test eax, eax
je case.0x48db7d.36875
push esi
push dword [ebp - 0x604]
push dword [ebp + 0xc]
push edi
call fcn.00487050
add esp, 0x10
test eax, eax
jne 0x48f1ef
cmp dword [0x52e888], eax
je 0x48e6eb
mov eax, dword [0x52e838]
cmp dword [eax + 0xe00], 0
jne 0x48e6eb
mov eax, dword [ebp - 0x418]
cmp dword [eax + 0x80], 0
je 0x48e6eb
test esi, esi
je 0x48e6ae
push 0xffffffffffffffec
push esi
call dword [0x595d8c]
test al, 0x10
jne 0x48e6eb
push 1
mov esi, dword [ebp - 0x604]
push esi
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [0x52e838]
cmp dword [eax + 0xdd0], 0
je 0x48e6da
push 0
push dword [eax + 0xdcc]
push esi
call dword [sym.imp.GDI32.dll_SelectPalette]
mov eax, dword [ebp - 0x418]
mov eax, dword [eax + 0x80]
jmp 0x48f1ef
push esi
push dword [ebp - 0x604]
push 0x138
push edi
call fcn.00487050
add esp, 0x10
jmp 0x48f1ef
push 7
push edi
call fcn.0049da40
add esp, 8
mov eax, 1
jmp 0x48f1ef
mov ecx, dword [ebp + 0xc]
cmp ecx, 0x110
jne 0x48f16c
push esi
push eax
push 0x900b
push edi
call fcn.00487050
add esp, 0x10
mov dword [0x52eab8], 1
test edi, edi
je 0x48f160
mov edx, dword [0x52e838]
test edx, edx
je 0x48e7ca
test dword [edx + 4], 0x40000000
je 0x48e7a9
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x48e7ca
test dword [edx + 4], 0x40000000
je 0x48e7ca
mov eax, dword [edx + 0x1f2c]
test eax, eax
je 0x48e7ca
push 0x4ef64c
push edi
call eax
jmp 0x48e7d5
push 0x4ef64c
push edi
call fcn.004939c0
mov dword [ebp - 0x614], eax
add esp, 8
test eax, eax
je 0x48f160
push 0x12c
lea eax, [ebp - 0x1b0]
push eax
push edi
call dword [0x595d80]
lea ecx, [ebp - 0x1b0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x48e802
sub ecx, edx
lea eax, [ecx + 1]
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
mov eax, dword [ebp - 0x614]
push dword [eax]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
mov edx, eax
mov eax, dword [ebp - 0x614]
mov dword [eax], edx
lea esi, [ebp - 0x1b0]
nop
mov cl, byte [esi]
mov byte [edx], cl
lea esi, [esi + 1]
lea edx, [edx + 1]
test cl, cl
jne 0x48e840
test byte [eax + 0xb8], 0x20
mov esi, dword [ebp - 0x608]
je 0x48e998
xorps xmm0, xmm0
movups xmmword [ebp - 0x46c], xmm0
lea eax, [ebp - 0x46c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
xorps xmm0, xmm0
movups xmmword [ebp - 0x42c], xmm0
push edi
call dword [0x595d94]
test eax, eax
je 0x48e897
push edi
call dword [0x595d94]
jmp 0x48e89d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
lea ecx, [ebp - 0x42c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [ebp - 0x464]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x610], edx
mov eax, dword [ebp - 0x460]
sub eax, dword [ebp - 0x468]
mov dword [ebp - 0x628], eax
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x42c]
sub eax, edx
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x42c]
mov ecx, 0
cmovns ecx, eax
mov dword [ebp - 0x44c], ecx
mov eax, dword [ebp - 0x420]
sub eax, dword [ebp - 0x628]
sub eax, dword [ebp - 0x428]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x428]
mov ecx, 0
cmovns ecx, eax
mov dword [ebp - 0x61c], ecx
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x60c], eax
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x610]
add ecx, edx
mov eax, dword [ebp - 0x60c]
cmp ecx, eax
jle 0x48e95b
mov ecx, eax
sub ecx, edx
jmp 0x48e961
mov ecx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x61c]
mov edx, dword [ebp - 0x628]
add eax, edx
cmp eax, dword [ebp - 0x418]
jle 0x48e981
mov eax, dword [ebp - 0x418]
sub eax, edx
jmp 0x48e987
mov eax, dword [ebp - 0x61c]
push 5
push 0
push 0
push eax
push ecx
push 0
push edi
call dword [0x595d70]
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x1b0]
push eax
call fcn.00493be0
add esp, 8
test eax, eax
je 0x48ef33
push 0x12c
lea eax, [ebp - 0x2e0]
push eax
push edi
call dword [0x595d94]
push eax
call dword [0x595d80]
test eax, eax
je 0x48ea56
lea eax, [ebp - 0x474]
push eax
lea eax, [ebp - 0x2e0]
push eax
call fcn.00493be0
add esp, 8
test eax, eax
je 0x48ea56
mov ecx, dword [ebp - 0x440]
cmp dword [ebp - 0x470], ecx
cmovg ecx, dword [ebp - 0x470]
mov dword [ebp - 0x440], ecx
mov ecx, dword [ebp - 0x444]
cmp dword [ebp - 0x474], ecx
cmovg ecx, dword [ebp - 0x474]
mov dword [ebp - 0x444], ecx
mov ecx, dword [ebp - 0x438]
cmp dword [ebp - 0x468], ecx
cmovl ecx, dword [ebp - 0x468]
mov dword [ebp - 0x438], ecx
mov ecx, dword [ebp - 0x43c]
cmp dword [ebp - 0x46c], ecx
cmovl ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x430]
test edx, edx
je 0x48eb14
xor ecx, ecx
mov dword [ebp - 0x44c], ecx
mov eax, dword [ebp - 0x614]
cmp dword [eax + 0xf0], ecx
jle 0x48eb14
mov esi, eax
test ecx, ecx
jne 0x48eafb
mov ecx, dword [esi + 0xf4]
mov eax, dword [ecx + 0x38]
test eax, eax
cmovne edx, eax
mov dword [ebp - 0x430], edx
mov dword [ecx + 0x38], 0
mov dword [esi + 0xc8], 0
mov dword [ebp - 0x420], 0xfffffdd9
mov eax, dword [ecx]
mov dword [ebp - 0x428], eax
mov eax, dword [ecx + 0x3c]
mov dword [ebp - 0x424], eax
push 0
push dword [ebp - 0x430]
push 0x130c
push dword [ecx]
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0x428]
push eax
push 0
push 0x4e
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [ebp - 0x430]
mov ecx, dword [ebp - 0x44c]
inc ecx
mov dword [ebp - 0x44c], ecx
cmp ecx, dword [esi + 0xf0]
jl 0x48ea80
mov esi, dword [ebp - 0x608]
test byte [ebp - 0x434], 1
jne 0x48eddc
cmp dword [ebp - 0x440], 0xffffffff
jne 0x48eb49
cmp dword [ebp - 0x438], 0xffffffff
jne 0x48eb49
cmp dword [ebp - 0x43c], 0xffffffff
jne 0x48eb49
cmp dword [ebp - 0x444], 0xffffffff
je 0x48eddc
xorps xmm0, xmm0
movups xmmword [ebp - 0x46c], xmm0
lea eax, [ebp - 0x46c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x444]
cmp eax, 8
jl 0x48eb83
mov eax, dword [ebp - 0x438]
sub eax, dword [ebp - 0x440]
cmp eax, 8
jge 0x48eb97
lea eax, [ebp - 0x46c]
push eax
lea eax, [ebp - 0x444]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
lea eax, [ebp - 0x444]
push eax
mov eax, dword [ebp - 0x614]
add eax, 0x120
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov ecx, dword [ebp - 0x464]
sub ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x44c], ecx
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x444]
mov edx, dword [ebp - 0x460]
cmp ecx, eax
jg 0x48ec05
mov ecx, edx
sub ecx, dword [ebp - 0x468]
mov eax, dword [ebp - 0x438]
sub eax, dword [ebp - 0x440]
cmp ecx, eax
jg 0x48ebff
mov eax, dword [ebp - 0x614]
cmp dword [eax + 0x8c], 0
jne 0x48ec37
mov ecx, dword [ebp - 0x44c]
cmp byte [ebp - 0x1b0], 0x30
je 0x48ec1c
mov eax, dword [ebp - 0x444]
add eax, ecx
mov dword [ebp - 0x43c], eax
cmp byte [ebp - 0x1af], 0x30
je 0x48ec37
sub edx, dword [ebp - 0x468]
add edx, dword [ebp - 0x440]
mov dword [ebp - 0x438], edx
push 0
lea eax, [ebp - 0x444]
push eax
call dword [0x595e20]
test eax, eax
jne 0x48ed8f
mov dword [ebp - 0x4a8], 0x28
xorps xmm0, xmm0
movups xmmword [ebp - 0x4a4], xmm0
movups xmmword [ebp - 0x494], xmm0
mov dword [ebp - 0x484], eax
lea eax, [ebp - 0x450]
push eax
call dword [0x595ed0]
push 0
push dword [ebp - 0x44c]
push dword [ebp - 0x450]
call dword [sym.imp.USER32.dll_MonitorFromPoint]
test eax, eax
jne 0x48ecb7
mov dword [ebp - 0x494], eax
mov dword [ebp - 0x490], eax
push eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x48c], eax
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
jmp 0x48eccb
lea ecx, [ebp - 0x4a8]
push ecx
push eax
call dword [0x595e6c]
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x60c], eax
mov ecx, dword [ebp - 0x43c]
sub ecx, dword [ebp - 0x444]
mov dword [ebp - 0x44c], ecx
mov eax, dword [ebp - 0x438]
sub eax, dword [ebp - 0x440]
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x48c]
sub eax, ecx
mov ecx, dword [ebp - 0x494]
add eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp ecx, eax
cmovg eax, ecx
mov dword [ebp - 0x618], eax
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x60c]
sub eax, dword [ebp - 0x610]
mov ecx, dword [ebp - 0x490]
add eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp ecx, eax
jg 0x48ed4d
mov eax, dword [ebp - 0x60c]
sub eax, dword [ebp - 0x610]
add eax, ecx
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
mov dword [ebp - 0x440], ecx
mov eax, dword [ebp - 0x618]
add eax, dword [ebp - 0x44c]
cmp dword [ebp - 0x48c], eax
cmovl eax, dword [ebp - 0x48c]
mov dword [ebp - 0x43c], eax
mov edx, dword [ebp - 0x610]
add edx, ecx
cmp dword [ebp - 0x60c], edx
cmovl edx, dword [ebp - 0x60c]
mov dword [ebp - 0x438], edx
jmp 0x48edb3
mov edx, dword [ebp - 0x438]
mov eax, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x440]
mov esi, dword [ebp - 0x444]
mov dword [ebp - 0x618], esi
mov esi, dword [ebp - 0x608]
push 4
sub edx, ecx
push edx
mov edx, dword [ebp - 0x618]
sub eax, edx
push eax
push ecx
push edx
push 0
push edi
call dword [0x595d70]
push 0xffffffffffffffff
push edi
call fcn.0049dea0
add esp, 8
jmp 0x48f112
push 0xfffffffffffffff0
push edi
call dword [0x595d8c]
mov dword [ebp - 0x44c], eax
push 0x10
lea eax, [ebp - 0x444]
push eax
call fcn.00481040
add esp, 8
test eax, eax
jne 0x48ee23
mov edx, dword [ebp - 0x440]
cmp edx, 0xffffffff
jne 0x48ee48
cmp dword [ebp - 0x438], edx
jne 0x48ee48
cmp dword [ebp - 0x43c], edx
jne 0x48ee48
cmp dword [ebp - 0x444], edx
jne 0x48ee48
xorps xmm0, xmm0
movups xmmword [ebp - 0x444], xmm0
lea eax, [ebp - 0x444]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
or dword [ebp - 0x434], 1
mov edx, dword [ebp - 0x440]
test dword [ebp - 0x44c], 0x10000000
je 0x48ee87
push 4
mov eax, dword [ebp - 0x438]
sub eax, edx
push eax
mov eax, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x444]
sub eax, ecx
push eax
push edx
push ecx
push 0
push edi
call dword [0x595d70]
push 3
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x48ef0a
push 0
lea eax, [ebp - 0x46c]
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
push 0x20
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
call edi
mov esi, eax
push 0x21
call edi
mov ecx, eax
sub dword [ebp - 0x46c], esi
mov edi, dword [ebp - 0x468]
sub edi, ecx
mov dword [ebp - 0x468], edi
mov edx, dword [ebp - 0x464]
add edx, esi
mov dword [ebp - 0x464], edx
mov eax, dword [ebp - 0x460]
add eax, ecx
mov dword [ebp - 0x460], eax
push 4
sub eax, edi
push eax
mov eax, dword [ebp - 0x46c]
sub edx, eax
push edx
push edi
push eax
push 0
mov edi, dword [ebp - 0x620]
push edi
call dword [0x595d70]
push 0
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
mov esi, dword [ebp - 0x608]
push 3
lea eax, [ebp - 0x444]
push eax
mov eax, dword [ebp - 0x614]
push dword [eax]
call fcn.004a07e0
add esp, 0xc
push 0xffffffffffffffff
push edi
call fcn.0049dea0
add esp, 8
jmp 0x48f112
mov dword [ebp - 0x618], 0
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x624], 0
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x480], 0x24
lea eax, [ebp - 0x480]
push eax
push 5
call dword [sym.imp.SHELL32.dll_SHAppBarMessage]
mov ecx, dword [ebp - 0x46c]
mov edx, dword [ebp - 0x464]
mov eax, dword [ebp - 0x60c]
test ecx, ecx
jne 0x48efc2
cmp edx, eax
jge 0x48efa1
lea eax, [edx + 1]
mov dword [ebp - 0x624], eax
jmp 0x48efe6
test ecx, ecx
jne 0x48efc2
mov esi, dword [ebp - 0x468]
cmp esi, dword [ebp - 0x610]
jge 0x48efbe
mov eax, esi
inc eax
mov dword [ebp - 0x618], eax
jmp 0x48efe6
test ecx, ecx
je 0x48efd5
cmp edx, eax
jne 0x48efd1
lea eax, [ecx - 1]
mov dword [ebp - 0x60c], eax
jmp 0x48efe6
test ecx, ecx
jne 0x48efe6
mov eax, dword [ebp - 0x470]
test eax, eax
jle 0x48efe6
dec eax
mov dword [ebp - 0x610], eax
lea eax, [ebp - 0x42c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x42c]
push eax
lea eax, [ebp - 0x458]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x610]
cmp eax, ecx
jle 0x48f030
mov dword [ebp - 0x450], ecx
mov edx, ecx
sub edx, eax
add edx, dword [ebp - 0x42c]
mov dword [ebp - 0x458], edx
jmp 0x48f03c
mov ecx, dword [ebp - 0x450]
mov edx, dword [ebp - 0x458]
mov eax, dword [ebp - 0x60c]
cmp dword [ebp - 0x420], eax
jle 0x48f066
mov dword [ebp - 0x44c], eax
mov esi, eax
sub esi, dword [ebp - 0x420]
add esi, dword [ebp - 0x428]
mov dword [ebp - 0x454], esi
jmp 0x48f072
mov eax, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x454]
mov dword [ebp - 0x60c], esi
mov edi, dword [ebp - 0x618]
cmp dword [ebp - 0x42c], edi
mov edi, dword [ebp - 0x620]
jge 0x48f0ac
mov ecx, dword [ebp - 0x618]
mov edx, ecx
mov dword [ebp - 0x458], edx
sub ecx, dword [ebp - 0x42c]
add ecx, dword [ebp - 0x424]
mov dword [ebp - 0x450], ecx
mov esi, dword [ebp - 0x624]
cmp dword [ebp - 0x428], esi
jge 0x48f0da
mov eax, esi
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x454], eax
sub eax, dword [ebp - 0x428]
add eax, dword [ebp - 0x420]
mov dword [ebp - 0x44c], eax
mov esi, dword [ebp - 0x428]
cmp dword [ebp - 0x60c], esi
mov esi, dword [ebp - 0x608]
jne 0x48f0f6
cmp edx, dword [ebp - 0x42c]
je 0x48f112
push 0x24
sub eax, dword [ebp - 0x60c]
push eax
sub ecx, edx
push ecx
push dword [ebp - 0x60c]
push edx
push 0
push edi
call dword [0x595d70]
mov eax, dword [0x52e840]
test eax, eax
je 0x48f13e
push 0
push 0
push 0
lea ecx, [ebp - 0x1b0]
push ecx
call eax
add esp, 0x10
test eax, eax
je 0x48f13e
cmp byte [eax], 0
je 0x48f13e
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
push 0
push 0x900c
push edi
call fcn.00487050
add esp, 0x10
push 0
push 0
push 0x900c
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
mov dword [0x52eab8], 0
jmp 0x48f17a
cmp ecx, 2
jne 0x48f17a
push edi
call fcn.0049cf10
add esp, 4
test edi, edi
je 0x48f1e9
mov edx, dword [0x52e838]
test edx, edx
je 0x48f1c9
test dword [edx + 4], 0x40000000
je 0x48f1a8
mov eax, dword [edx + 0x1f0c]
mov ecx, dword [0x52e83c]
test eax, eax
cmovne ecx, eax
mov dword [0x52e83c], ecx
test edx, edx
je 0x48f1c9
test dword [edx + 4], 0x40000000
je 0x48f1c9
mov eax, dword [edx + 0x1f2c]
test eax, eax
je 0x48f1c9
push str.PC_
push edi
call eax
jmp 0x48f1d4
push str.PC_
push edi
call fcn.004939c0
add esp, 8
test eax, eax
je 0x48f1e9
push esi
push dword [ebp - 0x604]
mov ecx, dword [ebp + 0xc]
push ecx
push edi
call eax
mov eax, dword [ebp - 0x62c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.004e2538
mov esp, ebp
pop ebp
ret 0x10