Function at 0x47c6a8
Capabilities:
Encode data using xor

Disassembly:
push 0xb240140d
test eax, 0x1e25bb67
sub dword [esi - 0x3b], eax
mov cl, 0xc9
inc esi
in eax, 0x94
lodsb al, byte [esi]
bound edi, qword [ecx - 0x2615976a]
in eax, dx
mov edi, 0x312261ca
pop ebx
loop 0x47c697
mov word [ecx + eax*8 - 0x5a], gs
xor dh, byte [edi + 0x2d]
push ebx
outsd dx, dword [esi]
pop es
leave
invalid
jae 0x47c699
add byte [ecx - 0x606045fc], bh
mov ecx, 0x9f9fba04
int1
lodsd eax, dword [esi]
popfd
pop ebp
push 0x33
mov bl, 0xc2
loop 0x47c664
invalid
mov ebx, 0xfc42fed9
fsin
inc edx
cld
push esp
cmp dl, byte [esi - 0x63]
sub byte [ebp - 0x53], bh
sbb word [ebx + ebx*8], bx
inc esi
test esp, ebx
jecxz 0x47c6dc
sbb eax, 0x157d0051
inc eax
sub dword [ecx - 0x3a], edx
jg 0x47c6b9
cli
or byte [edx + 0x4eadffda], dl
xchg ebx, eax
int 0x79
pushal
inc esp
in al, dx
lcall 0x9f08, 0xe96595b2
sbb eax, 0x4ac3f862
push esi
xor al, 0x97
out 0x90, eax
push edi
push ds
aad 0xe3
mov dword [0x73502075], eax
fdiv qword [0xcc483d2]
sub al, 0x1c
mov word [ecx + ebx + 0x15], gs
scasd eax, dword es:[edi]
daa
pushfd
adc ebx, dword [ebx - 0x42dc72a0]
pop edx
jl 0x47c71f
inc ebp
jno 0x47c698
imul ebp, dword [edi + 0x8f20d34], 0xf16e866e
xchg ebx, eax
sub al, 0x55
dec ecx
invalid
xchg esi, eax
xchg ebx, eax
mov eax, 0x3b26cbd
jo 0x47c78e
mov ebp, 0x7003b26c
cmc
cmc
xor ecx, dword [edi - 0x10be4d17]
cmp dword [ebp + 0x6df3188b], ebx
loop 0x47c6d4
xchg ecx, eax
lahf
test cx, cx
and al, byte [eax]
mov cl, 0xe9
lea esp, [esi]
inc ecx
push 0xd70ce099
mov ch, 0x65
or byte [esi + 0x60], ah
xor byte [0x43ebe7c5], al
jmp 0x47c796
dec ebp
lodsd eax, dword [esi]
js 0x47c722
not byte [esi]
adc esp, dword [ebp + 0x62466238]
lodsd eax, dword [esi]
add byte [edi + 0x7d], cl
sub eax, 0xe7f2d602
fdiv st(4), st(0)
jg 0x47c770
add dh, byte [esi + 0x74c74651]
cmp al, 0x5b
bound ecx, qword [esi + 0x778a6424]
popfd
invalid
mov dh, 0xae
cli
dec ebp
inc edi
outsb dx, byte [esi]
xor eax, 0xb26ae1df
jp 0x47c77b
dec esp
add dword [ebx + ebx*4], ebp
aam 0x6d
pop esi
sbb eax, ecx
mov al, 0xde
mov dl, 0xd
xchg ecx, eax
mov al, byte [0xf9797b27]
mov edx, 0x3508aa1
dec ebp
add al, 0x20
jns 0x47c7c5
adc dh, byte [edx - 0x1f7290cf]
add al, 0x2d
push esi
call 0xe5cbf2f9
pop esp
ror dword [ecx], 1
in al, 0xef
out dx, eax
xchg edi, eax
or byte [ecx + 7], cl
jns 0x47c7c6
in eax, dx
daa
xchg esp, eax
fmul dword [esi - 0x14]
inc ecx
in eax, 0x6f
outsd dx, dword [esi]
sbb byte [edi], dl
pop ebx
cmp dword [ebp + 0x21], ecx
jnp 0x47c802
dec edx
invalid
add dl, dh
cdq
sbb al, 0x5a
jle 0x47c84f
mov esp, 0x562d1f0f
cmpsb byte [esi], byte es:[edi]
adc bh, byte [eax - 0x5f1f2872]
cmp eax, 0xb73a0f5a
and byte [edx], al
popfd
xchg edx, eax
cli
jno 0x47c7b7
mov bl, 0x9d
xlatb
and esi, esi
ret 0xffd9
adc ecx, dword [ebx]
jbe 0x47c89f
adc byte [0xcc760dd9], cl
in eax, 0xfb
sub ch, byte [ebx + 0x16]
mov ebx, 0x183e7ac6
push edx
popfd
push esi
inc edx
sbb byte [ebx], 0xe6
adc dh, ch
sbb al, 2
pop eax
inc ebp
inc ebx
sbb eax, eax
fdiv qword [eax - 0x44a93f01]
frstor dword [edi + 0x5e]
push 0xffffffffffffffbf
xlatb
popfd
sub dword fs:[0x5ae80031], 0x59d8e1ca
fsubr dword [edx - 4]
and cl, bh
lahf
invalid
salc
mov ebx, 0xf1309058
pop ss
lea edx, [ebx]
sbb ah, byte [esi + 0x49537a36]
imul edi, dword [esi - 0x3e], 0xad32d22a
bound ebp, qword [ebp + 0x489a6f5c]
mov ss, edi
pop edi
leave
fdivr qword [edx + 0x2a]
push es
outsb dx, byte [esi]
test eax, 0x7a82d630
sbb edx, dword [esi]
loopne 0x47c947
xor al, byte [esi + 0x71]
invalid
invalid