Function at 0x12c6440
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1410cf8
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x14716ec]
xor eax, esp
mov dword [esp + 0x1c], eax
push ebx
push edi
mov eax, dword [0x14716ec]
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.01398a50
add esp, 4
test eax, eax
je 0x12c649f
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], 0x12cde60
mov dword [esp + 0xc], eax
jmp 0x12c64a7
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c64ca
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], 0x12cde70
jmp 0x12c64cc
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.01398a50
add esp, 4
test eax, eax
je 0x12c6500
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], 0x12c9ed0
jmp 0x12c6502
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.01398a50
add esp, 4
test eax, eax
je 0x12c6535
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], 0x12c8840
mov ebx, eax
jmp 0x12c6537
xor ebx, ebx
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6557
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], 0x12c8940
jmp 0x12c6559
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.01398a50
add esp, 4
test eax, eax
je 0x12c658b
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], 0x12c8a60
mov ebx, eax
jmp 0x12c658d
xor ebx, ebx
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c65ad
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], 0x12c8b60
jmp 0x12c65af
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.01398a50
add esp, 4
test eax, eax
je 0x12c65e6
mov dword [eax], vtable.._AV__MethodSlot1_XNVView_ggadget__P812_AEXN_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x12cb240
mov dword [esp + 0xc], eax
jmp 0x12c65ee
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6611
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], 0x12cb230
jmp 0x12c6613
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.01398a50
add esp, 4
test eax, eax
je 0x12c664e
mov dword [eax], vtable.._AV__MethodSlot1_XNVView_ggadget__P812_AEXN_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x12cb2d0
mov dword [esp + 0xc], eax
jmp 0x12c6656
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6679
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], 0x12cb2c0
jmp 0x12c667b
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.01398a50
add esp, 4
test eax, eax
je 0x12c66b4
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], 0x12cde80
mov ebx, eax
jmp 0x12c66b6
xor ebx, ebx
mov eax, dword [edi + 0x58]
push 0xc
mov dword [esp + 0x10], eax
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c66e1
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], 0x12cde40
jmp 0x12c66e3
xor eax, eax
mov edx, dword [esi]
push 3
push 0x1474d4c
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.01398a50
add esp, 4
test eax, eax
je 0x12c6721
mov dword [eax], vtable.._AV__MethodSlot1_X_NVView_ggadget__P812_AEX_N_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x12cde30
mov dword [esp + 0xc], eax
jmp 0x12c6729
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c674c
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], 0x12cde50
jmp 0x12c674e
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.012d46c0
push 0x10
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c67c6
mov ecx, 0x12dc220
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 0x12c67c8
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.01398a50
add esp, 4
test eax, eax
je 0x12c67fd
mov ecx, fcn.012dc230
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 0x12c67ff
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.012dc230
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c683b
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 0x12c683d
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.01398a50
add esp, 4
test eax, eax
je 0x12c6872
mov ecx, 0x12dc310
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 0x12c6874
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.01398a50
add esp, 4
test eax, eax
je 0x12c68a9
mov ecx, 0x12dc3b0
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 0x12c68ab
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.01398a50
add esp, 4
test eax, eax
je 0x12c68e0
mov ecx, 0x12dc3f0
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 0x12c68e2
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.01398a50
add esp, 4
test eax, eax
je 0x12c6911
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], 0x12ca460
jmp 0x12c6913
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.01398a50
add esp, 4
mov ebx, 0x12ca790
test eax, eax
je 0x12c6943
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 0x12c6945
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.01398a50
add esp, 4
test eax, eax
je 0x12c6974
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.012ca550
jmp 0x12c6976
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.01398a50
add esp, 4
test eax, eax
je 0x12c69a1
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 0x12c69a3
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.01398a50
add esp, 4
test eax, eax
je 0x12c69d2
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.012ca670
jmp 0x12c69d4
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.01398a50
add esp, 4
test eax, eax
je 0x12c69ff
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 0x12c6a01
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.01398a50
add esp, 4
test eax, eax
je 0x12c6a33
mov dword [eax], vtable.._AV__MethodSlot1_XPBD__CBVView_ggadget__P812_BEXPBD_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], fcn.012cbd20
jmp 0x12c6a35
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.01398a50
add esp, 4
test eax, eax
je 0x12c6a69
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], 0x12cbd90
mov ebx, eax
jmp 0x12c6a6b
xor ebx, ebx
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6a8b
mov dword [eax], vtable.SlotWithDefaultArgs.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x1475148
jmp 0x12c6a8d
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.01398a50
add esp, 4
test eax, eax
je 0x12c6abf
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], 0x12cbe20
jmp 0x12c6ac1
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.01398a50
add esp, 4
test eax, eax
je 0x12c6af0
mov dword [eax], vtable.._AV__MethodSlot2_XNNVImpl_View_ggadget__P8123_AEXNN_Z_ggadget__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0x12c8df0
jmp 0x12c6af2
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.01398a50
add esp, 4
test eax, eax
je 0x12c6b21
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.012c8570
jmp 0x12c6b23
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.01398a50
add esp, 4
test eax, eax
je 0x12c6b54
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], 0x12c8e20
mov ebx, eax
jmp 0x12c6b56
xor ebx, ebx
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6b76
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], 0x12c8eb0
jmp 0x12c6b78
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.01398a50
add esp, 4
test eax, eax
je 0x12c6baf
mov dword [eax], vtable.._AV__MethodSlot1_X_NVView_ggadget__P812_AEX_N_Z_ggadget__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x12cb360
mov dword [esp + 0xc], eax
jmp 0x12c6bb7
mov dword [esp + 0xc], 0
mov ebx, dword [edi + 0x58]
push 0xc
call fcn.01398a50
add esp, 4
test eax, eax
je 0x12c6bda
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], 0x12cb350
jmp 0x12c6bdc
xor eax, eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push ecx
push eax
push 0x142d4c8
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.01398a41
mov esp, ebp
pop ebp
ret