Function at 0x47b8a6
Capabilities:
Encode data using xor

Disassembly:
fild dword [ebx]
ja 0x47b8c0
int3
jae 0x47b859
aam 4
xchg ecx, eax
sbb al, 0xfb
lea esp, [ebx]
in al, dx
jb 0x47b914
mov bh, 0xc4
cmp al, byte [edi + 0x72]
xchg ecx, eax
movq mm2, qword [ebx - 0x52]
push ebx
scasb al, byte es:[edi]
adc esi, dword [ebp + 0x2be9e79b]
mov al, 0x25
sub ah, 0x3a
pop es
imul edi, dword [esp + ebp*8], 0xffffffb1
mov dword [0x846d6af4], eax
movsd dword es:[edi], dword [esi]
fst qword ss:[bp + di]
mov dword [0x7652f239], eax
jmp 0x806d68f0
dec ebx
xor dword [edi - 7], esi
push edi
pop es
mov dword [0xd40c277c], eax
pop edi
sbb dword [edi + ebx*2], ebx
lcall 0x5cd4, 0x4e113936
pop es
mov edx, 0x685f0517
pop edx
push ecx
jg 0x47b8db
xor byte [edi + esi*2 + 0x28], cl
sahf
fmul qword [ecx + 0x67cc0573]
insb byte es:[edi], dx
jmp 0x566c056a
pop es
sub al, 0x80
xor byte [ebx + 0x18], cl
aaa
dec esp
dec ecx
mov edi, 0x9b7dd6ce
or al, 4
mov bh, 0xe
pop esp
jg 0x47b98d
salc
popfd
mov dh, 0x36
inc ecx
adc byte [ebx + 0x2f6496e9], ah
push 0x3e673901
jb 0x47b986
add dword [ecx], edi
jb 0x47b986
or dh, byte [ecx - 0x508e2ed3]
iretd
sub dword [edi + 0x54], 0xaba7eccd
mov dh, 0x82
outsd dx, dword [esi]
iret
push 0x2ef75c0f
adc byte [eax], dh
jo 0x47b9c0
mov esp, 0x1ecfa4e6
rol dword [ebp - 0x5d4cf0dc], 0x17
lcall 0xb7da, 0xd60c3d11
cwde
xchg ebp, eax
dec ebx
mov edi, 0x34ad1a66
jb 0x47b937
cmpsd dword [esi], dword es:[edi]
in eax, dx
push es
invalid
leave
mov cl, 0xf7
push ds
dec ebp
call 0x570b623f
jne 0x47b970
ret
sub al, 0xd2
pop es
clc
push edi
vpsubsb ymm7, ymm6, ymmword [edi + 0x5d]
sub esp, dword es:[edx + esi - 0x73e84326]
imul edx, ecx, 0xc5872d02
xchg ebp, eax
cld
test dword [edi + 0x62], 0x166ce7e4
push ss
cmp eax, 0x1b432d39
scasd eax, dword es:[edi]
jnp 0x47b9eb
lds ebp, [ecx]
fild dword [edi + esi + 0x7f]
jg 0x47ba7a
aaa
jg 0x47ba7b
jge 0x47ba34
pop ecx
pop ecx
xchg edi, eax
mov word [edi - 0x54], fs
inc esi
leave
ror byte [esi + 0x35], 0x5c
xor eax, 0x7d8c2ed
dec edi
int1
mov bh, 3
xchg edx, eax
mov ebx, dword [edx]
jg 0x47ba8d
cdq
out 0x41, eax
jo 0x47ba67
adc al, cl
mov eax, dword [0x265a42d0]
fild qword [eax]
xor al, byte [esi + 0x55]
adc cl, byte [ecx]
adc eax, 0x47878610
jae 0x47b9ca
push ebp
xchg esi, eax
scasd eax, dword es:[edi]
js 0x47b9c6
xchg edi, eax
xchg byte [edx + 0x53], dh
insd dword es:[edi], dx
xchg ecx, eax
xchg byte [ebx - 0x3f2f1c78], dh
xchg esi, eax
loopne 0x47ba69
sub dword [ecx - 0x687e9457], eax
add al, 0x20
push ss
fcompi st(0)
push esp
xchg esp, eax
mov esp, esi
outsb dx, byte [esi]
xchg ecx, eax
xor eax, 0xe7b86271
xor byte [ecx - 0x2b765ef0], cl
aad 0xa9
mov eax, 0x108930e7
mov eax, dword [0xa9d5d489]
pop esi
jecxz 0x47b9f9
sub eax, 0x83b161fa
popal
mov cl, 0x83
jge 0x47ba15
cmpsd dword [esi], dword es:[edi]
test al, 0xc4
mov byte [0xc0a3b68], al
les esp, [edx + 0xc0a3b68]
mov ebp, 0x96e10ce0
and esp, ecx
loopne 0x47bab3
loope 0x47ba6f
loopne 0x47bab3
cld
xlatb
xchg ebx, eax
popfd
push esi
add byte [eax + 0xd], dh
push ebp
jecxz 0x47ba6d
out dx, eax
ror dword [edx - 0x80], 0xe2
ror dword [edx - 0x80], 0xe2
dec edx
and dl, 0x9e
sahf
sbb dh, byte [ebp - 0x7f593dfc]
xor ecx, edi
adc dword [edx - 0x5b9a833b], 0xb7716fc0
jno 0x47ba5a
movsb byte es:[edi], byte [esi]
push ebx
and byte [ecx - 0x5a], dh
aam 0xea
loop 0x47baa1
dec esi
lahf
mov cl, 1
cmp ecx, dword [ecx + 0x68]
int1
add byte [ebx + 0x78], 0x68
sbb dh, bl
or ebp, eax
xchg al, bh
push ds
mov word [ebx - 0x57576aa8], gs
jo 0x47ba8c
inc ebp
sbb al, 0xae
sbb al, byte [esi + edx + 0x49b14f68]
push eax
ret 0x7711