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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
mov rsi, rcx
movzx ecx, byte [r8 + 0x2c]
lea eax, [rcx - 0x1c]
cmp al, 0xde
ja 0x140001a71
mov rax, qword [r8 + 0x20]
test rax, rax
jne 0x140001c37
mov r10, qword [r8 + 8]
mov rdx, qword [r8 + 0x10]
mov r11, qword [r8 + 0x18]
mov r9d, dword [r8 + 0x28]
nop
lea eax, [rcx - 8]
mov byte [r8 + 0x2c], al
mov edi, r9d
shr edi, 8
mov dword [r8 + 0x28], edi
cmp rdx, r11
jbe 0x140001c29
movzx r9d, byte [r10 + r11]
inc r11
mov qword [r8 + 0x18], r11
shl r9d, 0x18
or r9d, edi
mov dword [r8 + 0x28], r9d
lea edi, [rax - 0x1c]
mov ecx, eax
cmp dil, 0xdf
jb 0x140001a20
lea rbp, [r8 + 0x20]
lea edx, [rax + 5]
mov byte [r8 + 0x2c], dl
mov qword [r8 + 0x20], 0
jmp 0x140001a97
mov r9d, dword [r8 + 0x28]
mov rax, qword [r8 + 0x20]
lea edx, [rcx + 5]
mov byte [r8 + 0x2c], dl
mov qword [r8 + 0x20], 0
test rax, rax
jne 0x140001da9
lea rbp, [r8 + 0x20]
mov eax, ecx
mov r15d, r9d
mov ecx, eax
shr r15d, cl
lea ecx, [rax - 0x17]
cmp cl, 0xde
ja 0x140001b0b
mov r10, qword [r8 + 8]
mov rcx, qword [r8 + 0x10]
mov r11, qword [r8 + 0x18]
add dl, 5
mov eax, edx
nop dword [rax + rax]
lea edx, [rax - 0xd]
mov byte [r8 + 0x2c], dl
mov edx, r9d
shr edx, 8
mov dword [r8 + 0x28], edx
cmp rcx, r11
jbe 0x140001d88
movzx r9d, byte [r10 + r11]
inc r11
mov qword [r8 + 0x18], r11
shl r9d, 0x18
or r9d, edx
mov dword [r8 + 0x28], r9d
add al, 0xf8
mov edx, eax
add dl, 0xdf
jb 0x140001ac0
mov byte [r8 + 0x2c], al
mov qword [r8 + 0x20], 0
lea edx, [rax - 5]
jmp 0x140001b11
add al, 0xa
mov byte [r8 + 0x2c], al
mov r11d, r9d
mov ecx, edx
shr r11d, cl
and r11d, 0x1f
lea r10d, [r11 + 1]
mov word [rsp + 0x3e], r10w
add dl, 0xe8
cmp dl, 0xde
ja 0x140001b7b
mov rdi, qword [r8 + 8]
mov rdx, qword [r8 + 0x10]
mov rbx, qword [r8 + 0x18]
nop dword [rax + rax]
lea ecx, [rax - 8]
mov byte [r8 + 0x2c], cl
shr r9d, 8
mov dword [r8 + 0x28], r9d
cmp rdx, rbx
jbe 0x140001d90
movzx eax, byte [rdi + rbx]
inc rbx
mov qword [r8 + 0x18], rbx
shl eax, 0x18
or r9d, eax
mov dword [r8 + 0x28], r9d
lea r14d, [rcx - 0x1d]
mov eax, ecx
cmp r14b, 0xdf
jb 0x140001b40
jmp 0x140001b7d
mov ecx, eax
lea edx, [rcx + 4]
mov byte [r8 + 0x2c], dl
mov qword [r8 + 0x20], 0
cmp r11w, 0x1d
jbe 0x140001c4b
lea rax, [0x140024578]
mov qword [rsp + 0xc8], rax
lea rax, [0x140010980]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x3e]
mov qword [rsp + 0xd8], rax
lea rax, [0x140010750]
mov qword [rsp + 0xe0], rax
lea rax, str.The_value_of_HDIST_is_too_big:_max__actual
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 2
mov qword [rsp + 0x68], 0
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 2
lea rdi, [rsp + 0x138]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.14000f960
mov cl, 0x15
mov rdx, rdi
call fcn.140005370
jmp 0x140001da9
mov qword [r8 + 0x18], rdx
add cl, 0xf8
lea rax, str.failed_to_fill_whole_buffer
add cl, 5
mov byte [r8 + 0x2c], cl
mov qword [r8 + 0x20], 0
jmp 0x140001da9
and r15d, 0x1f
add r15d, 0x101
mov eax, r9d
shr eax, cl
movzx ecx, r10w
mov qword [rsp + 0xa8], rcx
and eax, 0xf
add eax, 4
xorps xmm0, xmm0
movaps xmmword [rsp + 0xf0], xmm0
mov dword [rsp + 0xff], 0
mov r11, qword [r8 + 8]
mov r10, qword [r8 + 0x10]
mov rdi, qword [r8 + 0x18]
lea rbx, [0x140024420]
xor r14d, r14d
mov rcx, rbx
mov r12, qword [rcx]
lea ecx, [rdx - 0x1e]
cmp cl, 0xde
ja 0x140001cec
nop word [rax + rax]
lea ecx, [rdx - 8]
mov byte [r8 + 0x2c], cl
shr r9d, 8
mov dword [r8 + 0x28], r9d
cmp r10, rdi
jbe 0x140001d7b
movzx edx, byte [r11 + rdi]
inc rdi
mov qword [r8 + 0x18], rdi
shl edx, 0x18
or r9d, edx
mov dword [r8 + 0x28], r9d
lea r13d, [rcx - 0x1e]
mov edx, ecx
cmp r13b, 0xdf
jb 0x140001cb0
jmp 0x140001cee
mov ecx, edx
lea edx, [rcx + 3]
mov byte [r8 + 0x2c], dl
mov qword [r8 + 0x20], 0
cmp r12, 0x13
jae 0x140002656
dec rax
add r14, 8
mov r13d, r9d
shr r13d, cl
and r13b, 7
mov byte [rsp + r12 + 0xf0], r13b
lea rcx, [rbx + r14]
test rax, rax
jne 0x140001c9c
mov qword [rsp + 0x78], r8
movabs rbx, 0x8000000000000000
mov word [rsp + 0x28], 0
mov byte [rsp + 0x20], 1
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0xf0]
mov r8d, 0x13
mov r9b, 1
call fcn.140005ac0
mov rdi, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
cmp rdi, rbx
jne 0x140001dd1
mov qword [rsi + 8], r14
mov qword [rsi], rbx
jmp 0x140001dba
mov qword [r8 + 0x18], r10
add dl, 0xfb
mov byte [r8 + 0x2c], dl
jmp 0x140001d9a
mov qword [r8 + 0x18], rcx
add al, 0xf8
jmp 0x140001d96
mov qword [r8 + 0x18], rdx
add al, 0xfc
mov byte [r8 + 0x2c], al
mov qword [r8 + 0x20], 0
lea rax, str.failed_to_fill_whole_buffer
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r13, qword [rsp + 0x58]
movzx ebx, byte [rsp + 0x60]
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x3d], al
movzx eax, byte [0x14004bac0]
mov edx, 1
mov rcx, r15
call fcn.140005940
test rax, rax
je 0x140002658
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 0
xor ecx, ecx
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x80], r14
mov byte [rsp + 0x3c], bl
mov qword [rsp + 0x40], rcx
movzx r8d, byte [rdx + 0x2c]
mov ecx, dword [rdx + 0x28]
mov rax, qword [rdx + 0x20]
mov r10, qword [rdx + 8]
mov rdi, qword [rdx + 0x10]
mov r11, qword [rdx + 0x18]
mov r9d, ebx
lea ebx, [r8 + r9]
cmp bl, 0x21
jb 0x140001ea8
test rax, rax
je 0x140001e70
xor ebx, ebx
jmp 0x140001ed1
add r8b, 0xf8
mov byte [rdx + 0x2c], r8b
shr ecx, 8
mov dword [rdx + 0x28], ecx
cmp rdi, r11
jbe 0x140001f01
movzx r12d, byte [r10 + r11]
inc r11
mov qword [rdx + 0x18], r11
shl r12d, 0x18
or r12d, ecx
mov dword [rdx + 0x28], r12d
lea ebx, [r9 + r8]
mov ecx, r12d
cmp bl, 0x20
ja 0x140001e70
jmp 0x140001eab
mov r12d, ecx
mov r14d, r12d
mov ecx, r8d
shr r14d, cl
mov ecx, r9d
and cl, 0xf
mov ebx, 0xffffffff
shl ebx, cl
not ebx
and ebx, r14d
mov ecx, r12d
mov r14, qword [rsp + 0x80]
movzx ebx, bx
cmp r13, rbx
jbe 0x140002656
movzx ebx, word [r14 + rbx*2]
mov r12d, ebx
and r12b, 0x1f
cmp r12b, r9b
jbe 0x140001f17
mov r9d, r12d
cmp r12b, byte [rsp + 0x3d]
jbe 0x140001e58
jmp 0x1400021b7
mov qword [rdx + 0x18], rdi
lea rax, str.failed_to_fill_whole_buffer
mov qword [rdx + 0x20], rax
xor ebx, ebx
mov r11, rdi
jmp 0x140001ec9
add r8b, r12b
mov byte [rdx + 0x2c], r8b
mov qword [rdx + 0x20], 0
test rax, rax
jne 0x140002284
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140001f46
mov rax, qword [rsp + 0x90]
movzx eax, byte [rcx + rax - 1]
movzx r8d, bx
shr r8d, 5
test rcx, rcx
setne r9b
mov byte [rsp + 0x20], al
lea rcx, [rsp + 0x48]
call fcn.1400027b0
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
test rdx, rdx
je 0x1400022df
lea rcx, [rsp + 0x88]
call fcn.140005430
mov rcx, qword [rsp + 0x98]
cmp rcx, r15
mov rdx, qword [rsp + 0x78]
movzx ebx, byte [rsp + 0x3c]
jb 0x140001e38
mov qword [rsp + 0x98], r15
mov rax, qword [rsp + 0x90]
add r15, rax
add rax, rcx
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x110], r15
mov qword [rsp + 0x118], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x120], rax
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x110]
call fcn.1400057b0
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x40], rax
cmp rax, qword [rsp + 0xa8]
jae 0x1400022e5
mov r14, qword [rsp + 0x80]
mov r8, qword [rsp + 0x78]
movzx eax, byte [r8 + 0x2c]
mov ecx, dword [r8 + 0x28]
mov r15, qword [r8 + 0x20]
mov r9, qword [r8 + 8]
mov r10, qword [r8 + 0x10]
mov r11, qword [r8 + 0x18]
movzx edx, byte [rsp + 0x3c]
mov edi, edx
lea edx, [rax + rdi]
cmp dl, 0x21
jb 0x140002097
test r15, r15
je 0x140002061
xor edx, edx
movzx edx, dx
cmp r13, rdx
ja 0x1400020c0
jmp 0x140002656
add al, 0xf8
mov byte [r8 + 0x2c], al
shr ecx, 8
mov dword [r8 + 0x28], ecx
cmp r10, r11
jbe 0x1400020e4
movzx r12d, byte [r9 + r11]
inc r11
mov qword [r8 + 0x18], r11
shl r12d, 0x18
or r12d, ecx
mov dword [r8 + 0x28], r12d
lea edx, [rdi + rax]
mov ecx, r12d
cmp dl, 0x20
ja 0x140002061
jmp 0x14000209a
mov r12d, ecx
mov ebx, r12d
mov ecx, eax
shr ebx, cl
mov ecx, edi
and cl, 0xf
mov edx, 0xffffffff
shl edx, cl
not edx
and edx, ebx
mov ecx, r12d
movzx edx, dx
cmp r13, rdx
jbe 0x140002656
movzx edx, word [r14 + rdx*2]
mov r12d, edx
and r12b, 0x1f
cmp r12b, dil
jbe 0x140002105
mov edi, r12d
cmp r12b, byte [rsp + 0x3d]
jbe 0x140002045
jmp 0x1400023a6
mov qword [r8 + 0x18], r10
lea r15, str.failed_to_fill_whole_buffer
mov qword [r8 + 0x20], r15
xor edx, edx
mov r11, r10
movzx edx, dx
cmp r13, rdx
ja 0x1400020c0
jmp 0x140002656
add al, r12b
mov byte [r8 + 0x2c], al
mov qword [r8 + 0x20], 0
test r15, r15
jne 0x140002467
lea rax, [rsp + 0xb8]
cmp qword [rsp + 0x40], 0
jne 0x140002147
mov rcx, qword [rsp + 0x98]
lea rax, [rsp + 0x90]
mov qword [rsp + 0x40], rcx
test rcx, rcx
je 0x1400021b2
mov rax, qword [rax]
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + rax - 1]
mov r9b, 1
movzx r8d, dx
shr r8d, 5
mov byte [rsp + 0x20], al
lea rcx, [rsp + 0x48]
mov rdx, qword [rsp + 0x78]
call fcn.1400027b0
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
test rdx, rdx
je 0x140002643
lea rcx, [rsp + 0xb0]
call fcn.140005430
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x40], rax
cmp rax, qword [rsp + 0xa8]
jb 0x140002020
jmp 0x1400022e5
xor r9d, r9d
jmp 0x140002157
movzx eax, byte [0x14004bac0]
mov ecx, 0x1c
mov edx, 1
call fcn.140005940
test rax, rax
je 0x140002665
movups xmm0, xmmword [0x140024614]
movups xmmword [rax + 0xc], xmm0
movups xmm0, xmmword [str.Invalid_huffman_coded_stream_]
movups xmmword [rax], xmm0
mov qword [rsp + 0x48], 0x1c
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x1c
lea rdx, [rsp + 0x48]
mov cl, 0x15
call fcn.140005370
mov rcx, qword [rbp]
test rcx, rcx
je 0x140002273
mov edx, ecx
and edx, 3
lea r8, [rdx - 2]
cmp r8, 2
jb 0x140002273
test rdx, rdx
je 0x140002273
mov rbx, rax
lea r15, [rcx - 1]
mov rdi, qword [rcx - 1]
mov r14, qword [rcx + 7]
mov rcx, rdi
call qword [r14]
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x140002255
mov r8, qword [r14 + 0x10]
mov rcx, rdi
call fcn.140005950
mov edx, 0x18
mov r8d, 8
mov rcx, r15
call fcn.140005950
mov rax, rbx
mov r14, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x78]
add byte [rcx + 0x2c], r12b
mov qword [rcx + 0x20], 0
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov rdx, qword [rsp + 0x88]
test rdx, rdx
mov rdi, qword [rsp + 0xa0]
je 0x1400022bd
mov rcx, qword [rsp + 0x90]
mov r8d, 1
call fcn.140005950
test rdi, rdi
je 0x140001dba
add rdi, rdi
mov r8d, 2
mov rcx, r14
mov rdx, rdi
call fcn.140005950
jmp 0x140001dba
mov qword [rsi + 8], r8
jmp 0x140002288
mov rax, qword [rsp + 0x40]
cmp rax, qword [rsp + 0xa8]
jbe 0x140002477
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0xc8], rax
lea rax, [0x140010980]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x3e]
mov qword [rsp + 0xd8], rax
lea rax, [0x140010750]
mov qword [rsp + 0xe0], rax
lea rax, str.The_length_of__distance_code_bitwidthes__is_too_large:_actual__expected
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 2
mov qword [rsp + 0x68], 0
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 2
lea r14, [rsp + 0x150]
lea rdx, [rsp + 0x48]
mov rcx, r14
call fcn.1400026f0
mov cl, 0x15
mov rdx, r14
call fcn.140005370
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
jmp 0x1400024bf
movzx eax, byte [0x14004bac0]
mov ecx, 0x1c
mov edx, 1
call fcn.140005940
test rax, rax
je 0x140002665
movups xmm0, xmmword [0x140024614]
movups xmmword [rax + 0xc], xmm0
movups xmm0, xmmword [str.Invalid_huffman_coded_stream_]
movups xmmword [rax], xmm0
mov qword [rsp + 0x48], 0x1c
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x1c
lea rdx, [rsp + 0x48]
mov cl, 0x15
call fcn.140005370
mov r15, rax
mov rax, qword [rbp]
test rax, rax
je 0x140002456
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x140002456
test rcx, rcx
je 0x140002456
lea r13, [rax - 1]
mov rdi, qword [rax - 1]
mov rbx, qword [rax + 7]
mov rcx, rdi
call qword [rbx]
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x140002443
mov r8, qword [rbx + 0x10]
mov rcx, rdi
call fcn.140005950
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.140005950
mov rax, qword [rsp + 0x78]
add byte [rax + 0x2c], r12b
mov qword [rax + 0x20], 0
mov qword [rsi + 8], r15
movabs rax, 0x8000000000000000
jmp 0x1400024bf
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov word [rsp + 0x30], pe_nt_image_headers64
mov word [rsp + 0x28], 1
lea rcx, [rsp + 0x48]
xor r9d, r9d
call fcn.140005ac0
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
movabs rax, 0x8000000000000000
cmp r15, rax
jne 0x140002508
mov qword [rsi + 8], r14
mov qword [rsi], rax
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x1400024e2
mov rcx, qword [rsp + 0xb8]
mov r8d, 1
call fcn.140005950
mov r14, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
test rdx, rdx
mov rdi, qword [rsp + 0xa0]
jne 0x1400022aa
jmp 0x1400022bd
mov rdi, qword [rsp + 0x58]
movzx ebx, byte [rsp + 0x60]
mov eax, dword [rsp + 0x61]
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0xcb], eax
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
mov byte [rsp + 0x20], bl
mov word [rsp + 0x28], 0
lea rcx, [rsp + 0x48]
mov r9b, 1
call fcn.140005ac0
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x50]
movabs rdx, 0x8000000000000000
cmp rcx, rdx
jne 0x14000259c
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
test r15, r15
je 0x1400024c2
add r15, r15
mov r8d, 2
mov rcx, r14
mov rdx, r15
call fcn.140005950
jmp 0x1400024c2
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rsi + 0x30], xmm0
mov qword [rsi], r15
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rdi
mov byte [rsi + 0x18], bl
mov edx, dword [rsp + 0xc8]
mov r8d, dword [rsp + 0xcb]
mov dword [rsi + 0x19], edx
mov dword [rsi + 0x1c], r8d
mov qword [rsi + 0x20], rcx
mov qword [rsi + 0x28], rax
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x1400025f1
mov rcx, qword [rsp + 0xb8]
mov r8d, 1
call fcn.140005950
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x140002611
mov rcx, qword [rsp + 0x90]
mov r8d, 1
call fcn.140005950
cmp qword [rsp + 0xa0], 0
je 0x140001dba
mov rdx, qword [rsp + 0xa0]
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call fcn.140005950
jmp 0x140001dba
mov qword [rsi + 8], r8
movabs rax, 0x8000000000000000
jmp 0x1400024bf
ud2
mov ecx, 1
mov rdx, r15
call fcn.140012980
mov ecx, 1
mov edx, 0x1c
call fcn.140012980
int3