📄 infback.cod
字号:
00 00 cmp DWORD PTR [edi+96], 286 ; 0000011eH
002f2 89 4f 64 mov DWORD PTR [edi+100], ecx
002f5 89 57 5c mov DWORD PTR [edi+92], edx
002f8 0f 87 08 05 00
00 ja $LN251@inflateBac@3
002fe 83 f9 1e cmp ecx, 30 ; 0000001eH
00301 0f 87 ff 04 00
00 ja $LN251@inflateBac@3
; 363 : }
; 364 : #endif
; 365 : Tracev((stderr, "inflate: table sizes ok\n"));
; 366 :
; 367 : /* get code length code lengths (not a typo) */
; 368 : state->have = 0;
; 369 : while (state->have < state->ncode) {
00307 85 d2 test edx, edx
00309 c7 47 68 00 00
00 00 mov DWORD PTR [edi+104], 0
00310 76 6f jbe SHORT $LN358@inflateBac@3
$LL250@inflateBac@3:
; 370 : NEEDBITS(3);
00312 83 fe 03 cmp esi, 3
00315 73 3e jae SHORT $LN247@inflateBac@3
$LL245@inflateBac@3:
00317 85 ed test ebp, ebp
00319 75 1b jne SHORT $LN239@inflateBac@3
0031b 8b 4c 24 34 mov ecx, DWORD PTR _in_desc$[esp+36]
0031f 8d 44 24 10 lea eax, DWORD PTR _next$[esp+40]
00323 50 push eax
00324 51 push ecx
00325 ff 54 24 38 call DWORD PTR _in$[esp+44]
00329 8b e8 mov ebp, eax
0032b 83 c4 08 add esp, 8
0032e 85 ed test ebp, ebp
00330 0f 84 e4 09 00
00 je $LN376@inflateBac@3
$LN239@inflateBac@3:
00336 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
0033a 0f b6 10 movzx edx, BYTE PTR [eax]
0033d 8b ce mov ecx, esi
0033f d3 e2 shl edx, cl
00341 83 c0 01 add eax, 1
00344 83 c6 08 add esi, 8
00347 83 ed 01 sub ebp, 1
0034a 03 da add ebx, edx
0034c 83 fe 03 cmp esi, 3
0034f 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
00353 72 c2 jb SHORT $LL245@inflateBac@3
$LN247@inflateBac@3:
; 371 : state->lens[order[state->have++]] = (unsigned short)BITS(3);
00355 8b 4f 68 mov ecx, DWORD PTR [edi+104]
00358 0f b7 14 4d 00
00 00 00 movzx edx, WORD PTR ?order@?1??inflateBack@@9@9[ecx*2]
00360 0f b6 c3 movzx eax, bl
00363 83 e0 07 and eax, 7
00366 66 89 44 57 70 mov WORD PTR [edi+edx*2+112], ax
0036b b8 01 00 00 00 mov eax, 1
00370 01 47 68 add DWORD PTR [edi+104], eax
00373 8b 4f 68 mov ecx, DWORD PTR [edi+104]
; 372 : DROPBITS(3);
00376 c1 eb 03 shr ebx, 3
00379 83 ee 03 sub esi, 3
0037c 3b 4f 5c cmp ecx, DWORD PTR [edi+92]
0037f 72 91 jb SHORT $LL250@inflateBac@3
$LN358@inflateBac@3:
; 373 : }
; 374 : while (state->have < 19)
00381 b9 13 00 00 00 mov ecx, 19 ; 00000013H
00386 39 4f 68 cmp DWORD PTR [edi+104], ecx
00389 73 1f jae SHORT $LN231@inflateBac@3
0038b eb 03 8d 49 00 npad 5
$LL232@inflateBac@3:
; 375 : state->lens[order[state->have++]] = 0;
00390 8b 57 68 mov edx, DWORD PTR [edi+104]
00393 0f b7 14 55 00
00 00 00 movzx edx, WORD PTR ?order@?1??inflateBack@@9@9[edx*2]
0039b 66 c7 44 57 70
00 00 mov WORD PTR [edi+edx*2+112], 0
003a2 01 47 68 add DWORD PTR [edi+104], eax
003a5 39 4f 68 cmp DWORD PTR [edi+104], ecx
003a8 72 e6 jb SHORT $LL232@inflateBac@3
$LN231@inflateBac@3:
; 376 : state->next = state->codes;
003aa 8d 87 30 05 00
00 lea eax, DWORD PTR [edi+1328]
003b0 8d 4f 6c lea ecx, DWORD PTR [edi+108]
003b3 89 01 mov DWORD PTR [ecx], eax
; 377 : state->lencode = (code const FAR *)(state->next);
003b5 89 47 4c mov DWORD PTR [edi+76], eax
; 378 : state->lenbits = 7;
; 379 : ret = inflate_table(CODES, state->lens, 19, &(state->next),
; 380 : &(state->lenbits), state->work);
003b8 8d 97 f0 02 00
00 lea edx, DWORD PTR [edi+752]
003be 52 push edx
003bf 8d 47 54 lea eax, DWORD PTR [edi+84]
003c2 50 push eax
003c3 51 push ecx
003c4 c7 00 07 00 00
00 mov DWORD PTR [eax], 7
003ca 6a 13 push 19 ; 00000013H
003cc 8d 47 70 lea eax, DWORD PTR [edi+112]
003cf 50 push eax
003d0 6a 00 push 0
003d2 e8 00 00 00 00 call _inflate_table
003d7 83 c4 18 add esp, 24 ; 00000018H
; 381 : if (ret) {
003da 85 c0 test eax, eax
003dc 74 16 je SHORT $LN230@inflateBac@3
; 382 : strm->msg = (char *)"invalid code lengths set";
003de 8b 44 24 2c mov eax, DWORD PTR _strm$[esp+36]
003e2 c7 40 18 00 00
00 00 mov DWORD PTR [eax+24], OFFSET ??_C@_0BJ@HDEPPGOH@invalid?5code?5lengths?5set?$AA@
; 383 : state->mode = BAD;
003e9 c7 07 1b 00 00
00 mov DWORD PTR [edi], 27 ; 0000001bH
; 384 : break;
003ef e9 fa 08 00 00 jmp $LN453@inflateBac@3
$LN230@inflateBac@3:
; 385 : }
; 386 : Tracev((stderr, "inflate: code lengths ok\n"));
; 387 :
; 388 : /* get length and distance code code lengths */
; 389 : state->have = 0;
; 390 : while (state->have < state->nlen + state->ndist) {
003f4 8b 4f 64 mov ecx, DWORD PTR [edi+100]
003f7 03 4f 60 add ecx, DWORD PTR [edi+96]
003fa c7 47 68 00 00
00 00 mov DWORD PTR [edi+104], 0
00401 0f 84 bc 02 00
00 je $LN432@inflateBac@3
00407 eb 07 8d a4 24
00 00 00 00 npad 9
$LL229@inflateBac@3:
; 391 : for (;;) {
; 392 : this = state->lencode[BITS(state->lenbits)];
00410 8b 4f 54 mov ecx, DWORD PTR [edi+84]
00413 8b 47 4c mov eax, DWORD PTR [edi+76]
00416 ba 01 00 00 00 mov edx, 1
0041b d3 e2 shl edx, cl
0041d 83 ea 01 sub edx, 1
00420 23 d3 and edx, ebx
00422 8b 04 90 mov eax, DWORD PTR [eax+edx*4]
; 393 : if ((unsigned)(this.bits) <= bits) break;
00425 8b c8 mov ecx, eax
00427 c1 e9 08 shr ecx, 8
0042a 0f b6 d1 movzx edx, cl
0042d 3b d6 cmp edx, esi
0042f 89 44 24 1c mov DWORD PTR _this$[esp+40], eax
00433 76 60 jbe SHORT $LN382@inflateBac@3
$LL227@inflateBac@3:
; 394 : PULLBYTE();
00435 85 ed test ebp, ebp
00437 75 1b jne SHORT $LN220@inflateBac@3
00439 8b 4c 24 34 mov ecx, DWORD PTR _in_desc$[esp+36]
0043d 8d 44 24 10 lea eax, DWORD PTR _next$[esp+40]
00441 50 push eax
00442 51 push ecx
00443 ff 54 24 38 call DWORD PTR _in$[esp+44]
00447 8b e8 mov ebp, eax
00449 83 c4 08 add esp, 8
0044c 85 ed test ebp, ebp
0044e 0f 84 c6 08 00
00 je $LN376@inflateBac@3
$LN220@inflateBac@3:
00454 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
00458 0f b6 10 movzx edx, BYTE PTR [eax]
0045b 83 c0 01 add eax, 1
0045e 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
00462 8b ce mov ecx, esi
00464 d3 e2 shl edx, cl
00466 8b 4f 54 mov ecx, DWORD PTR [edi+84]
00469 b8 01 00 00 00 mov eax, 1
0046e d3 e0 shl eax, cl
00470 8b 4f 4c mov ecx, DWORD PTR [edi+76]
00473 03 da add ebx, edx
00475 83 c6 08 add esi, 8
00478 83 e8 01 sub eax, 1
0047b 23 c3 and eax, ebx
0047d 8b 04 81 mov eax, DWORD PTR [ecx+eax*4]
00480 89 44 24 1c mov DWORD PTR _this$[esp+40], eax
00484 c1 e8 08 shr eax, 8
00487 0f b6 d0 movzx edx, al
0048a 83 ed 01 sub ebp, 1
0048d 3b d6 cmp edx, esi
0048f 77 a4 ja SHORT $LL227@inflateBac@3
; 393 : if ((unsigned)(this.bits) <= bits) break;
00491 8b 44 24 1c mov eax, DWORD PTR _this$[esp+40]
$LN382@inflateBac@3:
; 395 : }
; 396 : if (this.val < 16) {
00495 8b c8 mov ecx, eax
00497 c1 e9 10 shr ecx, 16 ; 00000010H
0049a 83 f9 10 cmp ecx, 16 ; 00000010H
0049d 73 74 jae SHORT $LN216@inflateBac@3
; 397 : NEEDBITS(this.bits);
0049f 8b d0 mov edx, eax
004a1 c1 ea 08 shr edx, 8
004a4 0f b6 ca movzx ecx, dl
004a7 3b f1 cmp esi, ecx
004a9 73 4b jae SHORT $LN214@inflateBac@3
004ab eb 03 8d 49 00 npad 5
$LL212@inflateBac@3:
004b0 85 ed test ebp, ebp
004b2 75 1b jne SHORT $LN206@inflateBac@3
004b4 8b 44 24 34 mov eax, DWORD PTR _in_desc$[esp+36]
004b8 8d 54 24 10 lea edx, DWORD PTR _next$[esp+40]
004bc 52 push edx
004bd 50 push eax
004be ff 54 24 38 call DWORD PTR _in$[esp+44]
004c2 8b e8 mov ebp, eax
004c4 83 c4 08 add esp, 8
004c7 85 ed test ebp, ebp
004c9 0f 84 4b 08 00
00 je $LN376@inflateBac@3
$LN206@inflateBac@3:
004cf 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
004d3 0f b6 10 movzx edx, BYTE PTR [eax]
004d6 8b ce mov ecx, esi
004d8 83 c0 01 add eax, 1
004db d3 e2 shl edx, cl
004dd 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
004e1 0f b6 44 24 1d movzx eax, BYTE PTR _this$[esp+41]
004e6 83 c6 08 add esi, 8
004e9 83 ed 01 sub ebp, 1
004ec 03 da add ebx, edx
004ee 3b f0 cmp esi, eax
004f0 72 be jb SHORT $LL212@inflateBac@3
004f2 8b 44 24 1c mov eax, DWORD PTR _this$[esp+40]
$LN214@inflateBac@3:
; 398 : DROPBITS(this.bits);
; 399 : state->lens[state->have++] = this.val;
004f6 66 8b 54 24 1e mov dx, WORD PTR _this$[esp+42]
004fb 0f b6 cc movzx ecx, ah
004fe d3 eb shr ebx, cl
00500 2b f1 sub esi, ecx
00502 8b 4f 68 mov ecx, DWORD PTR [edi+104]
00505 66 89 54 4f 70 mov WORD PTR [edi+ecx*2+112], dx
0050a 83 47 68 01 add DWORD PTR [edi+104], 1
; 400 : }
; 401 : else {
0050e e9 a1 01 00 00 jmp $LN445@inflateBac@3
$LN216@inflateBac@3:
; 402 : if (this.val == 16) {
00513 66 8b 4c 24 1e mov cx, WORD PTR _this$[esp+42]
00518 66 83 f9 10 cmp cx, 16 ; 00000010H
0051c 0f 85 81 00 00
00 jne $LN198@inflateBac@3
; 403 : NEEDBITS(this.bits + 2);
00522 0f b6 cc movzx ecx, ah
00525 8d 41 02 lea eax, DWORD PTR [ecx+2]
00528 3b f0 cmp esi, eax
0052a 89 4c 24 1c mov DWORD PTR tv1438[esp+40], ecx
0052e 73 48 jae SHORT $LN196@inflateBac@3
$LL194@inflateBac@3:
00530 85 ed test ebp, ebp
00532 75 1b jne SHORT $LN188@inflateBac@3
00534 8b 4c 24 34 mov ecx, DWORD PTR _in_desc$[esp+36]
00538 8d 44 24 10 lea eax, DWORD PTR _next$[esp+40]
0053c 50 push eax
0053d 51 push ecx
0053e ff 54 24 38 call DWORD PTR _in$[esp+44]
00542 8b e8 mov ebp, eax
00544 83 c4 08 add esp, 8
00547 85 ed test ebp, ebp
00549 0f 84 cb 07 00
00 je $LN376@inflateBac@3
$LN188@inflateBac@3:
0054f 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
00553 0f b6 10 movzx edx, BYTE PTR [eax]
00556 83 c0 01 add eax, 1
00559 8b ce mov ecx, esi
0055b d3 e2 shl edx, cl
0055d 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
00561 8b 44 24 1c mov eax, DWORD PTR tv1438[esp+40]
00565 83 c6 08 add esi, 8
00568 83 c0 02 add eax, 2
0056b 83 ed 01 sub ebp, 1
0056e 03 da add ebx, edx
00570 3b f0 cmp esi, eax
00572 72 bc jb SHORT $LL194@inflateBac@3
00574 8b 4c 24 1c mov ecx, DWORD PTR tv1438[esp+40]
$LN196@inflateBac@3:
; 404 : DROPBITS(this.bits);
; 405 : if (state->have == 0) {
00578 8b 47 68 mov eax, DWORD PTR [edi+104]
0057b d3 eb shr ebx, cl
0057d 2b f1 sub esi, ecx
0057f 85 c0 test eax, eax
00581 0f 84 91 01 00
00 je $LN388@inflateBac@3
; 409 : }
; 410 : len = (unsigned)(state->lens[state->have - 1]);
00587 0f b7 44 47 6e movzx eax, WORD PTR [edi+eax*2+110]
0058c 89 44 24 1c mov DWORD PTR _len$[esp+40], eax
; 411 : copy = 3 + BITS(2);
00590 8b c3 mov eax, ebx
00592 83 e0 03 and eax, 3
00595 83 c0 03 add eax, 3
; 412 : DROPBITS(2);
00598 c1 eb 02 shr ebx, 2
0059b 83 ee 02 sub esi, 2
; 413 : }
; 414 : else if (this.val == 17) {
0059e e9 e3 00 00 00 jmp $LN137@inflateBac@3
$LN198@inflateBac@3:
005a3 66 83 f9 11 cmp cx, 17 ; 00000011H
; 415 : NEEDBITS(this.bits + 3);
005a7 0f b6 cc movzx ecx, ah
005aa 89 4c 24 1c mov DWORD PTR tv1438[esp+40], ecx
005ae 75 63 jne SHORT $LN155@inflateBac@3
005b0 8d 41 03 lea eax, DWORD PTR [ecx+3]
005b3 3b f0 cmp esi, eax
005b5 73 48 jae SHORT $LN174@inflateBac@3
$LL172@inflateBac@3:
005b7 85 ed test ebp, ebp
005b9 75 1b jne SHORT $LN166@inflateBac@3
005bb 8b 54 24 34 mov edx, DWORD PTR _in_desc$[esp+36]
005bf 8d 4c 24 10 lea ecx, DWORD PTR _next$[esp+40]
005c3 51 push ecx
005c4 52 push edx
005c5 ff 54 24 38 call DWORD PTR _in$[esp+44]
005c9 8b e8 mov ebp, eax
005cb 83 c4 08 add esp, 8
005ce 85 ed test ebp, ebp
005d0 0f 84 44 07 00
00 je $LN376@inflateBac@3
$LN166@inflateBac@3:
005d6 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
005da 0f b6 10 movzx edx, BYTE PTR [eax]
005dd 83 c0 01 add eax, 1
005e0 8b ce mov ecx, esi
005e2 d3 e2 shl edx, cl
005e4 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
005e8 8b 44 24 1c mov eax, DWORD PTR tv1438[esp+40]
005ec 83 c6 08 add esi, 8
005ef 83 c0 03 add eax, 3
005f2 83 ed 01 sub ebp, 1
005f5 03 da add ebx, edx
005f7 3b f0 cmp esi, eax
005f9 72 bc jb SHORT $LL172@inflateBac@3
005fb 8b 4c 24 1c mov ecx, DWORD PTR tv1438[esp+40]
$LN174@inflateBac@3:
; 416 : DROPBITS(this.bits);
005ff d3 eb shr ebx, cl
; 417 : len = 0;
; 418 : copy = 3 + BITS(3);
; 419 : DROPBITS(3);
00601 ba fd ff ff ff mov edx, -3 ; fffffffdH
00606 8b c3 mov eax, ebx
00608 83 e0 07 and eax, 7
0060b 83 c0 03 add eax, 3
0060e c1 eb 03 shr ebx, 3
; 420 : }
; 421 : else {
00611 eb 67 jmp SHORT $LN467@inflateBac@3
$LN155@inflateBac@3:
; 422 : NEEDBITS(this.bits + 7);
00613 8d 41 07 lea eax, DWORD PTR [ecx+7]
00616 3b f0 cmp esi, eax
00618 73 4e jae SHORT $LN154@inflateBac@3
0061a 8d 9b 00 00 00
00 npad 6
$LL152@inflateBac@3:
00620 85 ed test ebp, ebp
00622 75 1b jne SHORT $LN146@inflateBac@3
00624 8b 4c 24 34 mov ecx, DWORD PTR _in_desc$[esp+36]
00628 8d 44 24 10 lea eax, DWORD PTR _next$[esp+40]
0062c 50 push eax
0062d 51 push ecx
0062e ff 54 24 38 call DWORD PTR _in$[esp+44]
00632 8b e8 mov ebp, eax
00634 83 c4 08 add esp, 8
00637 85 ed test ebp, ebp
00639 0f 84 db 06 00
00 je $LN376@inflateBac@3
$LN146@inflateBac@3:
0063f 8b 44 24 10 mov eax, DWORD PTR _next$[esp+40]
00643 0f b6 10 movzx edx, BYTE PTR [eax]
00646 83 c0 01 add eax, 1
00649 8b ce mov ecx, esi
0064b d3 e2 shl edx, cl
0064d 89 44 24 10 mov DWORD PTR _next$[esp+40], eax
00651 8b 44 24 1c mov eax, DWORD PTR tv1438[esp+40]
00655 83 c6 08 add esi, 8
00658 83 c0 07 add eax, 7
0065b 83 ed 01 sub ebp, 1
0065e 03 da add ebx, edx
00660 3b f0 cmp esi, eax
00662 72 bc jb SHORT $LL152@inflateBac@3
00664 8b 4c 24 1c mov ecx, DWORD PTR tv1438[esp+40]
$LN154@inflateBac@3:
; 423 : DROPBITS(this.bits);
00668 d3 eb shr ebx, cl
; 424 : len = 0;
; 425 : copy = 11 + BITS(7);
; 426 : DROPBITS(7);
0066a ba f9 ff ff ff mov edx, -7 ; fffffff9H
0066f 8b c3 mov eax, ebx
00671 83 e0 7f and eax, 127 ; 0000007fH
00674 83 c0 0b add eax, 11 ; 0000000bH
00677 c1 eb 07 shr ebx, 7
$LN467@inflateBac@3:
0067a 2b d1 sub edx, ecx
0067c 03 f2 add esi, edx
0067e c7 44 24 1c 00
00 00 00 mov DWORD PTR _len$[esp+40], 0
$LN137@inflateBac@3:
; 427 : }
; 428 : if (state->have + copy > state->nlen + state->ndist) {
00686 8b 4f 64 mov ecx, DWORD PTR [edi+100]
00689 8b 57 68 mov edx, DWORD PTR [edi+104]
0068c 03 4f 60 add ecx, DWORD PTR [edi+96]
0068f 03 d0 add edx, eax
00691 3b d1 cmp edx, ecx
00693 0f 87 95 00 00
00 ja $LN389@inflateBac@3
; 431 : break;
; 432 : }
; 433 : while (copy--)
00699 85 c0 test eax, eax
0069b 74 17 je SHORT $LN445@inflateBac@3
0069d 8b 4c 24 1c mov ecx, DWORD PTR _len$[esp+40]
$LL135@inflateBac@3:
; 434 : state->lens[state->have++] = (unsigned short)len;
006a1 8b 57 68 mov edx, DWORD PTR [edi+104]
006a4 83 e8 01 sub eax, 1
006a7 66 89 4c 57 70 mov WORD PTR [edi+edx*2+112], cx
006ac 83 47 68 01 add DWORD PTR [edi+104], 1
006b0 85 c0 test eax, eax
006b2 75 ed jne SHORT $LL135@inflateBac@3
$LN445@inflateBac@3:
; 385 : }
; 386 : Tracev((stderr, "inflate: code lengths ok\n"));
; 387 :
; 388 : /* get length and distance code code lengths */
; 389 : state->have = 0;
; 390 : while (state->have < state->nlen + state->ndist) {
006b4 8b 47 64 mov eax, DWORD PTR [edi+100]
006b7 03 47 60 add eax, DWORD PTR [edi+96]
006ba 39 47 68 cmp DWORD PTR [edi+104], eax
006bd 0f 82 4d fd ff
ff jb $LL229@inflateBac@3
$LN432@inflateBac@3:
; 435 : }
; 436 : }
; 437 :
; 438 : /* handle error breaks in while */
; 439 : if (state->mode == BAD) break;
006c3 83 3f 1b cmp DWORD PTR [edi], 27 ; 0000001bH
006c6 0f 84 22 06 00
00 je $LN453@inflateBac@3
; 440 :
; 441 : /* build code tables */
; 442 : state->next = state->codes;
006cc 8d 87 30 05 00
00 lea eax, DWORD PTR [edi+1328]
006d2 8d 4f 6c lea ecx, DWORD PTR [edi+108]
006d5 89 01 mov DWORD PTR [ecx], eax
; 443 : state->lencode = (code const FAR *)(state->next);
006d7 89 47 4c mov DWORD PTR [edi+76], eax
; 444 : state->lenbits = 9;
; 445 : ret = inflate_table(LENS, state->lens, state->nlen, &(state->next),
; 446 : &(state->lenbits), state->work);
006da 8d 97 f0 02 00
00 lea edx, DWORD PTR [edi+752]
006e0 52 push edx
006e1 8d 47 54 lea eax, DWORD PTR [edi+84]
006e4 50 push eax
006e5 c7 00 09 00 00
00 mov DWORD PTR [eax], 9
006eb 8b 47 60 mov eax, DWORD PTR [edi+96]
006ee 51 push ecx
006ef 50 push eax
006f0 8d 47 70 lea eax, DWORD PTR [edi+112]
006f3 50 push eax
006f4 6a 01 push 1
006f6 e8 00 00 00 00 call _inflate_table
006fb 83 c4 18 add esp, 24 ; 00000018H
; 447 : if (ret) {
006fe 85 c0 test eax, eax
00700 74 42 je SHORT $LN132@inflateBac@3
; 448 : strm->msg = (char *)"invalid literal/lengths set";
00702 8b 4c 24 2c mov ecx, DWORD PTR _strm$[esp+36]
00706 c7 41 18 00 00
00 00 mov DWORD PTR [ecx+24], OFFSET ??_C@_0BM@IIMGAINC@invalid?5literal?1lengths?5set?$AA@
; 449 : state->mode = BAD;
0070d c7 07 1b 00 00
00 mov DWORD PTR [edi], 27 ; 0000001bH
; 450 : break;
00713 e9 d6 05 00 00 jmp $LN453@inflateBac@3
$LN388@inflateBac@3:
; 406 : strm->msg = (char *)"invalid bit length repeat";
00718 8b 4c 24 2c mov ecx, DWORD PTR _strm$[esp+36]
0071c c7 41 18 00 00
00 00 mov DWORD PTR [ecx+24], OFFSET ??_C@_0BK@BMMPFBBH@invalid?5bit?5length?5repeat?$AA@
; 407 : state->mode = BAD;
00723 c7 07 1b 00 00
00 mov DWORD PTR [edi], 27 ; 0000001bH
; 408 : break;
00729 e9 c0 05 00 00 jmp $LN453@inflateBac@3
$LN389@inflateBac@3:
; 429 : strm->msg = (char *)"invalid bit length repeat";
0072e 8b 54 24 2c mov edx, DWORD PTR _strm$[esp+36]
00732 c7 42 18 00 00
00 00 mov DWORD PTR [edx+24], OFFSET ??_C@_0BK@BMMPFBBH@invalid?5bit?5length?5repeat?$AA@
; 430 : state->mode = BAD;
00739 c7 07 1b 00 00
00 mov DWORD PTR [edi], 27 ; 0000001bH
; 435 : }
; 436 : }
; 437 :
; 438 : /* handle error breaks in while */
; 439 : if (state->mode == BAD) break;
0073f e9 aa 05 00 00 jmp $LN453@inflateBac@3
$LN132@inflateBac@3:
; 451 : }
; 452 : state->distcode = (code const FAR *)(state->next);
00744 8b 57 6c mov edx, DWORD PTR [edi+108]
00747 8d 4f 6c lea ecx, DWORD PTR [edi+108]
0074a 89 57 50 mov DWORD PTR [edi+80], edx
; 453 : state->distbits = 6;
; 454 : ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist,
; 455 : &(state->next), &(state->distbits), state->work);
0074d 8d 97 f0 02 00
00 lea edx, DWORD PT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -