Function at 0x47f88b
Capabilities:
Encode data using xor

Disassembly:
adc dword [ebp + 0x2f], ecx
inc edx
fild word [ebx - 0x3e637f23]
lcall 0x2f8f, 0xd485d9c7
dec edx
push ss
dec eax
aad 0x89
aam 0x8e
xchg ecx, eax
int3
fadd qword [ecx + 0x461b86dc]
sbb al, byte [edi - 0x26]
xchg edx, ebx
xchg dword [edx - 0x263b6539], ebx
test cl, bl
test dword [eax], ebx
lcall 0x1885, 0xd984d9c4
dec edx
push ss
dec ecx
aam 0x89
ror byte [ecx + edx*4 - 0x10326f34], cl
sbb bh, 0x83
push ds
inc eax
sbb eax, 0xda87db41
test byte [eax - 0x29346836], bl
fiadd dword [eax + ebx*4 - 0x29346836]
mov ebx, edx
mov ss, word [edx]
dec edi
adc dword [eax + edx*8 - 0x73], ecx
ror byte [ebp + 0x3019c2af], 1
sbb dword [eax], esi
test dword [ebx - 0x19], esi
jae 0x47f7a6
je 0x47f7c2
mov ecx, 0x7d0fba2f
call 0xa9848048
das
mov edx, 0x7de87d0f
mov byte [ecx + ebp*4], bh
cmp al, 0x89
jg 0x47f7ba
jmp 0x47f84e
jle 0x47f805
mov cl, 0x24
mov al, 5
jo 0x47f7bd
jae 0x47f760
xor eax, 0x748035a0
loope 0x47f854
add dword [esi + 0x7a0fbb2d], esi
call 0x94878168
xchg esp, eax
xor dword [eax + esi*2 - 0x4cfa8f1b], eax
mov bl, 6
in eax, 0x70
add eax, 0x6b326b3
jb 0x47f7de
je 0x47f77c
cmp byte [esi - 0x118471c5], ch
jg 0x47f80c
and dword [0xe77206b3], 0xa2378174
cmp dword ss:[ecx - 0x12], 0x7a
jb 0x47f7ee
je 0x47f78a
aaa
mov byte [0xee798336], al
cmp dword [ecx - 0x12], 0x7a
jp 0x47f819
or byte [ebp + 0x7f0abc29], bh
mov ebp, 0x7f0abc29
jg 0x47f801
ljmp 0x8d36:0xa1308421
and dword [eax + esi + 0x7a8d36a1], eax
out dx, eax
xor byte [ecx - 0x108572ca], ah
jg 0x47f855
add dword [ecx + esi*4], esp
add eax, 0x8670e570
jo 0x47f80c
jo 0x47f7af
xor esp, dword [edi - 0x188d78ce]
jne 0x47f831
mov ch, 0x20
mov ch, 1
je 0x47f819
ja 0x47f7bc
mov dword ss:[0xed798c36], eax
in eax, dx
js 0x47f84e
mov ebx, 0x7d0fba2e
inc esp
jo 0x47f7ce
xor byte [ebp - 0x198c79cd], ah
out 0x73, al
push es
jae 0x47f857
mov bl, 0x27
mov dl, 7
pop es
jb 0x47f83e
jb 0x47f7e0
xor ah, byte [edi - 0x1f8a7fce]
jne 0x47f861
cmpsd dword [esi], dword es:[edi]
xor al, byte [eax + 0x75e075]
mov ch, 0x20
mov ch, 0
jne 0x47f847
je 0x47f7ea
xor dword [ecx], 0xe2778134
xor al, 0xa1
xor al, 0x81
ja 0x47f851
ja 0x47f873
mov bh, 0x22
mov dh, 3
jbe 0x47f85a
jbe 0x47f805
invalid
cmp dword [eax + edi + 0x7fe97a8d], ebp
or ah, byte [ecx]
and al, 0xb0
push es
jb 0x47f868
ja 0x47f815
cmp byte [ebp - 0x1b8efbc6], ch
jo 0x47f897
cmp al, byte [ecx + esi*2]
in al, 0x70
push es
mov dl, 0x27
daa
mov ch, 0
je 0x47f878
ja 0x47f825
cmp dword [eax + edi + 0x7eee788d], ebp
xor al, 0xb0
and byte [esp + esi - 0x7f8a188d], bh
xor eax, 0xa18f38a1
out 0x41, al
cmp byte [ebp + 0x347eee78], cl
mov al, 0x20
mov esp, 0x75e77334
xor byte [0xa18f38a1], 0xe6
inc ecx
mov eax, dword [0xb50041e6]
and byte [ebp + 0x75e07500], dh
add byte [ebp + 0x7500b520], dh
loopne 0x47f92d
xor byte [esi], 0xac
cmp byte [esi + 0x347fea7d], cl
mov cl, 0x24
mov al, 5
jae 0x47f8ad
jae 0x47f84f
xor esp, dword [esi - 0x1e8a78ce]
ja 0x47f8d3
mov edx, 0x2609bd28
loop 0x47f94a
mov ebp, 0x72e22609
sub dword [esp + ebx*4], 0x3c
mov word [0x970979ee], ds
and byte [ecx + 0x73e39201], dh
mov esp, 0x8e3eac1c
pop ds
jmp 0x20ddfd67
out dx, al
jg 0x47f892
sbb ch, byte [ebx - 0x1aea7bcc]
jbe 0x47f917
xchg edi, eax
daa
mov bh, 0
nop
loope 0x47f98a
jb 0x47f89b
adc byte [ebx], 0xa3
or al, 0x8c
sbb al, 0xed
adc esp, dword [ebx - 0x12e373f4]
jge 0x47f92f
sahf
das
mov eax, 0x79e99808
mov bl, byte [edx]
stosb byte es:[edi], al
cmp cl, byte [ebx + 0x574eb1b]
sbb ebp, ebx
je 0x47f936
xchg esi, eax
daa
mov bh, 7
xchg edi, eax
out 0x77, eax
xchg dword [eax], edx
pushfd
mov ds, word ds:[esi]
out dx, al
jle 0x47f94f
sahf
mov esi, 0x7fef9e0e
invalid
scasd eax, dword es:[edi]
aas
invalid
js 0x47f959
cwde
sub byte [eax + 0x79e99908], bh
mov dword [ecx], ebx
test eax, 0xea1a8939
sbb dword [ecx - 0x15e576c7], ebp
jp 0x47f96b
lcall 0x7beb, 0x9b0aba2a
mov ebx, dword [ebx]
stosd dword es:[edi], eax
sbb ebp, dword [ebx - 0x13e343c5]
jl 0x47f97d
cmp edi, dword [esp + ebx - 0x63f38314]
pushfd
sub al, 0xbc
or al, 0x9c
in al, dx
jge 0x47f906
add byte [ebp + 0x5cafe40c], ch
scasd eax, dword es:[edi]
pop esp
and eax, 0xbdf2e91c
pop ss
inc edx
jecxz 0x47f9f2
fdiv qword [ecx]
or ch, byte [edx]
fldenv [esp + edx*2]
inc esp
mov word [esp + eax*8 + 0x492caf89], fs
dec esp
in eax, 0xac
inc edi
or dword [eax + edi - 0x58], eax
or al, 0x7c
xchg ebp, eax
call 0x8110b621
jne 0x47f969
out dx, eax
test byte [edx + 0x2a], 0x94
invalid
nop
in al, 0x2b
and byte [eax], dl
js 0x47f9f0
mov al, byte [0x38c8d8a2]
js 0x47f9bc
in eax, dx
add byte [edi + 0x3e], ch
clc
fsubr dword [edi]
cdq
rcr dl, 1
insd dword es:[edi], dx
in eax, dx
sub al, 0x39
or al, 0xd9
mov byte [ecx], cl
mov ecx, fs
adc al, 0x6b
sbb bl, byte [esp + ecx + 0x62dd3463]
fld xword [edi + 0x5c39df1c]
pop edi
pop esp
aas
adc esi, esi
mov word [ebx + 0x4485f0c], es
sub al, 0x9c
add al, 0x2c
pushfd
rol byte es:[esi - 0x63], 1
jae 0x47f9b5
dec ebx
cmpsd dword [esi], dword es:[edi]
xor al, 0xbc
aas
mov bh, 0xe2
xor al, byte [ecx - 0x6f]
mov ecx, ss
xor esp, ecx
popal
push ecx
test eax, 0xd10bbb4f
add dword [ecx - 0x261eee98], ebx
stc
push edx
adc byte [ebx - 0x10], 0x23
popal
mov cl, 0x81
inc ecx
shl byte [ebp - 0x48], 1
inc ecx
loope 0x47fa5b
sbb byte [esi + 0x72c1be25], cl
test dword [ecx - 0x648eaeff], esi
dec edi
invalid
push edi
sub byte [edi - 0x25], 0xc2
pop edi
and byte [edx + 0x1c23f321], cl
mov al, byte [0xc4245c60]
add dword [ecx], ecx
sub edx, eax
xor eax, 0x8dedfcdc
or al, 0x31
and byte [eax - 0x72b254d9], 0x59
cmp eax, 0x159b5323
mov edx, 0x6351e33d
das
inc ecx
aam 0xa8
mov al, 1
paddusb mm2, qword [0x3d8d9923]
sub ebp, ebx
and cl, byte [esi + 0x2f61672e]
pop ds
mov bh, 0xc1
mov edx, 0x3226c001
shl byte [esi], 0x32
adc byte [0xf9596ea1], bh
popal
mov cl, 0xb1
loope 0x47fb30
aaa
inc esp
push es
popal
jno 0x47fa9f
cmp eax, dword [edi]
cmp dword [edx], eax
push ecx
dec ebx
push ebp
add eax, 0x407fa192
jne 0x47faa3
insd dword es:[edi], dx
aam 0x99
arpl word [ebx + 0x5d60a044], si
xor byte [ecx + 0xd], dl
inc edi
jmp 0xb9592e9b
cdq
dec edi
mov ecx, dword [ecx]
cmp al, 0x61
pop edi
cli
int1
mov bh, 0x55
sub al, 0xc3
jle 0x47fac6
je 0x47fa9f
add dword [ebx + 0x7f], ebx
cmp al, 0x81
imul edx, ecx, 0x9c1c19c
loopne 0x47fb60
in eax, dx
mov dl, 0xb2
pop esp
pop edx
push esp
cmp al, 0xc1
invalid
ror dword [edi + 0x219f4025], 0xc9
loope 0x47fb40
invalid
dec ebp
jg 0x47fba7
jne 0x47fb59
xor dword [eax], eax
push 0xffffffffffffffd7
or al, 0xf6
jp 0x47fb0b
test dword [edx + ebp + 0x288a1625], esi
test al, 3
cmp dword [ecx], esi
mov dword [0x97a39f67], eax
mov esp, 0xdb6e109d
cmp eax, ecx
imul esp, dword [ebx - 0x23643c64], 0x6886e523
in eax, 0x5d
or byte [eax + 0x63], al
adc dh, dl
ret 0xbe53
lahf
mov dword [0x109dbc97], eax
outsb dx, byte [esi]
fstp xword [ecx]
enter 0xffffffffffffa369, 0xffffffffffffff9c
ret
retf 0x99b1