Function at 0x62d86570
Capabilities:
Decompress data using aplib

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
lea rcx, str.version_info
mov rsi, qword [0x62e24028]
call rsi
test rax, rax
mov rbx, rax
je 0x62d86c36
xor edx, edx
mov rcx, rax
mov rdi, qword [0x62e24040]
call rdi
test rax, rax
je 0x62d86c36
mov rcx, rax
mov rbp, qword [0x62e23dd0]
call rbp
mov edx, 1
mov dword [0x62e1b020], eax
mov rcx, rbx
call rdi
test rax, rax
je 0x62d86c36
mov rcx, rax
call rbp
lea rcx, str.dllhandle
mov dword [0x62e1b024], eax
call rsi
xor ecx, ecx
test rax, rax
je 0x62d86602
mov rcx, rax
call qword [0x62e23de0]
mov rcx, rax
mov qword [0x62e1b028], rcx
lea rdx, str.PyCell_Get
mov rbx, qword [0x62e242d8]
call rbx
test rax, rax
mov qword [0x62e1b058], rax
je 0x62d87329
lea rdx, str.PyCell_New
mov rcx, qword [0x62e1b028]
call rbx
test rax, rax
mov qword [0x62e1b060], rax
je 0x62d8734c
lea rdx, str.PyCell_Set
mov rcx, qword [0x62e1b028]
call rbx
test rax, rax
mov qword [0x62e1b068], rax
je 0x62d87461
lea rax, [0x62d86370]
mov edx, 0x3f5
lea rcx, [0x62e070c0]
mov qword [0x62e07120], rax
call qword [0x62e23e38]
test rax, rax
mov rbx, rax
je 0x62d86c36
mov rcx, rax
call qword [0x62e23e50]
test rax, rax
mov r12, rax
je 0x62d86c36
mov rbp, qword [rbx + 0x20]
mov edx, 0x2e
mov rcx, rax
and byte [rbp + 0x10], 0xf0
mov rsi, rbp
call fcn.62e01e18
test rax, rax
je 0x62d866fe
sub rax, r12
lea ecx, [rax + 1]
mov rdi, rax
movsxd rcx, ecx
call fcn.62e01e98
test rax, rax
mov qword [rbp + 8], rax
je 0x62d866fe
movsxd rdi, edi
mov rdx, r12
mov rcx, rax
mov r8, rdi
call fcn.62e01e88
mov rax, qword [rbp + 8]
mov byte [rax + rdi], 0
mov rsi, qword [rbx + 0x20]
cmp dword [0x62e1b020], 3
jne 0x62d86e70
mov eax, dword [0x62e1b024]
lea edx, [rax - 7]
cmp edx, 5
ja 0x62d86e70
cmp qword [rsi + 8], 0
lea eax, [rax*8 + 3]
mov byte [rsi + 0x14], al
je 0x62d87355
xor ecx, ecx
mov edx, 0xa0
mov r12, qword [0x62e23b90]
call r12
test rax, rax
mov qword [rsi + 0x70], rax
je 0x62d86c30
mov rcx, rax
mov r13, qword [0x62e23b80]
call r13
test rax, rax
mov rdi, rax
je 0x62d86c50
mov ecx, 0x40
call fcn.62e01e98
test rax, rax
mov qword [rsi + 0x78], rax
je 0x62d86c50
mov qword [rax], rbx
lea rax, str.C_ASSERT_ARMORED_INDEX
xor r9d, r9d
mov dword [rdi + 0x30], 8
mov qword [rdi + 0x38], 0
lea rcx, [rdi + 0x20]
mov qword [rdi + 0x20], rax
lea rax, [0x62d84a00]
mov r8, rbx
mov rdx, rbx
mov r14, qword [0x62e23bb0]
mov qword [rdi + 0x28], rax
call r14
test rax, rax
je 0x62d86c71
mov rdx, qword [rsi + 0x78]
xor r9d, r9d
lea rcx, [rdi + 0x40]
mov r8, rbx
mov qword [rdx + 8], rax
lea rax, str.C_ENTER_CO_OBJECT_INDEX
mov dword [rdi + 0x50], 8
mov qword [rdi + 0x58], 0
mov rdx, rbx
mov qword [rdi + 0x40], rax
lea rax, [0x62d84270]
mov qword [rdi + 0x48], rax
call r14
test rax, rax
je 0x62d86c71
mov rdx, qword [rsi + 0x78]
xor r9d, r9d
lea rcx, [rdi + 0x60]
mov r8, rbx
mov qword [rdx + 0x10], rax
lea rax, str.C_LEAVE_CO_OBJECT_INDEX
mov dword [rdi + 0x70], 8
mov qword [rdi + 0x78], 0
mov rdx, rbx
mov qword [rdi + 0x60], rax
lea rax, [0x62d84650]
mov qword [rdi + 0x68], rax
call r14
test rax, rax
je 0x62d86c71
mov rdx, qword [rsi + 0x78]
xor ecx, ecx
mov qword [rdx + 0x18], rax
mov rax, qword [rdx + 8]
mov edx, 0x330
mov rsi, qword [rbx + 0x20]
mov qword [0x62e1b038], rax
call r12
test rax, rax
mov qword [rsi + 0x80], rax
je 0x62d86c30
mov rcx, rax
call r13
mov r9, qword [0x62e240c0]
lea rdi, [rax + 8]
lea r8, [rax + 0x1a0]
and rdi, 0xfffffffffffffff8
mov rdx, qword [r9]
mov rsi, r9
mov qword [rax], rdx
mov rcx, qword [r9 + 0x190]
lea rdx, [rax + 0x198]
mov qword [rax + 0x190], rcx
mov rcx, rax
sub rcx, rdi
sub rsi, rcx
add ecx, 0x198
shr ecx, 3
mov ecx, ecx
rep movsq qword [rdi], qword [rsi]
lea rdi, [0x62d816d0]
mov rsi, qword [0x62e23e58]
mov qword [rax + 0x100], r9
mov qword [rax + 0x78], rdi
lea rdi, [0x62d81720]
mov qword [rax + 0xc8], rdi
lea rdi, [0x62d81660]
mov qword [rax + 0x30], rdi
mov rcx, qword [rsi]
mov rdi, r8
and rdi, 0xfffffffffffffff8
sub rdx, rdi
mov qword [rax + 0x198], rcx
mov rcx, qword [rsi + 0x190]
sub rsi, rdx
mov qword [rax + 0x328], rcx
mov rcx, rdx
add ecx, 0x198
shr ecx, 3
mov ecx, ecx
rep movsq qword [rdi], qword [rsi]
lea rdi, [0x62d818a0]
mov qword [rax + 0x228], rdi
lea rdi, [0x62d81a70]
mov r12, qword [rbx + 0x20]
mov qword [rax + 0x230], rdi
jmp 0x63550e22
jmp 0x6352c464
jmp 0x62d86c3d
jmp 0x6353306a
jmp 0x6352b7c5
jmp 0x6350cc18
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x62d87060
movzx edi, byte [rax]
shr dil, 2
and edi, 3
cmp edi, 2
je 0x62d87968
mov edx, 5
mov rcx, rsi
call fcn.62d813c0
cmp edi, 1
mov r8, rax
je 0x62d87050
mov rax, qword [0x62e23cf8]
mov rcx, qword [rax]
mov dword [rsp + 0x20], 0x14b8
mov r9d, 1
lea rdx, str._s___d:_d_
call qword [0x62e23c68]
jmp 0x62d86c30
mov rax, qword [0x62e23d08]
mov rcx, qword [rax]
jmp 0x62d86eb6
movzx edi, byte [rsi + 0x10]
shr dil, 5
and edi, 3
jmp 0x62d86e8a
lea r8, str.PyCell_Get
mov rax, qword [0x62e23cf8]
lea rdx, str.failed_to_get_api__s_n
mov rcx, qword [rax]
call qword [0x62e23c68]
jmp 0x62d86c36
lea r8, str.PyCell_New
jmp 0x62d87330
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x62d874a7
movzx edi, byte [rax]
shr dil, 2
and edi, 3
cmp edi, 2
je 0x62d87968
mov edx, 7
mov rcx, rsi
call fcn.62d813c0
cmp edi, 1
mov r8, rax
je 0x62d87498
mov rax, qword [0x62e23cf8]
mov rcx, qword [rax]
mov dword [rsp + 0x20], 0x14e6
mov r9d, 1
lea rdx, str._s___d:_d_
call qword [0x62e23c68]
jmp 0x62d86c30
lea r8, str.PyCell_Set
jmp 0x62d87330
mov rax, qword [0x62e23d08]
mov rcx, qword [rax]
jmp 0x62d8739b
movzx edi, byte [rsi + 0x10]
shr dil, 5
and edi, 3
jmp 0x62d8736f
mov ecx, 1
call fcn.62e01ee8
nop
nop dword [rax]
nop word cs:[rax + rax]