📄 inflate.asm
字号:
data2 075H
data1 00H
data1 08H
data2 035H
data1 00H
data1 09H
data2 0cbH
data1 011H
data1 07H
data2 0dH
data1 00H
data1 08H
data2 065H
data1 00H
data1 08H
data2 025H
data1 00H
data1 09H
data2 0abH
data1 00H
data1 08H
data2 05H
data1 00H
data1 08H
data2 085H
data1 00H
data1 08H
data2 045H
data1 00H
data1 09H
data2 0ebH
data1 010H
data1 07H
data2 08H
data1 00H
data1 08H
data2 05dH
data1 00H
data1 08H
data2 01dH
data1 00H
data1 09H
data2 09bH
data1 014H
data1 07H
data2 053H
data1 00H
data1 08H
data2 07dH
data1 00H
data1 08H
data2 03dH
data1 00H
data1 09H
data2 0dbH
data1 012H
data1 07H
data2 017H
data1 00H
data1 08H
data2 06dH
data1 00H
data1 08H
data2 02dH
data1 00H
data1 09H
data2 0bbH
data1 00H
data1 08H
data2 0dH
data1 00H
data1 08H
data2 08dH
data1 00H
data1 08H
data2 04dH
data1 00H
data1 09H
data2 0fbH
data1 010H
data1 07H
data2 03H
data1 00H
data1 08H
data2 053H
data1 00H
data1 08H
data2 013H
data1 015H
data1 08H
data2 0c3H
data1 013H
data1 07H
data2 023H
data1 00H
data1 08H
data2 073H
data1 00H
data1 08H
data2 033H
data1 00H
data1 09H
data2 0c7H
data1 011H
data1 07H
data2 0bH
data1 00H
data1 08H
data2 063H
data1 00H
data1 08H
data2 023H
data1 00H
data1 09H
data2 0a7H
data1 00H
data1 08H
data2 03H
data1 00H
data1 08H
data2 083H
data1 00H
data1 08H
data2 043H
data1 00H
data1 09H
data2 0e7H
data1 010H
data1 07H
data2 07H
data1 00H
data1 08H
data2 05bH
data1 00H
data1 08H
data2 01bH
data1 00H
data1 09H
data2 097H
data1 014H
data1 07H
data2 043H
data1 00H
data1 08H
data2 07bH
data1 00H
data1 08H
data2 03bH
data1 00H
data1 09H
data2 0d7H
data1 012H
data1 07H
data2 013H
data1 00H
data1 08H
data2 06bH
data1 00H
data1 08H
data2 02bH
data1 00H
data1 09H
data2 0b7H
data1 00H
data1 08H
data2 0bH
data1 00H
data1 08H
data2 08bH
data1 00H
data1 08H
data2 04bH
data1 00H
data1 09H
data2 0f7H
data1 010H
data1 07H
data2 05H
data1 00H
data1 08H
data2 057H
data1 00H
data1 08H
data2 017H
data1 040H
data1 08H
data2 00H
data1 013H
data1 07H
data2 033H
data1 00H
data1 08H
data2 077H
data1 00H
data1 08H
data2 037H
data1 00H
data1 09H
data2 0cfH
data1 011H
data1 07H
data2 0fH
data1 00H
data1 08H
data2 067H
data1 00H
data1 08H
data2 027H
data1 00H
data1 09H
data2 0afH
data1 00H
data1 08H
data2 07H
data1 00H
data1 08H
data2 087H
data1 00H
data1 08H
data2 047H
data1 00H
data1 09H
data2 0efH
data1 010H
data1 07H
data2 09H
data1 00H
data1 08H
data2 05fH
data1 00H
data1 08H
data2 01fH
data1 00H
data1 09H
data2 09fH
data1 014H
data1 07H
data2 063H
data1 00H
data1 08H
data2 07fH
data1 00H
data1 08H
data2 03fH
data1 00H
data1 09H
data2 0dfH
data1 012H
data1 07H
data2 01bH
data1 00H
data1 08H
data2 06fH
data1 00H
data1 08H
data2 02fH
data1 00H
data1 09H
data2 0bfH
data1 00H
data1 08H
data2 0fH
data1 00H
data1 08H
data2 08fH
data1 00H
data1 08H
data2 04fH
data1 00H
data1 09H
data2 0ffH
?distfix@?1??fixedtables@@9@9:
data1 010H // `fixedtables'::`2'::distfix
data1 05H
data2 01H
data1 017H
data1 05H
data2 0101H
data1 013H
data1 05H
data2 011H
data1 01bH
data1 05H
data2 01001H
data1 011H
data1 05H
data2 05H
data1 019H
data1 05H
data2 0401H
data1 015H
data1 05H
data2 041H
data1 01dH
data1 05H
data2 04001H
data1 010H
data1 05H
data2 03H
data1 018H
data1 05H
data2 0201H
data1 014H
data1 05H
data2 021H
data1 01cH
data1 05H
data2 02001H
data1 012H
data1 05H
data2 09H
data1 01aH
data1 05H
data2 0801H
data1 016H
data1 05H
data2 081H
data1 040H
data1 05H
data2 00H
data1 010H
data1 05H
data2 02H
data1 017H
data1 05H
data2 0181H
data1 013H
data1 05H
data2 019H
data1 01bH
data1 05H
data2 01801H
data1 011H
data1 05H
data2 07H
data1 019H
data1 05H
data2 0601H
data1 015H
data1 05H
data2 061H
data1 01dH
data1 05H
data2 06001H
data1 010H
data1 05H
data2 04H
data1 018H
data1 05H
data2 0301H
data1 014H
data1 05H
data2 031H
data1 01cH
data1 05H
data2 03001H
data1 012H
data1 05H
data2 0dH
data1 01aH
data1 05H
data2 0c01H
data1 016H
data1 05H
data2 0c1H
data1 040H
data1 05H
data2 00H
?order@?1??inflate@@9@9:
data2 010H // `inflate'::`2'::order
data2 011H
data2 012H
data2 00H
data2 08H
data2 07H
data2 09H
data2 06H
data2 0aH
data2 05H
data2 0bH
data2 04H
data2 0cH
data2 03H
data2 0dH
data2 02H
data2 0eH
data2 01H
data2 0fH
.section .sdata
$SG78832:
string "1.2.3\000"
.type inflateReset# ,@function
.global inflateReset#
.section .pdata
$T79723: data4 @imagerel($LN5@inflateRes#)
data4 @imagerel($LN5@inflateRes#+832)
data4 @imagerel($T79721#)
.section .xdata
$T79721: data2 03H
data2 00H
data4 02H
string "\x04" //R1:prologue size 4
string "\xe0\x00\x01" //P7:mem_stack_f time 0 size 1
string "\x61\x98\x01" //R3:body size 152
string "\x81" //B1:label_state 1
string "\xc0\x02" //B2:ecount 0 time 2
string "\x00\x00\x00\x00\x00\x00" //padding
// Function compile flags: /Odtp
// File f:\study\wincezip\dll\inflate.c
.section .text
// Begin code for function: inflateReset:
.proc inflateReset#
.align 32
state$ = 0
strm$ = 16
inflateReset:
// strm$ = r32
// Output regs: None
$LN5@inflateRes:
// 105 : {
// 106 : struct inflate_state FAR *state;
// 107 :
// 108 : if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
{ .mmi //R-Addr: 0X00
adds sp=-16, sp;; //105 cc:0
adds r31=strm$, sp
nop.i 0;;
}
{ .mmi //R-Addr: 0X010
st8 [r31]=r32;;
adds r30=strm$, sp //108 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X020
ld8 r29=[r30];; //108 cc:1
cmp.eq.unc p14,p15=r0, r29 //108 cc:2
nop.i 0
}
{ .mmb //R-Addr: 0X030
nop.m 0
nop.m 0
(p14) br.cond.dptk.few $LN1@inflateRes#;; //108 cc:2
}
// 108 : if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
{ .mmi //R-Addr: 0X040
adds r28=strm$, sp;; //108 cc:3
ld8 r27=[r28] //108 cc:4
nop.i 0;;
}
{ .mmi //R-Addr: 0X050
adds r26=40, r27;; //108 cc:5, 00000028H
ld8 r25=[r26] //108 cc:6
nop.i 0;;
}
{ .mmb //R-Addr: 0X060
cmp.ne.unc p14,p15=r0, r25 //108 cc:7
nop.m 0
(p14) br.cond.dptk.many $LN2@inflateRes#;; //108 cc:7
}
$LN1@inflateRes:
// 108 : if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
{ .mmb //R-Addr: 0X070
mov r8=-2 //108 cc:0
nop.m 0
br.cond.sptk.few $LN3@inflateRes#;; //108 cc:0
}
$LN2@inflateRes:
// 109 : state = (struct inflate_state FAR *)strm->state;
// 110 : strm->total_in = strm->total_out = state->total = 0;
// 111 : strm->msg = Z_NULL;
// 112 : strm->adler = 1; /* to support ill-conceived Java test suite */
// 113 : state->mode = HEAD;
// 114 : state->last = 0;
// 115 : state->havedict = 0;
// 116 : state->dmax = 32768U;
// 117 : state->head = Z_NULL;
// 118 : state->wsize = 0;
// 119 : state->whave = 0;
// 120 : state->write = 0;
// 121 : state->hold = 0;
// 122 : state->bits = 0;
// 123 : state->lencode = state->distcode = state->next = state->codes;
// 124 : Tracev((stderr, "inflate: reset\n"));
// 125 : return Z_OK;
{ .mib //R-Addr: 0X080
adds r22=strm$, sp //109 cc:0
adds r18=state$, sp //109 cc:0
nop.b 0;;
}
{ .mmi //R-Addr: 0X090
ld8 r21=[r22];; //109 cc:1
adds r20=40, r21 //109 cc:2, 00000028H
nop.i 0;;
}
{ .mmi //R-Addr: 0X0a0
ld8 r19=[r20];; //109 cc:3
st8 [r18]=r19 //109 cc:4
nop.i 0;;
}
{ .mmi //R-Addr: 0X0b0
adds r17=state$, sp //110 cc:0
adds r11=strm$, sp //110 cc:0
adds r8=strm$, sp;; //110 cc:0
}
{ .mmi //R-Addr: 0X0c0
ld8 r16=[r17];; //110 cc:1
adds r15=28, r16 //110 cc:2
nop.i 0;;
}
{ .mmb //R-Addr: 0X0d0
st4 [r15]=r0 //110 cc:3
ld8 r10=[r11] //110 cc:3
nop.b 0;;
}
{ .mmi //R-Addr: 0X0e0
adds r9=28, r10;; //110 cc:4
st4 [r9]=r0 //110 cc:5
nop.i 0
}
{ .mmi //R-Addr: 0X0f0
ld8 r31=[r8];; //110 cc:5
adds r30=12, r31 //110 cc:6
nop.i 0;;
}
{ .mmi //R-Addr: 0X0100
st4 [r30]=r0;; //110 cc:7
adds r29=strm$, sp //111 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0110
ld8 r28=[r29];; //111 cc:1
adds r27=32, r28 //111 cc:2
nop.i 0;;
}
{ .mmi //R-Addr: 0X0120
st8 [r27]=r0;; //111 cc:3
adds r26=strm$, sp //112 cc:0
mov r21=1;; //112 cc:0
}
{ .mmi //R-Addr: 0X0130
ld8 r25=[r26];; //112 cc:1
adds r22=76, r25 //112 cc:2, 0000004cH
nop.i 0;;
}
{ .mmi //R-Addr: 0X0140
st4 [r22]=r21;; //112 cc:3
adds r20=state$, sp //113 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0150
ld8 r19=[r20];; //113 cc:1
st4 [r19]=r0 //113 cc:2
nop.i 0;;
}
{ .mmi //R-Addr: 0X0160
adds r18=state$, sp;; //114 cc:0
ld8 r17=[r18] //114 cc:1
nop.i 0;;
}
{ .mmi //R-Addr: 0X0170
adds r16=4, r17;; //114 cc:2
st4 [r16]=r0 //114 cc:3
nop.i 0;;
}
{ .mmi //R-Addr: 0X0180
adds r15=state$, sp;; //115 cc:0
ld8 r11=[r15] //115 cc:1
nop.i 0;;
}
{ .mmi //R-Addr: 0X0190
adds r10=12, r11;; //115 cc:2
st4 [r10]=r0 //115 cc:3
nop.i 0;;
}
{ .mib //R-Addr: 0X01a0
adds r9=state$, sp //116 cc:0
mov r30=32768 //116 cc:0, 00008000H
nop.b 0;;
}
{ .mmi //R-Addr: 0X01b0
ld8 r8=[r9];; //116 cc:1
adds r31=20, r8 //116 cc:2
nop.i 0;;
}
{ .mmi //R-Addr: 0X01c0
st4 [r31]=r30;; //116 cc:3
adds r29=state$, sp //117 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X01d0
ld8 r28=[r29];; //117 cc:1
adds r27=32, r28 //117 cc:2
nop.i 0;;
}
{ .mmi //R-Addr: 0X01e0
st8 [r27]=r0;; //117 cc:3
adds r26=state$, sp //118 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X01f0
ld8 r25=[r26];; //118 cc:1
adds r22=44, r25 //118 cc:2, 0000002cH
nop.i 0;;
}
{ .mmi //R-Addr: 0X0200
st4 [r22]=r0;; //118 cc:3
adds r21=state$, sp //119 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0210
ld8 r20=[r21];; //119 cc:1
adds r19=48, r20 //119 cc:2, 00000030H
nop.i 0;;
}
{ .mmi //R-Addr: 0X0220
st4 [r19]=r0;; //119 cc:3
adds r18=state$, sp //120 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0230
ld8 r17=[r18];; //120 cc:1
adds r16=52, r17 //120 cc:2, 00000034H
nop.i 0;;
}
{ .mmi //R-Addr: 0X0240
st4 [r16]=r0;; //120 cc:3
adds r15=state$, sp //121 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0250
ld8 r11=[r15];; //121 cc:1
adds r10=64, r11 //121 cc:2, 00000040H
nop.i 0;;
}
{ .mmi //R-Addr: 0X0260
st4 [r10]=r0;; //121 cc:3
adds r9=state$, sp //122 cc:0
nop.i 0;;
}
{ .mmi //R-Addr: 0X0270
ld8 r8=[r9];; //122 cc:1
adds r31=68, r8 //122 cc:2, 00000044H
nop.i 0;;
}
{ .mmi //R-Addr: 0X0280
st4 [r31]=r0;; //122 cc:3
adds r30=state$, sp //123 cc:0
adds r27=state$, sp //123 cc:0
}
{ .mmi //R-Addr: 0X0290
adds r22=state$, sp //123 cc:0
adds r19=state$, sp //123 cc:0
adds r15=state$, sp;; //123 cc:0
}
{ .mmi //R-Addr: 0X02a0
ld8 r29=[r30] //123 cc:1
ld8 r26=[r27] //123 cc:1
adds r9=state$, sp;; //123 cc:1
}
{ .mib //R-Addr: 0X02b0
adds r28=1352, r29 //123 cc:2, 00000548H
adds r25=128, r26 //123 cc:2, 00000080H
nop.b 0;;
}
{ .mmb //R-Addr: 0X02c0
st8 [r25]=r28 //123 cc:3
ld8 r21=[r22] //123 cc:3
nop.b 0
}
{ .mmi //R-Addr: 0X02d0
ld8 r18=[r19];; //123 cc:3
adds r20=128, r21 //123 cc:4, 00000080H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -