PPCGeeks Forums HTC Arrive HTC HD2 HTC Thunderbolt HTC Touch Pro 2 HTC Evo 4G HTC Evo 3D Samsung Galaxy S II Motorola Droid X Apple iPhone Blackberry
Go Back   PPCGeeks > Windows Mobile > Windows Mobile Development > ROM/Kitchen Development


Closed Thread
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 01-26-2007, 08:05 PM
colonel's Avatar
Retired Staff
Pocket PC: HTC Harrier, HTC Apache, HTC Titan, HTC Vogue....
Carrier: Sprint
Location: Shawnee, KS
Join Date: Jan 2007
Posts: 2,434
Reputation: 508
colonel knows their stuffcolonel knows their stuffcolonel knows their stuffcolonel knows their stuffcolonel knows their stuffcolonel knows their stuff
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Good hopefully free app for viewing .dlls?

I have tried reshack, but too many times it does not read anything from .dlls I am trying to look at. Is there anything else out there that is a free app?
  #2 (permalink)  
Old 02-08-2007, 12:13 AM
verizonguy's Avatar
Regular 'Geeker
Pocket PC: XV6800
Carrier: Verizon Wireless
Location: US
Join Date: Feb 2007
Posts: 487
Reputation: 47
verizonguy is becoming a great contributor
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Are you trying to disassemble the dlls to view the ASM, colonel?

I can hook you up with the best disassembler out there which will disassemble them for you. You'll need to be able to understand a bit of ASM to make sense of it, but I've seen some of your contributions to the ppc community so I know you have an aptitude for it if you don't already know how :) Shoot me a PM if you'd like a copy for free.

Here is an example, the msvcr80.dll found in the windows directory of the 6700 starts like this when disassembled:

.text:10001000 ; File Name   : C:\Documents and Settings\User\Desktop\msvcr80.dll
.text:10001000 ; Format      : Portable executable for ARMI (PE)
.text:10001000 ; Imagebase   : 10000000
.text:10001000 ; Section 1. (virtual address 00001000)
.text:10001000 ; Virtual size                  : 00006A1C (  27164.)
.text:10001000 ; Section size in file          : 00006C00 (  27648.)
.text:10001000 ; Offset to raw data for section: 00000400
.text:10001000 ; Flags 60000020: Text Executable Readable
.text:10001000 ; Alignment     : default
.text:10001000 ; Processor       : ARM
.text:10001000 ; Target assembler: Generic assembler for ARM
.text:10001000 ; Byte sex        : Little endian
.text:10001000 ; ---------------------------------------------------------------------------
.text:10001000 ; Segment type: Pure code
.text:10001000                 AREA .text, CODE, READWRITE, ALIGN=4
.text:10001000                 ; ORG 0x10001000
.text:10001000                 CODE32
.text:10001000 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:10001000                 EXPORT start
.text:10001000 start                                   ; DATA XREF: .pdata:1000A000o
.text:10001000                 MOV     R0, #1
.text:10001004                 BX      LR
.text:10001004 ; End of function start
.text:10001008 ; Exported entry  23. calloc
.text:10001008 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:10001008                 EXPORT calloc
.text:10001008 calloc
.text:10001008                 LDR     R12, =COREDLL_1346
.text:1000100C                 LDR     R12, [R12]
.text:10001010                 BX      R12
.text:10001010 ; End of function calloc
.text:10001010 ; ---------------------------------------------------------------------------
.text:10001014 off_10001014    DCD COREDLL_1346        ; DATA XREF: callocr
.text:10001018 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:10001018 sub_10001018                            ; CODE XREF: _itoa_s+2Cp
.text:10001018                                         ; _itoa_s+44p ...
.text:10001018 var_28          = -0x28
.text:10001018 arg_0           =  0
.text:10001018                 STMFD   SP!, {R4-R11,LR}
.text:1000101C                 SUB     SP, SP, #4
.text:10001020                 MOVS    R7, R1
.text:10001024                 MOV     R1, R0
.text:10001028                 MOV     R9, R3
.text:1000102C                 MOV     R8, R2
.text:10001030                 BNE     loc_10001060
.text:10001034                 MOV     R5, #0
.text:10001038                 LDR     R4, =_invalid_parameter
.text:1000103C                 STR     R5, [SP,#0x28+var_28]
.text:10001040                 MOV     R3, #0
.text:10001044                 MOV     R2, #0
.text:10001048                 MOV     R1, #0
.text:1000104C                 MOV     R0, #0
.text:10001050                 MOV     LR, PC
.text:10001054                 BX      R4
.text:10001058                 MOV     R5, #0x16
.text:1000105C                 B       loc_10001150
.text:10001060 ; ---------------------------------------------------------------------------
.text:10001060 loc_10001060                            ; CODE XREF: sub_10001018+18j
.text:10001060                 MOV     R11, #0
.text:10001064                 CMP     R8, #0
.text:10001068                 BNE     loc_10001094
.text:1000106C loc_1000106C                            ; CODE XREF: sub_10001018+A4j
.text:1000106C                 MOV     R5, #0x16
.text:10001070 loc_10001070                            ; CODE XREF: sub_10001018+98j
.text:10001070                                         ; sub_10001018+114j
.text:10001070                 LDR     R4, =_invalid_parameter
.text:10001074                 MOV     R3, #0
.text:10001078                 MOV     R2, #0
.text:1000107C                 MOV     R1, #0
.text:10001080                 MOV     R0, #0
.text:10001084                 STR     R11, [SP,#0x28+var_28]
.text:10001088                 MOV     LR, PC
.text:1000108C                 BX      R4
.text:10001090                 B       loc_10001150
.text:10001094 ; ---------------------------------------------------------------------------
.text:10001094 loc_10001094                            ; CODE XREF: sub_10001018+50j
.text:10001094                 LDR     R2, [SP,#0x28+arg_0]
.text:10001098                 STRB    R11, [R7]
.text:1000109C                 CMP     R2, #0
.text:100010A0                 MOVNE   R3, #2
.text:100010A4                 MOVEQ   R3, #1
.text:100010A8                 CMP     R8, R3
.text:100010AC                 MOVLS   R5, #0x22
.text:100010B0                 BLS     loc_10001070
.text:100010B4                 SUB     R3, R9, #2
.text:100010B8                 CMP     R3, #0x22
.text:100010BC                 BHI     loc_1000106C
.text:100010C0                 CMP     R2, #0
.text:100010C4                 MOVNE   R3, #0x2D
.text:100010C8                 MOV     R4, R7
.text:100010CC                 STRNEB  R3, [R4],#1
.text:100010D0                 LDR     R10, =__rt_udiv
.text:100010D4                 MOV     R6, #0
.text:100010D8                 MOV     R5, R4
.text:100010DC                 MOVNE   R6, #1
.text:100010E0                 RSBNE   R1, R1, #0
.text:100010E4 loc_100010E4                            ; CODE XREF: sub_10001018+104j
.text:100010E4                 LDR     R3, [R10]
.text:100010E8                 MOV     R0, R9
.text:100010EC                 MOV     LR, PC
.text:100010F0                 BX      R3
.text:100010F4                 MOV     R3, R1
.text:100010F8                 CMP     R3, #9
.text:100010FC                 ADDHI   R3, R3, #0x57
.text:10001100                 ADDLS   R3, R3, #0x30
.text:10001104                 MOV     R1, R0
.text:10001108                 STRB    R3, [R4],#1
.text:1000110C                 ADD     R6, R6, #1
.text:10001110                 CMP     R1, #0
.text:10001114                 BEQ     loc_10001120
.text:10001118                 CMP     R6, R8
.text:1000111C                 BCC     loc_100010E4
.text:10001120 loc_10001120                            ; CODE XREF: sub_10001018+FCj
.text:10001120                 CMP     R6, R8
.text:10001124                 STRCSB  R11, [R7]
.text:10001128                 MOVCS   R5, #0x22
.text:1000112C                 BCS     loc_10001070
.text:10001130                 STRB    R11, [R4],#-1
.text:10001134 loc_10001134                            ; CODE XREF: sub_10001018+130j
.text:10001134                 LDRSB   R3, [R5]
.text:10001138                 LDRSB   R2, [R4]
.text:1000113C                 STRB    R3, [R4],#-1
.text:10001140                 STRB    R2, [R5],#1
.text:10001144                 CMP     R5, R4
.text:10001148                 BCC     loc_10001134
.text:1000114C                 MOV     R5, #0
.text:10001150 loc_10001150                            ; CODE XREF: sub_10001018+44j
.text:10001150                                         ; sub_10001018+78j
.text:10001150                 MOV     R0, R5
.text:10001154                 ADD     SP, SP, #4
.text:10001158                 LDMFD   SP!, {R4-R11,LR}
.text:1000115C                 BX      LR
.text:1000115C ; End of function sub_10001018
.text:1000115C ; ---------------------------------------------------------------------------
.text:10001160 off_10001160    DCD __rt_udiv           ; DATA XREF: sub_10001018+B8r
.text:10001164 off_10001164    DCD _invalid_parameter  ; DATA XREF: sub_10001018+20r
.text:10001164                                         ; sub_10001018:loc_10001070r
Closed Thread

  PPCGeeks > Windows Mobile > Windows Mobile Development > ROM/Kitchen Development

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

All times are GMT -4. The time now is 06:51 AM.

Powered by vBulletin® ©2000 - 2019, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0
©2012 - PPCGeeks.com