⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculate24appview.asm

📁 这是一个基于symbian操作系统的速算24游戏
💻 ASM
📖 第 1 页 / 共 2 页
字号:
_TEXT	SEGMENT
___t$ = 8
___s$ = 12
___n$ = 16
___f$ = 20
??_H@YGXPAXIHP6EX0@Z@Z PROC NEAR			; `vector constructor iterator', COMDAT
	push	ebp
	mov	ebp, esp
$L17953:
	mov	eax, DWORD PTR ___n$[ebp]
	sub	eax, 1
	mov	DWORD PTR ___n$[ebp], eax
	cmp	DWORD PTR ___n$[ebp], 0
	jl	SHORT $L17954
	mov	ecx, DWORD PTR ___t$[ebp]
	call	DWORD PTR ___f$[ebp]
	mov	ecx, DWORD PTR ___t$[ebp]
	add	ecx, DWORD PTR ___s$[ebp]
	mov	DWORD PTR ___t$[ebp], ecx
	jmp	SHORT $L17953
$L17954:
	pop	ebp
	ret	16					; 00000010H
??_H@YGXPAXIHP6EX0@Z@Z ENDP				; `vector constructor iterator'
_TEXT	ENDS
PUBLIC	?NewL@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z	; CCalculate24AppView::NewL
PUBLIC	?NewLC@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z	; CCalculate24AppView::NewLC
PUBLIC	?Pop@CleanupStack@@SAXPAX@Z			; CleanupStack::Pop
_TEXT	SEGMENT
_aRect$ = 8
_self$ = -4
?NewL@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z PROC NEAR ; CCalculate24AppView::NewL

; 6    :     {

	push	ebp
	mov	ebp, esp
	push	ecx

; 7    :     CCalculate24AppView* self = NewLC(aRect);

	mov	eax, DWORD PTR _aRect$[ebp]
	push	eax
	call	?NewLC@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z ; CCalculate24AppView::NewLC
	add	esp, 4
	mov	DWORD PTR _self$[ebp], eax

; 8    :     CleanupStack::Pop(self);

	mov	ecx, DWORD PTR _self$[ebp]
	push	ecx
	call	?Pop@CleanupStack@@SAXPAX@Z		; CleanupStack::Pop
	add	esp, 4

; 9    :     return self;

	mov	eax, DWORD PTR _self$[ebp]

; 10   :     }

	mov	esp, ebp
	pop	ebp
	ret	0
?NewL@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z ENDP	; CCalculate24AppView::NewL
_TEXT	ENDS
EXTRN	?Pop@CleanupStack@@SAXXZ:NEAR			; CleanupStack::Pop
EXTRN	?Check@CleanupStack@@SAXPAX@Z:NEAR		; CleanupStack::Check
;	COMDAT ?Pop@CleanupStack@@SAXPAX@Z
_TEXT	SEGMENT
_aExpectedItem$ = 8
?Pop@CleanupStack@@SAXPAX@Z PROC NEAR			; CleanupStack::Pop, COMDAT

; 436  : 	{ CleanupStack::Check(aExpectedItem); CleanupStack::Pop(); }

	push	ebp
	mov	ebp, esp
	mov	eax, DWORD PTR _aExpectedItem$[ebp]
	push	eax
	call	?Check@CleanupStack@@SAXPAX@Z		; CleanupStack::Check
	add	esp, 4
	call	?Pop@CleanupStack@@SAXXZ		; CleanupStack::Pop
	pop	ebp
	ret	0
?Pop@CleanupStack@@SAXPAX@Z ENDP			; CleanupStack::Pop
_TEXT	ENDS
PUBLIC	?ConstructL@CCalculate24AppView@@AAEXABVTRect@@@Z ; CCalculate24AppView::ConstructL
PUBLIC	??0CCalculate24AppView@@AAE@XZ			; CCalculate24AppView::CCalculate24AppView
PUBLIC	??2CBase@@SAPAXIW4TLeave@@@Z			; CBase::operator new
EXTRN	?PushL@CleanupStack@@SAXPAVCBase@@@Z:NEAR	; CleanupStack::PushL
_TEXT	SEGMENT
_aRect$ = 8
_self$ = -4
$T26551 = -8
?NewLC@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z PROC NEAR ; CCalculate24AppView::NewLC

; 13   :     {

	push	ebp
	mov	ebp, esp
	sub	esp, 12					; 0000000cH

; 14   :     CCalculate24AppView* self = new (ELeave) CCalculate24AppView;

	push	0
	push	48					; 00000030H
	call	??2CBase@@SAPAXIW4TLeave@@@Z		; CBase::operator new
	add	esp, 8
	mov	DWORD PTR $T26551[ebp], eax
	cmp	DWORD PTR $T26551[ebp], 0
	je	SHORT $L26552
	mov	ecx, DWORD PTR $T26551[ebp]
	call	??0CCalculate24AppView@@AAE@XZ		; CCalculate24AppView::CCalculate24AppView
	mov	DWORD PTR -12+[ebp], eax
	jmp	SHORT $L26553
$L26552:
	mov	DWORD PTR -12+[ebp], 0
$L26553:
	mov	eax, DWORD PTR -12+[ebp]
	mov	DWORD PTR _self$[ebp], eax

; 15   :     CleanupStack::PushL(self);

	mov	ecx, DWORD PTR _self$[ebp]
	push	ecx
	call	?PushL@CleanupStack@@SAXPAVCBase@@@Z	; CleanupStack::PushL
	add	esp, 4

; 16   :     self->ConstructL(aRect);

	mov	edx, DWORD PTR _aRect$[ebp]
	push	edx
	mov	ecx, DWORD PTR _self$[ebp]
	call	?ConstructL@CCalculate24AppView@@AAEXABVTRect@@@Z ; CCalculate24AppView::ConstructL

; 17   :     return self;

	mov	eax, DWORD PTR _self$[ebp]

; 18   :     }

	mov	esp, ebp
	pop	ebp
	ret	0
?NewLC@CCalculate24AppView@@SAPAV1@ABVTRect@@@Z ENDP	; CCalculate24AppView::NewLC
_TEXT	ENDS
EXTRN	?newL@CBase@@CAPAXI@Z:NEAR			; CBase::newL
;	COMDAT ??2CBase@@SAPAXIW4TLeave@@@Z
_TEXT	SEGMENT
_aSize$ = 8
??2CBase@@SAPAXIW4TLeave@@@Z PROC NEAR			; CBase::operator new, COMDAT

; 11   : 	{return newL(aSize);}

	push	ebp
	mov	ebp, esp
	mov	eax, DWORD PTR _aSize$[ebp]
	push	eax
	call	?newL@CBase@@CAPAXI@Z			; CBase::newL
	add	esp, 4
	pop	ebp
	ret	0
??2CBase@@SAPAXIW4TLeave@@@Z ENDP			; CBase::operator new
_TEXT	ENDS
EXTRN	?SetRect@CCoeControl@@QAEXABVTRect@@@Z:NEAR	; CCoeControl::SetRect
EXTRN	?CreateWindowL@CCoeControl@@IAEXXZ:NEAR		; CCoeControl::CreateWindowL
_TEXT	SEGMENT
_aRect$ = 8
_this$ = -4
?ConstructL@CCalculate24AppView@@AAEXABVTRect@@@Z PROC NEAR ; CCalculate24AppView::ConstructL

; 21   :     {

	push	ebp
	mov	ebp, esp
	push	ecx
	mov	DWORD PTR _this$[ebp], ecx

; 22   :     CreateWindowL();

	mov	ecx, DWORD PTR _this$[ebp]
	call	?CreateWindowL@CCoeControl@@IAEXXZ	; CCoeControl::CreateWindowL

; 23   : 
; 24   :     SetRect(aRect);

	mov	eax, DWORD PTR _aRect$[ebp]
	push	eax
	mov	ecx, DWORD PTR _this$[ebp]
	call	?SetRect@CCoeControl@@QAEXABVTRect@@@Z	; CCoeControl::SetRect

; 25   : 
; 26   :     ActivateL();

	mov	ecx, DWORD PTR _this$[ebp]
	mov	edx, DWORD PTR [ecx]
	mov	ecx, DWORD PTR _this$[ebp]
	call	DWORD PTR [edx+24]

; 27   :     }

	mov	esp, ebp
	pop	ebp
	ret	4
