Function at 0xaab643
Capabilities:
Encode data using xor

Disassembly:
jmp fcn.00a506fb
lea esi, [ecx + esi*4 + 0x33a666f7]
neg dword [esp + 0x10]
cmp ebp, 0x2c2d1219
push edx
mov edx, ebp
mov edx, dword [esp]
jo 0xaeb932
lea ecx, [ebp*8 + 0x2b8189a]
mov edi, 0x6f3e1c0f
test si, 0xb8
movsx esi, byte [esp + 0x14]
lea esi, [ebp + 0x2bf66ea9]
mov ecx, 0x6a4b6a27
mov dword [esp + 0x14], 0xc29637b
not edi
cmovo di, bp
jb 0xaddf0c
add byte [esp + 0x14], cl
lea ebp, [edi*4 + 0x3a3178c5]
or word [esp + 0x14], 0xbca
add dword [esp + 0x18], 0x36d90
and ebp, dword [esp + 0x14]
jb 0xaddf08
xor edi, 0x106f5ceb
add di, 0x55cd
and ecx, 0x5d7e5243
lea ebp, [esi + esi*4 + 0x48125415]
add dword [esp + 8], 0xff9e7f0a
not ecx
lea ebp, [ebp*4 + 0x24840f8e]
mov esi, dword [esp + 0x1c]
call fcn.00a4875b
neg ecx
sub ecx, 0x41824c5d
clc
cmc
jmp 0xab599b
jmp fcn.009b2fb3
jmp fcn.009bb1cb
dec eax
arpl ax, ax
cmc
dec eax
add edi, eax
jmp 0x9c6cad
push esi
jne 0x93f953
stc
ror eax, 3
bswap eax
ror eax, 3
inc ecx
test dl, 0xed
push esi
xor dword [esp], eax
adc esi, 0x23b952b4
pop esi
jmp 0xa5685d
ror ecx, 1
xor ebx, ecx
clc
cmp di, 0x7af9
add ebp, ecx
jmp 0x9e4a4e
push ebp
bswap ebx
push ecx
push esi
mov ecx, 0x4d22549e
mov esi, 0x12f86a51
mov ebp, 0x77cc09fc
call fcn.00b6fcd7
dec ecx
rol ecx, 3
test ecx, edi
sub ecx, 0x713c5a77
bswap ecx
xor ebx, ecx
stc
test di, 0x24e7
add ebp, ecx
jmp 0x87d706
neg ebp
not bp
mov ebp, dword [esp]
call fcn.00b64753
push cs
add eax, 0xdfa6c937
salc
push 0xffffffffffffffec
mov dword [esi], ebp
leave
push 0xffffffffffffff9d
inc esp
inc esi
jge 0xaeb9d0
shr byte [edi], 0x15
sti
retf 0xaa6e
mov eax, dword [0x63fd4189]
xchg ebx, eax
and edi, dword [0xe7210695]
mov dword [ecx - 3], eax
arpl word [ebx + 0x6953d23], dx
and edi, esp
add byte [edx + 0x793425df], 0xbd
das
test dword [edx], ebp
add edx, dword [0xbbc66498]
inc edx
xor eax, 0xd61fd453
push es
cmp al, 0xa7
in al, dx
cmp eax, 0xc5c8dbd0
xchg edx, ebp
fcmovne st(0), st(5)
dec ebp
insd dword es:[edi], dx
jl 0xaeb95f
add byte [edi], bl
xor ah, 0x58
hlt
inc ebx
jb 0xaeb95e
mov bl, 0xa4
mov ch, 0xba
test al, 0xdc
mov esp, 0xd353bb1c
push ss
rol byte [edx], 1
jg 0xaeba2f
xor dword [edx - 0x7f], esi
mov ebp, 0xf8c22110
push edi
push 0x2e
mov esp, 0x3a085de5
dec edx
mov ebx, 0x69c497f
xchg esi, eax
out 0xf8, eax
dec ebp
and dl, byte [edi - 0x97a7747]
sub byte [ebx + 0x638aa819], ah
ljmp 0xf85c
cmp esi, dword [esi + 0x64]
cmpsd dword [esi], dword es:[edi]
and dword [ecx], ebx
push edx
or ecx, edi
and cl, bl
test eax, 0x6c9ef4
cmpsd dword [esi], dword es:[edi]
sbb ah, al
bnd jae 0xaeba64
iretd
sahf
insb byte es:[edi], dx
add byte [edi + 0x73f2c418], ah
pop ds
xor al, 0x92
mov ebp, 0xe8540192
aaa
fstp st(7)
push ebx
mov ebp, dword [esi + 0x36]
movsd dword es:[edi], dword [esi]
mov cl, 0x91
invalid
pushal
mov ebx, 0xa84c8e39
or dl, byte [edx]
fisub dword [esi + 0x6895f373]
mov fs, word [ecx - 0x16693639]
xchg byte [ecx], al
push es
cmp dword [0x93dac88c], esi
xchg edx, eax
cmp edx, dword [esi + edi]
cmpsd dword [esi], dword es:[edi]
dec esp
test al, 0xa
adc bl, dl
movsb byte es:[edi], byte [esi]
jae 0xaeba60
xchg ebp, eax
push 0xc9c7a18e
xchg esi, eax
jmp 0x39b4bbff
jbe 0xaeba83
add eax, 0x1edcb14c
and edx, eax
out dx, eax
fld qword [eax]
mov esp, dword [ebx + edi*8 - 0x56416d1f]
push esi
push edi
mov dword [esi + 0x5c], eax
add esi, dword [esi - 0x4b]
add eax, eax
sbb esp, dword [ebp + 0x1e]
int1
xor dl, ah
lodsd eax, dword [esi]
sub byte [esi], ah
wait
pop ebx
jo 0xaeba37
and dword [edx + esi*8 - 0x31], 0xbec33379
ja 0xaeba3c
imul esi, dword [edi - 0x47], 0xa3dbc7d4
mov edi, 0xa12f83b6
mov ecx, 0x9c66b9c7
dec esi
les ebx, [ecx + 0x6b786eb2]
test al, 0xb2
or dl, byte [eax + 0x46]
or eax, 0x3910c73
cmp eax, 0xe259f770
or eax, 0xd0dfb2c1
sahf
jb 0xaebad9
invalid
add eax, dword [ecx + 0x59f770f8]
loop 0xaebaee
sal dword [edx + 0x729ed0df], 0xf1
mov eax, dword [0xdb6fd414]
xor dword [esi + eax*4], edi
cmp al, 0x86
mov es, word [ecx + eax*2]
mov eax, dword [0x3d73ea4e]
jae 0xaebb35
mov word es:[eax - 0x18], ds
mov byte [0x64837f0d], al
insd dword es:[edi], dx
jge 0xaebb66
invalid
arpl cx, sp
xchg ecx, eax
scasb al, byte es:[edi]
js 0xaebb39
fld qword ss:[ecx - 0x59]
loopne 0xaebaf6
sar byte [edx + 0x69], 0xd6
jp 0xaebba1
salc
cmp dword [ebx], eax
popfd
jns 0xaebac5
mov bh, bh
int1
add dword [edx + 0x1ee0e97], esp
stosd dword es:[edi], eax
std
in al, 0x61
push ss
dec esi
cwde
in eax, dx
pop ss
jle 0xaebb2a
inc edi
arpl di, cx
push 0xfffffffffffffff1
pop ecx
xchg byte [ebp - 0x72], ah
xor eax, 0xc85cbd11
inc edx
clc
cmp eax, 0x3791d3cb
aaa
mov al, byte [0x3efa6093]
jb 0xaebaf8
inc eax
std
lodsd eax, dword [esi]
out 0x3c, eax
or al, 0xb7
jne 0xaebbc3
push ss
retf 0xbcf4
pop edi
aam 0xa5
jb 0xaebb39
pop edx
jle 0xaebb52
add esp, esp
pop esi
leave
loop 0xaebb85
test eax, 0xd60c87ae
aad 0x1f
or edi, esi
imul edx, dword [edi + 0x4692e520], 0xffffffa6
inc esi
cmpsb byte [esi], byte es:[edi]
and eax, 0x4d6ffdd4
or edx, dword [eax - 0x6f7719b4]
add eax, 0x6e46e96b
int3
xchg ebx, eax
sbb dword [esi - 0x12cc51b9], ebx
fstp qword [ecx - 0x5a74e35f]
push es
fcomp qword [edx]
mov word [ecx - 0xe7f2b2c], gs
mov ecx, 0xbce97a00
mov word [ecx], ds
fimul dword [edi + 0x2ca38f79]
inc ebp
loop 0xaebb8a
sal byte [edx + 0x756634a2], cl
outsd dx, dword [esi]
mov dl, 0xa2
xor al, 0x66
jne 0xaebc61
push esp
adc ch, byte [ecx - 0x76]
cdq
in al, dx
adc eax, 0x623c8da0
pop esp
dec edi
push cs
lahf
js 0xaebc75
aam 0x50
mov al, 0x72
pop ecx
mov ss, word [eax + ebx*8 + 0x5156dd31]
pop ebx
mov al, byte [0xe6596823]
loope 0xaebc14
out 0xe1, al
std
cdq
movsb byte es:[edi], byte [esi]
std
sar dword [ecx], 0x38
mov fs, word [eax]
mov esp, 0x7148cf14
jo 0xaebc08
pushal
xchg ebx, eax
jg 0xaebca1
invalid
das
mov ch, 0x6b
pop edx
int 0xf6
cwde
fdivr st(1)
jb 0xaebbec
test byte [ebp - 0x5ace54e3], ah
sbb edx, dword [edx]
fcomp st(6)
pop ecx
imul eax, dword [eax], 0x64225a9c
stc
sahf
movsd dword es:[edi], dword [esi]
sbb eax, 0x1ba531ab
adc bl, al
ficomp word [ecx + 0x69]
add byte [edx + ebx*2 - 0x61069bde], bl
pop edx
and ah, byte [ecx + edi*8 - 0x62]
jno 0xaebc03
mov ecx, 0x4d2b7a1f
loope 0xaebc67
int 0x62
pop esi
mov al, 0xeb
add dword [ebp - 0x13e753e3], eax
jnp 0xaebc66
mov ebp, 0x18bd6f5a
xor eax, 0xf409ce32
or esp, esi
pop ebp
jb 0xaebd12
cld
stosd dword es:[edi], eax
jb 0xaebca8
bnd js 0xaebc98
int1
invalid
jno 0xaebd02
xchg edx, eax
scasd eax, dword es:[edi]
outsd dx, dword [esi]
cmp bl, byte [edi + 0x52a88f68]
cdq
sbb eax, 0x7a47b880
js 0xaebcfc
leave
nop
sbb dword [ebp + 0x3b], ecx
fnsave dword [ecx]
pop ebx
jg 0xaebd2a
mov al, byte [0xf42bacfc]
js 0xaebc5d
invalid
invalid
fist dword [ebx - 0x5250d6a1]
aaa
sub bh, byte [ebx - 0x3bb7cdf0]
adc al, 9
push 0x875faad0
mov al, 0xba
dec ebp
dec eax
fstp xword [ebp + ebp - 0x33]
iretd
mov edx, 0x7cdb484d
sub eax, 0xee4ecfcd
int 0xcf
dec esi
out dx, al
add ebx, dword cs:[edx + 0xd]
inc ecx
sbb byte [ebx - 0x530a7860], al
sub eax, 0xcf6ea816
pop eax
push esp
pop dword [edx - 0x7878561d]
inc esi
mov ebx, 0xa06d17cc
push ebx
clc
jnp 0xaebce7
push ss
test al, 0x6e
iretd
ja 0xaebcd1
cmpsb byte [esi], byte es:[edi]
retf 0x345f