Function at 0x138f1de
Capabilities:
Encode data using xor

Disassembly:
jmp 0x161f5f0
neg ecx
and ecx, eax
neg edx
and eax, 0xcd054512
xor ecx, eax
rol edx, 3
xor ebx, edx
sal cl, 0x82
adc edi, edx
sar al, 0x41
xor ecx, edi
jmp ecx
xor al, byte [eax]
fidivr word [edx]
movsb byte es:[edi], byte [esi]
lodsd eax, dword [esi]
fstp qword [0x989c3779]
pop ebx
or al, 0xa3
sbb bh, byte [ecx - 0x6a]
scasb al, byte es:[edi]
push edi
mov edx, 0x2e184694
xor al, 0x2e
push esp
into
adc ecx, dword [0x5846d3cd]
test byte [eax + edx*8 - 0x38df8526], al
test byte [eax], 0xf1
adc dword [0xfcc774c], ecx
aam 0xd8
and dword [eax], eax
out 0x83, al
adc dl, byte [edi - 0x63]
invalid
movzx ebx, byte [edx]
push 0x5bb480b2
xor ebx, ecx
and ebx, 0xff
push 0x2ea66daf
mov ebx, dword [ebx*4 + 0x16fcdc4]
shr ecx, 8
not word [esp]
xor ecx, ebx
push 0xbb193b21
shl word [esp + 5], 9
jp 0x16c2349
int 0x6f
add ecx, eax
jmp 0x5649df9a
xadd dx, cx
jge 0x1541848
movsb byte es:[edi], byte [esi]
inc byte [ecx]
aaa
jae 0x1527989
mov word [ecx + 0x7a], fs
adc dword [ecx - 0x5f], 0x7e
mov ecx, edi
jns 0x15279cd
aaa
mov al, bl
out 0xde, al
sub dword [edi + eax*2 - 0x41], esi
stosd dword es:[edi], eax
pop edi
jb 0x1527a15
out 0x49, al
or eax, esi
mov edx, dword [eax - 0x69849a3c]
mov esi, 0x726e130c
ret 0xc877
je 0x1527a69
imul ecx, dword [ebx], 0xfffffffa
cwde
fild qword [0x19aa624f]
pop ebp
invalid
sbb dword [ebp - 0x71], ebx
je 0x1527a8d
xor al, 0x62
push esi
ljmp 0x25cc
loop 0x1527aaa
and esp, dword [esi - 0x63]
mov edx, 0x22a2bb5d
sub byte [edx], dh
fisttp word [edi]
adc eax, 0xe52f2be5
test dword [esi + 0x627a1676], edi
mov esi, 0x627a1676
xchg esi, eax
mov dl, bh
retf
sbb edi, dword [edx - 0x56]
jp 0x1527a0a
out 0x3a, al
cmpsd dword [esi], dword es:[edi]
rol dword [ebp - 0x3c2a356], cl
jp 0x1527a5e
or esi, dword [esi + 0x674b7bf9]
inc esi
hlt
jns 0x1527b02
mov ebp, ebx
jnp 0x1527ac9
xchg edx, eax
jecxz 0x1527b11
mov edx, 0xfef7f5db
movsb byte es:[edi], byte [esi]
out dx, eax
mov eax, dword [0x7288621d]
mov ecx, 0x29a1e162
and al, 0x79
loope 0x1527a47
sub dword [ecx + edi*2], esp
popfd
loopne 0x1527a31
imul ecx, dword [ecx + ecx*4], 0xffffffcd
wait
lcall 0xff99, 0xd2670988
mov dl, 0xcc
push edi
iretd
invalid
test al, 0x80
push 0xffffffffffffffe9
xchg ecx, eax
movsb byte es:[edi], byte [esi]
jg 0x1527a5c
arpl word [0x9c58a4a7], ax
adc cl, dh
cmp byte [ebp - 0x5826de62], bl
clc
bound eax, qword [edx]
arpl word [0x4e11a494], ax
sbb ah, byte [ebp + 0x20]
and esp, 0xa68f6653
and byte gs:[ecx - 0x7099ac1c], al
cmpsb byte [esi], byte es:[edi]
invalid
xor dword [ebp - 0x66], ecx
cmpsd dword [esi], dword es:[edi]
test eax, 0x89cdf9dd
outsd dx, dword [esi]
mov bl, byte [eax + 0xb]
jns 0x1527abf
adc byte [ebx - 0x28], ah
push ebp
and edi, dword [esi]
je 0x1527aa4
fcom dword [ebp + 0x23]
je 0x1527aa4
in al, dx
push ebp
sub dl, byte [eax]
jns 0x1527b42
inc eax
pushfd
pop ebp
sub ah, byte [ebx + 0x62]
int 0xb5
scasd eax, dword es:[edi]
fadd st(7), st(0)
xchg ecx, eax
cmc
mov ah, 0x8b
add al, 0x6c
or ebx, dword [ecx + 0x7d]
adc ah, bl
int1
pop ecx
jge 0x1527b35
jecxz 0x1527b16
lds edi, [eax]
xchg edx, eax
pop ss
test byte [edx + 0x60], 0xf6
or byte [edx - 0x24], dh
jp 0x1527ae9
lahf
enter 0x7a22, 0xffffffffffffffb7
jp 0x1527aee
arpl word [eax], di
das
jp 0x1527b81
test esp, ebx
rol byte [ebp + 0x82cf9e7], 0x7a
sub al, 8
jp 0x1527b4c
push es
imul esi, dword [0xa88a527a], 0xc785e8e5
in eax, 0xe8
test edi, eax
xchg dword [eax], eax
jp 0x1527b45
int 7
cmc
xor byte [edx + 0x42], bh
in al, dx
cmp byte [edx + 0x6a], bh
push 0xffffffffffffffea
mov eax, 0xac4a85f0
and bl, bh
jp 0x1527b50
adc ebp, dword [ecx - 0xec8426]
pop ecx
xlatb
jnp 0x1527b20
jno 0x1527b32
cmp byte [edi + esi*4 + 0x7bf04d45], al
mov edx, 0xbe7bcd08
jmp 0x150fcf8
rol eax, 1
lea ecx, [edx + edx*2 + 0x6ab8ab2a]
bswap eax
ror eax, 2
neg eax
sal cx, 0xa3
dec ecx
xor ebx, eax
sar edx, 0x57
xor cl, dh
adc edi, eax
xchg edx, ecx
mov edx, dword [ebp + ecx*8 - 0x288]
mov eax, 0xe0ae1396
mov eax, dword [ebp + ecx - 0x4d]
bts ecx, 0xb8
btr cx, 0xaf
setb cl
mov ecx, dword [ecx + ebp - 0xfffff8]
push 0xc1020aab
adc ebp, 4
div ecx
mov dword [ebp], edx
mov edx, 0xcb25928b
add edx, 0x678c062d
lea ecx, [edx*8 + 0x5b0879d]
mov dword [ebp + edx*2 - 0x6563316c], eax
mov dword [esp + edx - 0x32b198b8], edi
ret
lea esp, [esp + 0x1c]
jne 0x1527970
mov edx, 0x30898ca2
pop ebx
mov edx, 0xc585d43f
ror edx, 0x50
mov eax, edx
not ecx
sbb edx, eax
push edx
xor dword [esp], eax
mov dword [edi], ecx
mov eax, dword [ebp]
shl dl, 0x64
lea ecx, [edx*8 + 0x11bdf138]
neg edx
lea ebp, [edx + ebp - 0xc]
cmova edx, ecx
xor eax, ebx
xchg dword [esp + edx - 0x10], ecx
or byte [esp + ecx - 0x2bc03a78], dl
not eax
rol dword [esp + ecx - 0x2bc03a7a], 0x32
sbb edx, ecx
jb 0x23d7875
inc edx
push 0x3119705
xor ecx, 0x9e290f87
push 0xea8bbb37
dec eax
call fcn.02296ee9
sar dx, 0xa3
or dl, 0x8a
adc al, 0x24
ror dx, 0x48
shl dl, 3
xor bl, al
neg dx
push edi
shl dl, 0x84
rol dx, 0xa4
push ebp
push ebx
call fcn.013edf32
mov cl, byte [edx + esi - 0x3834e1ad]
shr dx, 0x4b
lea esi, [esi + edx*2 - 0x70680036]
lea edx, [edx + edx*2 + 0x49271001]
shl dl, 0xa4
shl eax, cl
sub edx, edx
bts edx, edx
inc dl
mov dword [esi + edx*2 - 4], eax
btr dx, dx
ror edx, 0xd6
mov eax, edx
mov edx, dword [ebp + edx*2 - 0x1000]
inc eax
ror ax, 0xe
lea ebp, [eax + ebp - 0x2000]
xor edx, ebx
bt ax, 0x9b
movsx ecx, ax
sbb ecx, 0x158a6d9f
ror edx, 2
rol al, cl
add ax, ax
dec edx
jmp 0x1433a09
rol eax, 2
neg eax
btr cx, 0x1e
not eax
not byte [esp + ecx*2 - 0x578074f4]
dec dl
xor ebx, eax
xchg cx, dx
btc dx, 0xaf
adc esi, eax
mov dword [esp + ecx - 0x2bc0c594], esi
ret