Function at 0x63201e70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xd8
mov rbx, rcx
test edx, edx
jne 0x63203c10
mov qword [rbx + 0x10], 0
xor eax, eax
xor r8d, r8d
nop dword [rax + rax]
test r8d, r8d
jg 0x63201ef9
mov r14, qword [rbx + 8]
mov r9, qword [rbx]
mov ecx, r8d
cmp r14, r9
jbe 0x63201edb
lea r15, [r9 + 1]
mov qword [rbx], r15
movzx r9d, byte [r9]
shl r9d, cl
add ecx, 8
or eax, r9d
mov dword [rbx + 0x10], ecx
mov dword [rbx + 0x14], eax
cmp ecx, 0x18
jg 0x63201ee9
mov r9, r15
cmp r14, r9
ja 0x63201eb4
add ecx, 8
mov dword [rbx + 0x14], eax
mov dword [rbx + 0x10], ecx
cmp ecx, 0x18
jle 0x63201eaf
mov esi, 0x18
sub esi, r8d
and esi, 0xfffffff8
lea r8d, [r8 + rsi + 8]
mov edi, eax
lea edx, [r8 - 1]
shr eax, 1
and edi, 1
mov dword [rbx + 0x14], eax
mov dword [rsp + 0x28], edi
mov dword [rbx + 0x10], edx
cmp edx, 1
jg 0x63201f6a
mov rbp, qword [rbx + 8]
mov r12, qword [rbx]
cmp rbp, r12
jbe 0x63201f4a
lea r10, [r12 + 1]
mov ecx, edx
add edx, 8
mov qword [rbx], r10
movzx r11d, byte [r12]
mov dword [rbx + 0x10], edx
shl r11d, cl
or eax, r11d
mov dword [rbx + 0x14], eax
cmp edx, 0x18
jg 0x63201f58
mov r12, r10
cmp rbp, r12
ja 0x63201f1f
add edx, 8
mov dword [rbx + 0x14], eax
mov dword [rbx + 0x10], edx
cmp edx, 0x18
jle 0x63201f1a
mov r13d, 0x19
sub r13d, r8d
and r13d, 0xfffffff8
lea edx, [r8 + r13 + 7]
mov r14d, eax
lea r13d, [rdx - 2]
shr r14d, 2
mov dword [rbx + 0x10], r13d
mov dword [rbx + 0x14], r14d
and eax, 3
je 0x63202638
cmp eax, 3
je 0x63203af0
cmp eax, 1
jne 0x63202e40
cmp byte [0x6327369f], 0
je 0x63203720
lea rdi, [rbx + 0x3c]
mov r12d, ebx
lea r9, [0x63273540]
xor eax, eax
and rdi, 0xfffffffffffffff8
mov r13, r9
mov qword [rsp + 0x80], 0
lea r8, [rsp + 0x80]
sub r12d, edi
mov qword [rsp + 0x88], 0
lea r14, [r9 + 0x120]
lea ecx, [r12 + 0x434]
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
shr ecx, 3
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 0
mov dword [rsp + 0xc0], 0
mov qword [rbx + 0x34], 0
mov qword [rbx + 0x42c], 0
rep stosq qword [rdi], rax
movzx edx, byte [r13]
movzx r15d, byte [r13 + 1]
add r13, 8
movzx esi, byte [r13 - 6]
movzx ebp, byte [r13 - 5]
movzx r10d, byte [r13 - 4]
movzx r11d, byte [r13 - 3]
movzx r12d, byte [r13 - 2]
movzx ecx, byte [r13 - 1]
add dword [rsp + rdx*4 + 0x80], 1
add dword [rsp + r15*4 + 0x80], 1
add dword [rsp + rsi*4 + 0x80], 1
add dword [rsp + rbp*4 + 0x80], 1
add dword [rsp + r10*4 + 0x80], 1
add dword [rsp + r11*4 + 0x80], 1
add dword [rsp + r12*4 + 0x80], 1
add dword [rsp + rcx*4 + 0x80], 1
cmp r14, r13
jne 0x6320205a
mov ecx, dword [rsp + 0x84]
mov dword [rsp + 0x80], 0
cmp ecx, 2
jg 0x63203608
mov edx, dword [rsp + 0x88]
cmp edx, 4
jg 0x63203608
mov r10d, dword [rsp + 0x8c]
cmp r10d, 8
jg 0x63203608
mov r11d, dword [rsp + 0x90]
cmp r11d, 0x10
jg 0x63203608
mov edi, dword [rsp + 0x94]
cmp edi, 0x20
jg 0x63203608
mov esi, dword [rsp + 0x98]
cmp esi, 0x40
jg 0x63203608
mov r12d, dword [rsp + 0x9c]
cmp r12d, 0x80
jg 0x63203608
mov r13d, dword [rsp + 0xa0]
cmp r13d, 0x100
jg 0x63203608
mov ebp, dword [rsp + 0xa4]
cmp ebp, 0x200
jg 0x63203608
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x2c], eax
cmp eax, 0x400
jg 0x63203608
mov r14d, dword [rsp + 0xac]
mov dword [rsp + 0x30], r14d
cmp r14d, 0x800
jg 0x63203608
mov r14d, dword [rsp + 0xb0]
cmp r14d, 0x1000
jg 0x63203608
mov r15d, dword [rsp + 0xb4]
mov dword [rsp + 0x34], r15d
cmp r15d, 0x2000
jg 0x63203608
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x38], eax
cmp eax, 0x4000
jg 0x63203608
mov r15d, dword [rsp + 0xbc]
mov dword [rsp + 0x3c], r15d
cmp r15d, 0x8000
jg 0x63203608
xor eax, eax
xor r15d, r15d
mov dword [rsp + 0x44], 0
mov word [rbx + 0x436], ax
mov eax, ecx
shl eax, 0xf
mov word [rbx + 0x49a], r15w
mov dword [rbx + 0x458], eax
lea eax, [rcx + rcx]
mov dword [rsp + 0x48], eax
mov word [rbx + 0x438], ax
add eax, edx
mov word [rbx + 0x49c], cx
cmp eax, 4
jle 0x63202255
test edx, edx
jne 0x632036c0
mov r15d, eax
add edx, ecx
add eax, eax
shl r15d, 0xe
mov dword [rsp + 0x4c], eax
mov word [rbx + 0x43a], ax
add eax, r10d
mov dword [rbx + 0x45c], r15d
mov word [rbx + 0x49e], dx
test r10d, r10d
je 0x6320228a
cmp eax, 8
jg 0x632036c0
mov ecx, eax
add eax, eax
add edx, r10d
mov dword [rsp + 0x50], eax
shl ecx, 0xd
mov word [rbx + 0x43c], ax
add eax, r11d
mov dword [rbx + 0x460], ecx
mov word [rbx + 0x4a0], dx
cmp eax, 0x10
jle 0x632022bd
test r11d, r11d
jne 0x632036c0
mov r10d, eax
add eax, eax
add edx, r11d
mov dword [rsp + 0x54], eax
shl r10d, 0xc
mov word [rbx + 0x43e], ax
add eax, edi
mov dword [rbx + 0x464], r10d
mov word [rbx + 0x4a2], dx
cmp eax, 0x20
jle 0x632022f1
test edi, edi
jne 0x632036c0
mov r11d, eax
add edx, edi
add eax, eax
shl r11d, 0xb
mov dword [rsp + 0x58], eax
mov word [rbx + 0x440], ax
add eax, esi
mov dword [rbx + 0x468], r11d
mov word [rbx + 0x4a4], dx
test esi, esi
je 0x63202324
cmp eax, 0x40
jg 0x632036c0
mov edi, eax
add eax, eax
add edx, esi
mov dword [rsp + 0x5c], eax
shl edi, 0xa
mov word [rbx + 0x442], ax
add eax, r12d
mov dword [rbx + 0x46c], edi
mov word [rbx + 0x4a6], dx
cmp eax, 0x80
jle 0x63202358
test r12d, r12d
jne 0x632036c0
mov esi, eax
add eax, eax
add edx, r12d
mov dword [rsp + 0x60], eax
shl esi, 9
mov word [rbx + 0x444], ax
add eax, r13d
mov dword [rbx + 0x470], esi
mov word [rbx + 0x4a8], dx
cmp eax, 0x100
jle 0x6320238d
test r13d, r13d
jne 0x632036c0
mov r12d, eax
add edx, r13d
add eax, eax
shl r12d, 8
mov dword [rsp + 0x64], eax
mov word [rbx + 0x446], ax
add eax, ebp
mov dword [rbx + 0x474], r12d
mov word [rbx + 0x4aa], dx
test ebp, ebp
je 0x632023c3
cmp eax, 0x200
jg 0x632036c0
add edx, ebp
mov ebp, dword [rsp + 0x2c]
mov r13d, eax
add eax, eax
mov dword [rsp + 0x68], eax
shl r13d, 7
mov word [rbx + 0x448], ax
add eax, ebp
mov dword [rbx + 0x478], r13d
mov word [rbx + 0x4ac], dx
cmp eax, 0x400
jle 0x632023fc
test ebp, ebp
jne 0x632036c0
mov ecx, dword [rsp + 0x30]
mov r15d, eax
add eax, eax
add edx, dword [rsp + 0x2c]
mov dword [rsp + 0x6c], eax
shl r15d, 6
mov word [rbx + 0x44a], ax
add eax, ecx
mov dword [rbx + 0x47c], r15d
mov word [rbx + 0x4ae], dx
cmp eax, 0x800
jle 0x63202437
test ecx, ecx
jne 0x632036c0
mov r10d, eax
add edx, dword [rsp + 0x30]
add eax, eax
shl r10d, 5
mov dword [rsp + 0x70], eax
mov word [rbx + 0x44c], ax
add eax, r14d
mov dword [rbx + 0x480], r10d
mov word [rbx + 0x4b0], dx
test r14d, r14d
je 0x63202470
cmp eax, 0x1000
jg 0x632036c0
mov r11d, eax
add edx, r14d
mov r14d, dword [rsp + 0x34]
add eax, eax
shl r11d, 4
mov dword [rsp + 0x74], eax
mov word [rbx + 0x44e], ax
add eax, r14d
mov dword [rbx + 0x484], r11d
mov word [rbx + 0x4b2], dx
test r14d, r14d
je 0x632024ad
cmp eax, 0x2000
jg 0x632036c0
mov esi, dword [rsp + 0x38]
lea edi, [rax*8]
add edx, dword [rsp + 0x34]
add eax, eax
mov dword [rsp + 0x78], eax
mov word [rbx + 0x450], ax
add eax, esi
mov dword [rbx + 0x488], edi
mov word [rbx + 0x4b4], dx
test esi, esi
je 0x632024e7
cmp eax, 0x4000
jg 0x632036c0
add edx, dword [rsp + 0x38]
lea r12d, [rax*4]
add eax, eax
mov word [rbx + 0x4b6], dx
mov edx, dword [rsp + 0x3c]
mov dword [rsp + 0x7c], eax
mov word [rbx + 0x452], ax
add eax, edx
mov dword [rbx + 0x48c], r12d
cmp eax, 0x8000
jle 0x63202523
test edx, edx
jne 0x632036c0
add eax, eax
xor r15d, r15d
mov dword [rbx + 0x494], 0x10000
mov r14d, 1
mov dword [rbx + 0x490], eax
mov r13d, 0x10
jmp 0x6320256a
add r10d, 1
mov dword [rsp + r11*4 + 0x40], r10d
add r15, 1
cmp r15, 0x120
je 0x632027f8
movzx ebp, byte [r9 + r15]
mov ecx, ebp
test ebp, ebp
je 0x63202559
movzx eax, bpl
movsxd r11, ebp
lea rsi, [rbx + rax*2]
mov r10d, dword [rsp + r11*4 + 0x40]
movzx r12d, word [rsi + 0x434]
movzx edi, word [rsi + 0x498]
mov eax, r10d
sub eax, r12d
add eax, edi
cdqe
mov byte [rbx + rax + 0x4b8], bpl
mov word [rbx + rax*2 + 0x5d8], r15w
cmp ebp, 9
jg 0x63202550
mov esi, r10d
lea r12d, [r10 + r10]
mov edx, ebp
sar esi, 1
and r12d, 0xaaaa
shl edx, 9
and esi, 0x5555
or edx, r15d
or esi, r12d
mov eax, esi
shl esi, 2
sar eax, 2
and esi, 0xcccc
and eax, 0x3333
or esi, eax
mov edi, esi
shl esi, 4
sar edi, 4
and esi, 0xf0f0
and edi, 0xf0f
or edi, esi
mov esi, r14d
mov eax, edi
shl edi, 8
shl esi, cl
movzx r12d, di
sar eax, 8
mov ecx, r13d
or eax, r12d
sub ecx, ebp
movsxd rdi, esi
sar eax, cl
cdqe
mov word [rbx + rax*2 + 0x34], dx
add rax, rdi
cmp eax, 0x1ff
jle 0x63202620
jmp 0x63202550
mov ebp, r13d
and ebp, 7
jne 0x632038a8
test r13d, r13d
jle 0x63203924
mov edx, r14d
lea r12d, [r13 - 8]
mov byte [rsp + 0x80], r14b
shr edx, 8
test r12d, r12d
jle 0x63203968
mov byte [rsp + 0x81], dl
lea r9d, [r13 - 0x10]
mov edx, r14d
shr edx, 0x10
test r9d, r9d
jle 0x63203968
mov byte [rsp + 0x82], dl
shr r14d, 0x18
cmp r13d, 0x18
jle 0x63203b00
mov byte [rsp + 0x83], r14b
lea r14d, [r13 - 1]
mov ebp, 1
mov dword [rbx + 0x14], eax
mov eax, 0
shr r14d, 3
test r13d, r13d
lea edi, [r14 + 1]
cmovg ebp, edi
neg r14d
shl r14d, 3
test r13d, r13d
cmovle r14d, eax
add r14d, r12d
mov dword [rbx + 0x10], r14d
cmp ebp, 3
jg 0x63202785
mov rsi, qword [rbx + 8]
mov rcx, qword [rbx]
lea r12d, [rbp + 1]
xor r10d, r10d
cmp rsi, rcx
jbe 0x632026fd
lea r15, [rcx + 1]
mov qword [rbx], r15
movzx r10d, byte [rcx]
mov rcx, r15
movsxd r11, ebp
mov byte [rsp + r11 + 0x80], r10b
cmp r12d, 4
je 0x63202785
lea eax, [r12 + 1]
xor r9d, r9d
cmp rcx, rsi
jae 0x63202729
lea rdx, [rcx + 1]
mov qword [rbx], rdx
movzx r9d, byte [rcx]
mov rcx, rdx
movsxd r14, r12d
mov byte [rsp + r14 + 0x80], r9b
cmp eax, 4
je 0x63202785
xor edi, edi
cmp eax, 2
setne dil
add edi, 3
cmp rsi, rcx
jbe 0x632039f0
lea rbp, [rcx + 1]
cdqe
mov qword [rbx], rbp
movzx r15d, byte [rcx]
mov byte [rsp + rax + 0x80], r15b
cmp edi, 4
je 0x63202785
cmp rsi, rbp
jbe 0x63203a03
lea rsi, [rcx + 2]
mov qword [rbx], rsi
movzx r10d, byte [rcx + 1]
mov byte [rsp + 0x83], r10b
movzx r11d, byte [rsp + 0x81]
movzx ecx, byte [rsp + 0x82]
movzx r8d, byte [rsp + 0x80]
movzx r13d, byte [rsp + 0x83]
shl r11d, 8
add r11d, r8d
shl r13d, 8
mov r12d, r11d
add r13d, ecx
xor r12d, 0xffff
cmp r13d, r12d
je 0x632036f0
lea r12, str.zlib_corrupt
xor r13d, r13d
mov qword [0x63273660], r12
mov eax, r13d
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdi, [rbx + 0x818]
mov ecx, pe_nt_image_headers64
xor eax, eax
mov qword [r8], 0
rep stosq qword [rdi], rax
mov qword [r8 + 8], 0
mov qword [r8 + 0x10], 0
mov qword [r8 + 0x18], 0
mov qword [r8 + 0x20], 0
mov qword [r8 + 0x28], 0
mov qword [r8 + 0x30], 0
mov qword [r8 + 0x38], 0
mov dword [r8 + 0x40], 0
lea r8, [0x63273680]
lea r9, [r8 + 0x20]
movzx r15d, byte [r8]
movzx r14d, byte [r8 + 1]
add r8, 8
movzx r13d, byte [r8 - 6]
movzx ebp, byte [r8 - 5]
movzx r11d, byte [r8 - 4]
movzx r10d, byte [r8 - 3]
movzx edx, byte [r8 - 2]
movzx r12d, byte [r8 - 1]
add dword [rsp + r15*4 + 0x80], 1
add dword [rsp + r14*4 + 0x80], 1
add dword [rsp + r13*4 + 0x80], 1
add dword [rsp + rbp*4 + 0x80], 1
add dword [rsp + r11*4 + 0x80], 1
add dword [rsp + r10*4 + 0x80], 1
add dword [rsp + rdx*4 + 0x80], 1
add dword [rsp + r12*4 + 0x80], 1
cmp r9, r8
jne 0x6320285b
mov ecx, dword [rsp + 0x84]
mov dword [rsp + 0x80], 0
cmp ecx, 2
jg 0x63203608
mov edx, dword [rsp + 0x88]
cmp edx, 4
jg 0x63203608
mov r10d, dword [rsp + 0x8c]
cmp r10d, 8
jg 0x63203608
mov r8d, dword [rsp + 0x90]
cmp r8d, 0x10
jg 0x63203608
mov r9d, dword [rsp + 0x94]
cmp r9d, 0x20
jg 0x63203608
mov r11d, dword [rsp + 0x98]
cmp r11d, 0x40
jg 0x63203608
mov esi, dword [rsp + 0x9c]
cmp esi, 0x80
jg 0x63203608
mov edi, dword [rsp + 0xa0]
cmp edi, 0x100
jg 0x63203608
mov r12d, dword [rsp + 0xa4]
cmp r12d, 0x200
jg 0x63203608
mov ebp, dword [rsp + 0xa8]
cmp ebp, 0x400
jg 0x63203608
mov eax, dword [rsp + 0xac]
mov dword [rsp + 0x2c], eax
cmp eax, 0x800
jg 0x63203608
mov r13d, dword [rsp + 0xb0]
cmp r13d, 0x1000
jg 0x63203608
mov r14d, dword [rsp + 0xb4]
cmp r14d, 0x2000
jg 0x63203608
mov r15d, dword [rsp + 0xb8]
mov dword [rsp + 0x30], r15d
cmp r15d, 0x4000
jg 0x63203608
mov eax, dword [rsp + 0xbc]
mov dword [rsp + 0x34], eax
cmp eax, 0x8000
jg 0x63203608
xor r15d, r15d
xor eax, eax
mov dword [rsp + 0x44], 0
mov word [rbx + 0xc1a], r15w
mov r15d, ecx
mov word [rbx + 0xc7e], ax
shl r15d, 0xf
lea eax, [rcx + rcx]
mov dword [rsp + 0x48], eax
mov word [rbx + 0xc1c], ax
add eax, edx
mov dword [rbx + 0xc3c], r15d
mov word [rbx + 0xc80], cx
test edx, edx
je 0x63202a50
cmp eax, 4
jg 0x632036c0
mov r15d, eax
add eax, eax
add edx, ecx
mov dword [rsp + 0x4c], eax
shl r15d, 0xe
mov word [rbx + 0xc1e], ax
add eax, r10d
mov dword [rbx + 0xc40], r15d
mov word [rbx + 0xc82], dx
cmp eax, 8
jle 0x63202a85
test r10d, r10d
jne 0x632036c0
mov ecx, eax
add edx, r10d
add eax, eax
shl ecx, 0xd
mov dword [rsp + 0x50], eax
mov word [rbx + 0xc20], ax
add eax, r8d
mov dword [rbx + 0xc44], ecx
mov word [rbx + 0xc84], dx
test r8d, r8d
je 0x63202ab8
cmp eax, 0x10
jg 0x632036c0
mov r10d, eax
add edx, r8d
add eax, eax
shl r10d, 0xc
mov dword [rsp + 0x54], eax
mov word [rbx + 0xc22], ax
add eax, r9d
mov dword [rbx + 0xc48], r10d
mov word [rbx + 0xc86], dx
test r9d, r9d
je 0x63202aee
cmp eax, 0x20
jg 0x632036c0
mov r8d, eax
add edx, r9d
add eax, eax
shl r8d, 0xb
mov dword [rsp + 0x58], eax
mov word [rbx + 0xc24], ax
add eax, r11d
mov dword [rbx + 0xc4c], r8d
mov word [rbx + 0xc88], dx
test r11d, r11d
je 0x63202b24
cmp eax, 0x40
jg 0x632036c0
mov r9d, eax
add edx, r11d
add eax, eax
shl r9d, 0xa
mov dword [rsp + 0x5c], eax
mov word [rbx + 0xc26], ax
add eax, esi
mov dword [rbx + 0xc50], r9d
mov word [rbx + 0xc8a], dx
test esi, esi
je 0x63202b5a
cmp eax, 0x80
jg 0x632036c0
mov r11d, eax
add edx, esi
add eax, eax
shl r11d, 9
mov dword [rsp + 0x60], eax
mov word [rbx + 0xc28], ax
add eax, edi
mov dword [rbx + 0xc54], r11d
mov word [rbx + 0xc8c], dx
test edi, edi
je 0x63202b8f
cmp eax, 0x100
jg 0x632036c0
mov esi, eax
add eax, eax
add edx, edi
mov dword [rsp + 0x64], eax
shl esi, 8
mov word [rbx + 0xc2a], ax
add eax, r12d
mov dword [rbx + 0xc58], esi
mov word [rbx + 0xc8e], dx
cmp eax, 0x200
jle 0x63202bc3
test r12d, r12d
jne 0x632036c0
mov edi, eax
add edx, r12d
add eax, eax
shl edi, 7
mov dword [rsp + 0x68], eax
mov word [rbx + 0xc2c], ax
add eax, ebp
mov dword [rbx + 0xc5c], edi
mov word [rbx + 0xc90], dx
test ebp, ebp
je 0x63202bf6
cmp eax, 0x400
jg 0x632036c0
add edx, ebp
mov ebp, dword [rsp + 0x2c]
mov r12d, eax
add eax, eax
mov dword [rsp + 0x6c], eax
shl r12d, 6
mov word [rbx + 0xc2e], ax
add eax, ebp
mov dword [rbx + 0xc60], r12d
mov word [rbx + 0xc92], dx
cmp eax, 0x800
jle 0x63202c2f
test ebp, ebp
jne 0x632036c0
mov r15d, eax
add edx, dword [rsp + 0x2c]
add eax, eax
shl r15d, 5
mov dword [rsp + 0x70], eax
mov word [rbx + 0xc30], ax
add eax, r13d
mov dword [rbx + 0xc64], r15d
mov word [rbx + 0xc94], dx
test r13d, r13d
je 0x63202c68
cmp eax, 0x1000
jg 0x632036c0
mov ecx, eax
add edx, r13d
add eax, eax
shl ecx, 4
mov dword [rsp + 0x74], eax
mov word [rbx + 0xc32], ax
add eax, r14d
mov dword [rbx + 0xc68], ecx
mov word [rbx + 0xc96], dx
test r14d, r14d
je 0x63202c9d
cmp eax, 0x2000
jg 0x632036c0
add edx, r14d
mov r14d, dword [rsp + 0x30]
lea r13d, [rax*8]
add eax, eax
mov dword [rsp + 0x78], eax
mov word [rbx + 0xc34], ax
add eax, r14d
mov dword [rbx + 0xc6c], r13d
mov word [rbx + 0xc98], dx
cmp eax, 0x4000
jle 0x63202cdb
test r14d, r14d
jne 0x632036c0
add edx, dword [rsp + 0x30]
lea r10d, [rax*4]
add eax, eax
mov word [rbx + 0xc9a], dx
mov edx, dword [rsp + 0x34]
mov dword [rsp + 0x7c], eax
mov word [rbx + 0xc36], ax
add eax, edx
mov dword [rbx + 0xc70], r10d
cmp eax, 0x8000
jle 0x63202d17
test edx, edx
jne 0x632036c0
add eax, eax
xor r15d, r15d
mov esi, 1
mov r11d, 0x10
mov dword [rbx + 0xc74], eax
mov dword [rbx + 0xc78], 0x10000
jmp 0x63202d57
add r8d, 1
mov dword [rsp + r9*4 + 0x40], r8d
add r15, 1
cmp r15, 0x20
je 0x63202e50
lea rax, [0x63273680]
movzx r13d, byte [rax + r15]
mov ecx, r13d
test r13d, r13d
je 0x63202d49
movsxd r9, r13d
movzx edi, r13b
lea r12, [rbx + rdi*2]
mov r8d, dword [rsp + r9*4 + 0x40]
movzx ebp, word [r12 + 0xc18]
movzx r14d, word [r12 + 0xc7c]
mov eax, r8d
sub eax, ebp
add eax, r14d
cdqe
mov byte [rbx + rax + 0xc9c], r13b
mov word [rbx + rax*2 + 0xdbc], r15w
cmp r13d, 9
jg 0x63202d40
mov edx, r8d
lea edi, [r8 + r8]
mov r10d, r13d
sar edx, 1
and edi, 0xaaaa
shl r10d, 9
and edx, 0x5555
or r10d, r15d
or edx, edi
mov r12d, edx
shl edx, 2
sar r12d, 2
and edx, 0xcccc
and r12d, 0x3333
or r12d, edx
mov edx, esi
mov ebp, r12d
shl r12d, 4
sar ebp, 4
and r12d, 0xf0f0
shl edx, cl
mov ecx, r11d
and ebp, 0xf0f
sub ecx, r13d
movsxd rdi, edx
or ebp, r12d
mov eax, ebp
shl ebp, 8
sar eax, 8
movzx r14d, bp
or eax, r14d
sar eax, cl
cdqe
nop dword [rax + rax]
mov word [rbx + rax*2 + 0x818], r10w
add rax, rdi
cmp eax, 0x1ff
jle 0x63202e28
jmp 0x63202d40
mov rcx, rbx
call fcn.631e3880
test eax, eax
je 0x63203af0
mov r9, qword [rbx + 0x18]
lea rdi, [0x632bdda0]
lea rsi, [0x63286040]
mov r8d, dword [rbx + 0x10]
mov r15d, dword [rbx + 0x14]
cmp r8d, 0xf
jg 0x63202ec8
mov r11, qword [rbx + 8]
mov r10, qword [rbx]
mov ecx, r8d
cmp r11, r10
jbe 0x63202ea7
lea r13, [r10 + 1]
mov qword [rbx], r13
movzx r10d, byte [r10]
shl r10d, cl
add ecx, 8
or r15d, r10d
mov dword [rbx + 0x10], ecx
mov dword [rbx + 0x14], r15d
cmp ecx, 0x18
jg 0x63202eb6
mov r10, r13
cmp r11, r10
ja 0x63202e7f
add ecx, 8
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], ecx
cmp ecx, 0x18
jle 0x63202e7a
mov r12d, 0x18
sub r12d, r8d
and r12d, 0xfffffff8
lea r8d, [r8 + r12 + 8]
mov ebp, r15d
and ebp, 0x1ff
movzx ecx, word [rbx + rbp*2 + 0x34]
mov ebp, ecx
test ecx, ecx
je 0x63203340
sar ecx, 9
and ebp, 0x1ff
shr r15d, cl
sub r8d, ecx
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], r8d
cmp ebp, 0xff
jg 0x63202f70
mov r14, qword [rbx + 0x28]
cmp r14, r9
ja 0x63202f63
mov r8d, dword [rbx + 0x30]
mov qword [rbx + 0x18], r9
test r8d, r8d
je 0x63203400
mov r15, qword [rbx + 0x20]
sub r9, r15
sub r14, r15
mov r13, r9
mov eax, r14d
cmp r9d, r14d
jl 0x63202f37
nop
add eax, eax
cmp r9d, eax
jge 0x63202f30
movsxd r12, eax
mov rcx, r15
mov rdx, r12
call sub.msvcrt.dll_realloc
test rax, rax
je 0x63203d20
movsxd r9, r13d
mov qword [rbx + 0x20], rax
add r9, rax
add rax, r12
mov qword [rbx + 0x18], r9
mov qword [rbx + 0x28], rax
mov byte [r9], bpl
add r9, 1
jmp 0x63202e62
cmp ebp, 0x100
je 0x63203ca0
sub ebp, 0x101
lea r10, [0x632bdc80]
movsxd r13, ebp
mov eax, dword [rdi + r13*4]
mov r12d, dword [r10 + r13*4]
test eax, eax
jne 0x632034d8
cmp r8d, 0xf
jg 0x63202ff7
mov rax, qword [rbx + 8]
mov r10, qword [rbx]
mov ecx, r8d
cmp rax, r10
jbe 0x63202fd8
lea r11, [r10 + 1]
mov qword [rbx], r11
movzx edx, byte [r10]
shl edx, cl
add ecx, 8
or r15d, edx
mov dword [rbx + 0x10], ecx
mov dword [rbx + 0x14], r15d
cmp ecx, 0x18
jg 0x63202fe7
mov r10, r11
cmp rax, r10
ja 0x63202fb1
add ecx, 8
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], ecx
cmp ecx, 0x18
jle 0x63202fac
mov ebp, 0x18
sub ebp, r8d
and ebp, 0xfffffff8
lea r8d, [r8 + rbp + 8]
mov r13d, r15d
and r13d, 0x1ff
movzx ecx, word [rbx + r13*2 + 0x818]
mov ebp, ecx
test ecx, ecx
je 0x63203420
sar ecx, 9
and ebp, 0x1ff
shr r15d, cl
sub r8d, ecx
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], r8d
movsxd r14, ebp
lea rax, [0x632bdbe0]
mov r10d, dword [rax + r14*4]
mov r13d, dword [rsi + r14*4]
test r10d, r10d
jne 0x63203570
mov rcx, qword [rbx + 0x20]
mov r14, r9
movsxd r15, r13d
sub r14, rcx
cmp r14, r15
jl 0x63203ce0
movsxd rdx, r12d
mov r10, qword [rbx + 0x28]
add rdx, r9
cmp r10, rdx
jae 0x632030bf
mov qword [rbx + 0x18], r9
mov r9d, dword [rbx + 0x30]
test r9d, r9d
je 0x63203400
sub r10, rcx
lea ebp, [r12 + r14]
mov eax, r10d
cmp r10d, ebp
jge 0x63203096
nop dword [rax + rax]
add eax, eax
cmp eax, ebp
jl 0x63203090
movsxd rbp, eax
mov rdx, rbp
call sub.msvcrt.dll_realloc
test rax, rax
je 0x63203d20
movsxd r9, r14d
mov qword [rbx + 0x20], rax
add r9, rax
add rax, rbp
mov qword [rbx + 0x18], r9
mov qword [rbx + 0x28], rax
mov r14, r9
sub r14, r15
cmp r13d, 1
je 0x63203620
test r12d, r12d
je 0x63202e62
mov r11d, 0x10
lea r8, [r9 + 0x10]
lea r13d, [r12 - 1]
sub r11, r15
test r11, r11
setle cl
cmp r14, r8
setae r15b
or cl, r15b
je 0x63203b10
cmp r13d, 0xe
jbe 0x63203b10
mov r10d, r12d
xor eax, eax
shr r10d, 4
shl r10, 4
lea rdx, [r10 - 0x10]
shr rdx, 4
add rdx, 1
and edx, 7
je 0x632031bd
cmp rdx, 1
je 0x632031a9
cmp rdx, 2
je 0x6320319a
cmp rdx, 3
je 0x6320318b
cmp rdx, 4
je 0x6320317c
cmp rdx, 5
je 0x6320316d
cmp rdx, 6
je 0x6320315e
movdqu xmm4, xmmword [r14]
mov eax, 0x10
movups xmmword [r9], xmm4
movdqu xmm3, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm3
add rax, 0x10
movdqu xmm2, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm2
add rax, 0x10
movdqu xmm0, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm0
add rax, 0x10
movdqu xmm1, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm1
add rax, 0x10
movdqu xmm5, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm5
add rax, 0x10
movdqu xmm4, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm4
add rax, 0x10
cmp r10, rax
je 0x6320322c
movdqu xmm3, xmmword [r14 + rax]
movups xmmword [r9 + rax], xmm3
movdqu xmm2, xmmword [r14 + rax + 0x10]
movups xmmword [r9 + rax + 0x10], xmm2
movdqu xmm0, xmmword [r14 + rax + 0x20]
movups xmmword [r9 + rax + 0x20], xmm0
movdqu xmm1, xmmword [r14 + rax + 0x30]
movups xmmword [r9 + rax + 0x30], xmm1
movdqu xmm5, xmmword [r14 + rax + 0x40]
movups xmmword [r9 + rax + 0x40], xmm5
movdqu xmm4, xmmword [r14 + rax + 0x50]
movups xmmword [r9 + rax + 0x50], xmm4
movdqu xmm3, xmmword [r14 + rax + 0x60]
movups xmmword [r9 + rax + 0x60], xmm3
movdqu xmm2, xmmword [r14 + rax + 0x70]
movups xmmword [r9 + rax + 0x70], xmm2
sub rax, 0xffffffffffffff80
cmp r10, rax
jne 0x632031bd
mov ebp, r12d
mov ecx, r12d
and ebp, 0xfffffff0
mov r11d, ebp
sub ecx, ebp
lea r8, [r9 + r11]
add r14, r11
cmp r12d, ebp
je 0x63203330
movzx r12d, byte [r14]
mov byte [r8], r12b
cmp ecx, 1
je 0x63203330
movzx r15d, byte [r14 + 1]
mov byte [r8 + 1], r15b
cmp ecx, 2
je 0x63203330
movzx r10d, byte [r14 + 2]
mov byte [r8 + 2], r10b
cmp ecx, 3
je 0x63203330
movzx edx, byte [r14 + 3]
mov byte [r8 + 3], dl
cmp ecx, 4
je 0x63203330
movzx eax, byte [r14 + 4]
mov byte [r8 + 4], al
cmp ecx, 5
je 0x63203330
movzx ebp, byte [r14 + 5]
mov byte [r8 + 5], bpl
cmp ecx, 6
je 0x63203330
movzx r11d, byte [r14 + 6]
mov byte [r8 + 6], r11b
cmp ecx, 7
je 0x63203330
movzx r12d, byte [r14 + 7]
mov byte [r8 + 7], r12b
cmp ecx, 8
je 0x63203330
movzx r15d, byte [r14 + 8]
mov byte [r8 + 8], r15b
cmp ecx, 9
je 0x63203330
movzx r10d, byte [r14 + 9]
mov byte [r8 + 9], r10b
cmp ecx, 0xa
je 0x63203330
movzx edx, byte [r14 + 0xa]
mov byte [r8 + 0xa], dl
cmp ecx, 0xb
je 0x63203330
movzx eax, byte [r14 + 0xb]
mov byte [r8 + 0xb], al
cmp ecx, 0xc
je 0x63203330
movzx ebp, byte [r14 + 0xc]
mov byte [r8 + 0xc], bpl
cmp ecx, 0xd
je 0x63203330
movzx r11d, byte [r14 + 0xd]
mov byte [r8 + 0xd], r11b
cmp ecx, 0xe
je 0x63203330
movzx r14d, byte [r14 + 0xe]
mov byte [r8 + 0xe], r14b
nop dword [rax]
lea r9, [r9 + r13 + 1]
jmp 0x63202e62
mov eax, r15d
lea r14d, [r15 + r15]
sar eax, 1
and r14d, 0xaaaa
and eax, 0x5555
or eax, r14d
mov edx, eax
shl eax, 2
sar edx, 2
and eax, 0xcccc
and edx, 0x3333
or edx, eax
mov r11d, edx
shl edx, 4
sar r11d, 4
and edx, 0xf0f0
and r11d, 0xf0f
or r11d, edx
mov r13d, r11d
shl r11d, 8
sar r13d, 8
movzx r10d, r11w
or r13d, r10d
cmp r13d, dword [rbx + 0x47c]
jl 0x63203650
cmp dword [rbx + 0x480], r13d
jg 0x632036a8
cmp dword [rbx + 0x484], r13d
jg 0x632036e0
cmp dword [rbx + 0x488], r13d
jg 0x63203958
cmp dword [rbx + 0x48c], r13d
jg 0x63203970
cmp dword [rbx + 0x490], r13d
jg 0x632039d0
lea rbx, str.bad_huffman_code
xor r13d, r13d
mov qword [0x63273660], rbx
jmp 0x632027da
lea rdi, str.output_buffer_limit
xor r13d, r13d
mov qword [0x63273660], rdi
jmp 0x632027da
mov r14d, r15d
lea eax, [r15 + r15]
sar r14d, 1
and eax, 0xaaaa
and r14d, 0x5555
or r14d, eax
mov r11d, r14d
shl r14d, 2
sar r11d, 2
and r14d, 0xcccc
and r11d, 0x3333
or r11d, r14d
mov r10d, r11d
shl r11d, 4
sar r10d, 4
and r11d, 0xf0f0
and r10d, 0xf0f
or r10d, r11d
mov edx, r10d
shl r10d, 8
sar edx, 8
movzx ebp, r10w
or edx, ebp
cmp edx, dword [rbx + 0xc60]
jl 0x63203980
cmp dword [rbx + 0xc64], edx
jg 0x632039e0
cmp dword [rbx + 0xc68], edx
jg 0x63203a10
cmp dword [rbx + 0xc6c], edx
jg 0x63203a58
cmp dword [rbx + 0xc70], edx
jg 0x63203a60
cmp dword [rbx + 0xc74], edx
jle 0x632033e7
mov r13d, 0xf
jmp 0x632039e6
cmp eax, r8d
jle 0x63203542
mov r14, qword [rbx + 8]
mov rbp, qword [rbx]
mov ecx, r8d
cmp r14, rbp
jbe 0x63203513
lea r11, [rbp + 1]
mov qword [rbx], r11
movzx edx, byte [rbp]
shl edx, cl
add ecx, 8
or r15d, edx
mov dword [rbx + 0x10], ecx
mov dword [rbx + 0x14], r15d
cmp ecx, 0x18
jg 0x63203522
mov rbp, r11
cmp r14, rbp
ja 0x632034ec
add ecx, 8
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], ecx
cmp ecx, 0x18
jle 0x632034e7
mov r13d, 0x18
mov r10d, 0
sub r13d, r8d
and r13d, 0xfffffff8
cmp r8d, 0x18
cmovg r13d, r10d
lea r8d, [r8 + r13 + 8]
mov ecx, eax
mov r14d, 1
sub r8d, eax
shl r14d, cl
mov dword [rbx + 0x10], r8d
sub r14d, 1
and r14d, r15d
shr r15d, cl
mov dword [rbx + 0x14], r15d
add r12d, r14d
jmp 0x63202f9c
cmp r10d, r8d
jle 0x632035d6
mov rbp, qword [rbx + 8]
mov r14, qword [rbx]
mov ecx, r8d
cmp rbp, r14
jbe 0x632035ab
lea r11, [r14 + 1]
mov qword [rbx], r11
movzx edx, byte [r14]
shl edx, cl
add ecx, 8
or r15d, edx
mov dword [rbx + 0x10], ecx
mov dword [rbx + 0x14], r15d
cmp ecx, 0x18
jg 0x632035ba
mov r14, r11
cmp rbp, r14
ja 0x63203584
add ecx, 8
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], ecx
cmp ecx, 0x18
jle 0x6320357f
mov eax, 0x18
mov ebp, 0
sub eax, r8d
and eax, 0xfffffff8
cmp r8d, 0x18
cmovg eax, ebp
lea r8d, [r8 + rax + 8]
sub r8d, r10d
mov ecx, r10d
mov r11d, r15d
mov dword [rbx + 0x10], r8d
mov r8d, 1
shr r11d, cl
shl r8d, cl
mov dword [rbx + 0x14], r11d
sub r8d, 1
and r15d, r8d
add r13d, r15d
jmp 0x63203046
lea rbx, str.bad_sizes
xor r13d, r13d
mov qword [0x63273660], rbx
jmp 0x632027da
test r12d, r12d
je 0x63202e62
lea r13d, [r12 - 1]
movsx edx, byte [r14]
mov rcx, r9
add r13, 1
mov r8, r13
call sub.msvcrt.dll_memset
mov r9, rax
add r9, r13
jmp 0x63202e62
mov ecx, 6
mov r12d, 0xa
nop dword [rax + rax]
movsxd rbp, r12d
sar r13d, cl
mov ecx, r12d
sub r8d, r12d
lea rax, [rbx + rbp*2]
shr r15d, cl
movzx r14d, word [rax + 0x434]
movzx edx, word [rax + 0x498]
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], r8d
sub r13d, r14d
add r13d, edx
movsxd r11, r13d
movzx ebp, word [rbx + r11*2 + 0x5d8]
jmp 0x63202ef7
mov r12d, 0xb
mov ecx, 0x10
sub ecx, r12d
jmp 0x63203660
lea rbx, str.bad_codelengths
xor r13d, r13d
mov qword [0x63273660], rbx
jmp 0x632027da
mov r12d, 0xc
jmp 0x632036ae
mov rdx, qword [rbx]
movsxd r14, r11d
lea rax, [rdx + r14]
cmp qword [rbx + 8], rax
jae 0x63203a20
lea rcx, str.read_past_buffer
xor r13d, r13d
mov qword [0x63273660], rcx
jmp 0x632027da
movabs r8, 0x808080808080808
movabs rax, 0x808080808080808
movabs r15, 0x909090909090909
movabs r9, 0x909090909090909
movabs r11, 0x505050505050505
movabs rcx, 0x505050505050505
movabs rsi, 0x707070707070707
movabs rdi, 0x707070707070707
movabs rbp, 0x707070707070707
mov qword [0x63273540], r8
movabs r10, 0x808080808080808
mov qword [0x63273548], rax
mov qword [0x63273550], r8
mov qword [0x63273558], rax
mov qword [0x63273560], r8
mov qword [0x63273568], rax
mov qword [0x63273570], r8
mov qword [0x63273578], rax
mov qword [0x63273580], r8
mov qword [0x63273588], rax
mov qword [0x63273590], r8
mov qword [0x63273598], rax
mov qword [0x632735a0], r8
mov qword [0x632735a8], rax
mov qword [0x632735b0], r8
mov qword [0x632735b8], rax
mov qword [0x632735c0], r8
mov qword [0x632735c8], rax
mov qword [0x632735d0], r15
mov qword [0x632735d8], r9
mov qword [0x632735e0], r15
mov qword [0x632735e8], r9
mov qword [0x632735f0], r15
mov qword [0x632735f8], r9
mov qword [0x63273600], r15
mov qword [0x63273608], r9
mov qword [0x63273610], r15
mov qword [0x63273618], r9
mov qword [0x63273620], r15
mov qword [0x63273628], r9
mov qword [0x63273630], r15
mov qword [0x63273638], r9
mov qword [0x63273640], rsi
mov qword [0x63273648], rdi
mov qword [0x63273650], rbp
mov qword [0x63273658], r10
mov qword [0x63273680], r11
mov qword [0x63273688], rcx
mov qword [0x63273690], r11
mov qword [0x63273698], rcx
jmp 0x63201fa5
cmp r13d, ebp
jge 0x6320390b
mov rsi, qword [rbx + 8]
mov r11, qword [rbx]
cmp rsi, r11
jbe 0x632038e7
lea r15, [r11 + 1]
mov ecx, r13d
add r13d, 8
mov qword [rbx], r15
movzx r10d, byte [r11]
mov dword [rbx + 0x10], r13d
shl r10d, cl
or r14d, r10d
mov dword [rbx + 0x14], r14d
cmp r13d, 0x18
jg 0x632038f9
mov r11, r15
cmp rsi, r11
ja 0x632038b9
add r13d, 8
mov dword [rbx + 0x14], r14d
mov dword [rbx + 0x10], r13d
cmp r13d, 0x18
jle 0x632038b4
mov r8d, 0x1a
sub r8d, edx
and r8d, 0xfffffff8
lea r13d, [rdx + r8 + 6]
mov ecx, ebp
sub r13d, ebp
shr r14d, cl
mov dword [rbx + 0x10], r13d
mov dword [rbx + 0x14], r14d
test r13d, r13d
jg 0x6320264d
mov rsi, qword [rbx + 8]
mov r8, qword [rbx]
cmp rsi, r8
jbe 0x63203cc0
lea rcx, [r8 + 1]
mov r12d, 1
mov qword [rbx], rcx
movzx r13d, byte [r8]
mov byte [rsp + 0x80], r13b
jmp 0x6320270e
mov r12d, 0xd
jmp 0x632036ae
mov eax, edx
jmp 0x6320269f
mov r12d, 0xe
jmp 0x632036ae
mov ecx, 6
mov r13d, 0xa
nop dword [rax + rax]
movsxd r14, r13d
sar edx, cl
mov ecx, r13d
sub r8d, r13d
lea rax, [rbx + r14*2]
shr r15d, cl
movzx r11d, word [rax + 0xc18]
movzx r10d, word [rax + 0xc7c]
mov dword [rbx + 0x14], r15d
mov dword [rbx + 0x10], r8d
sub edx, r11d
add edx, r10d
movsxd rdx, edx
movzx ebp, word [rbx + rdx*2 + 0xdbc]
jmp 0x6320302b
mov r12d, 0xf
jmp 0x632036ae
mov r13d, 0xb
mov ecx, 0x10
sub ecx, r13d
jmp 0x63203990
cdqe
mov byte [rsp + rax + 0x80], 0
cmp edi, 4
je 0x63202785
xor r10d, r10d
jmp 0x6320277d
mov r13d, 0xc
jmp 0x632039e6
mov rcx, qword [rbx + 0x18]
mov rdi, qword [rbx + 0x28]
lea r9, [rcx + r14]
cmp rdi, r9
jae 0x63203ac6
mov r13d, dword [rbx + 0x30]
test r13d, r13d
jne 0x63203a70
lea r11, str.output_buffer_limit
mov qword [0x63273660], r11
jmp 0x632027da
mov r13d, 0xd
jmp 0x632039e6
mov r13d, 0xe
jmp 0x632039e6
mov r15, qword [rbx + 0x20]
sub rcx, r15
sub rdi, r15
add r11d, ecx
mov rbp, rcx
mov edx, edi
cmp edi, r11d
jge 0x63203a97
nop word [rax + rax]
add edx, edx
cmp edx, r11d
jl 0x63203a90
movsxd rsi, edx
mov rcx, r15
mov rdx, rsi
call sub.msvcrt.dll_realloc
test rax, rax
je 0x63203d20
movsxd rcx, ebp
mov qword [rbx + 0x20], rax
mov rdx, qword [rbx]
add rcx, rax
add rax, rsi
mov qword [rbx + 0x18], rcx
mov qword [rbx + 0x28], rax
mov r8, r14
call sub.msvcrt.dll_memcpy
mov r10d, dword [rsp + 0x28]
add qword [rbx], r14
add qword [rbx + 0x18], r14
test r10d, r10d
jne 0x63203cb2
mov r8d, dword [rbx + 0x10]
mov eax, dword [rbx + 0x14]
jmp 0x63201ea0
xor r13d, r13d
jmp 0x632027da
mov eax, r14d
jmp 0x6320269f
mov r8d, r13d
xor r15d, r15d
lea rcx, [r8 + 1]
and ecx, 7
je 0x63203ba5
cmp rcx, 1
je 0x63203b8c
cmp rcx, 2
je 0x63203b7f
cmp rcx, 3
je 0x63203b72
cmp rcx, 4
je 0x63203b65
cmp rcx, 5
je 0x63203b58
cmp rcx, 6
jne 0x63203d55
movzx r10d, byte [r14 + r15]
mov byte [r9 + r15], r10b
add r15, 1
movzx edx, byte [r14 + r15]
mov byte [r9 + r15], dl
add r15, 1
movzx eax, byte [r14 + r15]
mov byte [r9 + r15], al
add r15, 1
movzx ebp, byte [r14 + r15]
mov byte [r9 + r15], bpl
add r15, 1
movzx r11d, byte [r14 + r15]
mov byte [r9 + r15], r11b
add r15, 1
movzx ecx, byte [r14 + r15]
mov r12, r15
mov byte [r9 + r15], cl
add r15, 1
cmp r8, r12
je 0x63203330
movzx r10d, byte [r14 + r15]
mov byte [r9 + r15], r10b
movzx edx, byte [r14 + r15 + 1]
lea r10, [r15 + 7]
mov byte [r9 + r15 + 1], dl
movzx eax, byte [r14 + r15 + 2]
mov byte [r9 + r15 + 2], al
movzx ebp, byte [r14 + r15 + 3]
mov byte [r9 + r15 + 3], bpl
movzx r11d, byte [r14 + r15 + 4]
mov byte [r9 + r15 + 4], r11b
movzx ecx, byte [r14 + r15 + 5]
mov byte [r9 + r15 + 5], cl
movzx r12d, byte [r14 + r15 + 6]
mov byte [r9 + r15 + 6], r12b
movzx edx, byte [r14 + r15 + 7]
mov byte [r9 + r15 + 7], dl
add r15, 8
cmp r8, r10
jne 0x63203ba5
jmp 0x63203330
mov rdx, qword [rcx + 8]
mov rax, qword [rcx]
cmp rdx, rax
jbe 0x63203d3f
lea r8, [rax + 1]
mov qword [rcx], r8
movzx r9d, byte [rax]
mov ecx, r9d
and ecx, 0xf
cmp rdx, r8
jbe 0x63203cf6
lea rsi, [rax + 2]
shl r9d, 8
mov qword [rbx], rsi
movzx edi, byte [rax + 1]
mov ebp, edi
add edi, r9d
imul rdx, rdi, 0x8421085
mov r11d, edi
mov r13, rdi
shr rdx, 0x20
sub r11d, edx
shr r11d, 1
add r11d, edx
shr r11d, 4
mov eax, r11d
shl eax, 5
sub eax, r11d
sub r13d, eax
jne 0x63203d0a
and ebp, 0x20
je 0x63203d36
lea rbx, str.no_preset_dict
mov qword [0x63273660], rbx
jmp 0x632027da
mov r10d, dword [rsp + 0x28]
mov qword [rbx + 0x18], r9
test r10d, r10d
je 0x63203ae3
mov r13d, 1
jmp 0x632027da
mov byte [rsp + 0x80], 0
mov rcx, r8
mov r12d, 1
jmp 0x6320270e
lea rsi, str.bad_dist
xor r13d, r13d
mov qword [0x63273660], rsi
jmp 0x632027da
mov eax, r9d
mov r13d, 0x1f
shl eax, 8
cdq
idiv r13d
test edx, edx
je 0x63203d36
lea r14, str.bad_zlib_header
xor r13d, r13d
mov qword [0x63273660], r14
jmp 0x632027da
lea rbx, str.outofmem
xor r13d, r13d
mov qword [0x63273660], rbx
jmp 0x632027da
cmp cl, 8
je 0x63201e8e
lea rdi, str.bad_compression
xor r13d, r13d
mov qword [0x63273660], rdi
jmp 0x632027da
movzx r12d, byte [r14]
mov r15d, 1
mov byte [r9], r12b
jmp 0x63203b4b