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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x9c
mov esi, dword [ebp + 8]
test esi, esi
jne 0x673714f8
mov ebx, 0xfffffffe
mov eax, ebx
add esp, 0x9c
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.0x673715a4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
test edx, edx
je case.default.0x673715a4
mov esi, dword [ecx]
test esi, esi
je 0x673729ae
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp eax, 0xb
je 0x67372996
mov edi, dword [ebp + 8]
mov edi, dword [edi + 0x10]
mov dword [ebp - 0x44], edi
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x5c], ecx
mov ebx, dword [ebx + 0x38]
mov dword [ebp - 0x30], ebx
mov edi, dword [ebp - 0x2c]
mov edi, dword [edi + 0x3c]
mov dword [ebp - 0x38], edi
mov ecx, dword [ebp + 0xc]
sub ecx, 5
mov dword [ebp - 0x64], ecx
mov ebx, dword [ebp - 0x44]
mov dword [ebp - 0x58], ebx
mov edi, dword [ebp - 0x5c]
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x3c], esi
xor ebx, ebx
mov edx, dword [ebp - 0x2c]
add edx, 0x530
mov dword [ebp - 0x60], edx
mov ecx, dword [ebp - 0x2c]
add ecx, 0x2f0
mov dword [ebp - 0x68], ecx
mov esi, dword [ebp - 0x2c]
add esi, 0x6c
mov dword [ebp - 0x6c], esi
mov edi, dword [ebp - 0x2c]
add edi, 0x54
mov dword [ebp - 0x70], edi
mov edx, dword [ebp - 0x2c]
add edx, 0x70
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x50], ebx
cmp eax, 0x1e
ja case.default.0x673715a4
jmp dword [eax*4 + 0x6739d730]
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 4]
test eax, eax
jne 0x67372dcb
cmp dword [ebp - 0x38], 2
ja 0x673715e3
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x67371707
dec dword [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
movzx eax, byte [edx]
mov cl, byte [ebp - 0x38]
shl eax, cl
add dword [ebp - 0x30], eax
inc edx
mov dword [ebp - 0x3c], edx
add dword [ebp - 0x38], 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 - 0x38]
dec ecx
mov eax, edx
and eax, 3
cmp eax, 2
je 0x67372cd1
cmp eax, 3
je 0x67372cb9
dec eax
je 0x67372c74
mov dword [ebx], 0xd
shr edx, 2
mov dword [ebp - 0x30], edx
sub ecx, 2
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx]
jmp 0x6737159b
cmp dword [ebp - 0x38], 0x1f
ja 0x67371676
mov edx, dword [ebp - 0x34]
test edx, edx
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x6737165c
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x67371654
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
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 - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0xc]
test edx, edx
je 0x67373287
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.673738b8
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.0x673715a4.12
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp + 8]
mov dword [edi + 0xc], eax
mov edx, dword [ebp - 0x44]
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 - 0x38]
mov dword [edx + 0x3c], ecx
mov ecx, dword [edx + 0x28]
test ecx, ecx
jne 0x67371747
cmp dword [edx], 0x19
ja 0x6737175a
mov esi, dword [ebp - 0x44]
cmp dword [ebp - 0x58], esi
je 0x6737175a
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp + 8]
call fcn.67370fa0
test eax, eax
jne 0x673723a8
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 0x673717b4
test esi, esi
je 0x673717b4
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x673729c0
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 fcn.67373e48
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 0x673729a6
cmp edx, 0x13
je 0x6737180c
cmp edx, 0xe
je 0x6737180c
xor edx, edx
add eax, edx
mov edx, dword [ebp + 8]
mov dword [edx + 0x2c], eax
test edi, edi
jne 0x67372970
test esi, esi
jne 0x67372970
test ebx, ebx
jne 0x673714e8
mov ebx, 0xfffffffb
jmp 0x673714e8
mov edx, 0x100
jmp 0x673717df
mov ecx, dword [ebp - 0x38]
and ecx, 7
shr dword [ebp - 0x30], cl
and dword [ebp - 0x38], 0xfffffff8
cmp dword [ebp - 0x38], 0x1f
ja 0x67371865
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x67371848
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x67371840
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
movzx eax, word [ebp - 0x30]
mov edx, dword [ebp - 0x30]
shr edx, 0x10
xor edx, 0xffff
cmp eax, edx
jne 0x67372f84
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x40], eax
mov dword [edx], 0xe
cmp dword [ebp + 0xc], 6
je 0x673731d8
mov dword [ebp - 0x38], 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 0x67372f1b
mov edx, dword [ebp - 0x44]
cmp edx, eax
jbe 0x673718c1
mov edx, eax
mov eax, edx
cmp edx, dword [ebp - 0x34]
jbe 0x673718cb
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x67371707
mov edi, dword [ebp - 0x54]
mov esi, dword [ebp - 0x3c]
mov ecx, eax
rep movsb byte es:[edi], byte [esi]
sub dword [ebp - 0x34], eax
mov dword [ebp - 0x3c], esi
sub dword [ebp - 0x44], eax
mov dword [ebp - 0x54], edi
mov esi, dword [ebp - 0x2c]
sub dword [esi + 0x40], eax
jmp 0x67371628
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x48]
test edx, edx
je 0x6737195f
cmp dword [ebp - 0x38], edx
jae 0x67371940
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x67371707
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x67371924
test edi, edi
je 0x67372b86
dec edi
movzx eax, byte [esi]
shl eax, cl
add ebx, eax
inc esi
add ecx, 8
cmp ecx, edx
jb 0x6737191c
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 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 - 0x38], edx
add dword [ebx + 0x1bc4], edx
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x18
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x67371707
mov edx, dword [ebp - 0x58]
sub edx, dword [ebp - 0x44]
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x44]
cmp edx, eax
jae 0x67372a2e
sub eax, edx
cmp eax, dword [edi + 0x2c]
jbe 0x67372adf
cmp dword [edi + 0x1bc0], 0
je 0x67372adf
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], 0x6739d6e5
mov dword [edi], 0x1d
jmp 0x67371628
mov edi, dword [ebp - 0x2c]
mov edx, dword [edi + 0x48]
test edx, edx
je 0x67371a1f
cmp dword [ebp - 0x38], edx
jae 0x67371a00
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x67371707
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x673719e4
test edi, edi
je 0x67372b86
dec edi
movzx eax, byte [esi]
shl eax, cl
add ebx, eax
inc esi
add ecx, 8
cmp ecx, edx
jb 0x673719dc
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 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 - 0x38], 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 - 0x4c], edi
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 0x58]
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x48]
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 - 0x38], esi
jae 0x67371ac6
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x67371707
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
jmp 0x67371a88
test edx, edx
je 0x673729ff
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 - 0x48]
mov edi, dword [ebp - 0x4c]
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 0x67371a80
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ecx
mov edx, edi
movzx edi, byte [ebp - 0x78]
mov ecx, edi
movzx eax, cl
test al, 0xf0
jne 0x67371ba1
movzx edx, dx
mov dword [ebp - 0x78], edx
movzx ebx, byte [ebp - 0x40]
mov dword [ebp - 0x48], 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 - 0x4c]
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 - 0x48]
cmp dword [ebp - 0x38], eax
jae 0x67371b8c
cmp dword [ebp - 0x34], 0
je 0x67371707
mov edx, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x38]
mov dword [ebp - 0x80], esi
mov esi, dword [ebp - 0x3c]
jmp 0x67371b38
test edx, edx
je 0x67372cdf
dec edx
movzx eax, byte [esi]
mov cl, bl
shl eax, cl
add dword [ebp - 0x30], eax
inc esi
add ebx, 8
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x7c]
mov cl, byte [ebp - 0x48]
shr eax, cl
add eax, dword [ebp - 0x78]
mov edi, dword [ebp - 0x4c]
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 - 0x48]
cmp eax, ebx
ja 0x67371b30
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ebx
mov esi, dword [ebp - 0x80]
mov edx, edi
movzx edi, byte [ebp - 0x84]
mov cl, byte [ebp - 0x48]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x38], esi
mov esi, dword [ebp - 0x48]
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 - 0x38], eax
mov ebx, dword [ebp - 0x2c]
add dword [ebx + 0x1bc4], eax
and edi, 0xff
test edi, 0x40
jne 0x67372f06
movzx edx, dx
mov dword [ebx + 0x44], edx
mov edx, edi
and edx, 0xf
mov dword [ebx + 0x48], edx
mov dword [ebx], 0x17
jmp 0x673718fa
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], ebx
mov edi, dword [ebp - 0x2c]
cmp dword [edi], 0x1d
je 0x67371628
cmp word [edi + 0x270], 0
je 0x67373239
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 - 0x80]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x74]
mov dword [esp + 4], edx
mov dword [esp], 1
call fcn.67374158
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x67373221
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.67374158
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x6737320c
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], 0x13
cmp dword [ebp + 0xc], 6
je 0x67371707
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x14
cmp dword [ebp - 0x34], 5
jbe 0x67371cd1
cmp dword [ebp - 0x44], 0x101
ja 0x67373135
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x1bc4], 0
mov esi, dword [ebx + 0x4c]
mov dword [ebp - 0x4c], esi
mov ecx, dword [ebx + 0x54]
mov eax, 1
shl eax, cl
dec eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x48]
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 - 0x38], esi
jae 0x67371d6e
mov edx, dword [ebp - 0x34]
test edx, edx
je 0x67371707
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
jmp 0x67371d30
test edx, edx
je 0x673729ff
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 - 0x48]
mov edi, dword [ebp - 0x4c]
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 0x67371d28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ecx
mov edx, edi
movzx edi, byte [ebp - 0x78]
mov eax, edi
test al, al
je 0x67371e46
movzx eax, al
test al, 0xf0
jne 0x67371e46
movzx edx, dx
mov dword [ebp - 0x7c], edx
movzx edx, byte [ebp - 0x40]
mov dword [ebp - 0x48], 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 - 0x4c]
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 - 0x48]
cmp dword [ebp - 0x38], eax
jae 0x67371e31
cmp dword [ebp - 0x34], 0
je 0x67371707
mov edx, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x38]
jmp 0x67371de4
test edx, edx
je 0x67372d8a
dec edx
mov ecx, dword [ebp - 0x3c]
movzx eax, byte [ecx]
mov cl, bl
shl eax, cl
add dword [ebp - 0x30], eax
inc dword [ebp - 0x3c]
add ebx, 8
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x78]
mov cl, byte [ebp - 0x48]
shr eax, cl
add eax, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x4c]
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 - 0x48]
cmp eax, ebx
ja 0x67371ddc
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ebx
mov edx, edi
movzx edi, byte [ebp - 0x80]
mov cl, byte [ebp - 0x48]
shr dword [ebp - 0x30], cl
sub dword [ebp - 0x38], esi
mov esi, dword [ebp - 0x48]
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 - 0x38], 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 0x67372fb1
mov ecx, edi
movzx edx, cl
test dl, 0x20
jne 0x67373074
test dl, 0x40
jne 0x673731f4
and edx, 0xf
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x48], edx
mov dword [eax], 0x15
jmp 0x673719ba
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 8]
test eax, eax
je 0x67371f7f
cmp dword [ebp - 0x38], 0x1f
ja 0x67371ee8
cmp dword [ebp - 0x34], 0
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x67371ecb
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x67371ec3
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x44]
mov ebx, dword [ebp + 8]
add dword [ebx + 0x14], eax
mov esi, dword [ebp - 0x2c]
add dword [esi + 0x1c], eax
test eax, eax
je 0x67371f2c
cmp dword [esi + 0x10], 0
je 0x67372ee6
mov dword [esp + 8], eax
mov edi, dword [ebp - 0x54]
sub edi, eax
mov dword [esp + 4], edi
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call fcn.67373e48
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 0x67371f5f
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 0x673730ba
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x38], 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 0x67372f6b
mov esi, dword [eax + 0x10]
test esi, esi
je 0x67372f6b
cmp dword [ebp - 0x38], 0x1f
ja 0x67371fe5
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x67371fc8
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x67371fc0
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
cmp dword [ecx + 0x1c], edx
je 0x67372f5d
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.incorrect_length_check
mov dword [ecx], 0x1d
jmp 0x67371628
cmp dword [ebp - 0x38], 0xd
ja 0x6737204d
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x67372030
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xd
jbe 0x67372028
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], 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 - 0x38], 0xe
cmp edx, 0x11e
ja 0x67372fbc
cmp ecx, 0x1e
ja 0x67372fbc
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 eax, esi
jae 0x67372118
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x30], esi
cmp ecx, 2
ja 0x673720ec
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x67372de6
dec dword [ebp - 0x34]
mov ebx, dword [ebp - 0x3c]
movzx edi, byte [ebx]
shl edi, cl
add eax, edi
inc ebx
mov dword [ebp - 0x3c], ebx
add ecx, 8
movzx ebx, word [edx + edx + 0x6739d7c0]
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 0x673720c8
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x38], ecx
mov eax, edx
mov edx, eax
cmp eax, 0x12
ja 0x6737213e
movzx eax, word [edx + edx + 0x6739d7c0]
mov edi, dword [ebp - 0x2c]
mov word [edi + eax*2 + 0x70], 0
inc edx
cmp edx, 0x13
jne 0x6737211f
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.67374158
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x673731c0
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 - 0x80], ebx
mov esi, dword [ebp - 0x2c]
add ebx, dword [esi + 0x64]
mov dword [ebp - 0x48], ebx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x38]
mov edi, esi
mov edi, dword [edi + 0x68]
mov dword [ebp - 0x40], edi
mov ecx, dword [ebp - 0x48]
cmp edi, ecx
jae 0x67371be2
mov esi, dword [ebp - 0x2c]
mov esi, dword [esi + 0x4c]
mov dword [ebp - 0x38], 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 - 0x3c], ecx
mov ecx, dword [ebp - 0x30]
and ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
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 - 0x4c], esi
cmp ebx, esi
jae 0x6737224d
test eax, eax
je 0x67372e28
mov ecx, ebx
mov ebx, eax
jmp 0x6737221c
test ebx, ebx
je 0x67372b9f
dec ebx
movzx esi, byte [edx]
shl esi, cl
add dword [ebp - 0x30], esi
inc edx
add ecx, 8
mov esi, dword [ebp - 0x3c]
and esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
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 0x67372214
mov eax, ebx
mov ebx, ecx
mov dword [ebp - 0x4c], esi
cmp di, 0xf
jbe 0x67372bf7
cmp di, 0x10
je 0x67372dfa
cmp di, 0x11
je 0x67372f29
movzx edi, byte [ebp - 0x34]
lea esi, [edi + 7]
mov dword [ebp - 0x34], esi
cmp ebx, esi
jae 0x673722a4
test eax, eax
je 0x67372e28
mov ecx, ebx
jmp 0x67372290
test eax, eax
je 0x67372f9c
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 0x67372288
mov ebx, ecx
mov esi, dword [ebp - 0x30]
mov ecx, edi
shr esi, cl
mov ecx, esi
and ecx, 0x7f
add ecx, 0xb
mov dword [ebp - 0x3c], ecx
shr esi, 7
mov dword [ebp - 0x30], esi
sub ebx, dword [ebp - 0x4c]
sub ebx, 7
xor esi, esi
mov edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x3c]
mov dword [ebp - 0x84], edi
cmp dword [ebp - 0x48], edi
jb 0x67373266
mov ecx, dword [ebp - 0x3c]
dec ecx
mov dword [ebp - 0x34], ecx
mov edi, dword [ebp - 0x40]
add edi, 0x38
mov dword [ebp - 0x7c], edi
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx + edi*2]
and ecx, 3
shr ecx, 1
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x3c]
mov dword [ebp - 0x38], edi
cmp edi, ecx
jbe 0x67372304
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x38], 0
je 0x67372320
mov ecx, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x2c]
mov word [edi + ecx*2], si
inc dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
sub ecx, 2
mov dword [ebp - 0x34], ecx
mov edi, dword [ebp - 0x3c]
sub edi, dword [ebp - 0x38]
mov dword [ebp - 0x88], edi
shr edi, 1
mov dword [ebp - 0x3c], edi
shl edi, 1
mov dword [ebp - 0x78], edi
je 0x67372376
mov ecx, esi
shl ecx, 0x10
movzx edi, si
or edi, ecx
mov dword [ebp - 0x4c], edi
mov ecx, dword [ebp - 0x7c]
add ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x2c]
lea ecx, [edi + ecx*2]
xor edi, edi
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x4c]
mov dword [ecx + edi*4], eax
inc edi
cmp edi, dword [ebp - 0x3c]
jb 0x67372359
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x78]
sub dword [ebp - 0x34], ecx
add dword [ebp - 0x40], ecx
cmp dword [ebp - 0x88], ecx
je 0x67372395
mov edi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x2c]
lea edi, [ecx + edi*2 + 0x70]
mov dword [ebp - 0x38], edi
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov word [ecx], si
dec edi
add ecx, 2
cmp edi, 0xffffffff
jne 0x67372389
mov esi, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x68], esi
mov edi, ecx
jmp 0x673721b9
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1e
mov ebx, 0xfffffffc
jmp 0x673714e8
cmp dword [ebp - 0x38], 0xf
ja 0x673723fe
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x673723e4
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x673723dc
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x20]
test eax, eax
je 0x67372418
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 0x67372cf5
mov edi, dword [ebp - 0x2c]
mov dword [edi], 4
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
test dh, 4
je 0x67372b67
cmp dword [ebp - 0x38], 0xf
ja 0x6737248c
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x67371707
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
mov ebx, edx
mov edx, dword [ebp - 0x3c]
jmp 0x67372470
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x67372468
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
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 0x673724a2
mov ebx, dword [ebp - 0x30]
mov dword [eax + 0x14], ebx
test dh, 2
jne 0x67372e3d
mov eax, edx
and eax, 0x400
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov dword [esi], 5
jmp 0x673726a7
cmp dword [ebp - 0x38], 0x1f
ja 0x67372512
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x673724f8
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0x1f
jbe 0x673724f0
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x67372522
mov edx, dword [ebp - 0x30]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x2c]
test byte [ecx + 0x11], 2
jne 0x67372d2c
mov edi, dword [ebp - 0x2c]
mov dword [edi], 3
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x38], 0
jmp 0x673723c1
mov ebx, 0xfffffffd
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov edx, dword [ebp - 0x44]
test edx, edx
je 0x67371707
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x40]
mov edx, dword [ebp - 0x54]
mov byte [edx], al
inc edx
mov dword [ebp - 0x54], edx
dec dword [ebp - 0x44]
mov dword [edi], 0x14
jmp 0x67371628
mov ebx, 1
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax + 0x10]
test dh, 2
je 0x67372b1a
cmp dword [ebp - 0x38], 0xf
ja 0x673725eb
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x67371707
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
mov ebx, edx
mov edx, dword [ebp - 0x3c]
jmp 0x673725cc
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x673725c4
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
mov edx, ebx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x18]
and eax, 0xffff
cmp eax, dword [ebp - 0x30]
je 0x67372b0c
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.header_crc_mismatch
mov dword [ecx], 0x1d
jmp 0x67371628
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x10]
test dh, 0x10
je 0x673729e5
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x67371707
xor esi, esi
mov edx, dword [ebp - 0x3c]
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 0x67372662
mov ebx, dword [eax + 0x24]
test ebx, ebx
je 0x67372662
mov edx, ecx
mov ecx, dword [ecx + 0x40]
cmp ecx, dword [eax + 0x28]
jae 0x67372662
mov al, byte [ebp - 0x40]
mov byte [ebx + ecx], al
inc ecx
mov dword [edx + 0x40], ecx
test edi, edi
je 0x6737266b
cmp dword [ebp - 0x34], esi
ja 0x67372630
mov edx, dword [ebp - 0x2c]
test byte [edx + 0x11], 2
jne 0x67372bb5
sub dword [ebp - 0x34], esi
add dword [ebp - 0x3c], esi
test edi, edi
jne 0x67371707
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x10]
mov eax, dword [ebp - 0x2c]
mov dword [eax], 8
jmp 0x67372599
mov esi, dword [ebp - 0x2c]
mov edx, dword [esi + 0x10]
mov eax, edx
and eax, 0x400
test eax, eax
je 0x6737271a
mov edi, dword [ebp - 0x2c]
mov ecx, dword [edi + 0x40]
mov ebx, dword [ebp - 0x34]
cmp ebx, ecx
jbe 0x673726ba
mov ebx, ecx
test ebx, ebx
je 0x67372709
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x673726f4
mov esi, dword [eax + 0x10]
test esi, esi
je 0x673726f4
mov edx, dword [eax + 0x14]
sub edx, ecx
mov eax, dword [eax + 0x18]
lea edi, [ebx + edx]
mov ecx, ebx
cmp edi, eax
jbe 0x673726e4
mov ecx, eax
sub ecx, edx
lea eax, [esi + edx]
mov edi, eax
mov esi, dword [ebp - 0x3c]
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x2c]
mov edx, dword [edi + 0x10]
and dh, 2
jne 0x67372d9d
sub dword [ebp - 0x34], ebx
add dword [ebp - 0x3c], 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 0x67371707
mov edx, dword [edi + 0x10]
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x40], 0
mov dword [eax], 6
test dh, 8
je 0x67372a14
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x67371707
xor esi, esi
mov edx, dword [ebp - 0x3c]
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 0x67372772
mov ebx, dword [eax + 0x1c]
test ebx, ebx
je 0x67372772
mov edx, ecx
mov ecx, dword [ecx + 0x40]
cmp ecx, dword [eax + 0x20]
jae 0x67372772
mov al, byte [ebp - 0x40]
mov byte [ebx + ecx], al
inc ecx
mov dword [edx + 0x40], ecx
test edi, edi
je 0x6737277b
cmp dword [ebp - 0x34], esi
ja 0x67372740
mov edx, dword [ebp - 0x2c]
test byte [edx + 0x11], 2
jne 0x67372bd6
sub dword [ebp - 0x34], esi
add dword [ebp - 0x3c], esi
test edi, edi
jne 0x67371707
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 0x6737261a
cmp dword [ebp - 0x38], 0xf
ja 0x673727f5
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x67371707
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x673727d8
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x673727d0
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [edx + 0x10], eax
cmp al, 8
jne 0x67372e8e
test dword [ebp - 0x30], 0xe000
jne 0x6737324e
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x67372828
mov edx, dword [ebp - 0x30]
shr edx, 8
and edx, 1
mov dword [eax], edx
test dword [ebp - 0x30], 0x200
je 0x67372863
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 fcn.67373e48
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 - 0x38], 0
jmp 0x673724d4
mov edi, dword [ebp - 0x2c]
mov edx, dword [edi + 8]
test edx, edx
je 0x67372ed8
cmp dword [ebp - 0x38], 0xf
ja 0x673728d7
mov edi, dword [ebp - 0x34]
test edi, edi
je 0x67371707
mov ebx, edx
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
jmp 0x673728b8
test esi, esi
je 0x67372980
dec esi
movzx eax, byte [edx]
shl eax, cl
add edi, eax
inc edx
add ecx, 8
cmp ecx, 0xf
jbe 0x673728b0
mov dword [ebp - 0x3c], edx
mov edx, ebx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
test dl, 2
je 0x673728e9
cmp dword [ebp - 0x30], 0x8b1f
je 0x673730d5
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x10], 0
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x67372901
mov dword [eax + 0x30], 0xffffffff
and dl, 1
je 0x67372c5c
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 0x67372c5c
mov eax, dword [ebp - 0x30]
and eax, 0xf
cmp eax, 8
je 0x67372ff9
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.unknown_compression_method
mov edx, dword [ebp - 0x2c]
mov dword [edx], 0x1d
jmp 0x67371628
mov ebx, dword [ebp - 0x2c]
mov edx, dword [ebx + 0x10]
jmp 0x6737272a
mov ebx, dword [ebp - 0x2c]
mov edx, dword [ebx + 0x10]
jmp 0x6737243e
cmp dword [ebp + 0xc], 4
jne 0x673714e8
jmp 0x673717f7
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], ecx
mov ecx, edx
jmp 0x67371710
mov dword [ebx], 0xc
mov al, 0xc
mov ebx, dword [ebp - 0x2c]
jmp 0x67371527
sub eax, 0xffffff80
jmp 0x673717dd
mov ebx, dword [ecx + 4]
test ebx, ebx
jne case.default.0x673715a4
jmp 0x67371519
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 fcn.673738b8
jmp 0x673717a8
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x6737268c
mov dword [eax + 0x24], 0
jmp 0x6737268c
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ecx
mov ecx, eax
mov esi, edx
jmp 0x67371710
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi + 0x20]
test eax, eax
je 0x6737279c
mov dword [eax + 0x1c], 0
jmp 0x6737279c
mov edx, dword [ebp - 0x54]
sub edx, eax
mov eax, dword [edi + 0x40]
mov ecx, eax
mov edi, eax
cmp eax, dword [ebp - 0x44]
jbe 0x67372a42
mov edi, dword [ebp - 0x44]
sub dword [ebp - 0x44], 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 0x6737308c
mov eax, dword [ebp - 0x54]
or eax, edx
test al, 3
sete cl
cmp edi, 9
seta al
and ecx, eax
lea eax, [edx + 4]
cmp dword [ebp - 0x54], eax
seta al
mov ebx, dword [ebp - 0x54]
add ebx, 4
cmp edx, ebx
seta bl
or eax, ebx
test cl, al
je 0x6737308c
xor eax, eax
mov ebx, dword [ebp - 0x54]
nop
mov ecx, dword [edx + eax*4]
mov dword [ebx + eax*4], ecx
inc eax
cmp eax, esi
jb 0x67372a98
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x40]
mov esi, edi
sub esi, dword [ebp - 0x40]
add edx, dword [ebp - 0x40]
cmp edi, dword [ebp - 0x40]
je 0x67372ac3
xor eax, eax
mov bl, byte [edx + eax]
mov byte [ecx + eax], bl
inc eax
cmp esi, eax
jne 0x67372ab8
add dword [ebp - 0x54], edi
mov esi, dword [ebp - 0x2c]
mov ecx, dword [esi + 0x40]
test ecx, ecx
jne 0x67371628
mov dword [esi], 0x14
jmp 0x67371628
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x30]
cmp eax, edx
jbe 0x67372c4d
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 0x67372a38
mov eax, ecx
jmp 0x67372a38
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x67372b34
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 fcn.67373e48
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 0x67371628
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x67372dc1
mov dword [eax + 0x10], 0
xor eax, eax
mov esi, dword [ebp - 0x2c]
jmp 0x673724c3
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x38], ecx
mov ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x38], ecx
mov ecx, edx
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x3c]
mov dword [esp + 4], ecx
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call fcn.67373e48
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x18], eax
jmp 0x67372678
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x3c]
mov dword [esp + 4], ecx
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call fcn.67373e48
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x18], eax
jmp 0x67372788
cmp ebx, dword [ebp - 0x4c]
jae 0x67372c29
test eax, eax
je 0x67372e28
mov ecx, ebx
mov ebx, dword [ebp - 0x30]
jmp 0x67372c13
test eax, eax
je 0x67372d72
dec eax
movzx esi, byte [edx]
shl esi, cl
add ebx, esi
inc edx
add ecx, 8
cmp ecx, dword [ebp - 0x4c]
jb 0x67372c0b
mov dword [ebp - 0x30], ebx
mov ebx, ecx
mov cl, byte [ebp - 0x34]
shr dword [ebp - 0x30], cl
sub ebx, dword [ebp - 0x4c]
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 0x673721b9
sub edx, eax
mov ebx, dword [ebp - 0x2c]
add edx, dword [ebx + 0x34]
mov esi, ebx
jmp 0x67372afa
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.incorrect_header_check
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x67371628
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x4c], 0x6739d880
mov dword [esi + 0x54], 9
mov dword [esi + 0x50], 0x6739d800
mov dword [esi + 0x58], 5
mov dword [esi], 0x13
cmp dword [ebp + 0xc], 6
jne 0x6737161c
mov ebx, dword [ebp - 0x50]
shr dword [ebp - 0x30], 3
sub dword [ebp - 0x38], 3
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_block_type
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x1d
jmp 0x6737161c
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x10
jmp 0x6737161c
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x50]
mov ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x67371710
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 fcn.67373e48
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x10]
jmp 0x67372427
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 fcn.67373e48
mov esi, dword [ebp - 0x2c]
mov dword [esi + 0x18], eax
jmp 0x6737252f
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x38], ecx
mov ecx, edx
mov esi, eax
jmp 0x67371710
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x3c]
mov esi, edx
jmp 0x67371710
mov dword [esp + 8], ebx
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x18]
mov dword [esp], eax
call fcn.67373e48
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
jmp 0x673726fd
xor eax, eax
mov esi, dword [ebp - 0x2c]
jmp 0x673724c3
mov ecx, dword [ebp - 0x38]
and ecx, 7
shr dword [ebp - 0x30], cl
and dword [ebp - 0x38], 0xfffffff8
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1a
jmp 0x67371628
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
movzx edi, byte [ebp - 0x34]
lea ecx, [edi + 2]
mov dword [ebp - 0x34], ecx
cmp ebx, ecx
jb 0x67372e24
jmp 0x67372ea3
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 0x67372ea3
test eax, eax
jne 0x67372e10
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x50]
mov ecx, edx
mov esi, eax
jmp 0x67371710
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 fcn.67373e48
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov edx, dword [ecx + 0x10]
mov eax, edx
and eax, 0x400
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, ecx
jmp 0x673724c3
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.unknown_compression_method
mov dword [edx], 0x1d
jmp 0x67371628
mov ecx, edi
shr dword [ebp - 0x30], cl
sub ebx, dword [ebp - 0x4c]
cmp dword [ebp - 0x40], 0
je 0x673732b7
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 - 0x3c], ecx
shr dword [ebp - 0x30], 2
sub ebx, 2
jmp 0x673722c4
mov eax, dword [ebp - 0x2c]
mov dword [eax], 0xc
jmp 0x67371628
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x54]
sub edx, eax
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call fcn.673738b8
jmp 0x67371f20
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], 0x6739d6cf
mov dword [ebx], 0x1d
jmp 0x67371628
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0xb
jmp 0x67371628
movzx edi, byte [ebp - 0x34]
lea ecx, [edi + 3]
mov dword [ebp - 0x34], ecx
cmp ebx, ecx
jb 0x67372f54
jmp 0x67372fd4
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 0x67372fd4
test eax, eax
jne 0x67372f3c
jmp 0x67372e28
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x1c
mov ebx, 1
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.invalid_stored_block_lengths
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x67371628
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], ecx
mov ecx, edx
mov esi, eax
jmp 0x67371710
mov dword [ebx], 0x19
jmp 0x67371628
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 0x67371628
mov esi, dword [ebp - 0x30]
mov ecx, edi
shr esi, cl
mov ecx, esi
and ecx, 7
add ecx, 3
mov dword [ebp - 0x3c], ecx
shr esi, 3
mov dword [ebp - 0x30], esi
sub ebx, dword [ebp - 0x4c]
sub ebx, 3
xor esi, esi
jmp 0x673722c4
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 0x67373096
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 fcn.673738b8
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 - 0x38], 0
mov dword [ebp - 0x30], 0
jmp 0x67371628
mov ebx, dword [ebp - 0x2c]
mov dword [ebx + 0x1bc4], 0xffffffff
mov dword [ebx], 0xb
jmp 0x67371628
mov esi, edi
mov ecx, dword [ebp - 0x54]
jmp 0x67372ab6
cmp ecx, eax
jbe 0x67373017
sub dword [ebp - 0x38], 4
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], str.invalid_window_size
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x67371628
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.incorrect_data_check
mov dword [edx], 0x1d
mov ebx, dword [ebp - 0x44]
mov dword [ebp - 0x58], ebx
jmp 0x67371628
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.67373e48
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 fcn.67373e48
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 0x18], eax
mov dword [ecx], 1
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
jmp 0x67371628
mov edi, dword [ebp - 0x54]
mov esi, dword [ebp + 8]
mov dword [esi + 0xc], edi
mov eax, dword [ebp - 0x44]
mov dword [esi + 0x10], eax
mov edx, dword [ebp - 0x3c]
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 - 0x38]
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.6737499c
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x54], ecx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x10]
mov dword [ebp - 0x44], ebx
mov esi, dword [ebp + 8]
mov esi, dword [esi]
mov dword [ebp - 0x3c], 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 - 0x38], edx
mov ecx, dword [ebp - 0x2c]
cmp dword [ecx], 0xb
jne 0x67371628
mov dword [ecx + 0x1bc4], 0xffffffff
jmp 0x67371628
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_code_lengths_set
mov edx, dword [ebp - 0x2c]
mov dword [edx], 0x1d
jmp 0x67371628
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
jmp 0x67371710
mov esi, dword [ebp + 8]
mov dword [esi + 0x18], 0x6739d6b3
mov edi, dword [ebp - 0x2c]
mov dword [edi], 0x1d
jmp 0x67371628
mov edx, dword [ebp + 8]
mov dword [edx + 0x18], str.invalid_distances_set
mov dword [esi], 0x1d
jmp 0x67371628
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x18], str.invalid_literal_lengths_set
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], 0x1d
jmp 0x67371628
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], str.invalid_code____missing_end_of_block
mov dword [edi], 0x1d
jmp 0x67371628
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x18], str.unknown_header_flags_set
mov esi, dword [ebp - 0x2c]
mov dword [esi], 0x1d
jmp 0x67371628
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], 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 0x67371628
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp + 8]
mov dword [edi + 0xc], eax
mov edx, dword [ebp - 0x44]
mov dword [edi + 0x10], edx
mov ecx, dword [ebp - 0x3c]
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 - 0x38]
mov dword [esi + 0x3c], edx
mov ebx, 2
jmp 0x673714e8
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], 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 0x67371628