Кода е генериран със Sun компилатора. Деасемблирането няма да помогне.
Единственния компилатор който съм видял да генерира код подобен на този:
lea edi,[ebp-270h]
mov ecx,99h
mov eax,0CCCCCCCCh
rep stos dword ptr [edi]
е VisualStiudio-то и то в дебъг. Другата програма която прави подобни номера е Purify, но там има основателна причина.
Ако намериш компилатор който да генерира подобен код, дай линк да не го ползвам.
Ето ти и HP-то и в него няма инициализация:
main
.PROC
.CALLINFO CALLER,FRAME=16,SAVE_RP
.ENTRY
STW %r2,-20(%r30) ;offset 0x0
LDO 64(%r30),%r30 ;offset 0x4
.CALL ;
B,L _main,%r2 ;offset 0x8
NOP ;offset 0xc
LDI 1,%r1 ;offset 0x10
STW %r1,-56(%r30) ;offset 0x14
ADDIL LR'__iob-$global$+16,%r27,%r1 ;offset 0x18
LDO RR'__iob-$global$+16(%r1),%r26 ;offset 0x1c
LDIL LR'C$2,%r31 ;offset 0x20
LDO RR'C$2(%r31),%r25 ;offset 0x24
.CALL ARGW0=GR,ARGW1=GR,ARGW2=GR,RTNVAL=GR ;in=24,25,26;out=28;
main
.PROC
.CALLINFO CALLER,FRAME=16,SAVE_RP
.ENTRY
STW %r2,-20(%r30) ;offset 0x0
LDO 64(%r30),%r30 ;offset 0x4
.CALL ;
B,L _main,%r2 ;offset 0x8
NOP ;offset 0xc
ADDIL LR'__iob-$global$+16,%r27,%r1 ;offset 0x10
LDO RR'__iob-$global$+16(%r1),%r26 ;offset 0x14
LDIL LR'C$2,%r1 ;offset 0x18
LDO RR'C$2(%r1),%r25 ;offset 0x1c
.CALL ARGW0=GR,ARGW1=GR,ARGW2=GR,RTNVAL=GR ;in=24,25,26;out=28;
А ето и AIX-a:
.main: # 0x0000000000000000 (H.4.NO_SYMBOL)
mfspr r0,LR
std r31,-8(SP)
std r0,16(SP)
stdu SP,-128(SP)
ld r31,T.10.NO_SYMBOL(RTOC)
addi r3,r0,1
stw r3,112(SP)
ld r3,T.20._iob(RTOC)
lwa r5,112(SP)
addi r3,r3,88
ori r4,r31,0x0000
.main: # 0x0000000000000000 (H.4.NO_SYMBOL)
mfspr r0,LR
std r31,-8(SP)
std r0,16(SP)
stdu SP,-128(SP)
ld r31,T.10.NO_SYMBOL(RTOC)
ld r3,T.20._iob(RTOC)
lwa r5,112(SP)
addi r3,r3,88
|