Function at 0x40ca30
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x238
mov eax, dword [0x5811a8]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push ebx
mov esi, ecx
mov dword [ebp - 0x238], ebx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x40ca6f
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004c77a6
mov esp, ebp
pop ebp
ret 8
mov dword [esi + 0x74], ebx
mov ecx, 0x585ab8
mov ebx, dword [ebp + 0xc]
push esi
mov dword [esi + 0x94], ebx
call fcn.00454d20
push 0x7f00
push 0
mov dword [esi + 0x70], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [esi + 0xe8], eax
mov eax, dword [esi + 0x94]
test eax, 0x100
je 0x40caf9
push dword [esi + 0x70]
push 0x573694
push 0
push 0
push 0
push 0
call fcn.00453350
push 4
push eax
mov dword [esi + 0xb4], eax
call fcn.004539f0
push 0
push dword [esi + 0xb4]
call fcn.00429e30
push 0
push dword [esi + 0xb4]
call fcn.00432af0
push 0
push dword [esi + 0xb4]
call fcn.00429e00
mov eax, dword [esi + 0x94]
test eax, 0x200
je 0x40cb50
push dword [esi + 0x70]
push 0x573694
push 0
push 0
push 0
push 0
call fcn.00453350
push 5
push eax
mov dword [esi + 0xb8], eax
call fcn.004539f0
push 0
push dword [esi + 0xb8]
call fcn.00429e30
push 0
push dword [esi + 0xb8]
call fcn.00432af0
push 0
push dword [esi + 0xb8]
call fcn.00429e00
mov eax, dword [esi + 0x94]
test eax, 0x400
je 0x40cba7
push dword [esi + 0x70]
push 0x573694
push 0
push 0
push 0
push 0
call fcn.00453350
push 3
push eax
mov dword [esi + 0xbc], eax
call fcn.004539f0
push 0
push dword [esi + 0xbc]
call fcn.00429e30
push 0
push dword [esi + 0xbc]
call fcn.00432af0
push 0
push dword [esi + 0xbc]
call fcn.00429e00
mov eax, dword [esi + 0x94]
test al, al
jns 0x40cc02
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.004d3200
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea ecx, [ebp - 0x20c]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40cbe0
sub ecx, edx
lea eax, [ebp - 0x20c]
sar ecx, 1
push ecx
push eax
lea ecx, [esi + 0x9c]
call fcn.0040282f
mov edx, ebx
and edx, 1
test bl, 2
je 0x40cc1f
mov eax, 8
test edx, edx
mov ecx, 0x1e
mov edi, eax
cmove ecx, edi
jmp 0x40cc31
test edx, edx
je 0x40cc2d
mov eax, 8
lea ecx, [eax + 0x16]
jmp 0x40cc31
xor eax, eax
xor ecx, ecx
push eax
push eax
push ecx
push eax
mov ecx, esi
call fcn.00415ac0
test bl, 0x20
je 0x40cc4b
mov dword [esi + 0x104], 1
mov eax, ebx
shr eax, 3
and eax, 1
mov dword [esi + 0xf4], eax
mov eax, ebx
push str.CWindowUI::OnWndProc
sub esp, 0x10
shr eax, 4
and eax, 1
mov dword [esi + 0xf8], eax
mov eax, esp
mov dword [ebp - 0x21c], 0x414d10
push esi
push 0
push 0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push 0x7002
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b2c0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414510
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnDrawWindow
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0xf
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b680
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 0x2c
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40cd5b
push str.CWindowUI::OnDrawWindowEnd
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40cd5d
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40cd98
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__struct_HDRAW_____int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CDataObject.virtual_20
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40cd9a
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 0x7013
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40cde9
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40cde7
call fcn.00408df3
jmp 0x40cde9
call eax
push str.CWindowUI::OnDrawT
sub esp, 0x10
mov dword [ebp - 0x21c], 0x4144a0
mov eax, esp
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x7003
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b5e0
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 0x2c
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40ce8f
push str.CWindowUI::OnDestroy
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40ce91
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40cecc
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CEditUI.virtual_160
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40cece
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 2
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40cf1a
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40cf18
call fcn.00408df3
jmp 0x40cf1a
call eax
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 4
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40cf72
push str.CWindowUI::OnNCDestroy
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40cf74
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40cfaf
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CEditUI.virtual_160
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40cfb1
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 0x82
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40d000
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40cffe
call fcn.00408df3
jmp 0x40d000
call eax
push str.CWindowUI::OnMouseMove
sub esp, 0x10
mov dword [ebp - 0x21c], 0x4149b0
mov eax, esp
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x200
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414870
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnLButtonDown
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x201
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414900
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnLButtonUp
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x202
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414820
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnLButtonDBClick
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x203
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414ae0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnRButtonDown
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x204
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414b30
push str.CWindowUI::OnRButtonUp
sub esp, 0x10
mov dword [ebp - 0x218], 0
mov eax, esp
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x205
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414950
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnMouseHover
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x2a1
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414970
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnMouseLeave
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x2a3
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b5e0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414a60
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnMouseWheel
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x20a
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b4a0
add esp, 0x28
mov dword [ebp - 0x21c], 0x414b80
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnSetCursor
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x20
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x414330
mov dword [ebp - 0x218], 0
push str.CWindowUI::OnChar
sub esp, 0x10
mov dword [ebp - 0x214], 0
mov eax, esp
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x102
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x4146e0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnKeyDown
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x100
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x4147f0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnKeyUp
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x101
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x414c30
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnSize
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 5
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b540
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 0x2c
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40d4bd
push str.CWindowUI::OnExitSizeMove
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40d4bf
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40d4fa
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CEditUI.virtual_160
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40d4fc
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 0x232
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40d54b
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40d549
call fcn.00408df3
jmp 0x40d54b
call eax
push str.CWindowUI::OnDropFiles
sub esp, 0x10
mov dword [ebp - 0x21c], 0x414540
mov eax, esp
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x233
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b720
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 0x2c
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40d5f1
push str.CWindowUI::OnSetFocus
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40d5f3
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40d62e
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CEditUI.virtual_160
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40d630
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 7
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40d67c
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40d67a
call fcn.00408df3
jmp 0x40d67c
call eax
mov eax, dword [esi + 0x70]
push 0x114
mov dword [ebp - 0x230], eax
call fcn.004c7a8c
mov edi, eax
add esp, 4
mov dword [ebp - 0x234], edi
test edi, edi
je 0x40d6d4
push str.CWindowUI::OnKillFocus
lea eax, [edi + 0x10]
mov dword [edi], vtable.xc_event.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
push 0x104
mov byte [eax], 0
push eax
mov dword [edi + 4], 0
call fcn.004e0e34
add esp, 0xc
jmp 0x40d6d6
xor edi, edi
push 0x18
call fcn.004c7a8c
add esp, 4
mov dword [ebp - 0x234], eax
test eax, eax
je 0x40d711
mov dword [eax], vtable.bind_event_cpp__int__class_CWindowUI__unsigned_char____cdecl_CWindowUI::__int__int___.0
mov dword [eax + 4], esi
mov dword [eax + 8], method.CEditUI.virtual_160
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
jmp 0x40d713
xor eax, eax
push str._XWnd_RegEvent
push 1
push dword [ebp - 0x230]
mov dword [edi + 8], eax
call fcn.00453a90
add esp, 0xc
mov ecx, 0x585ab8
push dword [ebp - 0x230]
call fcn.00455bb0
push edi
push 8
mov ecx, eax
call fcn.00415190
test eax, eax
jne 0x40d75f
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax]
cmp eax, fcn.00408df3
jne 0x40d75d
call fcn.00408df3
jmp 0x40d75f
call eax
push str.CWindowUI::OnTimer
sub esp, 0x10
mov dword [ebp - 0x21c], 0x414cb0
mov eax, esp
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push esi
push 0
push 0
push 0x113
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b400
add esp, 0x28
mov dword [ebp - 0x21c], 0x4145e0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnGetMinMaxInfo
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x24
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x414ab0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnPopupDropList
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x7011
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x414460
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnDrawEle
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 0x7001
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
mov dword [ebp - 0x21c], 0x414310
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [ebp - 0x21c]
push str.CWindowUI::OnActivate
sub esp, 0x10
mov eax, esp
push esi
push 0
push 0
push 6
push dword [esi + 0x70]
movups xmmword [eax], xmm0
call fcn.0040b360
add esp, 0x28
push 0x4298e0
mov edi, dword [ebp - 0x238]
push 0xfffffffffffffffc
push edi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push dword [esi + 0x70]
mov dword [esi + 0x6c], eax
push 0xffffffffffffffeb
push edi
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [esi + 0x11c], 8
mov dword [esi + 0x120], 0x1e
mov dword [esi + 0x124], 8
mov dword [esi + 0x128], 8
cmp dword [0x5859e8], 0
je 0x40d96f
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x40d96f
lea eax, [ebp - 0x22c]
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetClientRect]
push 0
lea eax, [ebp - 0x22c]
mov ecx, esi
push eax
call fcn.00415040
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0x10000000
or eax, 0x860f0000
push eax
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov eax, dword [esi + 0x74]
test bl, 4
je 0x40da82
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov edi, eax
lea eax, [ebp - 0x22c]
push eax
push dword [esi + 0x74]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x220]
sub eax, dword [ebp - 0x228]
mov ebx, dword [ebp - 0x224]
sub ebx, dword [ebp - 0x22c]
mov dword [ebp - 0x230], eax
lea eax, [ebp - 0x21c]
test edi, edi
je 0x40da2a
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x214]
sub eax, dword [ebp - 0x21c]
sub eax, ebx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x210]
sub eax, dword [ebp - 0x218]
sub eax, dword [ebp - 0x230]
push 0x35
cdq
sub eax, edx
sar edi, 1
add edi, dword [ebp - 0x21c]
mov ebx, eax
push 0
push 0
sar ebx, 1
add ebx, dword [ebp - 0x218]
push ebx
push edi
push 0
push dword [esi + 0x74]
jmp 0x40da8f
push 0
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
mov eax, dword [ebp - 0x214]
sub eax, dword [ebp - 0x21c]
cdq
sub eax, edx
mov edi, eax
mov eax, ebx
cdq
sub eax, edx
sar edi, 1
sar eax, 1
sub edi, eax
mov eax, dword [ebp - 0x210]
sub eax, dword [ebp - 0x218]
cdq
sub eax, edx
mov ebx, eax
mov eax, dword [ebp - 0x230]
push 0x35
cdq
push 0
sub eax, edx
sar ebx, 1
push 0
sar eax, 1
sub ebx, eax
push ebx
push edi
push 0
push dword [esi + 0x74]
jmp 0x40da8f
push 0x37
push 0
push 0
push 0
push 0
push 0
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004c77a6
mov esp, ebp
pop ebp
ret 8