Function at 0x62e8860c
Capabilities:
Compress data via zlib inflate or deflate

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xac
mov esi, dword [ebp + 8]
test esi, esi
jne 0x62e88634
mov ebx, 0xfffffffe
mov eax, ebx
add esp, 0xac
pop ebx
pop esi
pop edi
leave
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x2c], eax
test eax, eax
je case.default.0x62e886e0
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0xc]
mov dword [ebp - 0x44], edx
test edx, edx
je case.default.0x62e886e0
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x62e89b1e
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi]
cmp eax, 0xb
je 0x62e89af3
mov edi, dword [ebp + 8]
mov edi, dword [edi + 0x10]
mov dword [ebp - 0x48], edi
mov edx, dword [ebp + 8]
mov edx, dword [edx + 4]
mov dword [ebp - 0x5c], edx
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx + 0x38]
mov dword [ebp - 0x30], ecx
mov ebx, dword [ebp - 0x2c]
mov ebx, dword [ebx + 0x3c]
mov dword [ebp - 0x3c], ebx
mov esi, dword [ebp + 0xc]
sub esi, 5
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x34], edx
xor ebx, ebx
mov edi, dword [ebp - 0x2c]
add edi, 0x530
mov dword [ebp - 0x60], edi
mov edx, dword [ebp - 0x2c]
add edx, 0x2f0
mov dword [ebp - 0x68], edx
mov ecx, dword [ebp - 0x2c]
add ecx, 0x6c
mov dword [ebp - 0x6c], ecx
mov esi, dword [ebp - 0x2c]
add esi, 0x54
mov dword [ebp - 0x70], esi
mov edi, dword [ebp - 0x2c]
add edi, 0x70
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x54], ebx
cmp eax, 0x1e
ja case.default.0x62e886e0
jmp dword [eax*4 + 0x62e97050]
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 4]
test edx, edx
jne 0x62e89f91
cmp dword [ebp - 0x3c], 2
ja 0x62e8871f
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x62e88843
dec dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
movzx eax, byte [edx]
mov cl, byte [ebp - 0x3c]
shl eax, cl
add dword [ebp - 0x30], eax
inc edx
mov dword [ebp - 0x38], edx
add dword [ebp - 0x3c], 8
mov eax, dword [ebp - 0x30]
and eax, 1
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 4], eax
mov edx, dword [ebp - 0x30]
shr edx, 1
mov ecx, dword [ebp - 0x3c]
dec ecx
mov eax, edx
and eax, 3
cmp eax, 2
je 0x62e89e73
cmp eax, 3
je 0x62e89e5b
dec eax
je 0x62e89e16
mov dword [ebx], 0xd
shr edx, 2
mov dword [ebp - 0x30], edx
sub ecx, 2
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx]
jmp 0x62e886d7
cmp dword [ebp - 0x3c], 0x1f
ja 0x62e887b2
mov edx, dword [ebp - 0x34]
test edx, edx
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88798
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0x1f
jbe 0x62e88790
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov eax, dword [ebp - 0x30]
shl eax, 0x18
mov edx, dword [ebp - 0x30]
shr edx, 0x18
lea edx, [eax + edx]
mov eax, dword [ebp - 0x30]
shr eax, 8
and eax, 0xff00
lea eax, [edx + eax]
mov edx, dword [ebp - 0x30]
and edx, 0xff00
shl edx, 8
add eax, edx
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x30], eax
mov dword [ecx], 0xa
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x62e8a385
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sym.zlib1.dll_adler32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x30], eax
mov dword [ecx], 0xb
cmp dword [ebp - 0x64], 1
ja case.0x62e886e0.12
mov ebx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp + 8]
mov dword [edi + 0xc], eax
mov edx, dword [ebp - 0x48]
mov dword [edi + 0x10], edx
mov dword [edi], ecx
mov dword [edi + 4], esi
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x38], eax
mov ecx, dword [ebp - 0x3c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [edx + 0x28]
test ecx, ecx
jne 0x62e88883
cmp dword [edx], 0x19
ja 0x62e88896
mov esi, dword [ebp - 0x48]
cmp dword [ebp - 0x58], esi
je 0x62e88896
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp + 8]
call fcn.62e880dc
test eax, eax
jne 0x62e8951b
mov edi, dword [ebp - 0x5c]
mov eax, dword [ebp + 8]
sub edi, dword [eax + 4]
mov esi, dword [ebp - 0x58]
sub esi, dword [eax + 0x10]
add dword [eax + 8], edi
add dword [eax + 0x14], esi
mov edx, dword [ebp - 0x2c]
add dword [edx + 0x1c], esi
mov eax, dword [edx + 8]
test eax, eax
je 0x62e888f0
test esi, esi
je 0x62e888f0
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x62e89b67
mov dword [esp + 8], esi
mov eax, esi
neg eax
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0xc]
mov dword [esp + 4], eax
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x18], eax
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x30], eax
mov eax, dword [ebp - 0x2c]
cmp dword [eax + 4], 1
sbb eax, eax
not eax
and eax, 0x40
mov edx, dword [ebp - 0x2c]
add eax, dword [edx + 0x3c]
mov edx, dword [edx]
cmp edx, 0xb
je 0x62e89b00
cmp edx, 0x13
je 0x62e88948
cmp edx, 0xe
je 0x62e88948
xor edx, edx
add eax, edx
mov edx, dword [ebp + 8]
mov dword [edx + 0x2c], eax
test edi, edi
jne 0x62e89ae4
test esi, esi
jne 0x62e89ae4
test ebx, ebx
jne 0x62e88624
mov ebx, 0xfffffffb
jmp 0x62e88624
mov edx, 0x100
jmp 0x62e8891b
mov ecx, dword [ebp - 0x3c]
and ecx, 7
shr dword [ebp - 0x30], cl
and dword [ebp - 0x3c], 0xfffffff8
cmp dword [ebp - 0x3c], 0x1f
ja 0x62e889a1
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88984
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0x1f
jbe 0x62e8897c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
movzx eax, word [ebp - 0x30]
mov edx, dword [ebp - 0x30]
shr edx, 0x10
xor edx, 0xffff
cmp eax, edx
jne 0x62e8a083
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x40], eax
mov dword [edx], 0xe
cmp dword [ebp + 0xc], 6
je 0x62e8a369
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], 0xf
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x40]
test eax, eax
je 0x62e8a060
mov edx, dword [ebp - 0x48]
cmp edx, eax
jbe 0x62e889fd
mov edx, eax
mov eax, edx
cmp edx, dword [ebp - 0x34]
jbe 0x62e88a07
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x62e88843
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp - 0x38]
mov ecx, eax
rep movsb byte es:[edi], byte [esi]
sub dword [ebp - 0x34], eax
mov dword [ebp - 0x38], esi
sub dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edi
mov esi, dword [ebp - 0x2c]
sub dword [esi + 0x40], eax
jmp 0x62e88764
mov ebx, dword [ebp - 0x2c]
mov edx, dword [ebx + 0x48]
test edx, edx
je 0x62e88a9b
cmp dword [ebp - 0x3c], edx
jae 0x62e88a7c
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x62e88843
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88a60
test esi, esi
je 0x62e89dcf
dec esi
movzx eax, byte [edi]
shl eax, cl
add ebx, eax
inc edi
add ecx, 8
cmp ecx, edx
jb 0x62e88a58
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x3c], ecx
mov eax, 1
mov cl, dl
shl eax, cl
dec eax
and eax, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x44], eax
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], edx
add dword [ebx + 0x1bc4], edx
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x18
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x62e88843
mov edx, dword [ebp - 0x58]
sub edx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x44]
cmp edx, eax
jae 0x62e89bbb
sub eax, edx
cmp eax, dword [edi + 0x2c]
jbe 0x62e89c6b
cmp dword [edi + 0x1bc0], 0
je 0x62e89c6b
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], 0x62e97005
mov dword [edi], 0x1d
jmp 0x62e88764
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x48]
test edx, edx
je 0x62e88b5b
cmp dword [ebp - 0x3c], edx
jae 0x62e88b3c
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x62e88843
mov edi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88b20
test edi, edi
je 0x62e89de5
dec edi
movzx eax, byte [esi]
shl eax, cl
add ebx, eax
inc esi
add ecx, 8
cmp ecx, edx
jb 0x62e88b18
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov eax, 1
mov cl, dl
shl eax, cl
dec eax
and eax, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x40], eax
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], edx
add dword [ebx + 0x1bc4], edx
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x40]
mov dword [esi + 0x1bc8], eax
mov dword [esi], 0x16
mov edi, dword [ebp - 0x2c]
mov edi, dword [edi + 0x50]
mov dword [ebp - 0x50], edi
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 0x58]
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x4c]
lea eax, [edi + eax*4]
movzx edi, byte [eax]
mov dl, byte [eax + 1]
mov byte [ebp - 0x40], dl
mov dx, word [eax + 2]
movzx esi, byte [ebp - 0x40]
cmp dword [ebp - 0x3c], esi
jae 0x62e88c02
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88bc4
test edx, edx
je 0x62e89b8c
dec edx
movzx ebx, byte [eax]
shl ebx, cl
add dword [ebp - 0x30], ebx
inc eax
add ecx, 8
mov ebx, dword [ebp - 0x30]
and ebx, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x50]
lea esi, [edi + ebx*4]
mov bl, byte [esi]
mov byte [ebp - 0x78], bl
mov bl, byte [esi + 1]
mov byte [ebp - 0x40], bl
mov di, word [esi + 2]
movzx esi, bl
cmp esi, ecx
ja 0x62e88bbc
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
mov edx, edi
movzx edi, byte [ebp - 0x78]
mov ecx, edi
movzx eax, cl
test al, 0xf0
jne 0x62e88cdd
movzx edx, dx
mov dword [ebp - 0x78], edx
movzx ebx, byte [ebp - 0x40]
mov dword [ebp - 0x4c], ebx
mov ecx, ebx
add ecx, eax
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x7c], eax
and eax, dword [ebp - 0x30]
mov cl, byte [ebp - 0x40]
shr eax, cl
add eax, edx
mov ebx, dword [ebp - 0x50]
lea eax, [ebx + eax*4]
movzx edi, byte [eax]
mov dl, byte [eax + 1]
mov byte [ebp - 0x40], dl
mov dx, word [eax + 2]
movzx eax, byte [ebp - 0x40]
add eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x3c], eax
jae 0x62e88cc8
cmp dword [ebp - 0x34], 0
je 0x62e88843
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x3c]
mov dword [ebp - 0x80], esi
mov esi, dword [ebp - 0x34]
jmp 0x62e88c74
test esi, esi
je 0x62e89e81
dec esi
movzx eax, byte [edx]
mov cl, bl
shl eax, cl
add dword [ebp - 0x30], eax
inc edx
add ebx, 8
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x7c]
mov cl, byte [ebp - 0x4c]
shr eax, cl
add eax, dword [ebp - 0x78]
mov edi, dword [ebp - 0x50]
lea eax, [edi + eax*4]
mov cl, byte [eax]
mov byte [ebp - 0x84], cl
mov cl, byte [eax + 1]
mov byte [ebp - 0x40], cl
mov di, word [eax + 2]
movzx eax, cl
add eax, dword [ebp - 0x4c]
cmp eax, ebx
ja 0x62e88c6c
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov esi, dword [ebp - 0x80]
mov edx, edi
movzx edi, byte [ebp - 0x84]
mov cl, byte [ebp - 0x4c]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], esi
mov esi, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x1bc4], esi
movzx eax, byte [ebp - 0x40]
mov cl, byte [ebp - 0x40]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x1bc4], eax
and edi, 0xff
test edi, 0x40
jne 0x62e8a06e
movzx edx, dx
mov dword [ebx + 0x44], edx
mov edx, edi
and edx, 0xf
mov dword [ebx + 0x48], edx
mov dword [ebx], 0x17
jmp 0x62e88a36
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov edi, dword [ebp - 0x2c]
cmp dword [edi], 0x1d
je 0x62e88764
cmp word [edi + 0x270], 0
je 0x62e8a461
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x6c], ecx
mov dword [edx + 0x4c], ecx
mov dword [edx + 0x54], 9
mov ebx, dword [ebp - 0x68]
mov dword [esp + 0x14], ebx
mov esi, dword [ebp - 0x70]
mov dword [esp + 0x10], esi
mov edi, dword [ebp - 0x6c]
mov dword [esp + 0xc], edi
mov eax, dword [ebp - 0x7c]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x74]
mov dword [esp + 4], edx
mov dword [esp], 1
call fcn.62e8aa00
mov dword [ebp - 0x54], eax
test eax, eax
jne 0x62e8a449
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x6c]
mov dword [esi + 0x50], eax
mov dword [esi + 0x58], 6
mov edi, dword [ebp - 0x68]
mov dword [esp + 0x14], edi
mov eax, esi
add eax, 0x58
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x6c]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x64]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x60]
lea eax, [esi + eax*2 + 0x70]
mov dword [esp + 4], eax
mov dword [esp], 2
call fcn.62e8aa00
mov dword [ebp - 0x54], eax
test eax, eax
jne 0x62e8a434
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], 0x13
cmp dword [ebp + 0xc], 6
je 0x62e88843
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x14
cmp dword [ebp - 0x34], 5
jbe 0x62e88e0d
cmp dword [ebp - 0x48], 0x101
ja 0x62e8a248
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x1bc4], 0
mov esi, dword [ebx + 0x4c]
mov dword [ebp - 0x50], esi
mov ecx, dword [ebx + 0x54]
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x4c]
lea eax, [esi + eax*4]
movzx edi, byte [eax]
mov dl, byte [eax + 1]
mov byte [ebp - 0x40], dl
mov dx, word [eax + 2]
movzx esi, byte [ebp - 0x40]
cmp dword [ebp - 0x3c], esi
jae 0x62e88eaa
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e88e6c
test edx, edx
je 0x62e89b8c
dec edx
movzx ebx, byte [eax]
shl ebx, cl
add dword [ebp - 0x30], ebx
inc eax
add ecx, 8
mov ebx, dword [ebp - 0x30]
and ebx, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x50]
lea esi, [edi + ebx*4]
mov bl, byte [esi]
mov byte [ebp - 0x78], bl
mov bl, byte [esi + 1]
mov byte [ebp - 0x40], bl
mov di, word [esi + 2]
movzx esi, bl
cmp esi, ecx
ja 0x62e88e64
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
mov edx, edi
movzx edi, byte [ebp - 0x78]
mov eax, edi
test al, al
je 0x62e88f82
movzx eax, al
test al, 0xf0
jne 0x62e88f82
movzx edx, dx
mov dword [ebp - 0x7c], edx
movzx edx, byte [ebp - 0x40]
mov dword [ebp - 0x4c], edx
mov ecx, edx
add ecx, eax
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x78], eax
and eax, dword [ebp - 0x30]
mov cl, byte [ebp - 0x40]
shr eax, cl
add eax, dword [ebp - 0x7c]
mov ebx, dword [ebp - 0x50]
lea eax, [ebx + eax*4]
movzx edi, byte [eax]
mov dl, byte [eax + 1]
mov byte [ebp - 0x40], dl
mov dx, word [eax + 2]
movzx eax, byte [ebp - 0x40]
add eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x3c], eax
jae 0x62e88f6d
cmp dword [ebp - 0x34], 0
je 0x62e88843
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x3c]
jmp 0x62e88f23
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x62e8a04d
dec dword [ebp - 0x34]
movzx eax, byte [edx]
mov cl, bl
shl eax, cl
add dword [ebp - 0x30], eax
inc edx
add ebx, 8
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x78]
mov cl, byte [ebp - 0x4c]
shr eax, cl
add eax, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x50]
lea eax, [edi + eax*4]
mov cl, byte [eax]
mov byte [ebp - 0x80], cl
mov cl, byte [eax + 1]
mov byte [ebp - 0x40], cl
mov di, word [eax + 2]
movzx eax, cl
add eax, dword [ebp - 0x4c]
cmp eax, ebx
ja 0x62e88f18
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov edx, edi
movzx edi, byte [ebp - 0x80]
mov cl, byte [ebp - 0x4c]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], esi
mov esi, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x1bc4], esi
movzx eax, byte [ebp - 0x40]
mov cl, byte [ebp - 0x40]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x1bc4], eax
movzx edx, dx
mov dword [ebx + 0x40], edx
mov eax, edi
test al, al
je 0x62e8a18c
mov ecx, edi
movzx edx, cl
test dl, 0x20
jne 0x62e8a197
test dl, 0x40
jne 0x62e8a20f
and edx, 0xf
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x48], edx
mov dword [eax], 0x15
jmp 0x62e88af6
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 8]
test eax, eax
je 0x62e890bb
cmp dword [ebp - 0x3c], 0x1f
ja 0x62e89024
cmp dword [ebp - 0x34], 0
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e89007
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0x1f
jbe 0x62e88fff
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x48]
mov ebx, dword [ebp + 8]
add dword [ebx + 0x14], eax
mov esi, dword [ebp - 0x2c]
add dword [esi + 0x1c], eax
test eax, eax
je 0x62e89068
cmp dword [esi + 0x10], 0
je 0x62e8a0e7
mov dword [esp + 8], eax
mov edi, dword [ebp - 0x44]
sub edi, eax
mov dword [esp + 4], edi
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x18], eax
mov esi, dword [ebp + 8]
mov dword [esi + 0x30], eax
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
cmp dword [edi + 0x10], 0
jne 0x62e8909b
mov edx, eax
and edx, 0xff00
shl edx, 8
shl eax, 0x18
mov ecx, dword [ebp - 0x30]
shr ecx, 0x18
lea ecx, [eax + ecx]
mov eax, dword [ebp - 0x30]
shr eax, 8
and eax, 0xff00
lea eax, [ecx + eax]
add eax, edx
mov edx, dword [ebp - 0x2c]
cmp eax, dword [edx + 0x18]
jne 0x62e8a2d3
mov esi, dword [ebp - 0x48]
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1b
mov eax, dword [ebp - 0x2c]
mov edi, dword [eax + 8]
test edi, edi
je 0x62e8a0ce
mov esi, dword [eax + 0x10]
test esi, esi
je 0x62e8a0ce
cmp dword [ebp - 0x3c], 0x1f
ja 0x62e89121
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x62e88843
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e89104
test esi, esi
je 0x62e89b08
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x62e890fc
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
cmp dword [ecx + 0x1c], edx
je 0x62e8a0c0
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.incorrect_length_check
mov dword [ecx], 0x1d
jmp 0x62e88764
cmp dword [ebp - 0x3c], 0xd
ja 0x62e89189
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e8916c
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0xd
jbe 0x62e89164
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x30]
and edx, 0x1f
add edx, 0x101
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x60], edx
mov eax, dword [ebp - 0x30]
shr eax, 5
and eax, 0x1f
lea ecx, [eax + 1]
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x64], ecx
mov eax, dword [ebp - 0x30]
shr eax, 0xa
and eax, 0xf
add eax, 4
mov dword [ebx + 0x5c], eax
shr dword [ebp - 0x30], 0xe
sub dword [ebp - 0x3c], 0xe
cmp edx, 0x11e
ja 0x62e8a151
cmp ecx, 0x1e
ja 0x62e8a151
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x68], 0
mov dword [eax], 0x11
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x68]
mov edx, eax
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ecx + 0x5c]
cmp esi, eax
jbe 0x62e89254
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x30], esi
cmp ecx, 2
ja 0x62e89228
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x62e8a039
dec dword [ebp - 0x34]
mov ebx, dword [ebp - 0x38]
movzx edi, byte [ebx]
shl edi, cl
add eax, edi
inc ebx
mov dword [ebp - 0x38], ebx
add ecx, 8
movzx ebx, word [edx + edx + 0x62e970e0]
mov edi, eax
and edi, 7
mov esi, dword [ebp - 0x2c]
mov word [esi + ebx*2 + 0x70], di
inc edx
mov dword [esi + 0x68], edx
shr eax, 3
sub ecx, 3
cmp edx, dword [ebp - 0x30]
jb 0x62e89204
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x3c], ecx
mov eax, edx
mov edx, eax
cmp eax, 0x12
ja 0x62e8927a
movzx eax, word [edx + edx + 0x62e970e0]
mov edi, dword [ebp - 0x2c]
mov word [edi + eax*2 + 0x70], 0
inc edx
cmp edx, 0x13
jne 0x62e8925b
mov dword [edi + 0x68], 0x13
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x6c], edx
mov dword [eax + 0x4c], edx
mov dword [eax + 0x54], 7
mov ecx, dword [ebp - 0x68]
mov dword [esp + 0x14], ecx
mov ebx, dword [ebp - 0x70]
mov dword [esp + 0x10], ebx
mov esi, dword [ebp - 0x6c]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x13
mov edi, dword [ebp - 0x74]
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.62e8aa00
mov dword [ebp - 0x54], eax
test eax, eax
jne 0x62e8a3b5
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x68], 0
mov dword [ecx], 0x12
mov ebx, dword [ebp - 0x2c]
mov ebx, dword [ebx + 0x60]
mov dword [ebp - 0x7c], ebx
mov esi, dword [ebp - 0x2c]
add ebx, dword [esi + 0x64]
mov dword [ebp - 0x4c], ebx
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x3c]
mov edi, esi
mov edi, dword [edi + 0x68]
mov dword [ebp - 0x40], edi
mov ecx, dword [ebp - 0x4c]
cmp edi, ecx
jae 0x62e88d1e
mov esi, dword [ebp - 0x2c]
mov esi, dword [esi + 0x4c]
mov dword [ebp - 0x3c], esi
mov edi, dword [ebp - 0x2c]
mov ecx, dword [edi + 0x54]
mov esi, 1
shl esi, cl
mov ecx, esi
dec ecx
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x30]
and ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
lea edi, [esi + ecx*4]
mov cl, byte [edi + 1]
mov byte [ebp - 0x34], cl
mov di, word [edi + 2]
movzx esi, cl
mov dword [ebp - 0x50], esi
cmp ebx, esi
jae 0x62e89389
test eax, eax
je 0x62e89f64
mov ecx, ebx
mov ebx, eax
jmp 0x62e89358
test ebx, ebx
je 0x62e89d33
dec ebx
movzx esi, byte [edx]
shl esi, cl
add dword [ebp - 0x30], esi
inc edx
add ecx, 8
mov esi, dword [ebp - 0x38]
and esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x3c]
lea esi, [edi + esi*4]
mov al, byte [esi + 1]
mov byte [ebp - 0x34], al
mov di, word [esi + 2]
movzx esi, al
cmp esi, ecx
ja 0x62e89350
mov eax, ebx
mov ebx, ecx
mov dword [ebp - 0x50], esi
cmp di, 0xf
jbe 0x62e89d79
cmp di, 0x10
je 0x62e89fac
cmp di, 0x11
je 0x62e89f35
movzx edi, byte [ebp - 0x34]
lea esi, [edi + 7]
mov dword [ebp - 0x34], esi
cmp ebx, esi
jae 0x62e893e0
test eax, eax
je 0x62e89f64
mov ecx, ebx
jmp 0x62e893cc
test eax, eax
je 0x62e8a177
dec eax
movzx esi, byte [edx]
shl esi, cl
add dword [ebp - 0x30], esi
inc edx
add ecx, 8
cmp ecx, dword [ebp - 0x34]
jb 0x62e893c4
mov ebx, ecx
mov esi, dword [ebp - 0x30]
mov ecx, edi
shr esi, cl
mov edi, esi
and esi, 0x7f
add esi, 0xb
mov dword [ebp - 0x34], esi
shr edi, 7
mov dword [ebp - 0x30], edi
sub ebx, dword [ebp - 0x50]
sub ebx, 7
xor esi, esi
mov edi, dword [ebp - 0x34]
add edi, dword [ebp - 0x40]
mov dword [ebp - 0x80], edi
cmp dword [ebp - 0x4c], edi
jb 0x62e8a227
mov ecx, dword [ebp - 0x34]
dec ecx
mov dword [ebp - 0x8c], ecx
mov edi, dword [ebp - 0x40]
add edi, 0x38
mov dword [ebp - 0x84], edi
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx + edi*2]
and ecx, 3
shr ecx, 1
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x38], edi
cmp edi, ecx
jbe 0x62e89440
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x38], 0
je 0x62e89472
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x50], eax
mov edi, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x2c]
mov word [eax + ecx*2 + 0x70], si
inc ecx
dec edi
mov eax, ecx
sub eax, dword [ebp - 0x40]
cmp dword [ebp - 0x38], eax
ja 0x62e89452
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x38]
mov dword [ebp - 0x34], ecx
shr ecx, 1
mov dword [ebp - 0x3c], ecx
shl ecx, 1
mov dword [ebp - 0x78], ecx
je 0x62e894e9
mov ecx, esi
shl ecx, 0x10
movzx edi, si
or edi, ecx
mov dword [ebp - 0x50], edi
mov ecx, dword [ebp - 0x84]
add ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x2c]
lea ecx, [edi + ecx*2]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x90], edx
mov edi, dword [ebp - 0x8c]
xor eax, eax
mov edx, dword [ebp - 0x50]
mov dword [ecx + eax*4], edx
inc eax
cmp dword [ebp - 0x3c], eax
ja 0x62e894c1
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x78]
sub edi, ecx
mov dword [ebp - 0x8c], edi
add dword [ebp - 0x40], ecx
cmp dword [ebp - 0x34], ecx
je 0x62e8950b
mov edi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x2c]
lea edi, [ecx + edi*2 + 0x70]
mov dword [ebp - 0x34], edi
mov edi, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x34]
mov word [ecx], si
dec edi
add ecx, 2
cmp edi, 0xffffffff
jne 0x62e894ff
mov esi, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x68], esi
mov edi, ecx
jmp 0x62e892f5
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1e
mov ebx, 0xfffffffc
jmp 0x62e88624
cmp dword [ebp - 0x3c], 0xf
ja 0x62e89572
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x62e88843
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e89558
test esi, esi
je 0x62e89b08
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x62e89550
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x20]
test eax, eax
je 0x62e8958c
movzx edx, byte [ebp - 0x30]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x30]
shr edx, 8
mov dword [eax + 0xc], edx
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x10]
test dh, 2
jne 0x62e89e94
mov edi, dword [ebp - 0x2c]
mov dword [edi], 4
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
test dh, 4
je 0x62e89cf3
cmp dword [ebp - 0x3c], 0xf
ja 0x62e89600
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x62e88843
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov ebx, edx
mov edx, dword [ebp - 0x34]
jmp 0x62e895e4
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0xf
jbe 0x62e895dc
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov edx, ebx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x40], eax
mov eax, dword [ecx + 0x20]
test eax, eax
je 0x62e89616
mov ebx, dword [ebp - 0x30]
mov dword [eax + 0x14], ebx
test dh, 2
jne 0x62e89fe8
mov eax, edx
and eax, 0x400
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov dword [esi], 5
jmp 0x62e898aa
cmp dword [ebp - 0x3c], 0x1f
ja 0x62e89686
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x62e88843
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e8966c
test esi, esi
je 0x62e89b08
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x62e89664
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x62e89696
mov edx, dword [ebp - 0x30]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x2c]
test byte [ecx + 0x11], 2
jne 0x62e89ecb
mov edi, dword [ebp - 0x2c]
mov dword [edi], 3
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x3c], 0
jmp 0x62e89534
mov ebx, 0xfffffffd
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov edx, dword [ebp - 0x48]
test edx, edx
je 0x62e88843
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x40]
mov edx, dword [ebp - 0x44]
mov byte [edx], al
inc edx
mov dword [ebp - 0x44], edx
dec dword [ebp - 0x48]
mov dword [edi], 0x14
jmp 0x62e88764
mov ebx, 1
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov edi, dword [ebp - 0x2c]
mov edx, dword [edi + 0x10]
test dh, 2
je 0x62e89ca6
cmp dword [ebp - 0x3c], 0xf
ja 0x62e8975f
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x62e88843
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov ebx, edx
mov edx, dword [ebp - 0x38]
jmp 0x62e89740
test esi, esi
je 0x62e89b08
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x62e89738
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov edx, ebx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x18]
and eax, 0xffff
cmp eax, dword [ebp - 0x30]
je 0x62e89c98
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.header_crc_mismatch
mov dword [ecx], 0x1d
jmp 0x62e88764
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax + 0x10]
test dh, 0x10
je 0x62e89b4d
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x62e88843
xor esi, esi
mov edx, dword [ebp - 0x38]
mov dl, byte [edx + esi]
mov byte [ebp - 0x40], dl
movzx edi, dl
inc esi
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x20]
test eax, eax
je 0x62e897d6
mov ebx, dword [eax + 0x24]
test ebx, ebx
je 0x62e897d6
mov edx, ecx
mov ecx, dword [ecx + 0x40]
cmp ecx, dword [eax + 0x28]
jae 0x62e897d6
mov al, byte [ebp - 0x40]
mov byte [ebx + ecx], al
inc ecx
mov dword [edx + 0x40], ecx
test edi, edi
je 0x62e897df
cmp dword [ebp - 0x34], esi
ja 0x62e897a4
mov edx, dword [ebp - 0x2c]
test byte [edx + 0x11], 2
jne 0x62e89d12
sub dword [ebp - 0x34], esi
add dword [ebp - 0x38], esi
test edi, edi
jne 0x62e88843
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x10]
mov eax, dword [ebp - 0x2c]
mov dword [eax], 8
jmp 0x62e8970d
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x10]
test dh, 8
je 0x62e89ba1
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x62e88843
xor esi, esi
nop
mov edx, dword [ebp - 0x38]
mov dl, byte [edx + esi]
mov byte [ebp - 0x40], dl
movzx edi, dl
inc esi
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x20]
test eax, eax
je 0x62e8985e
mov ebx, dword [eax + 0x1c]
test ebx, ebx
je 0x62e8985e
mov edx, ecx
mov ecx, dword [ecx + 0x40]
cmp ecx, dword [eax + 0x20]
jae 0x62e8985e
mov al, byte [ebp - 0x40]
mov byte [ebx + ecx], al
inc ecx
mov dword [edx + 0x40], ecx
test edi, edi
je 0x62e89867
cmp dword [ebp - 0x34], esi
ja 0x62e8982c
mov edx, dword [ebp - 0x2c]
test byte [edx + 0x11], 2
jne 0x62e89d49
sub dword [ebp - 0x34], esi
add dword [ebp - 0x38], esi
test edi, edi
jne 0x62e88843
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x10]
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x40], 0
mov dword [eax], 7
jmp 0x62e8978e
mov ebx, dword [ebp - 0x2c]
mov edx, dword [ebx + 0x10]
mov eax, edx
and eax, 0x400
test eax, eax
je 0x62e8991d
mov edi, dword [ebp - 0x2c]
mov ecx, dword [edi + 0x40]
mov ebx, dword [ebp - 0x34]
cmp ebx, ecx
jbe 0x62e898bd
mov ebx, ecx
test ebx, ebx
je 0x62e8990c
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x62e898f7
mov esi, dword [eax + 0x10]
test esi, esi
je 0x62e898f7
mov edx, dword [eax + 0x14]
sub edx, ecx
mov eax, dword [eax + 0x18]
lea edi, [ebx + edx]
mov ecx, ebx
cmp edi, eax
jbe 0x62e898e7
mov ecx, eax
sub ecx, edx
lea eax, [esi + edx]
mov edi, eax
mov esi, dword [ebp - 0x38]
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x2c]
mov edx, dword [edi + 0x10]
and dh, 2
jne 0x62e89f11
sub dword [ebp - 0x34], ebx
add dword [ebp - 0x38], ebx
mov esi, dword [ebp - 0x2c]
sub dword [esi + 0x40], ebx
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x40]
test eax, eax
jne 0x62e88843
mov edx, dword [edi + 0x10]
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x40], 0
mov dword [eax], 6
jmp 0x62e89814
cmp dword [ebp - 0x3c], 0xf
ja 0x62e89979
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x62e88843
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e8995c
test edx, edx
je 0x62e89b34
dec edx
movzx eax, byte [esi]
shl eax, cl
add edi, eax
inc esi
add ecx, 8
cmp ecx, 0xf
jbe 0x62e89954
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x10], eax
cmp al, 8
jne 0x62e8a13c
test dword [ebp - 0x30], 0xe000
jne 0x62e8a3cd
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x62e899ac
mov edx, dword [ebp - 0x30]
shr edx, 8
and edx, 1
mov dword [eax], edx
test dword [ebp - 0x30], 0x200
je 0x62e899e7
mov al, byte [ebp - 0x30]
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 0x30]
shr eax, 8
mov byte [ebp - 0x1b], al
mov dword [esp + 8], 2
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 2
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x3c], 0
jmp 0x62e89648
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 8]
test edx, edx
je 0x62e8a169
cmp dword [ebp - 0x3c], 0xf
ja 0x62e89a5b
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x62e88843
mov ebx, edx
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
jmp 0x62e89a3c
test esi, esi
je 0x62e89b08
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x62e89a34
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov edx, ebx
mov dword [ebp - 0x3c], ecx
test dl, 2
je 0x62e89a6d
cmp dword [ebp - 0x30], 0x8b1f
je 0x62e8a1af
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x10], 0
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x62e89a85
mov dword [eax + 0x30], 0xffffffff
and dl, 1
je 0x62e89dfe
mov eax, dword [ebp - 0x30]
shl eax, 8
and eax, 0xffff
mov edx, dword [ebp - 0x30]
shr edx, 8
add eax, edx
mov ecx, 0x1f
xor edx, edx
div ecx
test edx, edx
jne 0x62e89dfe
mov eax, dword [ebp - 0x30]
and eax, 0xf
cmp eax, 8
je 0x62e8a2ee
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.unknown_compression_method
mov edx, dword [ebp - 0x2c]
mov dword [edx], 0x1d
jmp 0x62e88764
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x10]
jmp 0x62e895b2
cmp dword [ebp + 0xc], 4
jne 0x62e88624
jmp 0x62e88933
mov dword [esi], 0xc
mov al, 0xc
jmp 0x62e8866c
sub eax, 0xffffff80
jmp 0x62e88919
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov ecx, edx
jmp 0x62e8884c
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 4]
test ebx, ebx
jne case.default.0x62e886e0
jmp 0x62e8865e
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x62e89800
mov dword [eax + 0x24], 0
jmp 0x62e89800
mov dword [esp + 8], esi
mov eax, esi
neg eax
mov edx, dword [ebp + 8]
add eax, dword [edx + 0xc]
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_adler32
jmp 0x62e888e4
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
mov ecx, eax
mov esi, edx
jmp 0x62e8884c
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x62e89888
mov dword [eax + 0x1c], 0
jmp 0x62e89888
mov edx, dword [ebp - 0x44]
sub edx, eax
mov eax, dword [edi + 0x40]
mov ecx, eax
mov edi, eax
cmp eax, dword [ebp - 0x48]
jbe 0x62e89bcf
mov edi, dword [ebp - 0x48]
sub dword [ebp - 0x48], edi
mov eax, ecx
sub eax, edi
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x40], eax
mov esi, edi
shr esi, 2
mov ebx, esi
shl ebx, 2
mov dword [ebp - 0x40], ebx
je 0x62e8a406
mov eax, dword [ebp - 0x44]
or eax, edx
test al, 3
sete cl
cmp edi, 9
seta al
and ecx, eax
lea eax, [edx + 4]
cmp dword [ebp - 0x44], eax
seta al
mov ebx, dword [ebp - 0x44]
add ebx, 4
cmp edx, ebx
seta bl
or eax, ebx
test cl, al
je 0x62e8a406
xor eax, eax
mov ebx, dword [ebp - 0x44]
mov ecx, dword [edx + eax*4]
mov dword [ebx + eax*4], ecx
inc eax
cmp eax, esi
jb 0x62e89c24
mov ecx, dword [ebp - 0x44]
add ecx, dword [ebp - 0x40]
mov esi, edi
sub esi, dword [ebp - 0x40]
add edx, dword [ebp - 0x40]
cmp edi, dword [ebp - 0x40]
je 0x62e89c4f
xor eax, eax
mov bl, byte [edx + eax]
mov byte [ecx + eax], bl
inc eax
cmp esi, eax
jne 0x62e89c44
add dword [ebp - 0x44], edi
mov esi, dword [ebp - 0x2c]
mov ecx, dword [esi + 0x40]
test ecx, ecx
jne 0x62e88764
mov dword [esi], 0x14
jmp 0x62e88764
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x30]
cmp eax, edx
jbe 0x62e89d6a
sub eax, edx
mov edx, dword [ecx + 0x28]
sub edx, eax
add edx, dword [ecx + 0x34]
mov esi, dword [ebp - 0x2c]
mov ecx, dword [esi + 0x40]
cmp eax, ecx
jbe 0x62e89bc5
mov eax, ecx
jmp 0x62e89bc5
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x62e89cc0
sar edx, 9
and edx, 1
mov dword [eax + 0x2c], edx
mov dword [eax + 0x30], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sym.zlib1.dll_crc32
mov edi, dword [ebp - 0x2c]
mov dword [edi + 0x18], eax
mov edx, dword [ebp + 8]
mov dword [edx + 0x30], eax
mov dword [edi], 0xb
jmp 0x62e88764
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x62e89fde
mov dword [eax + 0x10], 0
xor eax, eax
mov esi, dword [ebp - 0x2c]
jmp 0x62e89637
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x38]
mov dword [esp + 4], ecx
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x18], eax
jmp 0x62e897ec
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov ecx, edx
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x38]
mov dword [esp + 4], ecx
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x18], eax
jmp 0x62e89874
sub edx, eax
mov ebx, dword [ebp - 0x2c]
add edx, dword [ebx + 0x34]
mov esi, ebx
jmp 0x62e89c86
cmp ebx, dword [ebp - 0x50]
jae 0x62e89dab
test eax, eax
je 0x62e89f64
mov ecx, ebx
mov ebx, dword [ebp - 0x30]
jmp 0x62e89d95
test eax, eax
je 0x62e89f79
dec eax
movzx esi, byte [edx]
shl esi, cl
add ebx, esi
inc edx
add ecx, 8
cmp ecx, dword [ebp - 0x50]
jb 0x62e89d8d
mov dword [ebp - 0x30], ebx
mov ebx, ecx
mov cl, byte [ebp - 0x34]
shr dword [ebp - 0x30], cl
sub ebx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x2c]
mov word [ecx + esi*2 + 0x70], di
mov ecx, esi
inc ecx
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x68], ecx
mov edi, esi
jmp 0x62e892f5
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x3c], ecx
mov ecx, edi
jmp 0x62e8884c
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ecx
mov ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.incorrect_header_check
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x62e88764
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x4c], 0x62e971a0
mov dword [esi + 0x54], 9
mov dword [esi + 0x50], 0x62e97120
mov dword [esi + 0x58], 5
mov dword [esi], 0x13
cmp dword [ebp + 0xc], 6
jne 0x62e88758
mov ebx, dword [ebp - 0x54]
shr dword [ebp - 0x30], 3
sub dword [ebp - 0x3c], 3
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_block_type
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x1d
jmp 0x62e88758
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x10
jmp 0x62e88758
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x54]
mov ecx, edx
jmp 0x62e8884c
mov bl, byte [ebp - 0x30]
mov byte [ebp - 0x1c], bl
mov eax, dword [ebp - 0x30]
shr eax, 8
mov byte [ebp - 0x1b], al
mov dword [esp + 8], 2
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x10]
jmp 0x62e8959b
mov bl, byte [ebp - 0x30]
mov byte [ebp - 0x1c], bl
mov eax, dword [ebp - 0x30]
shr eax, 8
mov byte [ebp - 0x1b], al
mov eax, dword [ebp - 0x30]
shr eax, 0x10
mov byte [ebp - 0x1a], al
mov eax, dword [ebp - 0x30]
shr eax, 0x18
mov byte [ebp - 0x19], al
mov dword [esp + 8], 4
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x18], eax
jmp 0x62e896a3
mov dword [esp + 8], ebx
mov eax, dword [ebp - 0x38]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
jmp 0x62e89900
movzx edi, byte [ebp - 0x34]
lea ecx, [edi + 3]
mov dword [ebp - 0x34], ecx
cmp ebx, ecx
jb 0x62e89f60
jmp 0x62e8a09b
dec eax
movzx esi, byte [edx]
mov cl, bl
shl esi, cl
add dword [ebp - 0x30], esi
inc edx
add ebx, 8
cmp ebx, dword [ebp - 0x34]
jae 0x62e8a09b
test eax, eax
jne 0x62e89f48
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x54]
mov ecx, edx
mov esi, eax
jmp 0x62e8884c
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov ecx, edx
mov esi, eax
jmp 0x62e8884c
mov ecx, dword [ebp - 0x3c]
and ecx, 7
shr dword [ebp - 0x30], cl
and dword [ebp - 0x3c], 0xfffffff8
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1a
jmp 0x62e88764
movzx edi, byte [ebp - 0x34]
lea ecx, [edi + 2]
mov dword [ebp - 0x34], ecx
cmp ebx, ecx
jb 0x62e89fd8
jmp 0x62e8a107
dec eax
movzx esi, byte [edx]
mov cl, bl
shl esi, cl
add dword [ebp - 0x30], esi
inc edx
add ebx, 8
cmp ebx, dword [ebp - 0x34]
jae 0x62e8a107
test eax, eax
jne 0x62e89fc0
jmp 0x62e89f64
xor eax, eax
mov esi, dword [ebp - 0x2c]
jmp 0x62e89637
mov al, byte [ebp - 0x30]
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 0x30]
shr eax, 8
mov byte [ebp - 0x1b], al
mov dword [esp + 8], 2
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov edx, dword [ecx + 0x10]
mov eax, edx
and eax, 0x400
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov esi, ecx
jmp 0x62e89637
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x54]
mov ecx, edx
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0xb
jmp 0x62e88764
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], 0x62e96fef
mov dword [ebx], 0x1d
jmp 0x62e88764
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.invalid_stored_block_lengths
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x62e88764
mov esi, dword [ebp - 0x30]
mov ecx, edi
shr esi, cl
mov edi, esi
and esi, 7
add esi, 3
mov dword [ebp - 0x34], esi
shr edi, 3
mov dword [ebp - 0x30], edi
sub ebx, dword [ebp - 0x50]
sub ebx, 3
xor esi, esi
jmp 0x62e89400
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x1c
mov ebx, 1
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x44]
sub edx, eax
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call sym.zlib1.dll_adler32
jmp 0x62e8905c
mov ecx, edi
shr dword [ebp - 0x30], cl
sub ebx, dword [ebp - 0x50]
cmp dword [ebp - 0x40], 0
je 0x62e8a3e5
mov edi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x2c]
movzx esi, word [ecx + edi*2 + 0x6e]
mov ecx, dword [ebp - 0x30]
and ecx, 3
add ecx, 3
mov dword [ebp - 0x34], ecx
shr dword [ebp - 0x30], 2
sub ebx, 2
jmp 0x62e89400
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.unknown_compression_method
mov dword [edx], 0x1d
jmp 0x62e88764
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.too_many_length_or_distance_symbols
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x62e88764
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0xc
jmp 0x62e88764
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
mov ecx, edx
mov esi, eax
jmp 0x62e8884c
mov dword [ebx], 0x19
jmp 0x62e88764
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x1bc4], 0xffffffff
mov dword [ebx], 0xb
jmp 0x62e88764
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sym.zlib1.dll_crc32
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x18], eax
mov byte [ebp - 0x1c], 0x1f
mov byte [ebp - 0x1b], 0x8b
mov dword [esp + 8], 2
lea edx, [ebp - 0x1c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.zlib1.dll_crc32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov dword [ecx], 1
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
jmp 0x62e88764
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], 0x62e96fd3
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x62e88764
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_bit_length_repeat
mov edx, dword [ebp - 0x2c]
mov dword [edx], 0x1d
jmp 0x62e88764
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp + 8]
mov dword [esi + 0xc], edi
mov eax, dword [ebp - 0x48]
mov dword [esi + 0x10], eax
mov edx, dword [ebp - 0x38]
mov dword [esi], edx
mov ecx, dword [ebp - 0x34]
mov dword [esi + 4], ecx
mov ebx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x38], ebx
mov edi, dword [ebp - 0x3c]
mov dword [esi + 0x3c], edi
mov eax, dword [ebp - 0x58]
mov dword [esp + 4], eax
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.62e8d480
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x44], ecx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x10]
mov dword [ebp - 0x48], ebx
mov esi, dword [ebp + 8]
mov esi, dword [esi]
mov dword [ebp - 0x38], esi
mov edi, dword [ebp + 8]
mov edi, dword [edi + 4]
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0x3c], edx
mov ecx, dword [ebp - 0x2c]
cmp dword [ecx], 0xb
jne 0x62e88764
mov dword [ecx + 0x1bc4], 0xffffffff
jmp 0x62e88764
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.incorrect_data_check
mov dword [edx], 0x1d
mov ebx, dword [ebp - 0x48]
mov dword [ebp - 0x58], ebx
jmp 0x62e88764
shr dword [ebp - 0x30], 4
mov ecx, dword [ebp - 0x30]
and ecx, 0xf
add ecx, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x24]
test eax, eax
jne 0x62e8a410
mov dword [ebx + 0x24], ecx
mov eax, 1
shl eax, cl
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x14], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call sym.zlib1.dll_adler32
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 0x30]
and eax, 0x200
cmp eax, 1
sbb eax, eax
and eax, 2
add eax, 9
mov dword [ecx], eax
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
jmp 0x62e88764
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x30], 0
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
jmp 0x62e8884c
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp + 8]
mov dword [edi + 0xc], eax
mov edx, dword [ebp - 0x48]
mov dword [edi + 0x10], edx
mov ecx, dword [ebp - 0x38]
mov dword [edi], ecx
mov ebx, dword [ebp - 0x34]
mov dword [edi + 4], ebx
mov eax, dword [ebp - 0x30]
mov dword [esi + 0x38], eax
mov edx, dword [ebp - 0x3c]
mov dword [esi + 0x3c], edx
mov ebx, 2
jmp 0x62e88624
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_code_lengths_set
mov edx, dword [ebp - 0x2c]
mov dword [edx], 0x1d
jmp 0x62e88764
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.unknown_header_flags_set
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x1d
jmp 0x62e88764
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.invalid_bit_length_repeat
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x1d
jmp 0x62e88764
mov esi, edi
mov ecx, dword [ebp - 0x44]
jmp 0x62e89c42
cmp ecx, eax
jbe 0x62e8a30c
sub dword [ebp - 0x3c], 4
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.invalid_window_size
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x62e88764
mov edx, dword [ebp + 8]
mov dword [edx + 0x18], str.invalid_distances_set
mov dword [esi], 0x1d
jmp 0x62e88764
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.invalid_literal_lengths_set
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x1d
jmp 0x62e88764
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_code____missing_end_of_block
mov dword [edi], 0x1d
jmp 0x62e88764