Convertir un fichier de l'hexa, asm en c

Fermé
oandr Messages postés 10 Date d'inscription vendredi 7 mars 2008 Statut Membre Dernière intervention 11 mars 2008 - 9 mars 2008 à 21:58
 bobi - 15 mars 2012 à 09:23
Bonjour,

Voila j'aimerai connaitre un moyen simple de convertir la totalité d'un fichier en hexadecimal en langage C. Ou si cela n'est pas possible de convertir de l'hexadecimal en ASCII.
J'ai récupéré un fichier .hex issus d'un compilateur pour pic 16F84A. Je l'ai converti en fichier .asm grâce à un logiciel PIC Disam. Mais je voudrais pouvoir retrouver dans ça version initiale en l'occurrence le langage c.

Par avance merci de vos réponse.
A voir également:

8 réponses

oandr Messages postés 10 Date d'inscription vendredi 7 mars 2008 Statut Membre Dernière intervention 11 mars 2008 4
9 mars 2008 à 22:48
voila mon code si vous pouvez m'éclairer

processor 16F84A
#include <P16F84A.INC>
__config _CP_OFF & _PWRTE_ON & _WDT_ON & _XT_OSC ; 0x3D75

; RAM-Variable
LRAM_0x20 equ 0x20
LRAM_0x21 equ 0x21
LRAM_0x22 equ 0x22
LRAM_0x23 equ 0x23
LRAM_0x24 equ 0x24
LRAM_0x25 equ 0x25
LRAM_0x26 equ 0x26
LRAM_0x27 equ 0x27
LRAM_0x28 equ 0x28
LRAM_0x35 equ 0x35
LRAM_0x36 equ 0x36
LRAM_0x38 equ 0x38
LRAM_0x3A equ 0x3A
LRAM_0x3B equ 0x3B

; Program

Org 0x0000