?ConstructL@CCalculate24AppView@@AAEXABVTRect@@@Z ENDP	; CCalculate24AppView::ConstructL
_TEXT	ENDS
PUBLIC	?Draw@CCalculate24AppView@@UBEXABVTRect@@@Z	; CCalculate24AppView::Draw
PUBLIC	??_7CCalculate24AppView@@6BCBase@@@		; CCalculate24AppView::`vftable'
PUBLIC	??_7CCalculate24AppView@@6BMObjectProvider@@@	; CCalculate24AppView::`vftable'
PUBLIC	??_GCCalculate24AppView@@UAEPAXI@Z		; CCalculate24AppView::`scalar deleting destructor'
PUBLIC	??_ECCalculate24AppView@@UAEPAXI@Z		; CCalculate24AppView::`vector deleting destructor'
EXTRN	??0CCoeControl@@QAE@XZ:NEAR			; CCoeControl::CCoeControl
EXTRN	?OfferKeyEventL@CCoeControl@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z:NEAR ; CCoeControl::OfferKeyEventL
EXTRN	?MakeVisible@CCoeControl@@UAEXH@Z:NEAR		; CCoeControl::MakeVisible
EXTRN	?SetDimmed@CCoeControl@@UAEXH@Z:NEAR		; CCoeControl::SetDimmed
EXTRN	?SetContainerWindowL@CCoeControl@@UAEXABV1@@Z:NEAR ; CCoeControl::SetContainerWindowL
EXTRN	?ConstructFromResourceL@CCoeControl@@UAEXAAVTResourceReader@@@Z:NEAR ; CCoeControl::ConstructFromResourceL
EXTRN	?ActivateL@CCoeControl@@UAEXXZ:NEAR		; CCoeControl::ActivateL
EXTRN	?PrepareForFocusLossL@CCoeControl@@UAEXXZ:NEAR	; CCoeControl::PrepareForFocusLossL
EXTRN	?PrepareForFocusGainL@CCoeControl@@UAEXXZ:NEAR	; CCoeControl::PrepareForFocusGainL
EXTRN	?SetAdjacent@CCoeControl@@UAEXH@Z:NEAR		; CCoeControl::SetAdjacent
EXTRN	?SetNeighbor@CCoeControl@@UAEXPAV1@@Z:NEAR	; CCoeControl::SetNeighbor
EXTRN	?HasBorder@CCoeControl@@UBEHXZ:NEAR		; CCoeControl::HasBorder
EXTRN	?MinimumSize@CCoeControl@@UAE?AVTSize@@XZ:NEAR	; CCoeControl::MinimumSize
EXTRN	?HandleResourceChange@CCoeControl@@UAEXH@Z:NEAR	; CCoeControl::HandleResourceChange
EXTRN	?GetColorUseListL@CCoeControl@@UBEXAAV?$CArrayFix@VTCoeColorUse@@@@@Z:NEAR ; CCoeControl::GetColorUseListL
EXTRN	?GetHelpContext@CCoeControl@@UBEXAAVTCoeHelpContext@@@Z:NEAR ; CCoeControl::GetHelpContext
EXTRN	?InputCapabilities@CCoeControl@@UBE?AVTCoeInputCapabilities@@XZ:NEAR ; CCoeControl::InputCapabilities
EXTRN	?HandlePointerEventL@CCoeControl@@MAEXABUTPointerEvent@@@Z:NEAR ; CCoeControl::HandlePointerEventL
EXTRN	?HandlePointerBufferReadyL@CCoeControl@@MAEXXZ:NEAR ; CCoeControl::HandlePointerBufferReadyL
EXTRN	?FocusChanged@CCoeControl@@MAEXW4TDrawNow@@@Z:NEAR ; CCoeControl::FocusChanged
EXTRN	?SizeChanged@CCoeControl@@MAEXXZ:NEAR		; CCoeControl::SizeChanged
EXTRN	?PositionChanged@CCoeControl@@MAEXXZ:NEAR	; CCoeControl::PositionChanged
EXTRN	?CountComponentControls@CCoeControl@@UBEHXZ:NEAR ; CCoeControl::CountComponentControls
EXTRN	?ComponentControl@CCoeControl@@UBEPAV1@H@Z:NEAR	; CCoeControl::ComponentControl
EXTRN	?MopSupplyObject@CCoeControl@@MAE?AVPtr@TTypeUid@@V3@@Z:NEAR ; CCoeControl::MopSupplyObject
EXTRN	?MopNext@CCoeControl@@EAEPAVMObjectProvider@@XZ:NEAR ; CCoeControl::MopNext
EXTRN	?WriteInternalStateL@CCoeControl@@MBEXAAVRWriteStream@@@Z:NEAR ; CCoeControl::WriteInternalStateL
EXTRN	?Reserved_2@CCoeControl@@EAEXXZ:NEAR		; CCoeControl::Reserved_2
;	COMDAT ??_7CCalculate24AppView@@6BCBase@@@
; File \TEST\TEST_S60_20\CALCULATE24\SRC\Calculate24appview.cpp
CONST	SEGMENT
??_7CCalculate24AppView@@6BCBase@@@ DD FLAT:??_ECCalculate24AppView@@UAEPAXI@Z ; CCalculate24AppView::`vftable'
	DD	FLAT:?OfferKeyEventL@CCoeControl@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z
	DD	FLAT:?MakeVisible@CCoeControl@@UAEXH@Z
	DD	FLAT:?SetDimmed@CCoeControl@@UAEXH@Z
	DD	FLAT:?SetContainerWindowL@CCoeControl@@UAEXABV1@@Z
	DD	FLAT:?ConstructFromResourceL@CCoeControl@@UAEXAAVTResourceReader@@@Z
	DD	FLAT:?ActivateL@CCoeControl@@UAEXXZ
	DD	FLAT:?PrepareForFocusLossL@CCoeControl@@UAEXXZ
	DD	FLAT:?PrepareForFocusGainL@CCoeControl@@UAEXXZ
	DD	FLAT:?SetAdjacent@CCoeControl@@UAEXH@Z
	DD	FLAT:?SetNeighbor@CCoeControl@@UAEXPAV1@@Z
	DD	FLAT:?HasBorder@CCoeControl@@UBEHXZ
	DD	FLAT:?MinimumSize@CCoeControl@@UAE?AVTSize@@XZ
	DD	FLAT:?HandleResourceChange@CCoeControl@@UAEXH@Z
	DD	FLAT:?GetColorUseListL@CCoeControl@@UBEXAAV?$CArrayFix@VTCoeColorUse@@@@@Z
	DD	FLAT:?GetHelpContext@CCoeControl@@UBEXAAVTCoeHelpContext@@@Z
	DD	FLAT:?InputCapabilities@CCoeControl@@UBE?AVTCoeInputCapabilities@@XZ
	DD	FLAT:?HandlePointerEventL@CCoeControl@@MAEXABUTPointerEvent@@@Z
	DD	FLAT:?HandlePointerBufferReadyL@CCoeControl@@MAEXXZ
	DD	FLAT:?FocusChanged@CCoeControl@@MAEXW4TDrawNow@@@Z
	DD	FLAT:?SizeChanged@CCoeControl@@MAEXXZ
	DD	FLAT:?PositionChanged@CCoeControl@@MAEXXZ
	DD	FLAT:?CountComponentControls@CCoeControl@@UBEHXZ
	DD	FLAT:?ComponentControl@CCoeControl@@UBEPAV1@H@Z
	DD	FLAT:?Draw@CCalculate24AppView@@UBEXABVTRect@@@Z
	DD	FLAT:?WriteInternalStateL@CCoeControl@@MBEXAAVRWriteStream@@@Z
	DD	FLAT:?Reserved_2@CCoeControl@@EAEXXZ
CONST	ENDS
;	COMDAT ??_7CCalculate24AppView@@6BMObjectProvider@@@
CONST	SEGMENT
??_7CCalculate24AppView@@6BMObjectProvider@@@ DD FLAT:?MopSupplyObject@CCoeControl@@MAE?AVPtr@TTypeUid@@V3@@Z ; CCalculate24AppView::`vftable'
	DD	FLAT:?MopNext@CCoeControl@@EAEPAVMObjectProvider@@XZ
CONST	ENDS
_TEXT	SEGMENT
_this$ = -4
??0CCalculate24AppView@@AAE@XZ PROC NEAR		; CCalculate24AppView::CCalculate24AppView

; 30   :     {

	push	ebp
	mov	ebp, esp
	push	ecx
	mov	DWORD PTR _this$[ebp], ecx
	mov	ecx, DWORD PTR _this$[ebp]
	call	??0CCoeControl@@QAE@XZ			; CCoeControl::CCoeControl
	mov	eax, DWORD PTR _this$[ebp]
	mov	DWORD PTR [eax], OFFSET FLAT:??_7CCalculate24AppView@@6BCBase@@@ ; CCalculate24AppView::`vftable'
	mov	ecx, DWORD PTR _this$[ebp]
	mov	DWORD PTR [ecx+4], OFFSET FLAT:??_7CCalculate24AppView@@6BMObjectProvider@@@ ; CCalculate24AppView::`vftable'

; 31   :     // Add any construction code that can not leave here
; 32   :     }

	mov	eax, DWORD PTR _this$[ebp]
	mov	esp, ebp
	pop	ebp
	ret	0
??0CCalculate24AppView@@AAE@XZ ENDP			; CCalculate24AppView::CCalculate24AppView
_TEXT	ENDS
PUBLIC	??1CCalculate24AppView@@UAE@XZ			; CCalculate24AppView::~CCalculate24AppView
EXTRN	??3@YAXPAX@Z:NEAR				; operator delete
;	COMDAT ??_GCCalculate24AppView@@UAEPAXI@Z
_TEXT	SEGMENT
___flags$ = 8
_this$ = -4
??_GCCalculate24AppView@@UAEPAXI@Z PROC NEAR		; CCalculate24AppView::`scalar deleting destructor', COMDAT
	push	ebp
	mov	ebp, esp
	push	ecx
	mov	DWORD PTR _this$[ebp], ecx
	mov	ecx, DWORD PTR _this$[ebp]
	call	??1CCalculate24AppView@@UAE@XZ		; CCalculate24AppView::~CCalculate24AppView
	mov	eax, DWORD PTR ___flags$[ebp]
	and	eax, 1
	test	eax, eax
	je	SHORT $L26373
	mov	ecx, DWORD PTR _this$[ebp]
	push	ecx
	call	??3@YAXPAX@Z				; operator delete
	add	esp, 4
$L26373:
	mov	eax, DWORD PTR _this$[ebp]
	mov	esp, ebp
	pop	ebp
	ret	4
??_GCCalculate24AppView@@UAEPAXI@Z ENDP			; CCalculate24AppView::`scalar deleting destructor'
_TEXT	ENDS
EXTRN	??1CCoeControl@@UAE@XZ:NEAR			; CCoeControl::~CCoeControl
_TEXT	SEGMENT
_this$ = -4
??1CCalculate24AppView@@UAE@XZ PROC NEAR		; CCalculate24AppView::~CCalculate24AppView

; 36   :     {

	push	ebp
	mov	ebp, esp
	push	ecx
	mov	DWORD PTR _this$[ebp], ecx
	mov	eax, DWORD PTR _this$[ebp]
	mov	DWORD PTR [eax], OFFSET FLAT:??_7CCalculate24AppView@@6BCBase@@@ ; CCalculate24AppView::`vftable'
	mov	ecx, DWORD PTR _this$[ebp]
	mov	DWORD PTR [ecx+4], OFFSET FLAT:??_7CCalculate24AppView@@6BMObjectProvider@@@ ; CCalculate24AppView::`vftable'

; 37   :     // Add any destruction code here
; 38   :     }

	mov	ecx, DWORD PTR _this$[ebp]
	call	??1CCoeControl@@UAE@XZ			; CCoeControl::~CCoeControl
	mov	esp, ebp
	pop	ebp
	ret	0
??1CCalculate24AppView@@UAE@XZ ENDP			; CCalculate24AppView::~CCalculate24AppView
_TEXT	ENDS
EXTRN	?Rect@CCoeControl@@QBE?AVTRect@@XZ:NEAR		; CCoeControl::Rect
EXTRN	?SystemGc@CCoeControl@@IBEAAVCWindowGc@@XZ:NEAR	; CCoeControl::SystemGc
_TEXT	SEGMENT
_this$ = -24
_gc$ = -4
$T26562 = -20
?Draw@CCalculate24AppView@@UBEXABVTRect@@@Z PROC NEAR	; CCalculate24AppView::Draw

; 41   :     {

	push	ebp
	mov	ebp, esp
	sub	esp, 24					; 00000018H
	mov	DWORD PTR _this$[ebp], ecx

; 42   :     // Clear the screen
; 43   :     CWindowGc& gc = SystemGc();

	mov	ecx, DWORD PTR _this$[ebp]
	call	?SystemGc@CCoeControl@@IBEAAVCWindowGc@@XZ ; CCoeControl::SystemGc
	mov	DWORD PTR _gc$[ebp], eax

; 44   :     gc.Clear(Rect());

	lea	eax, DWORD PTR $T26562[ebp]
	push	eax
	mov	ecx, DWORD PTR _this$[ebp]
	call	?Rect@CCoeControl@@QBE?AVTRect@@XZ	; CCoeControl::Rect
	push	eax
	mov	ecx, DWORD PTR _gc$[ebp]
	mov	edx, DWORD PTR [ecx]
	mov	ecx, DWORD PTR _gc$[ebp]
	call	DWORD PTR [edx+172]

; 45   :     }

	mov	esp, ebp
	pop	ebp
	ret	4
?Draw@CCalculate24AppView@@UBEXABVTRect@@@Z ENDP	; CCalculate24AppView::Draw
_TEXT	ENDS
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -