Function at 0x4372d0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d0
push ebx
push edi
push esi
lea eax, [ebp - 0xb8]
push eax
mov eax, str.BORDERWIDTH
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xbc]
mov dword [eax], 0
lea eax, [ebp - 0xc0]
push eax
xor eax, eax
push eax
xor eax, eax
push eax
xor eax, eax
push eax
xor eax, eax
push eax
call dword [sym.imp.GDI32.DLL_CreateRectRgn]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetWindowRgn]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x3c]
push eax
mov eax, str.HOTBMP
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x38]
push eax
mov eax, str.NORBMP
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x34]
push eax
mov eax, str.SELBMP
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x18
push dword [eax]
call dword [sym.imp.GDI32.DLL_CreateCompatibleDC]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetParent]
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, dword [ebp + 0xc]
add eax, 4
mov ebx, 0xffff
push eax
push ebx
xor ecx, ecx
push ecx
xor ecx, ecx
push ecx
mov ecx, 0x400
push ecx
lea ecx, [ebp - 0xc]
push dword [ecx]
call dword [sym.imp.USER32.DLL_SendMessageA]
mov esi, eax
pop ebx
pop eax
mov ecx, esi
mov edx, ecx
mov esi, ebx
and edx, esi
mov ebx, edx
mov esi, ebx
mov edi, dword [eax]
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x437436
mov eax, dword [ebp + 0xc]
add eax, 0x10
push eax
mov eax, 0x20
mov ebx, dword [ebp + 0xc]
add ebx, 0x10
mov edx, dword [ebx]
mov esi, eax
or edx, esi
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x18
mov edx, eax
pop esi
mov edi, dword [edx]
mov dword [esi], edi
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x10
mov edx, eax
pop esi
mov edi, dword [edx]
mov dword [esi], edi
lea eax, [ebp - 0x20]
push eax
mov eax, 5
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x1c]
push eax
mov eax, 4
mov ebx, 1
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x1c
mov edx, eax
pop esi
push 0x10
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_RtlMoveMemory]
lea eax, [ebp - 0x7c]
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x1c
mov edx, eax
pop esi
push 0x10
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_RtlMoveMemory]
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x7c]
mov edx, eax
pop esi
push 0x10
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_RtlMoveMemory]
lea eax, [ebp - 0x8c]
push eax
mov eax, 4
lea ebx, [ebp - 0x8c]
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x8c]
add eax, 8
push eax
mov eax, 4
lea ebx, [ebp - 0x8c]
add ebx, 8
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x8c]
add eax, 4
push eax
mov eax, 4
lea ebx, [ebp - 0x8c]
add ebx, 4
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x8c]
add eax, 0xc
push eax
mov eax, 4
lea ebx, [ebp - 0x8c]
add ebx, 0xc
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 0xff
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetWindowTextA]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x6c]
mov edx, eax
pop esi
push 0x10
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_RtlMoveMemory]
mov eax, 0x2000
mov ebx, 0x2000
push eax
push ebx
mov ecx, 0xfffffff0
push ecx
lea ecx, [ebp + 8]
push dword [ecx]
call dword [sym.imp.USER32.DLL_GetWindowLongA]
mov esi, eax
pop ebx
pop eax
mov ecx, esi
mov edx, ecx
mov esi, ebx
and edx, esi
mov ebx, edx
mov esi, ebx
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x4376aa
lea eax, [ebp - 0x5c]
push eax
mov eax, 2
push eax
mov ebx, 0x2d
push ebx
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
mov esi, eax
pop eax
mov ebx, esi
imul eax, ebx
lea ebx, [ebp - 0x5c]
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 8
push eax
mov eax, 2
push eax
mov ebx, 0x2d
push ebx
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
mov esi, eax
pop eax
mov ebx, esi
imul eax, ebx
lea ebx, [ebp - 0x5c]
add ebx, 8
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 4
push eax
mov eax, 2
push eax
mov ebx, 0x2e
push ebx
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
mov esi, eax
pop eax
mov ebx, esi
imul eax, ebx
lea ebx, [ebp - 0x5c]
add ebx, 4
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 0xc
push eax
mov eax, 2
push eax
mov ebx, 0x2e
push ebx
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
mov esi, eax
pop eax
mov ebx, esi
imul eax, ebx
lea ebx, [ebp - 0x5c]
add ebx, 0xc
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 1
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
test eax, eax
je 0x437737
lea eax, [ebp - 0x5c]
push eax
mov eax, 1
lea ebx, [ebp - 0x5c]
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 8
push eax
mov eax, 1
lea ebx, [ebp - 0x5c]
add ebx, 8
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 4
push eax
mov eax, 1
lea ebx, [ebp - 0x5c]
add ebx, 4
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x5c]
add eax, 0xc
push eax
mov eax, 1
lea ebx, [ebp - 0x5c]
add ebx, 0xc
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 0x10
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
mov ebx, 0x20
lea ecx, [ebp - 0x24]
mov edx, dword [ecx]
mov esi, ebx
and edx, esi
mov ebx, edx
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
test eax, eax
je 0x437767
lea eax, [ebp - 8]
push eax
mov eax, str.BGRND
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, str.DOHOT
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov esi, eax
xor edx, edx
cmp esi, 0
je 0x4377e9
xor ebx, ebx
mov ecx, 4
push eax
lea eax, [ebp - 0x24]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
mov edx, dword [esp]
mov edx, dword [edx]
mov esi, ecx
and edx, esi
add esp, 4
mov ecx, edx
mov esi, ecx
mov edi, ebx
cmp esi, edi
sete dl
and edx, 0xff
mov ebx, edx
mov edi, ebx
xor edx, edx
cmp edi, 0
setne dl
mov eax, edx
test eax, eax
je 0x437836
mov eax, str.HBRUSH
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
test eax, eax
je 0x43782a
lea eax, [ebp - 8]
push eax
mov eax, str.HTCLR
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xbc]
mov dword [eax], 1
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
setne dl
movzx eax, dl
test eax, eax
je 0x437b7e
lea eax, [ebp - 8]
push dword [eax]
call dword [sym.imp.GDI32.DLL_CreateSolidBrush]
mov edx, eax
lea eax, [ebp - 0x1c8]
mov esi, eax
mov dword [esi], edx
lea eax, [ebp - 0xbc]
cmp dword [eax], 0
je 0x437a8d
lea eax, [ebp - 0x3c]
cmp dword [eax], 0
je 0x43793f
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x3c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 4
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x1c
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
mov eax, 0
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
jmp 0x437a88
lea eax, [ebp - 0x38]
cmp dword [eax], 0
je 0x437a6d
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 4
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x1c
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
mov eax, 0
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
push eax
mov ebx, str.HBRUSH
mov edx, ebx
push edx
lea ebx, [ebp + 8]
push dword [ebx]
call dword [sym.imp.USER32.DLL_GetPropA]
mov esi, eax
pop eax
mov ebx, esi
test ebx, ebx
je 0x437a68
lea eax, [ebp - 0x2c]
push eax
mov eax, 0xf
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetROP2]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x1c8]
push dword [eax]
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_FillRgn]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetROP2]
jmp 0x437a88
lea eax, [ebp - 0x1c8]
push dword [eax]
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_FillRgn]
jmp 0x437b70
lea eax, [ebp - 0x38]
cmp dword [eax], 0
je 0x437b55
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 4
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x1c
mov ebx, dword [ebp + 0xc]
add ebx, 0x1c
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
mov eax, 0
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
jmp 0x437b70
lea eax, [ebp - 0x1c8]
push dword [eax]
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_FillRgn]
lea eax, [ebp - 0x1c8]
push dword [eax]
call dword [sym.imp.GDI32.DLL_DeleteObject]
lea eax, [ebp - 0xb8]
cmp dword [eax], 0
je 0x437eb1
mov eax, 0x8000
mov ebx, 0x8000
push eax
push ebx
mov ecx, 0xfffffff0
push ecx
lea ecx, [ebp + 8]
push dword [ecx]
call dword [sym.imp.USER32.DLL_GetWindowLongA]
mov esi, eax
pop ebx
pop eax
mov ecx, esi
mov edx, ecx
mov esi, ebx
and edx, esi
mov ebx, edx
mov esi, ebx
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x437dea
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
setne dl
movzx eax, dl
test eax, eax
je 0x437c8b
lea eax, [ebp - 0x1c8]
push eax
mov eax, 0x15
push eax
call dword [sym.imp.USER32.DLL_GetSysColor]
push eax
call dword [sym.imp.GDI32.DLL_CreateSolidBrush]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x18]
push eax
mov eax, 5
push eax
call dword [sym.imp.GDI32.DLL_GetStockObject]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xb8]
push dword [eax]
lea eax, [ebp - 0xb8]
push dword [eax]
lea eax, [ebp - 0x1c8]
push dword [eax]
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_FrameRgn]
lea eax, [ebp - 0x18]
push eax
mov eax, 5
push eax
call dword [sym.imp.GDI32.DLL_GetStockObject]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x1c8]
push dword [eax]
call dword [sym.imp.GDI32.DLL_DeleteObject]
jmp 0x437d54
lea eax, [ebp - 0x1d0]
push eax
mov eax, 0x15
push eax
call dword [sym.imp.USER32.DLL_GetSysColor]
push eax
lea eax, [ebp - 0xb8]
push dword [eax]
xor eax, eax
push eax
call dword [sym.imp.GDI32.DLL_CreatePen]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x18]
push eax
mov eax, 5
push eax
call dword [sym.imp.GDI32.DLL_GetStockObject]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x1cc]
push eax
lea eax, [ebp - 0x1d0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x7c]
add eax, 0xc
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 8
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_Rectangle]
lea eax, [ebp - 0x1cc]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
lea eax, [ebp - 0x18]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
lea eax, [ebp - 0x1d0]
push dword [eax]
call dword [sym.imp.GDI32.DLL_DeleteObject]
lea eax, [ebp - 0x7c]
add eax, 4
push eax
mov eax, 1
xor edx, edx
sub edx, eax
mov eax, edx
lea ebx, [ebp - 0x7c]
add ebx, 4
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x7c]
add eax, 0xc
push eax
mov eax, 1
xor edx, edx
sub edx, eax
mov eax, edx
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x7c]
push eax
mov eax, 1
xor edx, edx
sub edx, eax
mov eax, edx
lea ebx, [ebp - 0x7c]
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x7c]
add eax, 8
push eax
mov eax, 1
xor edx, edx
sub edx, eax
mov eax, edx
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
jmp 0x437eb1
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
setne dl
movzx eax, dl
test eax, eax
je 0x437e37
lea eax, [ebp - 0xb8]
push dword [eax]
mov eax, 1
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
push eax
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
lea eax, [ebp + 8]
push dword [eax]
call fcn.00438c00
jmp 0x437eb1
mov eax, 1
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
test eax, eax
je 0x437e89
mov eax, 0x2000
mov ebx, 0x200
mov ecx, 0x10
mov edx, ecx
mov esi, ebx
or edx, esi
mov ebx, edx
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
push eax
mov eax, 4
push eax
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawFrameControl]
jmp 0x437eb1
mov eax, 0x2000
mov ebx, 0x10
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
push eax
mov eax, 4
push eax
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawFrameControl]
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
sete dl
movzx eax, dl
test eax, eax
je 0x438624
lea eax, [ebp - 0xbc]
cmp dword [eax], 0
je 0x4383d1
lea eax, [ebp - 0x3c]
cmp dword [eax], 0
je 0x4380e1
lea eax, [ebp - 0xb4]
mov edx, eax
push edx
mov eax, 0x18
push eax
lea eax, [ebp - 0x3c]
push dword [eax]
call dword [sym.imp.GDI32.DLL_GetObjectA]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x3c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xb4]
add eax, 4
lea ebx, [ebp - 0x7c]
lea ecx, [ebp - 0x7c]
add ecx, 8
mov ecx, dword [ecx]
mov ebx, dword [ebx]
sub ecx, ebx
mov ebx, ecx
cmp ebx, dword [eax]
setne dl
movzx eax, dl
mov esi, eax
cmp esi, 0
je 0x437f5c
mov edx, 1
jmp 0x437fc5
lea ebx, [ebp - 0xb4]
add ebx, 8
lea ecx, [ebp - 0x7c]
add ecx, 4
push eax
lea eax, [ebp - 0x7c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
add dword [esp], 0xc
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
sub dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ecx
mov edi, dword [ebx]
cmp esi, edi
setne dl
and edx, 0xff
mov ebx, edx
mov edi, ebx
xor edx, edx
cmp edi, 0
setne dl
mov eax, edx
test eax, eax
je 0x438072
mov eax, 4
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetStretchBltMode]
mov eax, 0
mov edx, eax
push edx
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetBrushOrgEx]
mov eax, 0xcc0020
push eax
lea eax, [ebp - 0xb4]
add eax, 8
push dword [eax]
lea eax, [ebp - 0xb4]
add eax, 4
push dword [eax]
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_StretchBlt]
jmp 0x4380cc
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
jmp 0x4383cc
lea eax, [ebp - 0x38]
cmp dword [eax], 0
je 0x43837f
lea eax, [ebp - 0xb4]
mov edx, eax
push edx
mov eax, 0x18
push eax
lea eax, [ebp - 0x3c]
push dword [eax]
call dword [sym.imp.GDI32.DLL_GetObjectA]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xb4]
add eax, 4
lea ebx, [ebp - 0x7c]
lea ecx, [ebp - 0x7c]
add ecx, 8
mov ecx, dword [ecx]
mov ebx, dword [ebx]
sub ecx, ebx
mov ebx, ecx
cmp ebx, dword [eax]
setne dl
movzx eax, dl
mov esi, eax
cmp esi, 0
je 0x438162
mov edx, 1
jmp 0x4381cb
lea ebx, [ebp - 0xb4]
add ebx, 8
lea ecx, [ebp - 0x7c]
add ecx, 4
push eax
lea eax, [ebp - 0x7c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
add dword [esp], 0xc
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
sub dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ecx
mov edi, dword [ebx]
cmp esi, edi
setne dl
and edx, 0xff
mov ebx, edx
mov edi, ebx
xor edx, edx
cmp edi, 0
setne dl
mov eax, edx
test eax, eax
je 0x438278
mov eax, 4
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetStretchBltMode]
mov eax, 0
mov edx, eax
push edx
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetBrushOrgEx]
mov eax, 0xcc0020
push eax
lea eax, [ebp - 0xb4]
add eax, 8
push dword [eax]
lea eax, [ebp - 0xb4]
add eax, 4
push dword [eax]
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_StretchBlt]
jmp 0x4382d2
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
push eax
mov ebx, str.HBRUSH
mov edx, ebx
push edx
lea ebx, [ebp + 8]
push dword [ebx]
call dword [sym.imp.USER32.DLL_GetPropA]
mov esi, eax
pop eax
mov ebx, esi
test ebx, ebx
je 0x43837a
lea eax, [ebp - 0x2c]
push eax
mov eax, 0xf
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetROP2]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 8]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call fcn.00417720
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetROP2]
jmp 0x4383cc
lea eax, [ebp - 8]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call fcn.00417720
jmp 0x438624
lea eax, [ebp - 0x38]
cmp dword [eax], 0
je 0x4385d7
lea eax, [ebp - 0xb4]
mov edx, eax
push edx
mov eax, 0x18
push eax
lea eax, [ebp - 0x3c]
push dword [eax]
call dword [sym.imp.GDI32.DLL_GetObjectA]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0xb4]
add eax, 4
lea ebx, [ebp - 0x7c]
lea ecx, [ebp - 0x7c]
add ecx, 8
mov ecx, dword [ecx]
mov ebx, dword [ebx]
sub ecx, ebx
mov ebx, ecx
cmp ebx, dword [eax]
setne dl
movzx eax, dl
mov esi, eax
cmp esi, 0
je 0x438452
mov edx, 1
jmp 0x4384bb
lea ebx, [ebp - 0xb4]
add ebx, 8
lea ecx, [ebp - 0x7c]
add ecx, 4
push eax
lea eax, [ebp - 0x7c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
add dword [esp], 0xc
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
sub dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ecx
mov edi, dword [ebx]
cmp esi, edi
setne dl
and edx, 0xff
mov ebx, edx
mov edi, ebx
xor edx, edx
cmp edi, 0
setne dl
mov eax, edx
test eax, eax
je 0x438568
mov eax, 4
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetStretchBltMode]
mov eax, 0
mov edx, eax
push edx
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetBrushOrgEx]
mov eax, 0xcc0020
push eax
lea eax, [ebp - 0xb4]
add eax, 8
push dword [eax]
lea eax, [ebp - 0xb4]
add eax, 4
push dword [eax]
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_StretchBlt]
jmp 0x4385c2
mov eax, 0xcc0020
push eax
xor eax, eax
push eax
xor eax, eax
push eax
lea eax, [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_BitBlt]
lea eax, [ebp - 0x2c]
push dword [eax]
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
jmp 0x438624
lea eax, [ebp - 8]
push dword [eax]
lea eax, [ebp - 0x7c]
add eax, 4
lea ebx, [ebp - 0x7c]
add ebx, 0xc
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
lea ebx, [ebp - 0x7c]
add ebx, 8
mov ebx, dword [ebx]
mov eax, dword [eax]
sub ebx, eax
mov eax, ebx
push eax
lea eax, [ebp - 0x7c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x7c]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call fcn.00417720
mov eax, 0x10
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
mov ebx, 0x20
lea ecx, [ebp - 0x24]
mov edx, dword [ecx]
mov esi, ebx
and edx, esi
mov ebx, edx
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
test eax, eax
je 0x4386df
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
sete dl
movzx eax, dl
test eax, eax
je 0x4386df
lea eax, [ebp - 0x18]
push eax
mov eax, 5
push eax
call dword [sym.imp.GDI32.DLL_GetStockObject]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 0xc
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 8
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
add eax, 4
push dword [eax]
mov eax, dword [ebp + 0xc]
add eax, 0x1c
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_Rectangle]
lea eax, [ebp - 0x18]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectObject]
xor eax, eax
lea ebx, [ebp - 0x1c4]
mov edx, ebx
push eax
push edx
call fcn.004194b7
mov edx, eax
pop eax
mov ebx, edx
cmp ebx, eax
setne dl
movzx eax, dl
test eax, eax
je 0x438bbe
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
setne dl
movzx eax, dl
test eax, eax
je 0x438730
lea eax, [ebp - 0xc0]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
lea eax, [ebp - 0x10]
push eax
mov eax, 1
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetBkMode]
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 0x2000
mov ebx, 0x2000
push eax
push ebx
mov ecx, 0xfffffff0
push ecx
lea ecx, [ebp + 8]
push dword [ecx]
call dword [sym.imp.USER32.DLL_GetWindowLongA]
mov esi, eax
pop ebx
pop eax
mov ecx, esi
mov edx, ecx
mov esi, ebx
and edx, esi
mov ebx, edx
mov esi, ebx
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x438899
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x5c]
mov edx, eax
pop esi
push 0x10
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_RtlMoveMemory]
lea eax, [ebp - 0x1c]
push eax
mov eax, 0x10
lea ebx, [ebp - 0x1c]
mov edx, dword [ebx]
mov esi, eax
or edx, esi
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 0x400
lea ebx, [ebp - 0x1c]
mov edx, dword [ebx]
mov esi, eax
or edx, esi
mov eax, edx
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
call fcn.004194b7
mov edx, eax
mov eax, edx
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawTextA]
lea eax, [ebp - 0x5c]
add eax, 4
push eax
mov eax, 2
lea ebx, [ebp - 0x4c]
add ebx, 4
lea ecx, [ebp - 0x4c]
add ecx, 0xc
mov ecx, dword [ecx]
mov ebx, dword [ebx]
sub ecx, ebx
mov ebx, ecx
mov esi, eax
mov edi, ebx
mov eax, edi
cdq
idiv esi
mov ebx, 2
lea ecx, [ebp - 0x5c]
add ecx, 4
push eax
lea eax, [ebp - 0x5c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
add dword [esp], 0xc
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
sub dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ebx
mov edi, ecx
push eax
mov eax, edi
cdq
idiv esi
mov edx, eax
pop eax
mov ebx, edx
sub ebx, eax
mov eax, ebx
lea ebx, [ebp - 0x5c]
add ebx, 4
mov ebx, dword [ebx]
add eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
jmp 0x4388b2
lea eax, [ebp - 0x1c]
push eax
mov eax, 0x20
lea ebx, [ebp - 0x1c]
mov edx, dword [ebx]
mov esi, eax
or edx, esi
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
call fcn.004194b7
mov edx, eax
mov eax, edx
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_GetTextExtentPoint32A]
lea eax, [ebp - 0x9c]
push eax
mov eax, 2
lea ebx, [ebp - 0x94]
mov esi, eax
mov edi, dword [ebx]
mov eax, edi
cdq
idiv esi
mov ebx, 2
lea ecx, [ebp - 0x5c]
add ecx, 8
push eax
lea eax, [ebp - 0x5c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
add dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ebx
mov edi, ecx
push eax
mov eax, edi
cdq
idiv esi
mov edx, eax
pop eax
mov ebx, edx
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x9c]
add eax, 4
push eax
mov eax, 2
lea ebx, [ebp - 0x94]
add ebx, 4
mov esi, eax
mov edi, dword [ebx]
mov eax, edi
cdq
idiv esi
mov ebx, 2
lea ecx, [ebp - 0x5c]
add ecx, 0xc
push eax
lea eax, [ebp - 0x5c]
xor eax, dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
add dword [esp], 4
mov edx, dword [esp]
add esp, 4
push edx
mov esi, dword [esp]
mov esi, dword [esi]
mov dword [esp], esi
mov ecx, dword [ecx]
add dword [esp], ecx
mov edx, dword [esp]
add esp, 4
mov ecx, edx
mov esi, ebx
mov edi, ecx
push eax
mov eax, edi
cdq
idiv esi
mov edx, eax
pop eax
mov ebx, edx
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 4
lea ebx, [ebp - 0x24]
mov edx, dword [ebx]
mov esi, eax
and edx, esi
mov eax, edx
test eax, eax
je 0x438b1d
lea eax, [ebp - 0x9c]
add eax, 4
push eax
mov eax, 1
lea ebx, [ebp - 0x9c]
add ebx, 4
mov ebx, dword [ebx]
sub ebx, eax
mov eax, ebx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x14]
push eax
mov eax, 0x11
push eax
call dword [sym.imp.USER32.DLL_GetSysColor]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetTextColor]
mov edx, eax
pop esi
mov dword [esi], edx
mov eax, 0x2000
mov ebx, 0x2000
push eax
push ebx
mov ecx, 0xfffffff0
push ecx
lea ecx, [ebp + 8]
push dword [ecx]
call dword [sym.imp.USER32.DLL_GetWindowLongA]
mov esi, eax
pop ebx
pop eax
mov ecx, esi
mov edx, ecx
mov esi, ebx
and edx, esi
mov ebx, edx
mov esi, ebx
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x438aac
lea eax, [ebp - 0x1c]
push dword [eax]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
call fcn.004194b7
mov edx, eax
mov eax, edx
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawTextA]
jmp 0x438b18
mov eax, 0x20
mov ebx, 1
mov edx, ebx
mov esi, eax
or edx, esi
mov eax, edx
push eax
lea eax, [ebp - 0x94]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x94]
push dword [eax]
lea eax, [ebp - 0x9c]
add eax, 4
push dword [eax]
lea eax, [ebp - 0x9c]
push dword [eax]
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
call fcn.004194b7
mov edx, eax
mov eax, edx
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
xor eax, eax
mov edx, eax
push edx
xor eax, eax
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawStateA]
jmp 0x438b75
lea eax, [ebp - 0x14]
push eax
mov eax, str.FGRND
mov edx, eax
push edx
lea eax, [ebp + 8]
push dword [eax]
call dword [sym.imp.USER32.DLL_GetPropA]
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetTextColor]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x1c]
push dword [eax]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
call fcn.004194b7
mov edx, eax
mov eax, edx
push eax
lea eax, [ebp - 0x1c4]
mov edx, eax
push edx
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.USER32.DLL_DrawTextA]
lea eax, [ebp - 0x10]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetBkMode]
lea eax, [ebp - 0x14]
push dword [eax]
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SetTextColor]
xor eax, eax
lea ebx, [ebp - 0xc4]
cmp dword [ebx], eax
setne dl
movzx eax, dl
test eax, eax
je 0x438bbe
mov eax, 0
push eax
lea eax, [ebp - 0x28]
push dword [eax]
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
lea eax, [ebp - 0xc0]
push dword [eax]
call dword [sym.imp.GDI32.DLL_DeleteObject]
lea eax, [ebp - 0x30]
cmp dword [eax], 0
je 0x438be6
lea eax, [ebp - 0x30]
push dword [eax]
call dword [sym.imp.GDI32.DLL_DeleteDC]
mov eax, 0
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret 8