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

📄 subtitle.asm

📁 tcpmp外挂字幕插件subs_src 源码
💻 ASM
📖 第 1 页 / 共 2 页
字号:

	ENDP  ; |xsubs_load|

	EXPORT	|xsubs_draw|
	IMPORT	|DrawTextW|
	IMPORT	|wcschr|
	IMPORT	|wcslen|
	IMPORT	|SetBkMode|
	IMPORT	|SetTextColor|
	IMPORT	|Rectangle|
	IMPORT	|CreateSolidBrush|
	IMPORT	|SelectObject|
	IMPORT	|CreatePen|
	IMPORT	|__imp___rt_sdiv|

	AREA	|.pdata|, PDATA
|$T36711| DCD	|$LN15@xsubs_draw|
	DCD	0x40011004
; Function compile flags: /Odsp

	AREA	|.text|, CODE, ARM

|xsubs_draw| PROC
; Line 77
|$LN15@xsubs_draw|
	mov         r12, sp
	stmdb       sp!, {r0 - r2}
	stmdb       sp!, {r12, lr}
	sub         sp, sp, #0x29, 28
|$M36708|
; Line 85
	mov         r2, #0
	mov         r1, #0
	mov         r0, #5
	bl          CreatePen
	str         r0, [sp, #0x248]
	ldr         r1, [sp, #0x248]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x24C]
	ldr         r3, [sp, #0x24C]
	str         r3, [sp, #0x24]
; Line 86
	mov         r0, #0
	bl          CreateSolidBrush
	str         r0, [sp, #0x250]
	ldr         r1, [sp, #0x250]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x254]
	ldr         r3, [sp, #0x254]
	str         r3, [sp, #0x30]
; Line 87
	ldr         r3, [sp, #0x2A0]
	cmp         r3, #0
	beq         |$LN10@xsubs_draw|
; Line 89
	mov         r3, #0
	str         r3, [sp, #0xC]
; Line 90
	mov         r3, #0xF0
	str         r3, [sp, #0x14]
; Line 91
	mov         r3, #0x32
	str         r3, [sp, #0x10]
; Line 92
	mov         r3, #0x50
	str         r3, [sp, #0x18]
; Line 93
	ldr         r3, [sp, #0x18]
	str         r3, [sp]
	ldr         r3, [sp, #0x14]
	ldr         r2, [sp, #0x10]
	ldr         r1, [sp, #0xC]
	ldr         r0, [sp, #0x298]
	bl          Rectangle
; Line 95
	b           |$LN9@xsubs_draw|
|$LN10@xsubs_draw|
; Line 97
	mov         r3, #0
	str         r3, [sp, #0xC]
; Line 98
	mov         r3, #0x1E
	str         r3, [sp, #0x14]
; Line 99
	mov         r3, #0x32
	str         r3, [sp, #0x10]
; Line 100
	mov         r3, #1, 24
	orr         r3, r3, #0xE
	str         r3, [sp, #0x18]
; Line 101
	ldr         r3, [sp, #0x18]
	str         r3, [sp]
	ldr         r3, [sp, #0x14]
	ldr         r2, [sp, #0x10]
	ldr         r1, [sp, #0xC]
	ldr         r0, [sp, #0x298]
	bl          Rectangle
|$LN9@xsubs_draw|
; Line 103
	mvn         r1, #0xFF, 8
	ldr         r0, [sp, #0x298]
	bl          SetTextColor
; Line 104
	mov         r1, #1
	ldr         r0, [sp, #0x298]
	bl          SetBkMode
; Line 105
	ldr         r1, [sp, #0x29C]
	mov         r3, #0x10
	mul         r2, r1, r3
	ldr         r3, [pc, #0x324]
	add         r3, r3, #4
	add         r3, r3, r2
	ldr         r3, [r3]
	str         r3, [sp, #4]
; Line 106
	mov         r3, #0
	str         r3, [sp, #0x28]
|$LN8@xsubs_draw|
; Line 107
	ldr         r0, [sp, #4]
	bl          wcslen
	str         r0, [sp, #0x258]
	ldr         r3, [sp, #0x258]
	cmp         r3, #0
	beq         |$LN7@xsubs_draw|
; Line 109
	ldr         r3, [sp, #4]
	str         r3, [sp, #0x1C]
; Line 110
	ldr         r0, [sp, #0x1C]
	bl          wcslen
	str         r0, [sp, #0x25C]
	ldr         r3, [sp, #0x25C]
	cmp         r3, #0x1F
	bcs         |$LN6@xsubs_draw|
	ldr         r0, [sp, #0x1C]
	bl          wcslen
	str         r0, [sp, #0x260]
	ldr         r1, [sp, #0x260]
	mov         r3, #2
	mul         r2, r1, r3
	ldr         r3, [sp, #0x1C]
	add         r3, r3, r2
	str         r3, [sp, #4]
	b           |$LN5@xsubs_draw|
|$LN6@xsubs_draw|
; Line 111
	mov         r1, #0x20
	ldr         r3, [sp, #0x1C]
	add         r0, r3, #0x3C
	bl          wcschr
	str         r0, [sp, #0x264]
	ldr         r3, [sp, #0x264]
	str         r3, [sp, #4]
|$LN5@xsubs_draw|
; Line 112
	ldr         r3, [sp, #4]
	cmp         r3, #0
	bne         |$LN4@xsubs_draw|
	ldr         r0, [sp, #0x1C]
	bl          wcslen
	str         r0, [sp, #0x268]
	ldr         r1, [sp, #0x268]
	mov         r3, #2
	mul         r2, r1, r3
	ldr         r3, [sp, #0x1C]
	add         r3, r3, r2
	str         r3, [sp, #4]
|$LN4@xsubs_draw|
; Line 113
	ldr         r3, [sp, #0x2A0]
	cmp         r3, #0
	beq         |$LN3@xsubs_draw|
; Line 115
	mov         r3, #0
	str         r3, [sp, #0xC]
; Line 116
	mov         r3, #0xF0
	str         r3, [sp, #0x14]
; Line 117
	ldr         r2, [sp, #0x28]
	mov         r3, #0xA
	mul         r3, r2, r3
	add         r3, r3, #0x32
	str         r3, [sp, #0x10]
; Line 118
	ldr         r2, [sp, #0x28]
	mov         r3, #0xA
	mul         r3, r2, r3
	add         r3, r3, #0x3C
	str         r3, [sp, #0x18]
; Line 119
	ldr         r3, [pc, #0x214]
	ldr         r1, [r3]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x26C]
	ldr         r3, [sp, #0x26C]
	str         r3, [sp, #8]
; Line 120
	mov         r3, #2, 22
	orr         r3, r3, #1
	str         r3, [sp]
	add         r3, sp, #0xC
	ldr         r1, [sp, #4]
	ldr         r2, [sp, #0x1C]
	sub         r2, r1, r2
	mov         r2, r2, asr #1
	ldr         r1, [sp, #0x1C]
	ldr         r0, [sp, #0x298]
	bl          DrawTextW
; Line 123
	ldr         r1, [sp, #8]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x270]
	ldr         r3, [sp, #0x270]
	str         r3, [sp, #8]
; Line 125
	b           |$LN2@xsubs_draw|
|$LN3@xsubs_draw|
; Line 127
	mov         r3, #0
	str         r3, [sp, #0xC]
; Line 128
	mov         r3, #0xA
	str         r3, [sp, #0x14]
; Line 129
	mov         r3, #0x32
	str         r3, [sp, #0x10]
; Line 130
	mov         r3, #0xA
	str         r3, [sp, #0x18]
; Line 131
	ldr         r3, [pc, #0x190]
	ldr         r1, [r3]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x274]
	ldr         r3, [sp, #0x274]
	str         r3, [sp, #8]
; Line 132
	mov         r3, #1, 22
	str         r3, [sp]
	add         r3, sp, #0xC
	ldr         r1, [sp, #4]
	ldr         r2, [sp, #0x1C]
	sub         r2, r1, r2
	mov         r2, r2, asr #1
	ldr         r1, [sp, #0x1C]
	ldr         r0, [sp, #0x298]
	bl          DrawTextW
; Line 133
	ldr         r3, [pc, #0x148]
	ldr         r1, [r3]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x278]
	ldr         r3, [sp, #0x278]
	str         r3, [sp, #8]
; Line 134
	ldr         r1, [sp, #8]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x27C]
	ldr         r3, [sp, #0x27C]
	str         r3, [sp, #8]
; Line 135
	ldr         r3, [pc, #0x114]
	ldr         r1, [r3]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x280]
	ldr         r3, [sp, #0x280]
	str         r3, [sp, #8]
; Line 136
	ldr         r3, [sp, #0x14]
	add         r3, r3, #0x14
	str         r3, [sp, #0x20]
; Line 137
	ldr         r3, [sp, #0x20]
	cmp         r3, #0xDC
	ble         |$LN1@xsubs_draw|
	mov         r3, #0xDC
	str         r3, [sp, #0x20]
|$LN1@xsubs_draw|
; Line 138
	ldr         r2, [sp, #0x28]
	mov         r3, #0xA
	mul         r3, r2, r3
	str         r3, [sp, #0xC]
; Line 139
	ldr         r2, [sp, #0x28]
	mov         r3, #0xA
	mul         r3, r2, r3
	add         r3, r3, #0xA
	str         r3, [sp, #0x14]
; Line 140
	ldr         r3, [sp, #0x20]
	rsb         r1, r3, #5, 26
	mov         r0, #2
	ldr         r3, [pc, #0xA4]
	ldr         r3, [r3]
	mov         lr, pc
	mov         pc, r3
	str         r0, [sp, #0x10]
; Line 141
	ldr         r3, [sp, #0x10]
	rsb         r3, r3, #5, 26
	str         r3, [sp, #0x18]
; Line 142
	mov         r3, #2, 22
	orr         r3, r3, #8
	str         r3, [sp]
	add         r3, sp, #0xC
	ldr         r1, [sp, #4]
	ldr         r2, [sp, #0x1C]
	sub         r2, r1, r2
	mov         r2, r2, asr #1
	ldr         r1, [sp, #0x1C]
	ldr         r0, [sp, #0x298]
	bl          DrawTextW
; Line 143
	ldr         r1, [sp, #8]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x284]
	ldr         r3, [sp, #0x284]
	str         r3, [sp, #8]
|$LN2@xsubs_draw|
; Line 145
	ldr         r3, [sp, #0x28]
	add         r3, r3, #1
	str         r3, [sp, #0x28]
; Line 146
	b           |$LN8@xsubs_draw|
|$LN7@xsubs_draw|
; Line 147
	ldr         r1, [sp, #0x24]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x288]
	ldr         r3, [sp, #0x288]
	str         r3, [sp, #0x24]
; Line 148
	ldr         r1, [sp, #0x30]
	ldr         r0, [sp, #0x298]
	bl          SelectObject
	str         r0, [sp, #0x28C]
	ldr         r3, [sp, #0x28C]
	str         r3, [sp, #0x30]
; Line 149
	add         sp, sp, #0x29, 28
	ldmia       sp, {sp, pc}
|$LN16@xsubs_draw|
	DCD         |__imp___rt_sdiv|
	DCD         |hfont2|
	DCD         |hfont1|
	DCD         |xsubs|
|$M36709|

	ENDP  ; |xsubs_draw|

	EXPORT	|xsubs_free|
	IMPORT	|DeleteObject|

	AREA	|.pdata|, PDATA
|$T36717| DCD	|$LN5@xsubs_free|
	DCD	0x40000f01
; Function compile flags: /Odsp

	AREA	|.text|, CODE, ARM

|xsubs_free| PROC
; Line 152
|$LN5@xsubs_free|
	str         lr, [sp, #-4]!
|$M36714|
; Line 153
	ldr         r3, [pc, #0x2C]
	ldr         r0, [r3]
	bl          DeleteObject
; Line 154
	ldr         r3, [pc, #0x1C]
	ldr         r0, [r3]
	bl          DeleteObject
; Line 155
	ldr         r3, [pc, #0xC]
	add         r0, r3, #1, 18
	ldr         r0, [r0, #4]
	bl          free
; Line 156
	ldr         pc, [sp], #4
|$LN6@xsubs_free|
	DCD         |xsubs|
	DCD         |hfont2|
	DCD         |hfont1|
|$M36715|

	ENDP  ; |xsubs_free|

	END

⌨️ 快捷键说明

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