Function at 0x18000d4b8
Capabilities:
Decompress data using aplib

Disassembly:
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rbp
push rbx
push rsi
push rdi
mov rsi, rcx
mov r10, rdx
mov rdi, r8
mov r11, r9
test rsi, rsi
je 0x18000d7ec
test rdi, rdi
je 0x18000d7ec
or rbp, 0xffffffffffffffff
cld
xor rdx, rdx
sub r10, 1
jb 0x18000d7ec
mov al, byte [rsi]
add rsi, 1
sub r11, 1
jb 0x18000d7ec
mov byte [rdi], al
add rdi, 1
mov rbx, 2
add dl, dl
jne 0x18000d52f
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jae 0x18000d4f0
add dl, dl
jne 0x18000d549
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jae 0x18000d614
xor rax, rax
add dl, dl
jne 0x18000d56a
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jae 0x18000d79a
add dl, dl
jne 0x18000d588
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rax, rax
add dl, dl
jne 0x18000d5a3
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rax, rax
add dl, dl
jne 0x18000d5be
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rax, rax
add dl, dl
jne 0x18000d5d9
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rax, rax
je 0x18000d5f8
mov r8, qword [rsp + 0x20]
sub r8, r11
cmp rax, r8
ja 0x18000d7ec
mov r8, rdi
sub r8, rax
mov al, byte [r8]
sub r11, 1
jb 0x18000d7ec
mov byte [rdi], al
add rdi, 1
mov rbx, 2
jmp 0x18000d517
mov rax, 1
add dl, dl
jne 0x18000d633
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rax, rax
jb 0x18000d7ec
add dl, dl
jne 0x18000d654
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jb 0x18000d61b
sub rax, rbx
mov rbx, 1
jne 0x18000d6dc
mov rcx, 1
add dl, dl
jne 0x18000d681
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc rcx, rcx
jb 0x18000d7ec
add dl, dl
jne 0x18000d6a2
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jb 0x18000d669
mov r8, qword [rsp + 0x20]
sub r8, r11
cmp rbp, r8
ja 0x18000d7ec
sub r11, rcx
jb 0x18000d7ec
mov r8, rdi
sub r8, rbp
mov al, byte [r8]
add r8, 1
mov byte [rdi], al
add rdi, 1
sub rcx, 1
jne 0x18000d6c4
jmp 0x18000d517
add rax, 0xffffffffffffffff
cmp rax, 0xfffffe
ja 0x18000d7ec
shl rax, 8
sub r10, 1
jb 0x18000d7ec
mov al, byte [rsi]
add rsi, 1
mov rbp, rax
mov ecx, 1
add dl, dl
jne 0x18000d720
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
adc ecx, ecx
jb 0x18000d7ec
add dl, dl
jne 0x18000d740
sub r10, 1
jb 0x18000d7ec
mov dl, byte [rsi]
add rsi, 1
add dl, dl
inc dl
jb 0x18000d708
cmp rax, 0x7d00
sbb rcx, 0xffffffffffffffff
cmp rax, 0x500
sbb rcx, 0xffffffffffffffff
cmp rax, 0x80
adc rcx, 0
cmp rax, 0x80
adc rcx, 0
mov r8, qword [rsp + 0x20]
sub r8, r11
cmp rax, r8
ja 0x18000d7ec
sub r11, rcx
jb 0x18000d7ec
mov r8, rdi
sub r8, rax
mov al, byte [r8]
add r8, 1
mov byte [rdi], al
add rdi, 1
sub rcx, 1
jne 0x18000d782
jmp 0x18000d517
sub r10, 1
jb 0x18000d7ec
mov al, byte [rsi]
add rsi, 1
xor rcx, rcx
shr al, 1
je 0x18000d7f2
adc rcx, 2
mov rbp, rax
mov r8, qword [rsp + 0x20]
sub r8, r11
cmp rax, r8
ja 0x18000d7ec
sub r11, rcx
jb 0x18000d7ec
mov r8, rdi
sub r8, rax
mov al, byte [r8]
add r8, 1
mov byte [rdi], al
add rdi, 1
sub rcx, 1
jne 0x18000d7cd
mov rbx, 1
jmp 0x18000d517
or rax, 0xffffffffffffffff
jmp 0x18000d7fa
mov rax, rdi
sub rax, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
pop rdi
pop rsi
pop rbx
ret