📄 msgout.cod
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.4345
TTL F:\WM602\PLATFORM\GALAXYII\Platform\MAINSTONEII\SRC\DRIVERS\touch\.\MSGOUT.c
CODE32
00000 AREA |.drectve|, DRECTVE
DCB "/SECTION:share,RWS "
DCB "-defaultlib:coredll.lib "
DCB "-defaultlib:corelibc.lib "
EXPORT |g_pVirtureBuffer| [ DATA ]
EXPORT |g_dwPhysBuffer| [ DATA ]
EXPORT |g_dwCurrentLength| [ DATA ]
EXPORT |g_dwTotalLength| [ DATA ]
EXPORT |g_nMsgNumber| [ DATA ]
EXPORT |g_nRefCount| [ DATA ]
EXPORT |g_bEnableAddTime| [ DATA ]
00000 AREA |.data|, DATA
COMMON |g_szMsgFileName|, 0x208
COMMON |g_WriteBufferCS|, 0x14
|g_bEnableAddTime| DCD 0x1
00000 AREA |share|, DATA
|g_nRefCount| DCD 0x0
|g_nMsgNumber| DCD 0x0
|g_dwTotalLength| DCD 0x0
|g_dwCurrentLength| DCD 0x0
|g_dwPhysBuffer| DCD 0x0
|g_pVirtureBuffer| DCD 0x0
EXPORT |GetCurrentProcessId|
; File f:\wm602\public\common\sdk\inc\kfuncs.h
00000 AREA |.text| { |GetCurrentProcessId| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$GetCurrentProcessId|, PDATA, SELECTION=5, ASSOC=|.text| { |GetCurrentProcessId| } ; comdat associative
|$T37496| DCD |$L37495|
DCD 0x40000400
; Function compile flags: /Ogsy
00000 AREA |.text| { |GetCurrentProcessId| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |GetCurrentProcessId| PROC
; 324 : _inline DWORD GetCurrentProcessId(void) {
00000 |$L37495|
00000 |$M37493|
; 325 : return ((DWORD)(((HANDLE *)(PUserKData+SYSHANDLE_OFFSET))[SH_CURPROC]));
00000 e3a0300c mov r3, #0xC
00004 e2433b0e sub r3, r3, #0xE, 22
00008 e5930000 ldr r0, [r3]
; 326 : }
0000c e12fff1e bx lr
00010 |$M37494|
ENDP ; |GetCurrentProcessId|
EXPORT |AllocMsgOutBuffer|
EXPORT |??_C@_1CK@JPPGDOHG@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAh?$AAa?$AAs?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt?$AAe?$AAd?$AA?$AN?$AA?6@| [ DATA ] ; `string'
EXPORT |??_C@_1DC@CIIOOELO@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAw?$AAi?$AAl?$AAl?$AA?5?$AAb?$AAe?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt@| [ DATA ] ; `string'
EXPORT |??_C@_1FE@ILBDNCJA@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?2?$AA?$CF?$AA0?$AA4?$AAd?$AA_?$AA?$CF?$AA0?$AA2?$AAd?$AA_?$AA?$CF?$AA0@| [ DATA ] ; `string'
EXPORT |??_C@_1BA@LKFFCPLL@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?$AA@| [ DATA ] ; `string'
IMPORT |wsprintfW|
IMPORT |CreateDirectoryW|
IMPORT |InitializeCriticalSection|
IMPORT |NKDbgPrintfW|
IMPORT |__security_cookie|
IMPORT |__security_check_cookie|
IMPORT |wcscpy|
IMPORT |GetLocalTime|
IMPORT |AllocPhysMem|
IMPORT |DeleteFileW|
; File f:\wm602\platform\galaxyii\platform\mainstoneii\src\drivers\touch\msgout.c
00000 AREA |.text| { |AllocMsgOutBuffer| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$AllocMsgOutBuffer|, PDATA, SELECTION=5, ASSOC=|.text| { |AllocMsgOutBuffer| } ; comdat associative
|$T37509| DCD |$L37508|
DCD 0x40004a02
00000 AREA |.rdata| { |??_C@_1FE@ILBDNCJA@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?2?$AA?$CF?$AA0?$AA4?$AAd?$AA_?$AA?$CF?$AA0?$AA2?$AAd?$AA_?$AA?$CF?$AA0@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1FE@ILBDNCJA@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?2?$AA?$CF?$AA0?$AA4?$AAd?$AA_?$AA?$CF?$AA0?$AA2?$AAd?$AA_?$AA?$CF?$AA0@| DCB "\\"
DCB 0x0, "D", 0x0, "B", 0x0, "G", 0x0, "M", 0x0, "S", 0x0, "G"
DCB 0x0, "\\", 0x0, "%", 0x0, "0", 0x0, "4", 0x0, "d", 0x0, "_"
DCB 0x0, "%", 0x0, "0", 0x0, "2", 0x0, "d", 0x0, "_", 0x0, "%"
DCB 0x0, "0", 0x0, "2", 0x0, "d", 0x0, "_", 0x0, "%", 0x0, "0"
DCB 0x0, "2", 0x0, "d", 0x0, "_", 0x0, "%", 0x0, "0", 0x0, "2"
DCB 0x0, "d", 0x0, "_", 0x0, "%", 0x0, "0", 0x0, "2", 0x0, "d"
DCB 0x0, ".", 0x0, "t", 0x0, "x", 0x0, "t", 0x0, 0x0, 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1BA@LKFFCPLL@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1BA@LKFFCPLL@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?$AA@| DCB "\\"
DCB 0x0, "D", 0x0, "B", 0x0, "G", 0x0, "M", 0x0, "S", 0x0, "G"
DCB 0x0, 0x0, 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1DC@CIIOOELO@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAw?$AAi?$AAl?$AAl?$AA?5?$AAb?$AAe?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1DC@CIIOOELO@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAw?$AAi?$AAl?$AAl?$AA?5?$AAb?$AAe?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt@| DCB "B"
DCB 0x0, "u", 0x0, "f", 0x0, "f", 0x0, "e", 0x0, "r", 0x0, " "
DCB 0x0, "w", 0x0, "i", 0x0, "l", 0x0, "l", 0x0, " ", 0x0, "b"
DCB 0x0, "e", 0x0, " ", 0x0, "C", 0x0, "r", 0x0, "e", 0x0, "a"
DCB 0x0, "t", 0x0, "e", 0x0, "d", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
DCB 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1CK@JPPGDOHG@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAh?$AAa?$AAs?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt?$AAe?$AAd?$AA?$AN?$AA?6@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1CK@JPPGDOHG@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAh?$AAa?$AAs?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt?$AAe?$AAd?$AA?$AN?$AA?6@| DCB "B"
DCB 0x0, "u", 0x0, "f", 0x0, "f", 0x0, "e", 0x0, "r", 0x0, " "
DCB 0x0, "h", 0x0, "a", 0x0, "s", 0x0, " ", 0x0, "C", 0x0, "r"
DCB 0x0, "e", 0x0, "a", 0x0, "t", 0x0, "e", 0x0, "d", 0x0, 0xd
DCB 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'
; Function compile flags: /Ogsy
00000 AREA |.text| { |AllocMsgOutBuffer| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |AllocMsgOutBuffer| PROC
; 42 : {
00000 |$L37508|
00000 e92d40f0 stmdb sp!, {r4 - r7, lr}
00004 e24ddf8b sub sp, sp, #0x8B, 30
00008 |$M37506|
00008 e1a04001 mov r4, r1
0000c e1a07000 mov r7, r0
00010 e59f310c ldr r3, [pc, #0x10C]
00014 e5933000 ldr r3, [r3]
00018 e58d3228 str r3, [sp, #0x228]
; 43 : TCHAR szFileNameTmp[MAX_PATH] ;
; 44 : SYSTEMTIME systemtime ;
; 45 :
; 46 : g_nRefCount ++ ;
0001c e59f60fc ldr r6, [pc, #0xFC]
00020 e5963000 ldr r3, [r6]
; 47 :
; 48 : if ( g_pVirtureBuffer )
00024 e5962014 ldr r2, [r6, #0x14]
00028 e2833001 add r3, r3, #1
0002c e5863000 str r3, [r6]
00030 e3520000 cmp r2, #0
00034 0a000002 beq |$L37350|
; 49 : {
; 50 : NKDbgPrintfW(TEXT("Buffer has Created\r\n")) ;
00038 e59f00dc ldr r0, [pc, #0xDC]
0003c eb000000 bl NKDbgPrintfW
; 51 : return ;
00040 ea00002b b |$L37347|
00044 |$L37350|
; 52 : }
; 53 : else
; 54 : {
; 55 : NKDbgPrintfW(TEXT("Buffer will be Created\r\n")) ;
00044 e59f00cc ldr r0, [pc, #0xCC]
00048 eb000000 bl NKDbgPrintfW
; 56 : }
; 57 :
; 58 : if (szFileName == NULL)
0004c e3540000 cmp r4, #0
00050 1a000012 bne |$L37355|
; 59 : {
; 60 : GetLocalTime( &systemtime ) ;
00054 e28d0010 add r0, sp, #0x10
00058 eb000000 bl GetLocalTime
; 61 :
; 62 : wsprintf(szFileNameTmp, TEXT("\\DBGMSG\\%04d_%02d_%02d_%02d_%02d_%02d.txt"),
; 63 : systemtime.wYear, systemtime.wMonth, systemtime.wDay,
; 64 : systemtime.wHour, systemtime.wMinute, systemtime.wSecond) ;
0005c e1dd01bc ldrh r0, [sp, #0x1C]
00060 e1dde1ba ldrh lr, [sp, #0x1A]
00064 e1dd41b8 ldrh r4, [sp, #0x18]
00068 e1dd51b6 ldrh r5, [sp, #0x16]
0006c e1dd31b2 ldrh r3, [sp, #0x12]
00070 e1dd21b0 ldrh r2, [sp, #0x10]
00074 e59f1098 ldr r1, [pc, #0x98]
00078 e58d000c str r0, [sp, #0xC]
0007c e28d0020 add r0, sp, #0x20
00080 e58de008 str lr, [sp, #8]
00084 e58d4004 str r4, [sp, #4]
00088 e58d5000 str r5, [sp]
0008c eb000000 bl wsprintfW
; 65 :
; 66 : szFileName = szFileNameTmp ;
; 67 :
; 68 : CreateDirectory(TEXT("\\DBGMSG"), NULL) ;
00090 e59f0078 ldr r0, [pc, #0x78]
00094 e3a01000 mov r1, #0
00098 e28d4020 add r4, sp, #0x20
0009c eb000000 bl CreateDirectoryW
000a0 |$L37355|
; 69 : }
; 70 :
; 71 : DeleteFile(szFileName) ;
000a0 e1a00004 mov r0, r4
000a4 eb000000 bl DeleteFileW
; 72 :
; 73 : _tcscpy(g_szMsgFileName, szFileName) ;
000a8 e59f005c ldr r0, [pc, #0x5C]
000ac e1a01004 mov r1, r4
000b0 eb000000 bl wcscpy
; 74 :
; 75 : g_pVirtureBuffer = (void *)AllocPhysMem(dwLength, PAGE_READWRITE, 0, 0, &g_dwPhysBuffer) ;
000b4 e2863010 add r3, r6, #0x10
000b8 e58d3000 str r3, [sp]
000bc e3a03000 mov r3, #0
000c0 e3a02000 mov r2, #0
000c4 e3a01004 mov r1, #4
000c8 e1a00007 mov r0, r7
000cc eb000000 bl AllocPhysMem
000d0 e1a03000 mov r3, r0
; 76 : g_dwCurrentLength = 0 ;
; 77 : g_dwTotalLength = dwLength ;
; 78 : g_nMsgNumber = 0 ;
; 79 :
; 80 : InitializeCriticalSection(&g_WriteBufferCS) ;
000d4 e59f002c ldr r0, [pc, #0x2C]
000d8 e3a02000 mov r2, #0
000dc e3a01000 mov r1, #0
000e0 e5863014 str r3, [r6, #0x14]
000e4 e586200c str r2, [r6, #0xC]
000e8 e5867008 str r7, [r6, #8]
000ec e5861004 str r1, [r6, #4]
000f0 eb000000 bl InitializeCriticalSection
000f4 |$L37347|
000f4 e59d0228 ldr r0, [sp, #0x228]
000f8 eb000000 bl __security_check_cookie
; 81 : }
000fc e28ddf8b add sp, sp, #0x8B, 30
00100 e8bd40f0 ldmia sp!, {r4 - r7, lr}
00104 e12fff1e bx lr
00108 |$L37511|
00108 00000000 DCD |g_WriteBufferCS|
0010c 00000000 DCD |g_szMsgFileName|
00110 00000000 DCD |??_C@_1BA@LKFFCPLL@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?$AA@|
00114 00000000 DCD |??_C@_1FE@ILBDNCJA@?$AA?2?$AAD?$AAB?$AAG?$AAM?$AAS?$AAG?$AA?2?$AA?$CF?$AA0?$AA4?$AAd?$AA_?$AA?$CF?$AA0?$AA2?$AAd?$AA_?$AA?$CF?$AA0@|
00118 00000000 DCD |??_C@_1DC@CIIOOELO@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAw?$AAi?$AAl?$AAl?$AA?5?$AAb?$AAe?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt@|
0011c 00000000 DCD |??_C@_1CK@JPPGDOHG@?$AAB?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AAh?$AAa?$AAs?$AA?5?$AAC?$AAr?$AAe?$AAa?$AAt?$AAe?$AAd?$AA?$AN?$AA?6@|
00120 00000000 DCD |g_nRefCount|
00124 00000000 DCD |__security_cookie|
00128 |$M37507|
ENDP ; |AllocMsgOutBuffer|
EXPORT |EnableAddTime|
00000 AREA |.text| { |EnableAddTime| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$EnableAddTime|, PDATA, SELECTION=5, ASSOC=|.text| { |EnableAddTime| } ; comdat associative
|$T37518| DCD |$L37517|
DCD 0x40000400
; Function compile flags: /Ogsy
00000 AREA |.text| { |EnableAddTime| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |EnableAddTime| PROC
; 107 : {
00000 |$L37517|
00000 |$M37515|
; 108 : g_bEnableAddTime = bEnable ;
00000 e59f3004 ldr r3, [pc, #4]
00004 e5830000 str r0, [r3]
; 109 : }
00008 e12fff1e bx lr
0000c |$L37520|
0000c 00000000 DCD |g_bEnableAddTime|
00010 |$M37516|
ENDP ; |EnableAddTime|
EXPORT |ByteToHex|
00000 AREA |.text| { |ByteToHex| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$ByteToHex|, PDATA, SELECTION=5, ASSOC=|.text| { |ByteToHex| } ; comdat associative
|$T37534| DCD |$L37533|
DCD 0x40000d00
; Function compile flags: /Ogsy
00000 AREA |.text| { |ByteToHex| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |ByteToHex| PROC
; 112 : {
00000 |$L37533|
00000 |$M37531|
; 113 : BYTE bHi4Bit = (b & 0xF0) >> 4 ;
00000 e1a03220 mov r3, r0, lsr #4
00004 e20320ff and r2, r3, #0xFF
; 114 : BYTE bLo4Bit = (b & 0x0F) ;
; 115 :
; 116 : cHex[0] = (bHi4Bit > 9) ? ((bHi4Bit-10)+'a') : (bHi4Bit+'0') ;
00008 e3520009 cmp r2, #9
0000c 82822057 addhi r2, r2, #0x57
00010 e200300f and r3, r0, #0xF
00014 92822030 addls r2, r2, #0x30
; 117 : cHex[1] = (bLo4Bit > 9) ? ((bLo4Bit-10)+'a') : (bLo4Bit+'0') ;
00018 e3530009 cmp r3, #9
0001c 82833057 addhi r3, r3, #0x57
00020 85c13001 strhib r3, [r1, #1]
00024 e5c12000 strb r2, [r1]
00028 92833030 addls r3, r3, #0x30
0002c 95c13001 strlsb r3, [r1, #1]
; 118 : }
00030 e12fff1e bx lr
00034 |$M37532|
ENDP ; |ByteToHex|
EXPORT |WriteDbgMsgBufferToFile|
EXPORT |??_C@_1GC@BGBCAIMB@?$AAW?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAF?$AAi?$AAl?$AAe?$AA?0?$AA?5?$AAP?$AAI?$AAD?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AA0@| [ DATA ] ; `string'
EXPORT |??_C@_1EA@DNOAIBE@?$AAW?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAF?$AAi?$AAl?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAP@| [ DATA ] ; `string'
IMPORT |WriteFile|
IMPORT |SetFilePointer|
IMPORT |CreateStaticMapping|
IMPORT |CloseHandle|
IMPORT |CreateFileW|
; File f:\wm602\public\common\sdk\inc\kfuncs.h
00000 AREA |.text| { |WriteDbgMsgBufferToFile| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$WriteDbgMsgBufferToFile|, PDATA, SELECTION=5, ASSOC=|.text| { |WriteDbgMsgBufferToFile| } ; comdat associative
|$T37553| DCD |$L37552|
DCD 0x40004002
00000 AREA |.rdata| { |??_C@_1EA@DNOAIBE@?$AAW?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAF?$AAi?$AAl?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAP@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EA@DNOAIBE@?$AAW?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAF?$AAi?$AAl?$AAe?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?0?$AA?5?$AAP@| DCB "W"
DCB 0x0, "r", 0x0, "i", 0x0, "t", 0x0, "e", 0x0, " ", 0x0, "F"
DCB 0x0, "i", 0x0, "l", 0x0, "e", 0x0, " ", 0x0, "F", 0x0, "a"
DCB 0x0, "i", 0x0, "l", 0x0, "e", 0x0, "d", 0x0, ",", 0x0, " "
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -