Function at 0x6527c730
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x30]
push esi
mov esi, ecx
push edi
push ebx
mov edi, dword [esi + 4]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsViewPrivate::updateRubberBand_class_QMouseEvent_const__
push ebx
mov ecx, esi
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsViewPrivate::storeMouseEvent_class_QMouseEvent__
lea ecx, [esi + 0x2b8]
push 0
call dword [0x652b8398]
mov eax, dword [esi + 0x1a8]
test al, 1
je 0x6527cb1a
test eax, 0x200
jne 0x6527cb1a
mov eax, dword [esi + 0x33c]
push ebp
lea ebp, [esi + 0x33c]
test eax, eax
je 0x6527cb19
cmp dword [eax + 4], 0
je 0x6527cb19
cmp dword [ebp + 4], 0
je 0x6527cb19
push 0x9b
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::constructor_enum_QEvent::Type_
push dword [esi + 0x164]
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneEvent::setWidget_class_QWidget__
lea eax, [esi + 0x1f0]
push eax
push dword [esi + 0x240]
lea ecx, [esp + 0x20]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setButtonDownScenePos_enum_Qt::MouseButton__class_QPointF_const__
lea eax, [esi + 0x208]
push eax
push dword [esi + 0x240]
lea ecx, [esp + 0x20]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setButtonDownScreenPos_enum_Qt::MouseButton__class_QPoint_const__
lea eax, [esp + 0x10]
mov ecx, ebx
push eax
call dword [0x652ba0dc]
push eax
lea eax, [esp + 0x2c]
mov ecx, edi
push eax
call sym.Qt5Widgets.dll_public:_class_QPointF___thiscall_QGraphicsView::mapToScene_class_QPoint_const__
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMoveEvent::setNewPos_class_QPointF_const__
lea eax, [esp + 0x10]
mov ecx, ebx
push eax
call dword [0x652ba0d8]
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneContextMenuEvent::setScreenPos_class_QPoint_const__
lea edi, [esi + 0x210]
push edi
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneHoverEvent::setLastScenePos_class_QPointF_const__
lea ebx, [esi + 0x230]
push ebx
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneHoverEvent::setLastScreenPos_class_QPoint_const__
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x10]
push eax
call dword [0x652ba0c4]
lea ecx, [esp + 0x18]
push dword [eax]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setButtons_class_QFlags_enum_Qt::MouseButton__
mov ecx, dword [esp + 0x3c]
call dword [0x652ba0c8]
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setButton_enum_Qt::MouseButton_
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x10]
push eax
call dword [0x652ba0fc]
lea ecx, [esp + 0x18]
push dword [eax]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setModifiers_class_QFlags_enum_Qt::KeyboardModifier__
mov ecx, dword [esp + 0x3c]
call dword [0x652ba0c0]
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setSource_enum_Qt::MouseEventSource_
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x10]
push eax
call dword [0x652ba0bc]
lea ecx, [esp + 0x18]
push dword [eax]
call sym.Qt5Widgets.dll_public:_void___thiscall_QGraphicsSceneMouseEvent::setFlags_class_QFlags_enum_Qt::MouseEventFlag__
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_class_QPointF___thiscall_QGraphicsSceneMoveEvent::newPos_void_
movdqu xmm0, xmmword [eax]
lea eax, [esp + 0x10]
movdqu xmmword [edi], xmm0
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_class_QPoint___thiscall_QGraphicsSceneContextMenuEvent::screenPos_void_
push 0
lea ecx, [esp + 0x1c]
mov edx, dword [eax]
mov dword [ebx], edx
mov eax, dword [eax + 4]
mov dword [ebx + 4], eax
call dword [0x652b8398]
mov ecx, dword [esp + 0x3c]
call dword [0x652b839c]
test al, al
mov eax, dword [ebp]
je 0x6527c92b
test eax, eax
je 0x6527c91c
cmp dword [eax + 4], 0
je 0x6527c91c
mov eax, dword [ebp + 4]
lea ecx, [esp + 0x18]
push ecx
push eax
call fcn.65013850
jmp 0x6527c948
lea ecx, [esp + 0x18]
xor eax, eax
push ecx
push eax
call fcn.65013850
jmp 0x6527c948
test eax, eax
je 0x6527c93a
cmp dword [eax + 4], 0
je 0x6527c93a
mov eax, dword [ebp + 4]
jmp 0x6527c93c
xor eax, eax
lea ecx, [esp + 0x18]
push ecx
push eax
call dword [0x652b8590]
add esp, 8
lea ecx, [esp + 0x18]
call dword [0x652b8394]
movzx eax, al
lea ecx, [esi + 0x2b8]
push eax
call dword [0x652b8398]
lea ecx, [esp + 0x18]
call dword [0x652b8394]
test al, al
je 0x6527c98a
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Widgets.dll_public:_class_QFlags_enum_Qt::MouseButton____thiscall_QGraphicsSceneMouseEvent::buttons_void_
cmp dword [eax], 0
jne 0x6527cb10
mov eax, dword [ebp]
test eax, eax
je 0x6527c99c
cmp dword [eax + 4], 0
je 0x6527c99c
mov eax, dword [ebp + 4]
jmp 0x6527c99e
xor eax, eax
mov eax, dword [eax + 4]
test dword [eax + 0x78], 0x1000
je 0x6527ca45
mov eax, dword [ebp]
test eax, eax
je 0x6527c9c0
cmp dword [eax + 4], 0
je 0x6527c9c0
mov eax, dword [ebp + 4]
jmp 0x6527c9c2
xor eax, eax
mov eax, dword [eax + 4]
test dword [eax + 0x78], 0x2000
jne 0x6527ca45
mov ecx, ebp
call fcn.65192430
mov ecx, dword [eax + 4]
lea ecx, [ecx + 0x110]
call dword [0x652b85d4]
test al, al
je 0x6527ca45
mov ecx, ebp
call fcn.65192430
mov ecx, ebp
mov edi, dword [eax + 4]
call fcn.65192430
lea ecx, [esp + 0x18]
mov ebx, dword [eax + 4]
call sym.Qt5Widgets.dll_public:_class_QWidget____thiscall_QGraphicsSceneEvent::widget_void_const
push eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x20]
call sym.Qt5Widgets.dll_public:_class_QPointF___thiscall_QGraphicsSceneMoveEvent::newPos_void_
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x24]
call sym.Qt5Widgets.dll_public:_class_QPoint___thiscall_QGraphicsSceneContextMenuEvent::screenPos_void_
push eax
lea eax, [esp + 0x48]
mov ecx, edi
push eax
call fcn.652692e0
push eax
lea ecx, [ebx + 0x110]
call fcn.65003ee0
lea ecx, [esp + 0x3c]
call fcn.65003890
mov eax, dword [ebp]
test eax, eax
je 0x6527ca57
cmp dword [eax + 4], 0
je 0x6527ca57
mov eax, dword [ebp + 4]
jmp 0x6527ca59
xor eax, eax
mov eax, dword [eax + 4]
lea ecx, [esp + 0x28]
add eax, 0x110
push eax
call fcn.6523ec90
lea ecx, [esp + 0x28]
call dword [0x652b85cc]
lea ecx, [esp + 0x28]
mov dword [esp + 0x2c], eax
call dword [0x652b85c8]
mov ecx, dword [esp + 0x2c]
mov edx, 1
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
cmp ecx, eax
je 0x6527cac3
mov edi, dword [ecx]
test edx, edx
je 0x6527cab3
mov ecx, edi
call sym.Qt5Widgets.dll_public:_bool___thiscall_QGraphicsItem::hasCursor_void_const
test al, al
jne 0x6527cb23
mov eax, dword [esp + 0x30]
xor edx, edx
mov ecx, dword [esp + 0x2c]
add ecx, 4
xor edx, 1
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jne 0x6527ca94
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
test eax, eax
je 0x6527cae4
cmp eax, 0xffffffff
je 0x6527caee
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x6527caee
mov ecx, dword [esp + 0x28]
push ecx
call dword [0x652b85e8]
add esp, 4
cmp byte [esi + 0x38c], 0
je 0x6527cb10
mov ecx, dword [esi + 0x164]
lea eax, [esi + 0x388]
push eax
mov byte [esi + 0x38c], 0
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setCursor_class_QCursor_const__
lea ecx, [esp + 0x18]
call sym.Qt5Widgets.dll_public_virtual:_void___thiscall_QGraphicsSceneContextMenuEvent::destructor_void_
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
lea eax, [esp + 0x10]
mov ecx, edi
push eax
call sym.Qt5Widgets.dll_public:_class_QCursor___thiscall_QGraphicsItem::cursor_void_
cmp byte [esi + 0x38c], 0
mov ebx, eax
mov edi, dword [0x652ba180]
jne 0x6527cb6a
mov ecx, dword [esi + 0x164]
lea eax, [esp + 0x3c]
push eax
mov byte [esi + 0x38c], 1
call sym.Qt5Widgets.dll_public:_class_QCursor___thiscall_QWidget::cursor_void_
push eax
lea ecx, [esi + 0x388]
call dword [0x652b9d48]
lea ecx, [esp + 0x3c]
call edi
mov ecx, dword [esi + 0x164]
push ebx
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setCursor_class_QCursor_const__
lea ecx, [esp + 0x10]
call edi
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
test eax, eax
je 0x6527cba1
cmp eax, 0xffffffff
je 0x6527cb10
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x6527cb10
mov ecx, dword [esp + 0x28]
push ecx
call dword [0x652b85e8]
add esp, 4
lea ecx, [esp + 0x18]
call sym.Qt5Widgets.dll_public_virtual:_void___thiscall_QGraphicsSceneContextMenuEvent::destructor_void_
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4