Function at 0x6b27ea60
Capabilities:
Compress data via zlib inflate or deflate
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x8c
mov eax, dword [esp + 0xa0]
test eax, eax
je case.default.0x6b27eb18
mov eax, dword [esp + 0xa0]
mov edi, dword [eax + 0x1c]
test edi, edi
je case.default.0x6b27eb18
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [esp + 0x2c], eax
je case.default.0x6b27eb18
mov eax, dword [esp + 0xa0]
mov ebp, dword [eax]
test ebp, ebp
je 0x6b2800f0
mov eax, dword [eax + 4]
mov dword [esp + 0x38], eax
mov eax, dword [edi]
cmp eax, 0xb
je 0x6b27ecd1
mov esi, dword [esp + 0xa0]
lea edx, [edi + 0x530]
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x24], edi
mov dword [esp + 0x3c], 0
mov esi, dword [esi + 0x10]
sub ecx, 5
mov dword [esp + 0x50], ecx
lea ecx, [edi + 0x2f0]
mov dword [esp + 0x58], edx
mov ebx, esi
mov dword [esp + 0x34], esi
mov esi, dword [edi + 0x38]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x28], esi
mov esi, dword [edi + 0x3c]
mov edi, ebx
cmp eax, 0x1e
ja case.default.0x6b27eb18
jmp dword [eax*4 + 0x6b291c30]
cmp esi, 0x1f
ja 0x6b27ebb8
test edi, edi
nop
lea esi, [esi]
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b280946
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 1]
lea edx, [edi - 2]
lea ebx, [ebp + 2]
shl eax, cl
lea ecx, [esi + 0x10]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b280946
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 2]
add esi, 0x18
lea edx, [edi - 3]
lea ebx, [ebp + 3]
shl eax, cl
add dword [esp + 0x28], eax
cmp esi, 0x1f
ja 0x6b280946
test edx, edx
je 0x6b280c11
movzx eax, byte [ebp + 3]
mov ecx, esi
sub edi, 4
lea ebx, [ebp + 4]
shl eax, cl
add dword [esp + 0x28], eax
mov ebp, ebx
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x28], 0
mov edx, esi
mov eax, esi
shr eax, 0x18
shl edx, 0x18
add edx, eax
mov eax, esi
shr eax, 8
and eax, 0xff00
add edx, eax
mov eax, esi
mov esi, dword [esp + 0x24]
and eax, 0xff00
shl eax, 8
add eax, edx
mov dword [esi + 0x18], eax
mov dword [ebx + 0x30], eax
mov dword [esi], 0xa
xor esi, esi
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x6b280c6e
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.6b281810
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0xa0]
mov dword [ebx + 0x18], eax
mov dword [edx + 0x30], eax
mov dword [ebx], 0xb
cmp dword [esp + 0x50], 1
jbe 0x6b280050
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
test edx, edx
jne 0x6b27ece0
cmp esi, 2
ja 0x6b280b14
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
sub edi, 1
lea edx, [ebp + 1]
add esi, 8
shl eax, cl
add dword [esp + 0x28], eax
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov eax, ecx
and eax, 1
shr ecx, 1
mov dword [ebx + 4], eax
mov eax, ecx
and eax, 3
cmp eax, 2
je 0x6b280444
cmp eax, 3
je 0x6b280820
cmp eax, 1
je 0x6b2807e2
mov dword [ebx], 0xd
mov eax, 0xd
shr ecx, 2
sub esi, 3
mov dword [esp + 0x28], ecx
mov ebp, edx
jmp 0x6b27eb0f
mov dword [edi], 0xc
mov al, 0xc
jmp 0x6b27eabd
mov ecx, esi
and esi, 0xfffffff8
and ecx, 7
mov dword [eax], 0x1a
mov eax, 0x1a
shr dword [esp + 0x28], cl
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x48]
test ebx, ebx
je 0x6b27ed68
cmp esi, ebx
jae 0x6b27ed43
test edi, edi
je 0x6b280050
mov edx, dword [esp + 0x28]
mov ecx, esi
jmp 0x6b27ed28
test edi, edi
je 0x6b280123
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
shl eax, cl
add ecx, 8
add edx, eax
cmp ecx, ebx
jb 0x6b27ed20
mov dword [esp + 0x28], edx
mov esi, ecx
mov edx, dword [esp + 0x24]
mov ecx, ebx
mov eax, 1
shl eax, cl
mov ecx, ebx
sub eax, 1
sub esi, ebx
and eax, dword [esp + 0x28]
add dword [edx + 0x1bc4], ebx
add dword [edx + 0x44], eax
shr dword [esp + 0x28], cl
mov eax, dword [esp + 0x24]
mov dword [eax], 0x18
mov ebx, dword [esp + 0x34]
test ebx, ebx
je 0x6b280050
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov edx, dword [ecx + 0x44]
sub eax, ebx
cmp eax, edx
jae 0x6b2801d0
sub edx, eax
cmp edx, dword [ecx + 0x2c]
ja 0x6b280370
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x30]
cmp edx, eax
jbe 0x6b2805e0
mov ebx, dword [esp + 0x24]
sub edx, eax
mov eax, dword [ebx + 0x28]
sub eax, edx
add eax, dword [ebx + 0x34]
mov ecx, dword [ebx + 0x40]
cmp edx, ecx
cmova edx, ecx
jmp 0x6b2801db
mov eax, dword [esp + 0x24]
cmp dword [esp + 0xa4], 6
mov dword [eax], 0x13
je 0x6b280050
mov eax, dword [esp + 0x24]
mov dword [eax], 0x14
cmp edi, 5
ja 0x6b280503
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov ecx, dword [eax + 0x54]
mov ebx, dword [eax + 0x4c]
mov dword [eax + 0x1bc4], 0
mov eax, 1
shl eax, cl
sub eax, 1
and edx, eax
mov dword [esp + 0x48], eax
lea eax, [ebx + edx*4]
movzx edx, byte [eax + 1]
mov dword [esp + 0x40], ebx
movzx ebx, byte [eax]
movzx eax, word [eax + 2]
mov word [esp + 0x44], ax
movzx eax, dl
cmp esi, eax
jae 0x6b27ee93
test edi, edi
je 0x6b280050
mov ecx, esi
mov esi, dword [esp + 0x28]
jmp 0x6b27ee58
test edi, edi
je 0x6b2804d3
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
mov ebx, dword [esp + 0x40]
shl eax, cl
add ecx, 8
add esi, eax
mov eax, dword [esp + 0x48]
and eax, esi
lea eax, [ebx + eax*4]
movzx edx, byte [eax + 1]
movzx ebx, byte [eax]
movzx eax, word [eax + 2]
mov word [esp + 0x44], ax
movzx eax, dl
cmp eax, ecx
ja 0x6b27ee50
mov dword [esp + 0x28], esi
mov esi, ecx
test bl, bl
jne 0x6b2805f0
mov ecx, edx
mov edx, dword [esp + 0x24]
sub esi, eax
shr dword [esp + 0x28], cl
mov dword [edx + 0x1bc4], eax
movzx eax, word [esp + 0x44]
mov dword [edx + 0x40], eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x19
mov eax, 0x19
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x48]
test ebx, ebx
jne 0x6b2802d3
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
mov dword [edx + 0x1bc8], eax
mov dword [edx], 0x16
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x58]
mov ebx, dword [eax + 0x50]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x28]
sub eax, 1
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], ebx
and ecx, eax
lea eax, [ebx + ecx*4]
movzx edx, byte [eax + 1]
movzx ebx, byte [eax]
movzx eax, word [eax + 2]
mov word [esp + 0x40], ax
movzx eax, dl
cmp esi, eax
mov dword [esp + 0x48], eax
jae 0x6b27ef91
test edi, edi
je 0x6b280050
mov ecx, esi
mov esi, edi
mov edi, dword [esp + 0x28]
jmp 0x6b27ef50
test esi, esi
je 0x6b2804c2
add ebp, 1
movzx eax, byte [ebp - 1]
sub esi, 1
mov edx, dword [esp + 0x44]
shl eax, cl
add ecx, 8
add edi, eax
mov eax, dword [esp + 0x4c]
and eax, edi
lea eax, [edx + eax*4]
movzx edx, byte [eax + 1]
movzx ebx, byte [eax]
movzx eax, word [eax + 2]
mov word [esp + 0x40], ax
movzx eax, dl
cmp eax, ecx
mov dword [esp + 0x48], eax
ja 0x6b27ef48
mov dword [esp + 0x28], edi
mov edi, esi
mov esi, ecx
test bl, 0xf0
jne 0x6b2803a0
movzx ecx, word [esp + 0x40]
mov dword [esp + 0x48], ecx
lea ecx, [ebx + eax]
mov ebx, 1
shl ebx, cl
lea ecx, [ebx - 1]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
and ebx, ecx
mov ecx, edx
mov edx, dword [esp + 0x44]
shr ebx, cl
add ebx, dword [esp + 0x48]
lea edx, [edx + ebx*4]
movzx ecx, word [edx + 2]
movzx ebx, byte [edx]
movzx edx, byte [edx + 1]
mov word [esp + 0x40], cx
lea ecx, [eax + edx]
cmp esi, ecx
mov dword [esp + 0x4c], edx
jae 0x6b27f056
test edi, edi
je 0x6b280050
mov edx, edi
mov ebx, dword [esp + 0x28]
mov edi, ebp
mov ebp, edx
jmp 0x6b27f000
test ebp, ebp
je 0x6b2806c5
add edi, 1
movzx edx, byte [edi - 1]
mov ecx, esi
add esi, 8
sub ebp, 1
shl edx, cl
mov ecx, eax
add ebx, edx
mov edx, dword [esp + 0x5c]
and edx, ebx
shr edx, cl
mov ecx, dword [esp + 0x44]
add edx, dword [esp + 0x48]
lea edx, [ecx + edx*4]
movzx ecx, byte [edx]
mov byte [esp + 0x60], cl
movzx ecx, word [edx + 2]
movzx edx, byte [edx + 1]
mov word [esp + 0x40], cx
lea ecx, [edx + eax]
cmp ecx, esi
mov dword [esp + 0x4c], edx
ja 0x6b27eff8
mov dword [esp + 0x28], ebx
movzx ebx, byte [esp + 0x60]
mov ecx, ebp
mov ebp, edi
mov edi, ecx
mov ecx, eax
sub esi, eax
shr dword [esp + 0x28], cl
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x48], edx
add eax, dword [ecx + 0x1bc4]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x44]
jmp 0x6b2803b4
mov dword [esp + 8], 1
mov ecx, dword [ebx + 0x24]
mov al, 1
shl eax, cl
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0x28]
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
call dword [eax + 0x20]
test eax, eax
mov dword [ebx + 0x34], eax
jne 0x6b27f154
mov dword [edi], 0x1e
nop
lea esi, [esi]
mov eax, 0xfffffffc
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, edi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x3c], 1
nop
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x2c]
mov ecx, eax
mov dword [eax + 0xc], edx
mov eax, dword [esp + 0x34]
mov dword [ecx + 4], ebx
mov ebx, dword [esp + 0x28]
mov dword [ecx], ebp
mov dword [ecx + 0x10], eax
mov ecx, dword [edi + 0x28]
mov dword [edi + 0x38], ebx
mov dword [edi + 0x3c], esi
test ecx, ecx
jne 0x6b27f137
mov esi, dword [esp + 0x30]
cmp eax, esi
je 0x6b27f1d0
mov eax, dword [edi]
cmp eax, 0x1c
ja 0x6b27f1d0
cmp eax, 0x19
jbe 0x6b27f137
cmp dword [esp + 0xa4], 4
je 0x6b27f1d0
mov eax, dword [esp + 0xa0]
mov esi, dword [esp + 0x30]
sub esi, dword [esp + 0x34]
mov ebx, dword [eax + 0x1c]
mov eax, dword [ebx + 0x34]
test eax, eax
je 0x6b27f080
mov edx, dword [ebx + 0x28]
test edx, edx
jne 0x6b27f173
mov ecx, dword [ebx + 0x24]
mov dl, 1
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x2c], 0
shl edx, cl
mov dword [ebx + 0x28], edx
cmp esi, edx
jae 0x6b280154
mov ebp, dword [ebx + 0x30]
sub edx, ebp
cmp edx, esi
cmova edx, esi
add eax, ebp
mov ecx, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 0x24], ecx
sub edx, esi
mov dword [esp + 4], edx
call sub.msvcrt.dll_memcpy
mov ecx, dword [esp + 0x24]
sub esi, ecx
jne 0x6b280190
mov edx, dword [ebx + 0x30]
mov eax, dword [ebx + 0x28]
add edx, ecx
cmp edx, eax
mov dword [ebx + 0x30], edx
je 0x6b280180
mov edx, dword [ebx + 0x2c]
cmp eax, edx
jbe 0x6b27f1d0
add edx, ecx
mov dword [ebx + 0x2c], edx
nop
mov eax, dword [esp + 0xa0]
mov edx, dword [edi + 8]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x30]
sub esi, dword [eax + 4]
sub ebx, dword [eax + 0x10]
add dword [eax + 8], esi
add dword [eax + 0x14], ebx
add dword [edi + 0x1c], ebx
test edx, edx
je 0x6b27f229
test ebx, ebx
je 0x6b27f229
mov ebp, dword [edi + 0x10]
mov dword [esp + 8], ebx
test ebp, ebp
je 0x6b280134
mov eax, dword [eax + 0xc]
sub eax, ebx
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov ecx, dword [esp + 0xa0]
mov dword [edi + 0x18], eax
mov dword [ecx + 0x30], eax
cmp dword [edi + 4], 1
mov edx, dword [edi]
sbb eax, eax
not eax
and eax, 0x40
add eax, dword [edi + 0x3c]
cmp edx, 0xb
je 0x6b280060
cmp edx, 0xe
jne 0x6b280070
mov edx, 0x100
mov edi, dword [esp + 0xa0]
add eax, edx
or ebx, esi
mov dword [edi + 0x2c], eax
je 0x6b27f272
cmp dword [esp + 0xa4], 4
mov eax, dword [esp + 0x3c]
jne 0x6b27f0c5
mov esi, dword [esp + 0x3c]
mov eax, 0xfffffffb
test esi, esi
cmovne eax, esi
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp esi, 0x1f
ja 0x6b27f2c7
test edi, edi
je 0x6b280050
mov edx, dword [esp + 0x28]
mov ecx, esi
jmp 0x6b27f2ad
test edi, edi
je 0x6b280123
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
shl eax, cl
add ecx, 8
add edx, eax
cmp ecx, 0x1f
jbe 0x6b27f2a5
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b27f2d9
mov esi, dword [esp + 0x28]
mov dword [eax + 4], esi
mov eax, dword [esp + 0x24]
test byte [eax + 0x11], 2
jne 0x6b280874
mov dword [eax], 3
xor esi, esi
mov dword [esp + 0x28], 0
jmp 0x6b27f365
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
mov ebx, dword [esp + 0x24]
mov dword [ebx], 0xf
test eax, eax
je 0x6b2801b7
mov edx, dword [esp + 0x34]
cmp edi, eax
cmovbe eax, edi
cmp eax, edx
cmova eax, edx
test eax, eax
mov ebx, eax
je 0x6b280050
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
sub edi, ebx
mov dword [esp + 4], ebp
add ebp, ebx
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x24]
sub dword [esp + 0x34], ebx
add dword [esp + 0x2c], ebx
sub dword [eax + 0x40], ebx
mov eax, dword [eax]
jmp 0x6b27eb0f
cmp esi, 0xf
ja 0x6b27f397
test edi, edi
je 0x6b280050
mov edx, dword [esp + 0x28]
mov ecx, esi
jmp 0x6b27f37d
test edi, edi
je 0x6b280123
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
shl eax, cl
add ecx, 8
add edx, eax
cmp ecx, 0xf
jbe 0x6b27f375
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b27f3b9
mov esi, dword [esp + 0x28]
mov edx, esi
and edx, 0xff
mov dword [eax + 8], edx
mov edx, esi
shr edx, 8
mov dword [eax + 0xc], edx
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x10]
test ah, 2
mov ebx, eax
jne 0x6b280686
mov esi, dword [esp + 0x24]
mov dword [esp + 0x28], 0
mov dword [esi], 4
xor esi, esi
test ah, 4
jne 0x6b27ffa7
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b2804b2
mov dword [eax + 0x10], 0
xor eax, eax
jmp 0x6b280020
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov eax, dword [eax + 0x68]
mov dword [esp + 0x44], eax
mov eax, dword [edx + 0x60]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x4c], eax
add eax, dword [edx + 0x64]
mov dword [esp + 0x48], eax
cmp dword [esp + 0x44], eax
jae 0x6b280c2d
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x54]
mov edx, dword [eax + 0x4c]
mov eax, 1
shl eax, cl
lea eax, [eax - 1]
mov dword [esp + 0x40], eax
and eax, ebx
lea eax, [edx + eax*4]
movzx ecx, byte [eax + 1]
movzx eax, word [eax + 2]
mov word [esp + 0x28], ax
movzx eax, cl
cmp esi, eax
jae 0x6b27f4aa
test edi, edi
je 0x6b280865
mov ecx, esi
mov esi, edx
jmp 0x6b27f478
test edi, edi
je 0x6b2802b2
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
shl eax, cl
add ecx, 8
add ebx, eax
mov eax, dword [esp + 0x40]
and eax, ebx
lea eax, [esi + eax*4]
movzx edx, byte [eax + 1]
movzx eax, word [eax + 2]
mov word [esp + 0x28], ax
movzx eax, dl
cmp eax, ecx
ja 0x6b27f470
mov esi, ecx
mov ecx, edx
cmp word [esp + 0x28], 0xf
jbe 0x6b2803f5
cmp word [esp + 0x28], 0x10
je 0x6b28094d
cmp word [esp + 0x28], 0x11
je 0x6b280a9a
lea ecx, [eax + 7]
cmp esi, ecx
mov edx, ecx
jae 0x6b27f508
test edi, edi
je 0x6b280865
mov ecx, esi
mov esi, eax
mov eax, edx
jmp 0x6b27f4ef
test edi, edi
je 0x6b2802b2
add ebp, 1
movzx edx, byte [ebp - 1]
sub edi, 1
shl edx, cl
add ecx, 8
add ebx, edx
cmp ecx, eax
jb 0x6b27f4e7
mov eax, esi
mov esi, ecx
mov ecx, eax
sub esi, eax
shr ebx, cl
sub esi, 7
mov ecx, ebx
mov edx, ebx
and ecx, 0x7f
xor eax, eax
lea ebx, [ecx + 0xb]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x5c], ebx
mov ebx, edx
shr ebx, 7
mov edx, dword [esp + 0x5c]
add edx, ecx
cmp edx, dword [esp + 0x48]
mov dword [esp + 0x60], edx
ja 0x6b280eb2
mov word [esp + 0x28], ax
mov eax, ecx
mov ecx, dword [esp + 0x24]
add eax, 0x38
mov dword [esp + 0x64], eax
lea eax, [ecx + eax*2]
mov ecx, dword [esp + 0x5c]
shl eax, 0x1e
shr eax, 0x1f
cmp ecx, eax
cmovbe eax, ecx
cmp ecx, 6
mov dword [esp + 0x40], ecx
ja 0x6b280b5b
mov edx, dword [esp + 0x44]
mov dword [esp + 0x68], ebx
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x64]
mov eax, edx
add eax, 1
mov dword [esp + 0x6c], eax
movzx eax, word [esp + 0x28]
cmp dword [esp + 0x40], 1
mov word [ecx + ebx*2], ax
mov ebx, dword [esp + 0x68]
je 0x6b280ce1
mov eax, edx
lea edx, [edx + 2]
mov dword [esp + 0x68], edx
movzx edx, word [esp + 0x28]
cmp dword [esp + 0x40], 2
mov word [ecx + eax*2 + 0x72], dx
je 0x6b280bac
lea edx, [eax + 3]
mov dword [esp + 0x68], edx
movzx edx, word [esp + 0x28]
cmp dword [esp + 0x40], 3
mov word [ecx + eax*2 + 0x74], dx
je 0x6b280bac
lea edx, [eax + 4]
mov dword [esp + 0x68], edx
movzx edx, word [esp + 0x28]
cmp dword [esp + 0x40], 4
mov word [ecx + eax*2 + 0x76], dx
je 0x6b280bac
lea edx, [eax + 5]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edx
movzx edx, word [esp + 0x28]
cmp dword [esp + 0x40], 6
mov word [ecx + eax*2 + 0x78], dx
jne 0x6b280cee
mov eax, ecx
mov ecx, dword [esp + 0x68]
add dword [esp + 0x44], 6
mov word [eax + ecx*2 + 0x70], dx
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x5c], eax
je 0x6b27f6a7
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x5c]
sub ecx, edx
mov dword [esp + 0x6c], ecx
shr ecx, 1
mov dword [esp + 0x40], ecx
add ecx, ecx
mov dword [esp + 0x68], ecx
je 0x6b27f695
movzx ecx, word [esp + 0x28]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x64]
shl eax, 0x10
or dword [esp + 0x5c], eax
mov eax, dword [esp + 0x24]
add ecx, edx
mov edx, dword [esp + 0x5c]
lea ecx, [eax + ecx*2]
xor eax, eax
mov dword [ecx + eax*4], edx
add eax, 1
cmp eax, dword [esp + 0x40]
jb 0x6b27f673
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x68]
add eax, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x6c]
cmp ecx, eax
je 0x6b27f6a7
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x44]
movzx edx, word [esp + 0x28]
mov word [eax + ecx*2 + 0x70], dx
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x44], eax
mov dword [ecx + 0x68], eax
mov eax, dword [esp + 0x48]
jmp 0x6b27f426
cmp esi, 0xf
ja 0x6b280be7
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0xf
ja 0x6b280bf7
test edx, edx
je 0x6b280c00
movzx eax, byte [ebp + 1]
sub edi, 2
add esi, 0x10
lea ebx, [ebp + 2]
shl eax, cl
add dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
cmp al, 8
mov dword [ecx + 0x10], eax
je 0x6b280454
mov eax, dword [esp + 0xa0]
mov ebp, ebx
mov dword [eax + 0x18], str.unknown_compression_method
mov eax, 0x1d
mov dword [ecx], 0x1d
jmp switch.0x6b27eb18
cmp esi, 0xd
ja 0x6b280be0
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0xd
ja 0x6b280bee
test edx, edx
je 0x6b280c1e
movzx eax, byte [ebp + 1]
sub edi, 2
add esi, 0x10
lea ebx, [ebp + 2]
shl eax, cl
add dword [esp + 0x28], eax
mov ecx, dword [esp + 0x28]
sub esi, 0xe
mov ebp, dword [esp + 0x24]
shr dword [esp + 0x28], 0xe
mov eax, ecx
mov edx, ecx
and eax, 0x1f
shr edx, 5
add eax, 0x101
shr ecx, 0xa
and edx, 0x1f
and ecx, 0xf
add edx, 1
add ecx, 4
cmp eax, 0x11e
mov dword [ebp + 0x60], eax
mov dword [ebp + 0x64], edx
mov dword [esp + 0x44], ecx
mov dword [ebp + 0x5c], ecx
ja 0x6b280420
cmp edx, 0x1e
ja 0x6b280420
mov eax, dword [esp + 0x24]
mov ecx, esi
mov ebp, ebx
mov esi, dword [esp + 0x28]
mov dword [eax + 0x68], 0
mov dword [eax], 0x11
xor eax, eax
jmp 0x6b27f812
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x5c]
mov eax, dword [eax + 0x68]
mov dword [esp + 0x44], ecx
cmp ecx, eax
jbe 0x6b2809ea
mov ecx, esi
mov esi, dword [esp + 0x28]
cmp ecx, 2
ja 0x6b27f869
test edi, edi
je 0x6b2804d3
lea ebx, [ebp + 1]
sub edi, 1
mov dword [esp + 0x40], ebx
movzx ebx, byte [ebp]
shl ebx, cl
add ecx, 8
add esi, ebx
add eax, 1
mov edx, dword [esp + 0x24]
mov ebp, esi
movzx ebx, word [eax + eax + 0x6b29253e]
and ebp, 7
sub ecx, 3
shr esi, 3
cmp eax, dword [esp + 0x44]
mov dword [edx + 0x68], eax
mov word [edx + ebx*2 + 0x70], bp
jae 0x6b2809de
cmp ecx, 2
mov ebp, dword [esp + 0x40]
jbe 0x6b27f817
mov dword [esp + 0x40], ebp
jmp 0x6b27f834
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
jmp 0x6b27f311
mov ebx, edi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x3c], 0xfffffffd
jmp 0x6b27f0e0
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6b280050
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x2c]
sub dword [esp + 0x34], 1
mov eax, dword [edx + 0x40]
mov byte [ebx], al
lea eax, [ebx + 1]
mov dword [esp + 0x2c], eax
mov eax, 0x14
mov dword [edx], 0x14
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 8]
test eax, eax
je 0x6b280350
cmp esi, 0x1f
ja 0x6b280ca0
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b280ba3
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 1]
lea edx, [edi - 2]
lea ebx, [ebp + 2]
shl eax, cl
lea ecx, [esi + 0x10]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b280ba3
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 2]
lea edx, [edi - 3]
lea ebx, [ebp + 3]
shl eax, cl
lea ecx, [esi + 0x18]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b280ba3
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 3]
sub edi, 4
add esi, 0x20
lea ebx, [ebp + 4]
shl eax, cl
add dword [esp + 0x28], eax
mov ecx, dword [esp + 0xa0]
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x34]
add dword [ecx + 0x14], eax
mov ecx, dword [esp + 0x24]
add dword [ecx + 0x1c], eax
test eax, eax
je 0x6b27f9bb
mov edx, dword [ecx + 0x10]
mov dword [esp + 8], eax
test edx, edx
mov edx, dword [esp + 0x2c]
je 0x6b280b70
sub edx, eax
mov dword [esp + 4], edx
mov eax, dword [ecx + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0xa0]
mov dword [ecx + 0x18], eax
mov dword [edx + 0x30], eax
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov ebp, dword [edx + 0x10]
test ebp, ebp
jne 0x6b27f9ee
mov edx, eax
mov ecx, eax
shl edx, 0x18
shr eax, 0x18
add edx, eax
mov eax, ecx
shr eax, 8
and eax, 0xff00
add edx, eax
mov eax, ecx
and eax, 0xff00
shl eax, 8
add eax, edx
mov ecx, dword [esp + 0x24]
cmp eax, dword [ecx + 0x18]
je 0x6b280335
mov eax, dword [esp + 0xa0]
mov ebp, ebx
mov dword [eax + 0x18], str.incorrect_data_check
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], eax
mov eax, 0x1d
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 8]
test eax, eax
je 0x6b280b8a
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x6b280b8a
cmp esi, 0x1f
ja 0x6b27fad9
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b2806d6
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 1]
lea edx, [edi - 2]
lea ebx, [ebp + 2]
shl eax, cl
lea ecx, [esi + 0x10]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b2806d6
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 2]
lea edx, [edi - 3]
lea ebx, [ebp + 3]
shl eax, cl
lea ecx, [esi + 0x18]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b2806d6
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 3]
sub edi, 4
add esi, 0x20
lea ebx, [ebp + 4]
shl eax, cl
add dword [esp + 0x28], eax
mov ebp, ebx
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
cmp dword [eax + 0x1c], ebx
je 0x6b280df8
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x18], str.incorrect_length_check
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 8]
test edx, edx
je 0x6b280360
cmp esi, 0xf
ja 0x6b27fb67
test edi, edi
je 0x6b280050
lea eax, [edi - 1]
mov ecx, esi
mov dword [esp + 0x40], eax
movzx eax, byte [ebp]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0xf
ja 0x6b280cfb
mov eax, dword [esp + 0x40]
test eax, eax
je 0x6b280d06
movzx eax, byte [ebp + 1]
sub edi, 2
add esi, 0x10
lea ebx, [ebp + 2]
shl eax, cl
add dword [esp + 0x28], eax
mov ebp, ebx
test dl, 2
je 0x6b27fb7a
cmp dword [esp + 0x28], 0x8b1f
je 0x6b280d15
mov eax, dword [esp + 0x24]
mov dword [eax + 0x10], 0
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b27fb93
mov dword [eax + 0x30], 0xffffffff
and edx, 1
je 0x6b2806df
mov eax, dword [esp + 0x28]
mov edx, 0x8421085
mov ecx, eax
shl ecx, 8
shr eax, 8
movzx ecx, cx
add ecx, eax
mov eax, ecx
mul edx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 4
mov edx, eax
shl edx, 5
sub edx, eax
cmp ecx, edx
jne 0x6b2806df
mov eax, dword [esp + 0x28]
and eax, 0xf
cmp eax, 8
je 0x6b280d77
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], str.unknown_compression_method
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov ecx, esi
and esi, 0xfffffff8
and ecx, 7
shr dword [esp + 0x28], cl
cmp esi, 0x1f
ja 0x6b280bd9
test edi, edi
je 0x6b280050
movzx eax, byte [ebp]
mov ecx, esi
lea edx, [edi - 1]
lea ebx, [ebp + 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b28093d
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 1]
lea edx, [edi - 2]
lea ebx, [ebp + 2]
shl eax, cl
lea ecx, [esi + 0x10]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b28093d
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 2]
lea edx, [edi - 3]
lea ebx, [ebp + 3]
shl eax, cl
lea ecx, [esi + 0x18]
add dword [esp + 0x28], eax
cmp ecx, 0x1f
ja 0x6b28093d
test edx, edx
je 0x6b2805d0
movzx eax, byte [ebp + 3]
sub edi, 4
add esi, 0x20
lea ebx, [ebp + 4]
shl eax, cl
add dword [esp + 0x28], eax
mov edx, dword [esp + 0x28]
movzx eax, dx
shr edx, 0x10
xor edx, 0xffff
cmp eax, edx
je 0x6b280486
mov eax, dword [esp + 0xa0]
mov ebp, ebx
mov dword [eax + 0x18], str.invalid_stored_block_lengths
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
mov eax, ebx
and eax, 0x400
test eax, eax
je 0x6b27fd84
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
cmp edi, eax
mov ecx, eax
cmovbe ecx, edi
mov edx, eax
test ecx, ecx
mov dword [esp + 0x40], ecx
je 0x6b27fd75
mov edx, dword [esp + 0x24]
mov ecx, dword [edx + 0x20]
test ecx, ecx
je 0x6b27fd58
mov edx, dword [ecx + 0x10]
test edx, edx
mov dword [esp + 0x44], edx
je 0x6b27fd58
mov edx, dword [ecx + 0x14]
mov ebx, dword [esp + 0x40]
sub edx, eax
mov eax, dword [ecx + 0x18]
add ebx, edx
mov dword [esp + 4], ebp
mov ecx, eax
sub ecx, edx
cmp ebx, eax
cmovbe ecx, dword [esp + 0x40]
add edx, dword [esp + 0x44]
mov dword [esp + 8], ecx
mov dword [esp], edx
call sub.msvcrt.dll_memcpy
mov edx, dword [esp + 0x24]
mov ebx, dword [edx + 0x10]
and bh, 2
jne 0x6b280842
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x40]
mov edx, dword [ecx + 0x40]
sub edi, eax
add ebp, eax
sub edx, eax
mov dword [ecx + 0x40], edx
test edx, edx
jne 0x6b280050
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
mov eax, dword [esp + 0x24]
test bh, 8
mov dword [eax + 0x40], 0
mov dword [eax], 6
jne 0x6b27fdc1
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b27fe4d
mov dword [eax + 0x1c], 0
jmp 0x6b27fe4d
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
test bh, 8
je 0x6b27fd9a
test edi, edi
je 0x6b280050
mov dword [esp + 0x48], esi
xor ebx, ebx
mov esi, dword [esp + 0x24]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], edi
jmp 0x6b27fde6
cmp ebx, dword [esp + 0x44]
jae 0x6b27fe18
mov eax, dword [esp + 0x40]
add ebx, 1
movzx edx, byte [eax + ebx - 1]
mov eax, dword [esi + 0x20]
movzx ebp, dl
test eax, eax
je 0x6b27fe14
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x6b27fe14
mov ecx, dword [esi + 0x40]
cmp ecx, dword [eax + 0x20]
jae 0x6b27fe14
lea eax, [ecx + 1]
mov dword [esi + 0x40], eax
mov byte [edi + ecx], dl
test ebp, ebp
jne 0x6b27fde0
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x40]
test byte [eax + 0x11], 2
jne 0x6b2805a0
mov eax, dword [esp + 0x44]
sub edi, ebx
add ebp, ebx
test eax, eax
jne 0x6b280050
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
mov eax, dword [esp + 0x24]
mov dword [eax + 0x40], 0
mov dword [eax], 7
test bh, 0x10
je 0x6b280108
test edi, edi
je 0x6b280050
mov dword [esp + 0x48], esi
xor ebx, ebx
mov esi, dword [esp + 0x24]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], edi
jmp 0x6b27fe89
cmp ebx, dword [esp + 0x44]
jae 0x6b27febb
mov eax, dword [esp + 0x40]
add ebx, 1
movzx edx, byte [eax + ebx - 1]
mov eax, dword [esi + 0x20]
movzx ebp, dl
test eax, eax
je 0x6b27feb7
mov edi, dword [eax + 0x24]
test edi, edi
je 0x6b27feb7
mov ecx, dword [esi + 0x40]
cmp ecx, dword [eax + 0x28]
jae 0x6b27feb7
lea eax, [ecx + 1]
mov dword [esi + 0x40], eax
mov byte [edi + ecx], dl
test ebp, ebp
jne 0x6b27fe83
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x40]
test byte [eax + 0x11], 2
jne 0x6b2804e4
sub edi, ebx
add ebp, ebx
mov ebx, dword [esp + 0x44]
test ebx, ebx
jne 0x6b280050
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
mov eax, dword [esp + 0x24]
mov dword [eax], 8
test bh, 2
je 0x6b280090
cmp esi, 0xf
ja 0x6b2809bb
test edi, edi
je 0x6b280050
lea eax, [ebp + 1]
mov ecx, esi
mov dword [esp + 0x40], eax
movzx eax, byte [ebp]
lea edx, [edi - 1]
shl eax, cl
lea ecx, [esi + 8]
add dword [esp + 0x28], eax
cmp ecx, 0xf
ja 0x6b2809c4
test edx, edx
je 0x6b2809cd
lea eax, [ebp + 2]
sub edi, 2
mov dword [esp + 0x40], eax
movzx eax, byte [ebp + 1]
add esi, 0x10
shl eax, cl
add dword [esp + 0x28], eax
mov edx, dword [esp + 0x24]
movzx eax, word [edx + 0x18]
cmp eax, dword [esp + 0x28]
je 0x6b280080
mov eax, dword [esp + 0xa0]
mov ebp, dword [esp + 0x40]
mov dword [eax + 0x18], str.header_crc_mismatch
mov eax, 0x1d
mov dword [edx], 0x1d
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x10]
test ah, 4
mov ebx, eax
je 0x6b27f3e8
cmp esi, 0xf
ja 0x6b27fff1
test edi, edi
je 0x6b280050
movzx edx, byte [ebp]
mov ecx, esi
add esi, 8
lea ebx, [edi - 1]
mov dword [esp + 0x40], ebx
lea ebx, [ebp + 1]
shl edx, cl
add dword [esp + 0x28], edx
cmp esi, 0xf
ja 0x6b2804b9
mov edx, dword [esp + 0x40]
test edx, edx
je 0x6b280c61
movzx edx, byte [ebp + 1]
mov ecx, esi
sub edi, 2
lea ebx, [ebp + 2]
shl edx, cl
add dword [esp + 0x28], edx
mov ebp, ebx
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov edx, dword [esi + 0x20]
mov dword [esi + 0x40], ebx
test edx, edx
je 0x6b280006
mov dword [edx + 0x14], ebx
test ah, 2
jne 0x6b2808ef
mov ebx, eax
xor esi, esi
and eax, 0x400
mov dword [esp + 0x28], 0
mov ecx, dword [esp + 0x24]
mov dword [ecx], 5
jmp 0x6b27fcee
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
jmp 0x6b27fe5e
mov eax, dword [esp + 0x24]
mov ebx, dword [eax + 0x10]
jmp 0x6b27fefa
mov ebx, edi
mov edi, dword [esp + 0x24]
jmp 0x6b27f0e0
sub eax, 0xffffff80
xor edx, edx
jmp 0x6b27f250
cmp edx, 0x13
je 0x6b27f24b
xor edx, edx
jmp 0x6b27f250
mov ebp, dword [esp + 0x40]
xor esi, esi
mov dword [esp + 0x28], 0
nop
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b2800ad
sar ebx, 9
mov edx, ebx
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.6b281ea0
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0xa0]
mov dword [ebx + 0x18], eax
mov dword [ecx + 0x30], eax
mov eax, 0xb
mov dword [ebx], 0xb
jmp switch.0x6b27eb18
mov eax, dword [eax + 4]
test eax, eax
jne case.default.0x6b27eb18
mov dword [esp + 0x38], 0
jmp 0x6b27eab2
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b27fef0
mov dword [eax + 0x24], 0
jmp 0x6b27fef0
mov ebx, edi
mov esi, ecx
mov edi, dword [esp + 0x24]
mov dword [esp + 0x28], edx
jmp 0x6b27f0e0
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0xc]
sub eax, ebx
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
call fcn.6b281810
jmp 0x6b27f21c
mov ecx, dword [esp + 0x2c]
mov dword [esp + 8], edx
mov dword [esp], eax
sub ecx, edx
mov dword [esp + 4], ecx
call sub.msvcrt.dll_memcpy
mov eax, dword [ebx + 0x28]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x2c], eax
jmp 0x6b27f1d0
mov dword [ebx + 0x30], 0
jmp 0x6b27f1c2
mov eax, dword [esp + 0x2c]
mov edx, dword [ebx + 0x34]
mov dword [esp + 8], esi
sub eax, esi
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt.dll_memcpy
mov eax, dword [ebx + 0x28]
mov dword [ebx + 0x30], esi
mov dword [ebx + 0x2c], eax
jmp 0x6b27f1d0
mov eax, dword [esp + 0x24]
mov dword [eax], 0xb
mov eax, 0xb
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x2c]
sub eax, edx
mov edx, dword [ecx + 0x40]
mov ecx, edx
mov ebx, dword [esp + 0x34]
cmp edx, ebx
cmova edx, ebx
mov ebx, dword [esp + 0x24]
sub ecx, edx
sub dword [esp + 0x34], edx
mov dword [ebx + 0x40], ecx
mov ebx, dword [esp + 0x2c]
lea ecx, [eax + 4]
cmp ebx, ecx
setae cl
add ebx, 4
cmp eax, ebx
setae bl
or ecx, ebx
cmp edx, 9
seta bl
test cl, bl
je 0x6b280660
mov ecx, dword [esp + 0x2c]
or ecx, eax
and ecx, 3
jne 0x6b280660
mov ebx, edx
xor ecx, ecx
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x2c]
shr ebx, 2
mov dword [esp + 0x40], ebx
shl ebx, 2
mov dword [esp + 0x44], ebx
mov ebx, dword [eax + ecx*4]
mov dword [edx + ecx*4], ebx
add ecx, 1
cmp ecx, dword [esp + 0x40]
jb 0x6b28023e
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x48]
add eax, ebx
add ecx, ebx
mov dword [esp + 0x40], ecx
mov ecx, edx
sub ecx, ebx
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x2c]
add ecx, edx
cmp ebx, edx
je 0x6b28029c
movzx edx, byte [eax]
mov ebx, dword [esp + 0x40]
cmp dword [esp + 0x44], 1
mov byte [ebx], dl
je 0x6b28029c
movzx edx, byte [eax + 1]
cmp dword [esp + 0x44], 2
mov byte [ebx + 1], dl
je 0x6b28029c
movzx eax, byte [eax + 2]
mov ebx, dword [esp + 0x40]
mov byte [ebx + 2], al
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ebx, dword [eax + 0x40]
test ebx, ebx
je 0x6b2802c3
mov eax, dword [eax]
jmp 0x6b27eb0f
mov dword [esp + 0x28], ebx
mov esi, ecx
mov ebx, edi
mov edi, dword [esp + 0x24]
jmp 0x6b27f0e0
mov dword [eax], 0x14
mov eax, 0x14
jmp switch.0x6b27eb18
cmp esi, ebx
jae 0x6b28030a
test edi, edi
je 0x6b280050
mov edx, dword [esp + 0x28]
mov ecx, esi
jmp 0x6b2802ef
test edi, edi
je 0x6b280123
add ebp, 1
movzx eax, byte [ebp - 1]
sub edi, 1
shl eax, cl
add ecx, 8
add edx, eax
cmp ecx, ebx
jb 0x6b2802e7
mov dword [esp + 0x28], edx
mov esi, ecx
mov edx, dword [esp + 0x24]
mov ecx, ebx
mov eax, 1
shl eax, cl
sub esi, ebx
sub eax, 1
and eax, dword [esp + 0x28]
add eax, dword [edx + 0x40]
shr dword [esp + 0x28], cl
add dword [edx + 0x1bc4], ebx
mov dword [edx + 0x40], eax
jmp 0x6b27eeea
mov esi, dword [esp + 0x34]
mov ebp, ebx
mov eax, dword [ecx + 8]
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], esi
xor esi, esi
lea esi, [esi]
mov ebx, dword [esp + 0x24]
mov dword [ebx], 0x1b
jmp 0x6b27fa2e
mov dword [eax], 0xc
mov eax, 0xc
jmp switch.0x6b27eb18
mov eax, dword [ecx + 0x1bc0]
test eax, eax
je 0x6b27ed9e
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], 0x6b291be5
mov eax, 0x1d
mov dword [ecx], 0x1d
jmp switch.0x6b27eb18
mov edx, dword [esp + 0x24]
mov dword [esp + 0x4c], eax
mov ecx, dword [edx + 0x1bc4]
mov dword [esp + 0x44], ecx
mov edx, ecx
add edx, eax
mov ecx, eax
mov eax, dword [esp + 0x24]
shr dword [esp + 0x28], cl
sub esi, dword [esp + 0x48]
test bl, 0x40
mov dword [eax + 0x1bc4], edx
je 0x6b280640
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], 0x6b291bcf
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov edx, dword [esp + 0x44]
shr ebx, cl
sub esi, eax
mov ecx, dword [esp + 0x24]
mov eax, edx
add eax, 1
mov dword [ecx + 0x68], eax
mov dword [esp + 0x44], eax
movzx eax, word [esp + 0x28]
mov word [ecx + edx*2 + 0x70], ax
mov eax, dword [esp + 0x48]
jmp 0x6b27f426
mov eax, dword [esp + 0xa0]
mov ebp, ebx
mov dword [eax + 0x18], str.too_many_length_or_distance_symbols
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov dword [ebx], 0x10
mov eax, 0x10
jmp 0x6b27ecc0
test dword [esp + 0x28], 0xe000
je 0x6b280b1b
mov eax, dword [esp + 0xa0]
mov ebp, ebx
mov dword [eax + 0x18], str.unknown_header_flags_set
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov esi, dword [esp + 0x24]
mov ebp, ebx
cmp dword [esp + 0xa4], 6
mov dword [esi + 0x40], eax
mov dword [esi], 0xe
je 0x6b280ed8
xor esi, esi
mov dword [esp + 0x28], 0
jmp 0x6b27f307
xor eax, eax
jmp 0x6b280020
mov edi, dword [esp + 0x40]
jmp 0x6b27ffef
mov ebx, esi
mov esi, ecx
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x24]
jmp 0x6b27f0e0
mov ebx, edi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x28], esi
mov esi, ecx
jmp 0x6b27f0e0
mov dword [esp + 8], ebx
mov dword [esp + 4], ebp
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x18], eax
jmp 0x6b27fed9
cmp dword [esp + 0x34], 0x101
jbe 0x6b27edf3
mov eax, dword [esp + 0xa0]
mov ebx, dword [esp + 0x2c]
mov dword [eax], ebp
mov dword [eax + 0xc], ebx
mov ebx, dword [esp + 0x34]
mov dword [eax + 4], edi
mov edi, dword [esp + 0x28]
mov dword [eax + 0x10], ebx
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov dword [ebx + 0x38], edi
mov dword [ebx + 0x3c], esi
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
call fcn.6b282190
mov eax, dword [esp + 0xa0]
mov esi, dword [ebx + 0x38]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x28], esi
mov esi, dword [ebx + 0x3c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xa0]
mov ebp, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [ebx]
cmp eax, 0xb
jne 0x6b27eb0f
mov ebx, dword [esp + 0x24]
mov dword [ebx + 0x1bc4], 0xffffffff
jmp switch.0x6b27eb18
mov dword [esp + 8], ebx
mov dword [esp + 4], ebp
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x18], eax
jmp 0x6b27fe36
mov eax, 0xfffffffe
jmp 0x6b27f0c5
mov ebp, ebx
mov edi, dword [esp + 0x24]
mov esi, ecx
xor ebx, ebx
jmp 0x6b27f0e0
mov ebx, dword [esp + 0x24]
sub eax, edx
add eax, dword [ebx + 0x34]
jmp 0x6b27edbb
test bl, 0xf0
je 0x6b280701
mov ecx, edx
mov edx, dword [esp + 0x24]
sub esi, eax
shr dword [esp + 0x28], cl
mov dword [edx + 0x1bc4], eax
movzx eax, word [esp + 0x44]
mov dword [edx + 0x40], eax
test bl, 0x20
je 0x6b2808c4
mov eax, dword [esp + 0x24]
mov dword [eax + 0x1bc4], 0xffffffff
mov dword [eax], 0xb
mov eax, 0xb
jmp switch.0x6b27eb18
mov edx, eax
movzx eax, word [esp + 0x40]
and ebx, 0xf
mov dword [edx + 0x48], ebx
mov dword [edx], 0x17
mov dword [edx + 0x44], eax
jmp 0x6b27ed07
mov ebx, dword [esp + 0x2c]
lea ecx, [ebx + edx]
mov edx, ebx
lea esi, [esi]
add eax, 1
movzx ebx, byte [eax - 1]
add edx, 1
cmp edx, ecx
mov byte [edx - 1], bl
jne 0x6b280670
jmp 0x6b28029c
mov esi, dword [esp + 0x28]
mov dword [esp + 8], 2
mov eax, esi
mov byte [esp + 0x7c], al
mov eax, esi
mov esi, dword [esp + 0x24]
shr eax, 8
mov byte [esp + 0x7d], al
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x10]
mov ebx, eax
jmp 0x6b27f3cb
mov dword [esp + 0x28], ebx
mov ebx, ebp
mov ebp, edi
mov edi, dword [esp + 0x24]
jmp 0x6b27f0e0
mov esi, ecx
mov edi, edx
jmp 0x6b27fad7
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], str.incorrect_header_check
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
movzx ecx, word [esp + 0x44]
mov dword [esp + 0x44], ecx
lea ecx, [ebx + eax]
mov ebx, 1
shl ebx, cl
mov ecx, edx
sub ebx, 1
mov dword [esp + 0x4c], ebx
and ebx, dword [esp + 0x28]
shr ebx, cl
mov ecx, dword [esp + 0x40]
add ebx, dword [esp + 0x44]
lea edx, [ecx + ebx*4]
movzx ecx, word [edx + 2]
movzx ebx, byte [edx]
movzx edx, byte [edx + 1]
mov word [esp + 0x48], cx
lea ecx, [eax + edx]
cmp esi, ecx
mov dword [esp + 0x60], ecx
jae 0x6b2807af
test edi, edi
je 0x6b280050
mov ebx, dword [esp + 0x28]
jmp 0x6b28075f
test edi, edi
je 0x6b280865
add ebp, 1
movzx edx, byte [ebp - 1]
mov ecx, esi
add esi, 8
sub edi, 1
shl edx, cl
mov ecx, eax
add ebx, edx
mov edx, dword [esp + 0x4c]
and edx, ebx
shr edx, cl
mov ecx, dword [esp + 0x40]
add edx, dword [esp + 0x44]
lea edx, [ecx + edx*4]
movzx ecx, byte [edx]
mov byte [esp + 0x5c], cl
movzx ecx, word [edx + 2]
movzx edx, byte [edx + 1]
mov word [esp + 0x48], cx
lea ecx, [edx + eax]
cmp ecx, esi
ja 0x6b280757
mov dword [esp + 0x28], ebx
movzx ebx, byte [esp + 0x5c]
mov dword [esp + 0x60], ecx
mov ecx, eax
sub esi, eax
movzx eax, word [esp + 0x48]
shr dword [esp + 0x28], cl
sub esi, edx
mov ecx, edx
mov edx, dword [esp + 0x24]
shr dword [esp + 0x28], cl
test bl, bl
mov ecx, dword [esp + 0x60]
mov dword [edx + 0x40], eax
mov dword [edx + 0x1bc4], ecx
jne 0x6b280613
jmp 0x6b27eeb5
mov eax, dword [esp + 0x24]
cmp dword [esp + 0xa4], 6
mov dword [eax + 0x4c], 0x6b291d40
mov dword [eax + 0x54], 9
mov dword [eax + 0x50], 0x6b291cc0
mov dword [eax + 0x58], 5
mov dword [eax], 0x13
je 0x6b280eed
mov eax, 0x13
jmp 0x6b27ecc0
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], str.invalid_block_type
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp 0x6b27ecc0
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x24]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov dword [ebx + 0x18], eax
jmp 0x6b27fd61
mov dword [esp + 0x28], ebx
mov ebx, edi
mov edi, dword [esp + 0x24]
jmp 0x6b27f0e0
mov esi, dword [esp + 0x28]
mov dword [esp + 8], 4
mov eax, esi
mov byte [esp + 0x7c], al
mov eax, esi
shr eax, 8
mov byte [esp + 0x7d], al
mov eax, esi
shr eax, 0x10
mov byte [esp + 0x7e], al
mov eax, esi
mov esi, dword [esp + 0x24]
shr eax, 0x18
mov byte [esp + 0x7f], al
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x24]
jmp 0x6b27f2e7
test bl, 0x40
je 0x6b280aff
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], 0x6b291bb3
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov esi, dword [esp + 0x28]
mov dword [esp + 8], 2
mov eax, esi
mov byte [esp + 0x7c], al
mov eax, esi
mov esi, dword [esp + 0x24]
shr eax, 8
mov byte [esp + 0x7d], al
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov ebx, dword [esi + 0x10]
mov dword [esp + 0x28], 0
mov dword [esi + 0x18], eax
mov eax, ebx
xor esi, esi
and eax, 0x400
jmp 0x6b280020
mov esi, ecx
mov edi, edx
jmp 0x6b27fca0
mov edi, edx
jmp 0x6b27ebb6
lea edx, [eax + 2]
cmp esi, edx
jae 0x6b280985
test edi, edi
je 0x6b280865
mov ecx, esi
mov esi, eax
mov eax, edx
jmp 0x6b28096c
test edi, edi
je 0x6b2802b2
add ebp, 1
movzx edx, byte [ebp - 1]
sub edi, 1
shl edx, cl
add ecx, 8
add ebx, edx
cmp ecx, eax
jb 0x6b280964
mov eax, esi
mov esi, ecx
mov ecx, eax
sub esi, eax
mov eax, dword [esp + 0x44]
shr ebx, cl
test eax, eax
je 0x6b280eb2
mov eax, dword [esp + 0x24]
mov edx, ebx
sub esi, 2
mov ecx, dword [esp + 0x44]
and edx, 3
add edx, 3
mov dword [esp + 0x5c], edx
shr ebx, 2
movzx eax, word [eax + ecx*2 + 0x6e]
jmp 0x6b27f52a
mov dword [esp + 0x40], ebp
jmp 0x6b27ff55
mov esi, ecx
mov edi, edx
jmp 0x6b27ff55
mov edi, dword [esp + 0x24]
mov esi, ecx
xor ebx, ebx
mov ebp, dword [esp + 0x40]
jmp 0x6b27f0e0
mov edx, dword [esp + 0x40]
mov dword [esp + 0x28], esi
mov esi, ecx
mov ebp, edx
cmp eax, 0x12
mov ecx, dword [esp + 0x24]
lea edx, [eax + eax + 0x6b292540]
ja 0x6b280a20
lea esi, [esi]
movzx eax, word [edx]
add edx, 2
xor ebx, ebx
cmp edx, 0x6b292566
mov word [ecx + eax*2 + 0x70], bx
jne 0x6b280a00
mov eax, dword [esp + 0x24]
mov dword [eax + 0x68], 0x13
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
mov dword [eax + 0x54], 7
mov dword [eax + 0x6c], ebx
mov dword [eax + 0x4c], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], 0x13
mov dword [esp], 0
mov dword [esp + 0x14], ebx
mov ebx, eax
add eax, 0x54
mov dword [esp + 0x10], eax
mov eax, ebx
add eax, 0x6c
mov dword [esp + 0xc], eax
mov eax, ebx
add eax, 0x70
mov dword [esp + 4], eax
call fcn.6b282b00
test eax, eax
mov dword [esp + 0x3c], eax
je 0x6b280bb9
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], str.invalid_code_lengths_set
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
lea ecx, [eax + 3]
cmp esi, ecx
mov edx, ecx
jae 0x6b280ad4
test edi, edi
je 0x6b280865
mov ecx, esi
mov esi, eax
mov eax, edx
jmp 0x6b280abb
test edi, edi
je 0x6b2802b2
add ebp, 1
movzx edx, byte [ebp - 1]
sub edi, 1
shl edx, cl
add ecx, 8
add ebx, edx
cmp ecx, eax
jb 0x6b280ab3
mov eax, esi
mov esi, ecx
mov ecx, eax
shr ebx, cl
mov ecx, ebx
mov edx, ebx
and ecx, 7
lea ebx, [ecx + 3]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x5c], ebx
mov ebx, edx
mov edx, 0xfffffffd
sub edx, eax
xor eax, eax
shr ebx, 3
add esi, edx
jmp 0x6b27f52a
mov eax, dword [esp + 0x24]
and ebx, 0xf
mov dword [eax + 0x48], ebx
mov dword [eax], 0x15
jmp 0x6b27eed7
mov edx, ebp
jmp 0x6b27ec83
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6b280b32
mov edx, dword [esp + 0x28]
shr edx, 8
and edx, 1
mov dword [eax], edx
test dword [esp + 0x28], 0x200
jne 0x6b280ca7
mov eax, dword [esp + 0x24]
mov ebp, ebx
xor esi, esi
mov dword [esp + 0x28], 0
mov dword [eax], 2
jmp 0x6b27f295
test eax, eax
jne 0x6b280f72
mov dword [esp + 0x40], 0
jmp 0x6b27f630
sub edx, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call fcn.6b281810
jmp 0x6b27f9aa
mov ebx, edi
mov edi, dword [esp + 0x24]
mov dword [edi], 0x1c
mov dword [esp + 0x3c], 1
jmp 0x6b27f0e0
mov esi, ecx
mov edi, edx
jmp 0x6b27f969
mov eax, dword [esp + 0x68]
mov dword [esp + 0x44], eax
jmp 0x6b27f626
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], 0
mov dword [eax + 0x68], 0
mov edx, eax
mov dword [eax], 0x12
jmp 0x6b27f414
mov ebx, ebp
jmp 0x6b27fca0
mov ebx, ebp
jmp 0x6b27f78a
mov ebx, ebp
jmp 0x6b27f70a
mov esi, ecx
mov edi, edx
jmp 0x6b27f78a
mov esi, ecx
mov edi, edx
jmp 0x6b27f70a
mov edx, ebx
mov edi, dword [esp + 0x24]
mov esi, ecx
xor ebx, ebx
mov ebp, edx
jmp 0x6b27f0e0
mov ebp, ebx
mov edi, dword [esp + 0x24]
xor ebx, ebx
jmp 0x6b27f0e0
mov ebp, ebx
mov edi, dword [esp + 0x24]
mov esi, ecx
xor ebx, ebx
jmp 0x6b27f0e0
mov eax, dword [esp + 0x24]
mov dword [esp + 0x28], ebx
cmp word [eax + 0x270], 0
jne 0x6b280e0d
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x18], str.invalid_code____missing_end_of_block
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov ebp, ebx
mov edi, dword [esp + 0x24]
xor ebx, ebx
jmp 0x6b27f0e0
mov ebx, edi
mov edx, dword [esp + 0x2c]
mov edi, eax
mov eax, dword [esp + 0xa0]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x34]
mov dword [eax], ebp
mov dword [eax + 4], ebx
mov dword [eax + 0x10], edx
mov eax, dword [esp + 0x28]
mov dword [edi + 0x3c], esi
mov dword [edi + 0x38], eax
mov eax, 2
jmp 0x6b27f0c5
mov ebx, ebp
jmp 0x6b27f969
mov esi, dword [esp + 0x28]
mov dword [esp + 8], 2
mov eax, esi
mov byte [esp + 0x7c], al
mov eax, esi
mov esi, dword [esp + 0x24]
shr eax, 8
mov byte [esp + 0x7d], al
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x18]
mov dword [esp], eax
call fcn.6b281ea0
mov dword [esi + 0x18], eax
jmp 0x6b280b40
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x44], eax
jmp 0x6b27f630
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x44], eax
jmp 0x6b27f626
mov esi, ecx
mov edi, dword [esp + 0x40]
jmp 0x6b27fb65
mov ebp, ebx
mov edi, dword [esp + 0x24]
mov esi, ecx
xor ebx, ebx
jmp 0x6b27f0e0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.6b281ea0
mov esi, dword [esp + 0x24]
lea edx, [esp + 0x7c]
mov byte [esp + 0x7c], 0x1f
mov byte [esp + 0x7d], 0x8b
mov dword [esi + 0x18], eax
mov dword [esp + 8], 2
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.6b281ea0
mov dword [esi], 1
mov dword [esp + 0x28], 0
mov dword [esi + 0x18], eax
mov eax, 1
xor esi, esi
jmp switch.0x6b27eb18
mov eax, dword [esp + 0x24]
shr dword [esp + 0x28], 4
mov ecx, dword [esp + 0x28]
mov eax, dword [eax + 0x24]
and ecx, 0xf
add ecx, 8
test eax, eax
jne 0x6b280e85
mov eax, dword [esp + 0x24]
mov dword [eax + 0x24], ecx
mov esi, dword [esp + 0x24]
mov eax, 1
shl eax, cl
mov dword [esi + 0x14], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.6b281810
mov ebx, dword [esp + 0xa0]
mov dword [esi + 0x18], eax
mov dword [ebx + 0x30], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x28], 0
and eax, 0x200
cmp eax, 1
sbb eax, eax
and eax, 2
add eax, 9
mov dword [esi], eax
xor esi, esi
jmp 0x6b27eb0f
mov ebx, edi
xor esi, esi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x28], 0
jmp 0x6b280b90
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
mov dword [eax + 0x54], 9
mov dword [eax + 0x6c], ebx
mov dword [eax + 0x4c], ebx
lea ebx, [eax + 0x6c]
mov dword [esp + 0x14], edx
mov edx, eax
add eax, 0x54
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], ebx
mov dword [esp], 1
mov dword [esp + 8], eax
mov eax, edx
add eax, 0x70
mov dword [esp + 4], eax
call fcn.6b282b00
test eax, eax
mov dword [esp + 0x3c], eax
je 0x6b280f00
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0xa0]
mov dword [ebx + 0x18], str.invalid_literal_lengths_set
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
cmp ecx, eax
jbe 0x6b280d9c
mov eax, dword [esp + 0xa0]
sub esi, 4
mov dword [eax + 0x18], str.invalid_window_size
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x28], ebx
mov dword [eax + 0x18], str.invalid_bit_length_repeat
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov ebx, edi
xor esi, esi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x28], 0
jmp 0x6b27f0e0
mov ebx, edi
sub esi, 3
mov edi, eax
mov ebp, edx
shr dword [esp + 0x28], 3
jmp 0x6b27f0e0
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x54]
mov eax, dword [edx + 0x6c]
mov dword [edx + 0x58], 6
mov dword [edx + 0x50], eax
mov eax, edx
add eax, 0x58
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebx
mov eax, dword [edx + 0x64]
mov dword [esp + 8], eax
mov eax, dword [edx + 0x60]
mov dword [esp], 2
lea eax, [edx + eax*2 + 0x70]
mov dword [esp + 4], eax
call fcn.6b282b00
test eax, eax
mov dword [esp + 0x3c], eax
je 0x6b27edc8
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x18], str.invalid_distances_set
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d
mov eax, 0x1d
jmp switch.0x6b27eb18
mov dword [esp + 0x40], eax
jmp 0x6b27f56f