Function at 0xe86440
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0xfd0cf8
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x10316ec]
xor eax, esp
mov dword [esp + 0x1c], eax
push ebx
push edi
mov eax, dword [0x10316ec]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe8649f
mov dword [eax], vtable.._AV__MethodSlot1_XABV__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__VView_ggadget__P834_AEXABV12__Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8de60
mov dword [esp + 0xc], eax
jmp 0xe864a7
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe864ca
mov dword [eax], vtable.._AV__MethodSlot0_V__basic_string_DU__char_traits_D_std__V__allocator_D_2__std____CBVView_ggadget__P834_BE_AV12_XZ_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8de70
jmp 0xe864cc
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push str.caption
mov ecx, esi
call edx
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86500
mov dword [eax], vtable.ggadget::MethodSlot0_class_ggadget::ScriptableEvent___class_ggadget::View::Impl__unsigned_char____cdecl_ggadget::View::Impl::__class_ggadget::ScriptableEvent___void__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe89ed0
jmp 0xe86502
xor eax, eax
mov edx, dword [esi]
push 0
push eax
mov eax, dword [edx + 4]
push str.event
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86535
mov dword [eax], vtable.._AV__MethodSlot1_XABVVariant_ggadget__VImpl_View_2_P8342_AEXABV12__Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88840
mov ebx, eax
jmp 0xe86537
xor ebx, ebx
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86557
mov dword [eax], vtable.._AV__MethodSlot0_VVariant_ggadget____CBVImpl_View_2_P8342_BE_AV12_XZ_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88940
jmp 0xe86559
xor eax, eax
mov edx, dword [esi]
push ebx
push eax
mov eax, dword [edx + 4]
push str.width
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe8658b
mov dword [eax], vtable.._AV__MethodSlot1_XABVVariant_ggadget__VImpl_View_2_P8342_AEXABV12__Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88a60
mov ebx, eax
jmp 0xe8658d
xor ebx, ebx
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe865ad
mov dword [eax], vtable.._AV__MethodSlot0_VVariant_ggadget____CBVImpl_View_2_P8342_BE_AV12_XZ_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88b60
jmp 0xe865af
xor eax, eax
mov edx, dword [esi]
push ebx
push eax
mov eax, dword [edx + 4]
push str.height
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe865e6
mov dword [eax], vtable.._AV__MethodSlot1_XNVView_ggadget__P812_AEXN_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b240
mov dword [esp + 0xc], eax
jmp 0xe865ee
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86611
mov dword [eax], vtable.ggadget::MethodSlot0_double__class_ggadget::View_const___unsigned_char____cdecl___declspec_dllexport__ggadget::View::__double__void__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b230
jmp 0xe86613
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push str.minWidth
mov ecx, esi
call edx
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe8664e
mov dword [eax], vtable.._AV__MethodSlot1_XNVView_ggadget__P812_AEXN_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b2d0
mov dword [esp + 0xc], eax
jmp 0xe86656
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86679
mov dword [eax], vtable.ggadget::MethodSlot0_double__class_ggadget::View_const___unsigned_char____cdecl___declspec_dllexport__ggadget::View::__double__void__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b2c0
jmp 0xe8667b
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push str.minHeight
mov ecx, esi
call edx
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe866b4
mov dword [eax + 4], ebx
mov dword [eax], vtable.._AV__MethodSlot1_XW4ResizableMode_ViewInterface_ggadget__VView_3_P843_AEXW4123__Z_ggadget__.0
mov dword [eax + 8], 0xe8de80
mov ebx, eax
jmp 0xe866b6
xor ebx, ebx
mov eax, dword [edi + 0x58]
push 0xc
mov dword [esp + 0x10], eax
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe866e1
mov ecx, dword [esp + 0xc]
mov dword [eax], vtable.._AV__MethodSlot0_W4ResizableMode_ViewInterface_ggadget____CBVView_3_P843_BE_AW4123_XZ_ggadget__.0
mov dword [eax + 4], ecx
mov dword [eax + 8], 0xe8de40
jmp 0xe866e3
xor eax, eax
mov edx, dword [esi]
push 3
push 0x1034d4c
push ebx
push eax
mov eax, dword [edx + 8]
push str.resizable
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86721
mov dword [eax], vtable.._AV__MethodSlot1_X_NVView_ggadget__P812_AEX_N_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8de30
mov dword [esp + 0xc], eax
jmp 0xe86729
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe8674c
mov dword [eax], vtable.ggadget::MethodSlot0_bool__class_ggadget::View_const___unsigned_char____cdecl___declspec_dllexport__ggadget::View::__bool__void__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8de50
jmp 0xe8674e
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push str.showCaptionAlways
mov ecx, esi
call edx
lea ebx, [edi + 0x188]
mov dword [esp + 0x1c], 7
mov dword [esp + 0x14], ebx
mov dword [esp + 0x38], 0
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
lea ecx, [esp + 0x14]
push ecx
push str.children
mov ecx, esi
call edx
lea ecx, [esp + 0x14]
mov dword [esp + 0x38], 0xffffffff
call fcn.00e946c0
push 0x10
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe867c6
mov ecx, 0xe9c220
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], vtable.ggadget::MethodSlot1_class_ggadget::BasicElement___class_ggadget::Variant_const___class_ggadget::Elements__unsigned_char____cdecl_ggadget::Elements::__class_ggadget::BasicElement___class_ggadget::Variant_const___.0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe867c8
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.appendElement
mov ecx, esi
call eax
push 0x10
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe867fd
mov ecx, fcn.00e9c230
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], method.ggadget::Slot.virtual_0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe867ff
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.insertElement
mov ecx, esi
call eax
push 0x10
mov dword [esp + 0x10], fcn.00e9c230
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe8683b
mov ecx, dword [esp + 0xc]
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], method.ggadget::Slot.virtual_0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe8683d
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.insertElementBehind
mov ecx, esi
call eax
push 0x10
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86872
mov ecx, 0xe9c310
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], method.ggadget::Slot.virtual_0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe86874
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.insertElementInFrontOf
mov ecx, esi
call eax
push 0x10
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe868a9
mov ecx, 0xe9c3b0
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], vtable.ggadget::MethodSlot1_bool__class_ggadget::BasicElement___class_ggadget::Elements__unsigned_char____cdecl_ggadget::Elements::__bool__class_ggadget::BasicElement___.0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe868ab
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.removeElement
mov ecx, esi
call eax
push 0x10
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe868e0
mov ecx, 0xe9c3f0
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax], vtable.._AV__MethodSlot0_XVElements_ggadget__P812_AEXXZ_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ecx
jmp 0xe868e2
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.removeAllElements
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86911
mov dword [eax], vtable.ggadget::MethodSlot4_int__class_ggadget::Slot___int__int__int__class_ggadget::View::Impl__unsigned_char____cdecl_ggadget::View::Impl::__int__class_ggadget::Slot___int__int__int__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe8a460
jmp 0xe86913
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.beginAnimation
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
mov ebx, 0xe8a790
test eax, eax
je 0xe86943
mov dword [eax], vtable.._AV__MethodSlot1_XHVImpl_View_ggadget__P8123_AEXH_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], ebx
jmp 0xe86945
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.cancelAnimation
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86974
mov dword [eax], vtable.ggadget::MethodSlot2_int__class_ggadget::Slot___int__class_ggadget::View::Impl__unsigned_char____cdecl_ggadget::View::Impl::__int__class_ggadget::Slot___int__.0
mov dword [eax + 4], edi
mov dword [eax + 8], fcn.00e8a550
jmp 0xe86976
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.setTimeout
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe869a1
mov dword [eax], vtable.._AV__MethodSlot1_XHVImpl_View_ggadget__P8123_AEXH_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], ebx
jmp 0xe869a3
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.clearTimeout
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe869d2
mov dword [eax], vtable.ggadget::MethodSlot2_int__class_ggadget::Slot___int__class_ggadget::View::Impl__unsigned_char____cdecl_ggadget::View::Impl::__int__class_ggadget::Slot___int__.0
mov dword [eax + 4], edi
mov dword [eax + 8], fcn.00e8a670
jmp 0xe869d4
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.setInterval
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe869ff
mov dword [eax], vtable.._AV__MethodSlot1_XHVImpl_View_ggadget__P8123_AEXH_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], ebx
jmp 0xe86a01
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.clearInterval
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86a33
mov dword [eax], vtable.._AV__MethodSlot1_XPBD__CBVView_ggadget__P812_BEXPBD_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], fcn.00e8bd20
jmp 0xe86a35
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.alert
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86a69
mov dword [eax + 4], ebx
mov dword [eax], vtable.._AV__MethodSlot2_W4ConfirmResponse_ViewHostInterface_ggadget__PBD_N__CBVView_3_P843_BE_AW4123_PBD_N_Z_ggadget__.0
mov dword [eax + 8], 0xe8bd90
mov ebx, eax
jmp 0xe86a6b
xor ebx, ebx
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86a8b
mov dword [eax], vtable.SlotWithDefaultArgs.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x1035148
jmp 0xe86a8d
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.confirm
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86abf
mov dword [eax], vtable.._AV__MethodSlot2_V__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__PBDPBD__CBVView_ggadget__P834_BE_AV12_PBD0_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8be20
jmp 0xe86ac1
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.prompt
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86af0
mov dword [eax], vtable.._AV__MethodSlot2_XNNVImpl_View_ggadget__P8123_AEXNN_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88df0
jmp 0xe86af2
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.resizeBy
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86b21
mov dword [eax], vtable.._AV__MethodSlot2_XABVVariant_ggadget__ABV12_VImpl_View_2_P8342_AEXABV12_0_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], fcn.00e88570
jmp 0xe86b23
xor eax, eax
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xc]
push str.resizeTo
mov ecx, esi
call eax
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86b54
mov dword [eax], vtable.._AV__MethodSlot1_XABV__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__VImpl_View_ggadget__P8345_AEXABV12__Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88e20
mov ebx, eax
jmp 0xe86b56
xor ebx, ebx
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86b76
mov dword [eax], vtable.._AV__MethodSlot0_V__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__VImpl_View_ggadget__P8345_AE_AV12_XZ_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0xe88eb0
jmp 0xe86b78
xor eax, eax
mov edx, dword [esi]
push ebx
push eax
mov eax, dword [edx + 4]
push str.resizeBorder
mov ecx, esi
call eax
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86baf
mov dword [eax], vtable.._AV__MethodSlot1_X_NVView_ggadget__P812_AEX_N_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b360
mov dword [esp + 0xc], eax
jmp 0xe86bb7
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.00f58a50
add esp, 4
test eax, eax
je 0xe86bda
mov dword [eax], vtable.ggadget::MethodSlot0_bool__class_ggadget::View_const___unsigned_char____cdecl___declspec_dllexport__ggadget::View::__bool__void__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0xe8b350
jmp 0xe86bdc
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push 0xfed4c8
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x80]
push ecx
push str.oncancel
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x88]
push ecx
push str.onclick
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x90]
push ecx
push str.onclose
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x98]
push ecx
push str.ondblclick
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xa0]
push ecx
push str.onrclick
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xa8]
push ecx
push str.onrdblclick
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xb0]
push ecx
push str.ondock
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xb8]
push ecx
push str.onkeydown
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xc0]
push ecx
push str.onkeypress
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xc8]
push ecx
push str.onkeyup
mov ecx, esi
call edx
mov eax, dword [esi]
lea ecx, [edi + 0xd0]
push ecx
mov edx, dword [eax + 0x10]
push str.onminimize
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xd8]
push ecx
push str.onmousedown
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xe0]
push ecx
push str.onmousemove
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xe8]
push ecx
push str.onmouseout
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xf0]
push ecx
push str.onmouseover
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0xf8]
push ecx
push str.onmouseup
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x100]
push ecx
push str.onmousewheel
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x108]
push ecx
push str.onok
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x110]
push ecx
push str.onopen
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x118]
push ecx
push str.onoptionchanged
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x120]
push ecx
push str.onpopin
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x128]
push ecx
push str.onpopout
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x130]
push ecx
push str.onrestore
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x138]
push ecx
push str.onsize
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x140]
push ecx
push str.onsizing
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x148]
push ecx
push str.onundock
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
lea ecx, [edi + 0x150]
push ecx
push str.oncontextmenu
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
add edi, 0x158
push edi
push str.onthemechanged
mov ecx, esi
call edx
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.00f58a41
mov esp, ebp
pop ebp
ret