Function at 0x1000121b
Capabilities:
Decompress data using aplib

Disassembly:
sub eax, 3
nop
jmp 0x1000289a
jne 0x100010b8
jmp 0x10002764
push ebp
xchg cl, cl
dec ebp
inc ebp
or ebp, 0x689c1446
sub ebp, dword [esp + 0x18]
mov ebp, esp
jmp 0x1000141a
inc eax
xchg dl, dl
jmp 0x100024f6
and esp, 0xfffffff8
nop
sub esp, 0x18
nop
mov cl, byte [eax]
nop
and dword [esp + 0x14], 0
nop
push esi
mov cl, cl
xor esi, esi
xchg dx, dx
and dword [esp + 8], esi
mov dl, dl
jmp 0x10001843
je 0x1000267a
jmp 0x10002556
mov byte [ebx], cl
xchg cx, cx
lea ecx, [ebx + 1]
jmp 0x1000185b
inc eax
mov al, al
jmp 0x100019c2
push edi
mov cx, cx
mov dword [esp + 0x14], ecx
xchg al, al
mov dword [esp + 0x10], eax
mov bx, bx
lea ecx, [esp + 0x10]
jmp 0x100019ec
call fcn.100011d2
xchg ebp, ebp
test eax, eax
jmp 0x10001a06
je 0x10002c04
jmp 0x10001cd8
call fcn.100011d2
xchg ebp, ebp
test eax, eax
jmp 0x10001cf7
je 0x1000268b
jmp 0x10001df2
call fcn.100011d2
push ebx
pop ebx
test eax, eax
jmp 0x10001e0d
je 0x10002151
push 0x7c
jmp 0x10001e27
sub dword [esp], 0x78
xor esi, esi
mov eax, eax
add edi, edx
shl edi, cl
inc edi
pop edi
lea ecx, [esp + 0x10]
jmp 0x10001e59
call fcn.100011d2
push edx
pop edx
dec edi
xchg esi, esi
jmp 0x10001ef6
lea esi, [eax + esi*2]
jmp 0x10001f07
jne 0x10001e38
jmp 0x10002006
test esi, esi
jmp 0x10002023
mov eax, dword [esp + 0x14]
jmp 0x1000203d
je 0x10002143
sub ecx, 0x226b54ec
or ecx, ebx
dec cl
sub cl, cl
mov ecx, dword [esp + 0x14]
jmp 0x10002132
sub eax, esi
push edx
pop edx
mov al, byte [eax]
nop
mov byte [ecx], al
mov bl, bl
jmp 0x10002147
mov byte [eax], 0
nop
inc dword [esp + 0x14]
nop
jmp 0x10002c43
mov al, cl
inc eax
mov eax, dword [esp + 0x10]
jmp 0x100023f8
movzx ecx, byte [eax]
jmp 0x10002415
inc dword [esp + 0x10]
nop
xor edx, edx
xchg edi, edi
inc edx
xchg esp, esp
or eax, ebx
shl ax, cl
ror al, cl
inc eax
or eax, dword [esp]
mov eax, ecx
and eax, edx
mov bx, bx
jmp 0x100013e3
inc eax
nop
shr ecx, 1
jmp 0x10002512
jmp 0x10001674
test eax, eax
jmp 0x10002564
je 0x10002680
or edx, ecx
add dl, 0x92
xor dl, 0xc4
add edx, ebx
mov edx, dword [esp + 0x14]
and esi, dword [esp + 8]
add esi, ebx
or esi, 0x22f649eb
xor esi, dword [esp + 0xc]
mov esi, dword [esp + 0x14]
sub edx, ecx
push ebp
pop ebp
jmp 0x10002640
mov dl, byte [edx]
nop
inc dword [esp + 0x14]
mov ecx, ecx
dec eax
xchg ax, ax
mov byte [esi], dl
jmp 0x1000266a
nop
nop
nop
nop
nop
jne 0x1000256a
jmp 0x10002680
mov dword [esp + 0xc], edx
push ecx
pop ecx
mov dword [esp + 8], ecx
mov bl, bl
jmp 0x10002bf2
call fcn.10001202
mov ax, ax
test esi, esi
jmp 0x100026a6
jne 0x1000289f
cmp eax, 2
push ebx
pop ebx
jmp 0x1000111d
lea ecx, [esp + 0x10]
jmp 0x10002787
call fcn.10001202
mov dl, dl
test eax, eax
jmp 0x100027ae
je 0x10002bf2
shr cl, cl
mov ecx, 0x2b186ec8
rol ecx, cl
xor ecx, esp
mov ecx, dword [esp + 0x14]
sub ecx, dword [esp + 8]
nop
xor dl, 0xcc
mov edx, dword [esp + 0x14]
mov cl, byte [ecx]
push ebx
pop ebx
inc dword [esp + 0x14]
xchg ecx, ecx
nop
nop
nop
nop
nop
dec eax
xchg edx, edx
mov byte [edx], cl
jmp 0x100027fa
jne 0x100027b4
jmp 0x10002bf2
jmp 0x100028fe
dec eax
xchg esp, esp
dec eax
xchg al, al
jmp 0x100028fe
mov cx, bx
and ecx, ebx
mov cx, 0x3499
and cx, 0x4675
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx]
jmp 0x10002925
shl eax, 8
jmp 0x10002934
add eax, ecx
mov ecx, ecx
inc dword [esp + 0x10]
nop
lea ecx, [esp + 0x10]
jmp 0x10002955
sub esi, ebx
or esi, 0x7bf03569
sub esi, esi
mov esi, eax
call fcn.10001202
mov eax, eax
jmp 0x100029b5
cmp esi, 0x7d00
push edi
pop edi
jb 0x100029e0
inc eax
nop
jmp 0x100029e0
cmp esi, 0x500
nop
jb 0x100029f1
inc eax
xchg cx, cx
cmp esi, 0x80
nop
jae 0x10002a70
jmp 0x10002a6a
inc eax
xchg al, al
inc eax
nop
test eax, eax
jmp 0x10002a86
je 0x10002bec
or cx, dx
add cx, 0x6702
mov ecx, dword [esp + 0x14]
or edx, 0x48d207d0
mov edx, dword [esp + 0x14]
sub ecx, esi
xchg cx, cx
nop
nop
nop
nop
nop
mov cl, byte [ecx]
nop
inc dword [esp + 0x14]
xchg ebx, ebx
jmp 0x10002b2a
dec eax
xchg bx, bx
mov byte [edx], cl
jmp 0x10002b4a
jne 0x10002a8c
jmp 0x10002bec
mov dword [esp + 8], esi
nop
xor esi, esi
xchg dx, dx
inc esi
mov esi, esi
nop
nop
nop
nop
nop
jmp 0x10002c47
ror eax, cl
sub eax, 0xa15777f
and ax, 0x726f
and eax, 0x6c483965
inc ax
mov eax, dword [esp + 0x10]
inc cl
xor cx, ax
xor cl, 0xa5
and ecx, 0x11cf1637
add ecx, esi
mov ecx, dword [esp + 0x14]
mov al, byte [eax]
mov esi, esi
inc dword [esp + 0x14]
mov bl, bl
inc dword [esp + 0x10]
nop
mov byte [ecx], al
nop
xor esi, esi
xchg al, al
cmp dword [esp + 0xc], 0
mov esi, esi
jmp 0x10002ca0
je 0x100019d3
inc eax
mov ax, 0xc22
or eax, 0x1c757b97
or al, 0x43
inc eax
mov eax, dword [esp + 0x14]
mov edi, 0x15dc1fad
inc edi
mov edi, 0xc0218ce
sub edi, dword [esp + 8]
and edi, 0x5a4c3af2
pop edi
sub eax, ebx
nop
sub esi, 0x39230f09
shl esi, cl
pop esi
sub esp, 0x2a7d4d1a
mov esp, ebp
mov ebp, edx
pop ebp
ret