; Reset-Vector
GOTO LADR_0x00CE
LADR_0x0001
MOVWF LRAM_0x36
BSF FSR,7
IORWF INDF,F
; Interrupt-Vector
BCF FSR,7
CLRF LRAM_0x22
BTFSS LRAM_0x20,0
MOVWF LRAM_0x22
MOVF LRAM_0x36,W
XORWF LRAM_0x22,F
MOVLW 0x01
MOVWF LRAM_0x20
CLRF LRAM_0x21
LADR_0x000D
MOVF INDF,W
ANDWF LRAM_0x36,W
XORWF LRAM_0x22,W
BTFSS STATUS,Z
RETURN
INCF LRAM_0x20,F
BTFSC STATUS,Z
INCFSZ LRAM_0x21,F
GOTO LADR_0x000D
RETURN
CLRF LRAM_0x25
LADR_0x0018
MOVWF LRAM_0x24
BSF LRAM_0x35,7
MOVLW 0x27
MOVWF LRAM_0x23
MOVLW 0x10
CALL LADR_0x002A
MOVLW 0x03
MOVWF LRAM_0x23
MOVLW 0xE8
CALL LADR_0x002A
CLRF LRAM_0x23
MOVLW 0x64
CALL LADR_0x002A
CLRF LRAM_0x23
MOVLW 0x0A
CALL LADR_0x002A
MOVF LRAM_0x24,W
GOTO LADR_0x0035
LADR_0x002A
MOVWF LRAM_0x22
MOVF LRAM_0x25,W
MOVWF LRAM_0x21
MOVF LRAM_0x24,W
MOVWF LRAM_0x20
CALL LADR_0x00AD
MOVF LRAM_0x20,W
BTFSS STATUS,Z
BCF LRAM_0x35,7
BTFSC LRAM_0x35,7
RETURN
LADR_0x0035
ADDLW 0x30
LADR_0x0036
MOVWF LRAM_0x26
MOVF LRAM_0x38,W
MOVWF FSR
MOVLW 0x09
MOVWF LRAM_0x27
BCF STATUS,C
LADR_0x003C
CALL LADR_0x0042
RRF LRAM_0x26,F
DECFSZ LRAM_0x27,F
GOTO LADR_0x003C
BSF STATUS,C
GOTO LADR_0x0042
LADR_0x0042
BCF FSR,7
BTFSS LRAM_0x35,3
GOTO LADR_0x0051
MOVF INDF,W
IORWF LRAM_0x36,W
BTFSS LRAM_0x35,2
XORWF LRAM_0x36,W
MOVWF INDF
BSF FSR,7
MOVF INDF,W
IORWF LRAM_0x36,W
BTFSS STATUS,C
XORWF LRAM_0x36,W
MOVWF INDF
GOTO LADR_0x005C
LADR_0x0051
MOVF INDF,W
IORWF LRAM_0x36,W
BTFSS STATUS,C
XORWF LRAM_0x36,W
BTFSC LRAM_0x35,2
XORWF LRAM_0x36,W
MOVWF INDF
BSF FSR,7
COMF LRAM_0x36,W
ANDWF INDF,F
GOTO LADR_0x005C
LADR_0x005C
RLF LRAM_0x35,W
ANDLW 0x06
MOVWF LRAM_0x20
CALL LADR_0x0065
MOVWF LRAM_0x21
INCF LRAM_0x20,F
CALL LADR_0x0065
NOP
GOTO LADR_0x007F
LADR_0x0065
MOVLW 0x00
MOVWF PCLATH ; !!Bank Program-Page-Select
MOVF LRAM_0x20,W
ADDWF PCL,F
RETLW 0x01
RETLW 0x90
RETLW 0x03
RETLW 0x30
RETLW 0x00
RETLW 0x57
RETLW 0x0C
RETLW 0xF4
LADR_0x0071
CLRF LRAM_0x23
LADR_0x0072
MOVWF LRAM_0x22
LADR_0x0073
MOVLW 0xFF
ADDWF LRAM_0x22,F
BTFSS STATUS,C
ADDWF LRAM_0x23,F
BTFSS STATUS,C
GOTO LADR_0x00C9
MOVLW 0x03
MOVWF LRAM_0x21
MOVLW 0xE5
CALL LADR_0x007F
GOTO LADR_0x0073
CLRF LRAM_0x21
LADR_0x007F
ADDLW 0xF6
MOVWF LRAM_0x20
COMF LRAM_0x21,F
BTFSS STATUS,C
GOTO LADR_0x008A
LADR_0x0084
MOVLW 0xFE
LADR_0x0085
NOP
ADDWF LRAM_0x20,F
BTFSC STATUS,C
GOTO LADR_0x0085
ADDWF LRAM_0x20,F
LADR_0x008A
CLRWDT
INCFSZ LRAM_0x21,F
GOTO LADR_0x0084
NOP
BTFSC LRAM_0x20,0
GOTO LADR_0x0090
LADR_0x0090
BTFSC LRAM_0x20,0
GOTO LADR_0x0092
LADR_0x0092
RETURN
LADR_0x0093
BCF STATUS,C
RLF LRAM_0x20,F
RLF LRAM_0x21,F
LADR_0x0096
ADDLW 0xFF
BTFSC STATUS,C
GOTO LADR_0x0093
MOVF LRAM_0x20,W
GOTO LADR_0x00C9
LADR_0x009B
MOVWF LRAM_0x22
MOVLW 0x05
MOVWF LRAM_0x28
MOVF LRAM_0x23,W
SUBWF LRAM_0x21,W
BTFSS STATUS,Z
GOTO LADR_0x00A4
MOVF LRAM_0x22,W
SUBWF LRAM_0x20,W
LADR_0x00A4
MOVLW 0x04
BTFSC STATUS,C
MOVLW 0x01
BTFSC STATUS,Z
MOVLW 0x02
ANDWF LRAM_0x28,W
BTFSS STATUS,Z
MOVLW 0xFF
GOTO LADR_0x00C9
LADR_0x00AD
MOVLW 0x10
MOVWF LRAM_0x26
CLRF LRAM_0x25
CLRF LRAM_0x24
LADR_0x00B1
RLF LRAM_0x21,W
RLF LRAM_0x24,F
RLF LRAM_0x25,F
MOVF LRAM_0x22,W
SUBWF LRAM_0x24,F
MOVF LRAM_0x23,W
BTFSS STATUS,C
INCFSZ LRAM_0x23,W
SUBWF LRAM_0x25,F
BTFSC STATUS,C
GOTO LADR_0x00C3
MOVF LRAM_0x22,W
ADDWF LRAM_0x24,F
MOVF LRAM_0x23,W
BTFSC STATUS,C
INCFSZ LRAM_0x23,W
ADDWF LRAM_0x25,F
BCF STATUS,C
LADR_0x00C3
RLF LRAM_0x20,F
RLF LRAM_0x21,F
DECFSZ LRAM_0x26,F
GOTO LADR_0x00B1
MOVF LRAM_0x20,W
GOTO LADR_0x00C9
LADR_0x00C9
BCF STATUS,IRP
BCF STATUS,RP1 ; !!Bank Register-Bank(2/3)-Select
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
CLRWDT
RETURN
LADR_0x00CE
BSF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVLW 0x04
MOVWF PORTA ; !!Bank!! PORTA - TRISA
CLRF PORTB ; !!Bank!! PORTB - TRISB
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF PORTB,0 ; !!Bank!! PORTB - TRISB
BCF PORTB,2 ; !!Bank!! PORTB - TRISB
BCF PORTB,1 ; !!Bank!! PORTB - TRISB
MOVLW 0x03
MOVWF LRAM_0x23
MOVLW 0xE8
CALL LADR_0x0072
LADR_0x00DA
BSF PORTB,0 ; !!Bank!! PORTB - TRISB
MOVLW 0x01
CALL LADR_0x0071
BSF PORTB,1 ; !!Bank!! PORTB - TRISB
CLRF LRAM_0x20
MOVLW 0x05
MOVWF FSR
MOVLW 0x04
CALL LADR_0x0001
MOVF LRAM_0x20,W
MOVWF LRAM_0x3A
MOVF LRAM_0x21,W
MOVWF LRAM_0x3B
BCF PORTB,0 ; !!Bank!! PORTB - TRISB
BCF PORTB,1 ; !!Bank!! PORTB - TRISB
MOVF LRAM_0x3A,W
MOVWF LRAM_0x20
MOVF LRAM_0x3B,W
MOVWF LRAM_0x21
CLRF LRAM_0x23
MOVLW 0x00
CALL LADR_0x009B
BCF PCLATH,3 ; !!Bank Program-Page-Select
BCF PCLATH,4 ; !!Bank Program-Page-Select
BTFSS STATUS,Z
GOTO LADR_0x0110
BCF PCLATH,3 ; !!Bank Program-Page-Select
BCF PCLATH,4 ; !!Bank Program-Page-Select
MOVLW 0x06
MOVWF LRAM_0x38
MOVLW 0x80
MOVWF LRAM_0x36
MOVLW 0x06
MOVWF LRAM_0x35
MOVLW 0x50
CALL LADR_0x0036
MOVLW 0x61
CALL LADR_0x0036
MOVLW 0x73
CALL LADR_0x0036
MOVLW 0x20
CALL LADR_0x0036
MOVLW 0x64
CALL LADR_0x0036
MOVLW 0x27
CALL LADR_0x0036
MOVLW 0x65
CALL LADR_0x0036
MOVLW 0x63
CALL LADR_0x0036
MOVLW 0x68
CALL LADR_0x0036
MOVLW 0x6F
CALL LADR_0x0036
LADR_0x0110
MOVF LRAM_0x3A,W
MOVWF LRAM_0x20
MOVF LRAM_0x3B,W
MOVWF LRAM_0x21
MOVLW 0x02
CALL LADR_0x0096
MOVWF LRAM_0x3A
MOVF LRAM_0x21,W
MOVWF LRAM_0x3B
MOVLW 0xE8
ADDWF LRAM_0x3A,F
MOVLW 0x03
BTFSC STATUS,C
ADDLW 0x01
ADDWF LRAM_0x3B,F
MOVLW 0x06
MOVWF LRAM_0x38
MOVLW 0x80
MOVWF LRAM_0x36
MOVLW 0x06
MOVWF LRAM_0x35
MOVF LRAM_0x3B,W
MOVWF LRAM_0x25
MOVF LRAM_0x3A,W
CALL LADR_0x0018
MOVLW 0x0D
CALL LADR_0x0036
MOVLW 0x07
MOVWF LRAM_0x23
MOVLW 0xD0
CALL LADR_0x0072
CLRF LRAM_0x3A
CLRF LRAM_0x3B
GOTO LADR_0x00DA
LADR_0x0132
SLEEP
GOTO LADR_0x0132

End
2
Bonjour

J'ai bien peur que ce que tu demandes soit impossible. Il n'y a qu'un expert en assembleur qui pourrait retrouver certaines routines dans du code machine désassemblé. De la a réécrire le programme complet en C ou autre il y a une grosse marge. Meme les meilleurs hackeurs s'y casseraient les dents. Encore faudrait-il y trouver un intérêt.

Pour ce qui est de convertir de l'hexa en ASCII, beaucoup de logiciels le font très bien et gratuitement. Fais une recherche sur "télécharger éditeur hexadécimal" et tu auras l'embarras du choix.
Mais ça ne servira pas à grand chose, le résultat sera illisible, beaucoup de caractères ne sont pas imprimables, tout au plus tu pourras reconnaitre quelques mots sans aucune logique.

Je crois que le meilleur moyen c'est de retrouver celui qui a écrit le programme et récupérer les sources ou au moins le diagramme ou graphcet et essayer de refaire le programme par toi-meme.

A moins que quelqu'un ait une autre idée.... Salut.
0
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
9 mars 2008 à 22:32
Re bonjour,

Ca me revient que maintenant mais il y a quelques temps quelqu'un voulait faire exactement l'inverse. (Ou la même chose d'ailleurs mais apparemment il ne le savait pas lui même) Et lui aussi sur un projet ultra-son. Par contre ce n'est pas le même modèle de puce.

Son post

Comme tu peux le voir son programme est très court et ne fait qu'utiliser le port I2C.

(D'ailleurs c'est bizarre, son programme est One-shot, d'habitude on boucle à l'infini sur de l'embarqué non ?)


Je pense également que la ré-écriture sera beaucoup plus rapide qu'une traduction depuis l'asm. Le protocole I2C est plutôt simple, surtout si il y a des fonctions prédéfinies. (Au pire c'est 4 registres ou un truc comme ça...)

M.
0
salut,
S'il vous plaît qui connait un nom de programme qui fait la convertion de HEX en C ou ASM, il m'envoie un email sur
issat_walid@yahoo.fr


merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
12 mars 2008 à 10:29
Description des instructions.
Description hard pas trop mal
Data sheet

-La première étape est de remplacer les adresses des registres mappés en mémoire par leur nom.
-La seconde je pense serait d'identifier les fonctions. (bloc qui se termine par return, retlw ou retie)
-La troisième, ce serait pratique de dégager le code du loader (si il est ici) le plus simple serait une comparaison avec un programme connu que tu compilerais.
-La quatrième, remplacer les appels aux fonctions (call <adresse mémoire>) par les identifiants donnés aux fonctions.
-La cinquième: trouver le main ? Probablement une fonction infinie. while( 1 ) (genre la dernière ligne est GOTO LADR_0x0132 )
-En sixième ça serait pas mal... affecter un label à toutes les adresses référencées par un GOTO.
-Septième, en déduire les boucles for et while.
-Huit, tenter de trouver les paramètres des fonctions. (Ca c'est plus chaud...)
-Neuf, retrouver les variables. (Ouch ouch again...)

Ca me parait pas trop mal et pas infaisable vu la taille du code. Par contre il faut obligatoirement les adresses de chaque instruction pour les GOTO et les CALL, sinon...

Les six premières sont largement faisables. Reviens nous voir après si ça coince. (avec un bref résumé des registres, le but du programme et la description des I/Os)

M.
0
Bravo MahMah,

c'est un bon départ.
Mais si la personne n'a pas souhaité publier le code source, c'est qu'elle n'en avait pas envie.

Oubliez le hacking, vous irez plus vite en réécrivant la programme. Apparemment il est super court et simple s'il s'agit seulement de gérer l'I2C.

Bon courage.
0
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
24 mars 2008 à 18:30
Bonjour,

Tout dépend de l'objectif définitif, "étudier un programme afin d'assurer une compatibilité avec celui-ci" est autorisé en France que je sache. Ne serait-ce que pour commercialiser un produit capable de récupérer les informations envoyées par ce programme. Effectivement, quand quelqu'un a perdu "son" mot de passe Windows... je veux bien être gentil mais faut pas pousser non plus. ^^ Ici, l'infraction n'est pas avérée.

Wikipédia, La rétro-ingénierie
(Ne prenons pas non plus Wikipédia pour un livre de lois...)

M.
0
bonjour
:020000040000FA
:040000003DEF02F0DE
:080008000D6A0F6A0E6E020E74
:1000100000D0076E0F500D5C02E10E500C5C040E18
:10002000D8B0010ED8B4020E0714D8A4010E1200E5
:10003000800E016EFE0EBDEC00F0010EBDEC00F076
:10004000750E0D6E300E27EF01F0016A018E156EF0
:10005000FE0EBDEC00F01550BDEF00F0046A106E0E
:10006000116A00960450D8B40086050E036E270E60
:100070000F6E100E0CD8030E0F6EE80E08D80F6A24
:10008000640E05D80F6A0A0E02D8105008D00E6E02
:1000900011500D6E10500C6E36EC01F00C500C6EC1
:1000A000034E0096045003E0035CD8B008D00C5017
:1000B000D8A4009600B603D0300FBDEF00F01200B8
:1000C000F86AA66AA68E0900F55002E002D8FBD7AE
:1000D0001200136E8390839295909592F00E941671
:1000E000135000B296EF00F03A0E0D6E980E27EC0A
:1000F00001F0330E126E30D8130E0D6E880E27EC01
:1001000001F02AD8640E26EC01F026D8640E26EC05
:1001100001F0220E126E20D8280E07D80C0E05D83A
:10012000060E03D80082135001D00080126E00A08A
:100130000BD0839203080EE30DD8070E0D6ED00E80
:1001400027EC01F0D88012000080FE08D8B4BBEF85
:1001500000F08382123A00A000908380F00E821695
:1001600012500F0B82128390123A00B0F5D7320E64
:1001700026EC01F0D8801350120001BE69EF00F0A8
:10018000A96EA66AA680A850A92A1200A86EA66A1F
:10019000A684550EA76EAA0EA76EA682A6B2FED79B
:1001A000A694A92A12000F6E0F0EEA6E02C0E9FF94
:1001B000051C51EC01F002C0E9FF0F50D8B421D06A
:1001C000F00E116E0E508009106EF00E1106D8B4AC
:1001D000116ED8B40F06D8B414D0270E26EC01F057
:1001E00015D800D0E86A08B005500EAE05500E5282
:1001F000D8B4E86A103E02D0EF1AE4D700D000006D
:10020000E4D70550E988E92AEC12120009500810D9
:10021000D8B4082A09340918E836093A0838E846F3
:100220000918093A010B0836081A09360850120055
:100230000F6A0E6EFF0E0E26D8A00F260000D8A063
:100240001200030E0D6EE60E02D8F4D70D6AFC0FF5
:100250000C6E0D1ED8A006D0FF0E00000C26D8B0E4
:10026000FCD70C2600000D3EF7D71200116A106A69
:10027000100E126E0D34103611360E50105E0F50E7
:10028000D8A00F3C115E07E20E5010260F50D8B0D8
:100290000F3C1126D8900C360D36122EEBD70C5091
:1002A0001200E988E92AEC1612002043204120447C
:1002B0002045204E20412053202000003D20454C69
:1002C000454354524F4E49515545203D000020486A
:1002D000415554452053454355524954452000004B
:1002E00028632920592E4D45524759203230303548
:1002F0000000434F444520412034204E4F4D425290
:10030000455300005245535445205B005D20455342
:100310005341495300002D30302D2D23232D2D2303
:10032000232D2D23232D000020204E4F4D425245DA
:10033000204E6F2000002045525245555220444522
:1003400020434F4445200000424C4F434147452045
:10035000434144454E4153210000205048415345FC
:100360002053454355544954452000004E6F3D30BD
:100370003031202044454C41493D30310000524548
:10038000434F4D4D454E43455A2053565021000092
:100390004D49534520454E2054454E53494F4E211B
:1003A00000005355495445204120444F4E4E45527C
:1003B000203F0000434F555045522054454E53496D
:1003C0004F4E203F00004348414E474552204C4588
:1003D00020434F44453F000052455441524420437E
:1003E0004F5550555245203F00004348414E474528
:1003F00052204C4520434F44452000004E4F4D4273
:100400005245204E6F20203D3E2020200000204EEF
:100410004F555645415520434F4445203A20000052
:100420002D20202D2D20202D2D20202D2D20202D64
:10043000000043484F4958204455205245544152EA
:1004400044200000454E204D494E55544553203A16
:100450002020202000002054454D50532052455369
:1004600054414E54203A00002020202020204D49A5
:100470004E555445532020200000006AAB6A956A0F
:10048000840EC16EC80ED4DE18EC00F08396040E04
:1004900077DE226E223C4FEF02F0040E226E050E34
:1004A0006FDE236E233C57EF02F0010E236E800EA9
:1004B000016E800E25EC00F0020EF76EAA0EF66EAD
:1004C00060EC00F0800E016EC00E25EC00F0020E14
:1004D000F76EBC0EF66E60EC00F0830E026E040E3A
:1004E000056E640E0E6E0A0E5EDE050E0F6EDC0EDD
:1004F000A0DE800E016E800E25EC00F0020EF76E7D
:10050000CE0EF66E60EC00F0800E016EC00E25EC93
:1005100000F0020EF76EE00EF66E60EC00F0830E57
:10052000026E040E056E640E0E6E0A0E3CDE050EA3
:100530000F6EDC0E7EDE020E2362A1EF02F025EFCD
:1005400004F0800E016E800E25EC00F0020EF76EB6
:10055000F20EF66E60EC00F0800E016EC00E25EC1F
:1005600000F0030EF76E040EF66E60EC00F0010E64
:10057000046E22502FEC00F0030EF76E0C0EF66E98
:1005800060EC00F0830E026E040E056E640E0E6EBB
:100590000A0E09DE070E0F6ED00E4BDE18EC00F0CF
:1005A000186A176A376A8396800E016EC00E25ECB2
:1005B00000F0030EF76E160EF66E60EC00F0010E02
:1005C0001724196E000E18201A6E800E016E800E10
:1005D00025EC00F0030EF76E280EF66E60EC00F0CE
:1005E000010E046E1AC011F019C010F031EC00F0C9
:1005F0003A0E69EC00F0200E69EC00F069EC00F0B6
:1006000018501710D8A40FEF03F0800E016EC10E22
:1006100025EC00F0020E046E37502FEC00F01704AA
:100620001810D8A41EEF03F0800E016EC50E25EC45
:1006300000F0020E046E37502FEC00F01750020A43
:100640001810D8A42EEF03F0800E016EC90E25EC11
:1006500000F0020E046E37502FEC00F01750030A22
:100660001810D8A43EEF03F0800E016ECD0E25ECDD
:1006700000F0020E046E37502FEC00F081AA43EF19
:1006800003F065EF03F081BA47EF03F0FCD7830E68
:10069000026E040E056E640E0E6E0A0ED3EC00F0B0
:1006A00000EE27F01750E926000EEA2237C0EFFFD0
:1006B000376A172AE86A18221750040A1810D8A4B3
:1006C00064EF03F099EF03F07AD7E86A81BE010E78
:1006D0001C6E1C6682EF03F0E86A81BC010E1D6E81
:1006E0001D6674EF03F03706373C79EF03F0190EFF
:1006F000376E1D2C7DEF03F0372A1A0E376282EF1A
:1007000003F0376A255037628AEF03F026668AEFD6
:1007100003F0B4D7266A37C025F0E86A81BE010E1F
:100720001C6E1C6695EF03F0F8D71E0E18EC01F056
:1007300046D7246AE86AC0EC00F00A6E0AC02BF0C3
:100740002B500A6E0A3CAAEF03F0A96AE86AC6ECCD
:1007500000F02B6A010EC0EC00F00A6E0AC02CF00B
:100760002C500A6E0A3CBBEF03F0010EA96EE86A3A
:10077000C6EC00F02C6A020EC0EC00F00A6E0AC053
:100780002DF02D500A6E0A3CCCEF03F0020EA96E3C
:10079000E86AC6EC00F02D6A030EC0EC00F00A6EA9
:1007A0000AC02EF02E500A6E0A3CDDEF03F0030E55
:1007B000A96EE86AC6EC00F02E6A830E026E040E83
:1007C000056E640E0E6E0A0ED3EC00F0010E0F6E75
:1007D000900E19EC01F0186A176A1850D8A411EF9E
:1007E00004F0040E176011EF04F000EE27F017502C
:1007F000E926000EEA22EF500A6E00EE2BF01750A9
:10080000E926000EEA22EF500B6E0A500B5CD8B4BA
:100810000CEF04F0010E246E172AD8B4182AD8A4BD
:10082000DCD7242C08EF05F02206040EA96E225016
:10083000C6EC00F0800E016E800E25EC00F0030E79
:10084000F76E360EF66E60EC00F02266F2EF04F002
:10085000020E236E050EA96E2350C6EC00F0800E2A
:10086000016EC00E25EC00F0030EF76E480EF66E1A
:1008700060EC00F0010E3A6E010E3B6E1B6A186AC6
:10088000176A800E016E800E25EC00F0030EF76EE5
:100890005A0EF66E60EC00F0800E016EC00E25EC74
:1008A00000F0030EF76E6C0EF66E60EC00F0640E56
:1008B0003A626AEF04F0040E226E040EA96E225012
:1008C000C6EC00F0010E236E050EA96E2350C6EC97
:1008D00000F037D6800E016EC30E25EC00F0030E3B
:1008E000046E3A502FEC00F0800E016ECE0E25EC17
:1008F00000F0020E046E3B502FEC00F01B2A640E39
:1009000018EC01F081AA87EF04F0CBEF04F081BA74
:100910008BEF04F0FCD700EE2FF01750E926000E05
:10092000EA223BC0EFFF172AE86A18221750040A90
:100930001810D8A4CBEF04F02F500A6E0AC00CF0A8
:10094000090E04EC00F0166E30500A6E0AC00CF06E
:100950000F0E04EC00F01614166E31500A6E0AC029
:100960000CF0170E04EC00F01614166E32500A6EDE
:100970000AC00CF0220E04EC00F01614D8B4CBEF31
:1009800004F0010E236E050EA96E2350C6EC00F094
:10099000246A08EF05F0140E1B60D0EF04F0AED708
:1009A0001B6A3B2A640E3B62F1EF04F0010E3B6EC2
:1009B0003A2A186A176A1850D8A4EFEF04F0040E08
:1009C0001760EFEF04F000EE2FF01750E926000E4D
:1009D000EA22EF6A172AD8B4182AD8A4ECD7186AE2
:1009E000176A65D72252D8B401EF05F0800E016E68
:1009F000C00E25EC00F0030EF76E7E0EF66E60EC76
:100A000000F0070E0F6ED00E19EC01F0A1EF02F00E
:100A10002466ADEF05F08386040E226E040EA96EE7
:100A20002250C6EC00F0800E016E800E25EC00F026
:100A3000030EF76E900EF66E60EC00F0800E016E05
:100A4000C00E25EC00F0030EF76EA20EF66E60EC01
:100A500000F0030E396E81AA30EF05F04EEF05F07D
:100A600081BA34EF05F0FCD7830E026E040E056EDA
:100A7000640E0E6E0A0ED3EC00F0396643EF05F0FB
:100A80008396A1EC02F0392C48EF05F0ADEF05F0AC
:100A9000020E39624EEF05F0F6EF06F0E86A81BE0D
:100AA000010E1C6E1C666BEF05F0E86A81BC010E3E
:100AB0001D6E1D665DEF05F03906393C62EF05F0ED
:100AC000020E396E1D2C66EF05F0372A020E3764D0
:100AD0006BEF05F0376A2550396273EF05F0266633
:100AE00073EF05F0B8D7266A39C025F0E86A81BEF1
:100AF000010E1C6E1C667EEF05F0F8D7320E18EC66
:100B000001F039668FEF05F0800E016EC00E25EC06
:100B100000F0030EF76EB40EF66E60EC00F0392CA8
:100B20009DEF05F0800E016EC00E25EC00F0030E67
:100B3000F76EC60EF66E60EC00F0020E3962ACEF96
:100B400005F0800E016EC00E25EC00F0030EF76E6E
:100B5000D80EF66E60EC00F07ED7386A3850C0ECE4
:100B600000F00A6E00EE33F03850E926000EEA225B
:100B70000AC0EFFF00EE33F03850E926000EEA22FB
:100B8000EF50376E800E016E800E25EC00F0030EE4
:100B9000F76EEA0EF66E60EC00F0800E016EC00E8D
:100BA00025EC00F0030EF76EFC0EF66E60EC00F024
:100BB000800E016EC90E25EC00F0010E046E010ED0
:100BC0003824116A106E113631EC00F0800E016E7F
:100BD000CE0E25EC00F0020E046E00EE33F038501D
:100BE000E926000EEA22EF502FEC00F081AAFBEF7D
:100BF00005F02FEF06F081BAFFEF05F0FCD7830E6A
:100C0000026E040E056E640E0E6E0A0ED3EC00F03A
:100C100038C0A9FF00EE33F03850E926000EEA2272
:100C2000EF50C6EC00F0382A040E38621AEF06F0D6
:100C30006BEF06F03850C0EC00F00A6E00EE33F0B7
:100C40003850E926000EEA220AC0EFFF00EE33F02A
:100C50003850E926000EEA22EF50376EA9D7E86A2D
:100C600081BE010E1C6E1C664CEF06F0E86A81BC6A
:100C7000010E1D6E1D663EEF06F03706373C43EF52
:100C800006F0190E376E1D2C47EF06F0372A1A0EA4
:100C900037624CEF06F0376A2550376254EF06F0A2
:100CA000266654EF06F0A2D7266A37C025F000EE7C
:100CB00033F03850E926000EEA2237C0EFFFE86A29
:100CC00081BE010E1C6E1C6667EF06F0F8D71E0E83
:100CD00018EC01F07BD7830E026E040E056E640ED5
:100CE0000E6E0A0ED3EC00F0800E016E800E25EC25
:100CF00000F0040EF76E0E0EF66E60EC00F0800E43
:100D0000016EC00E25EC00F0040EF76E200EF66E9C
:100D100060EC00F0386A040E3860EDEF06F03850F1
:100D2000C0EC00F00A6E00EE33F03850E926000EF9
:100D3000EA220AC0EFFF3866AEEF06F0800E016EC1
:100D4000C10E25EC00F0020E046E00EE33F03850B8
:100D5000E926000EEA22EF502FEC00F0382CC1EF0C
:100D600006F0800E016EC50E25EC00F0020E046E3A
:100D700000EE33F03850E926000EEA22EF502FEC57
:100D800000F0020E3862D5EF06F0800E016EC90E3B
:100D900025EC00F0020E046E00EE33F03850E92628
:100DA000000EEA22EF502FEC00F0030E3862E9EF5C
:100DB00006F0800E016ECD0E25EC00F0020E046EE2
:100DC00000EE33F03850E926000EEA22EF502FEC07
:100DD00000F0010E3826D8A09ED781AAF1EF06F0C8
:100DE000FCD781BAF5EF06F0FCD712D6060EC0ECA0
:100DF00000F03C6E3C3C04EF07F0060EA96E050EB9
:100E0000C6EC00F0050E3C6E800E016E800E25ECE7
:100E100000F0040EF76E320EF66E60EC00F0800EFD
:100E2000016EC00E25EC00F0040EF76E440EF66E57
:100E300060EC00F0800E016ECD0E25EC00F0030E8C
:100E4000046E3C502FEC00F03CC037F081AA2BEF31
:100E500007F041EF07F081BA2FEF07F0FCD7830EC0
:100E6000026E040E056E640E0E6E0A0ED3EC00F0D8
:100E700037C03CF0060EA96E3C50C6EC00F078EF8F
:100E800007F0E86A81BE010E1C6E1C665FEF07F07A
:100E9000E86A81BC010E1D6E1D6650EF07F0370633
:100EA000376655EF07F0B40E376E1D2C59EF07F07B
:100EB000372AB50E37625FEF07F0010E376E255007
:100EC000376267EF07F0266667EF07F0BFD7266A3D
:100ED00037C025F037C03CF0E86A81BE010E1C6EB9
:100EE0001C6674EF07F0F8D71E0E18EC01F0A2D7BD
:100EF0003F6A3E6A800E016E800E25EC00F0040E03
:100F0000F76E560EF66E60EC00F0800E016EC00EAD
:100F100025EC00F0040EF76E680EF66E60EC00F043
:100F2000800E016EC20E25EC00F0030E046E3C50E4
:100F30002FEC00F0010E3C64A0EF07F0A8EF07F0E3
:100F4000800E016ECC0E25EC00F0200E69EC00F056
:100F50000A0E18EC01F081BAB0EF07F0C3EF07F00A
:100F60003E2AE86A3F226F0E3E5C170E3F58D8B00B
:100F7000BBEF07F0EDD73F6A3E6A3C063C52D8B45F
:100F8000C3EF07F0CDD781BAC7EF07F0FCD7839640
:080F9000A1EF02F00300FED7FF
:020000040030CA
:08000000FFFAFEFEFFFFFBFF0B
:00000001FF
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 avril 2009 à 23:21
Salut,
Euh, t'attends quoi de nous là ? oO
0
loupius > fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022
6 avril 2009 à 23:35
Relire la question ;-)
Il veut la traduction de son hexa en langage C (rien ne dit, d'ailleurs, que le programme initial a été écrit dans ce laguage).
Si l'aventure te tente, bon courage.
0
pfffff facile^^
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
7 avril 2009 à 00:15
Merci de l'éclaircissement loupius ^^.

Comme il a été dit, tu ne pourras pas retrouver le code C. Cela serait trop facile sinon ^^.
A partir du code hexa, tu peux avoir le code assembleur au moyen d'un désassembleur. Après, tout dépend de ton affinité avec l'assembleur et du temps que t'as devant toi. Temps qui d'ailleurs à tendance a augmenté avec l'obfuscation de plus en plus présente ^^.
0