Function at 0x494459
Capabilities:
Encode data using xor

Disassembly:
js 0x494252
pushal
push 0xb21c4dc6
push esi
mov dl, 0x56
test al, 0xfb
cld
mov cl, 0x5a
nop
mov edx, 0x7cd745e9
and dword [ecx], ebp
adc byte [edi], bl
mov al, byte [0x78bdddfd]
ficomp dword [ebx + 0x41c853ba]
wait
push eax
push ebx
enter 0xffffffffffff9b41, 0x50
in al, 0xb5
mov edx, 0xae41ee47
xor eax, 0xa6fcf60a
insb byte es:[edi], dx
mov dl, byte [0x46df4ab7]
fimul dword [edi + 0x5af2baba]
outsb dx, byte [esi]
fild word [esi - 0x26]
invalid
mov edx, 0x8c6e5af2
iretd
mov edi, cs
ficom word [ecx]
sti
push esi
mov al, byte ds:[0xc7b1769a]
cmp bh, byte [esp + edi*4 - 0x5d]
jbe 0x49421e
lcall 0xbc7c, 0x3ac7b176
mov dword [0x44db676], eax
mov bl, ah
invalid
dec ebp
add al, 0x8a
fmul qword [edi - 0x270bc515]
mov dl, byte fs:[edi]
stosb byte es:[edi], al
arpl bx, sp
mov cl, 0xc0
jge 0x494237
jae 0x494217
adc eax, 0xca76708d
push 0x5fb0ed23
pop edi
xchg byte [ebp - 0x3d], bh
jge 0x49424d
jge 0x49425e
lahf
mov al, byte [0x57aa8902]
salc
sbb byte [esi - 0x5496754e], bl
inc esp
mov ebx, 0xf86ef81e
jl 0x49431e
mov esi, dword [edx + 0x53f69a19]
pop ebx
cmp al, dh
jbe 0x494250
xchg byte [eax - 0x38], ah
jecxz 0x494288
adc byte [eax + edx - 0x76], ch
jne 0x494256
mov dword [0xfbf93fad], eax
lahf
cmc
add dword [eax - 0x7c], ebx
jnp 0x494286
sub ebp, edx
adc ah, byte [ebp - 0x2980b91a]
jnp 0x494341
cmp eax, dword [ebx + 0xa]
and dword [ecx], 0x6da05cf1
xlatb
dec ecx
pushal
cmp al, 0xec
in al, dx
mov al, byte [0xf549e59c]
xor eax, 0xda241eff
xchg esi, eax
pushal
inc esi
pop esi
cmp byte [eax + 0x5af635b8], al
sub al, 0xaa
rcr eax, 0x24
mov ebx, 0x9e8cea25
and al, 0xf
jp 0x494309
push 0x36
xchg esi, eax
sahf
xchg edi, eax
invalid
or bh, byte [edi + 0x5b]
xchg byte [ebx + 0xa5affd4], bh
push ss
sti
fdiv qword [edi]
sbb eax, 0x686e9e29
xchg ebx, eax
sbb ebp, dword [ecx + 0x7dba8ab2]
daa
jno 0x494311
mov edx, 0xee71277d
salc
add edi, dword [edi - 0x3377a0a3]
mov bh, 0xd6
int1
fstp dword [esi - 0x201ed854]
jle 0x4942bf
mov ecx, 0x7e3f3198
add eax, 0xd27f61bf
fsubp st(7)
test dword [edx - 0x75], edi
push edi
lahf
hlt
cdq
popal
cmp ah, byte ss:[edi - 0x52e95d83]
jge 0x494310
push ss
lodsd eax, dword [esi]
mov edx, 0xfb9318d
pop ebp
jl 0x494306
jb 0x494390
inc ecx
das
fidiv dword [eax - 0x6e]
and dword [edi - 0x88d46c8], edi
popfd
jmp 0x49436c
and eax, 0x634d0f6a
pop ds
ficomp word [edx + 0x53fdc39d]
aaa
sub byte [ebx], 0x6b
sti
pop ss
loop 0x494367
adc edi, dword [esi + 5]
dec ebx
cwde
adc ebp, 0x173e5ee5
pop esi
pop ss
xlatb
xchg dword [edx - 0x2e], esp
dec ebx
cmpsd dword [esi], dword es:[edi]
mov bh, 0x48
mov edx, 0xcb1d571e
xor eax, 0x60bd57e8
push edi
push di
push ax
in al, dx
ret 0xe37f
lodsb al, byte [esi]
xor eax, edx
add dword [ecx - 0x13fe3a29], ebp
mov cl, 0xda
jbe 0x4943a7
sbb al, 0x87
insb byte es:[edi], dx
fcom qword [esi - 0x3ead24c9]
out 0x4a, eax
dec edx
cmp dword [ebx - 1], 0x6854605a
js 0x49438b
or dword [esi - 0x65], esi
salc
xor eax, ecx
adc al, 0x6b
rol byte [esi], cl
and esi, dword [esi + 0xd53cb2a]
inc ecx
and al, 0xc8
cmpsd dword [esi], dword es:[edi]
sbb bl, byte [edi + 0x6b]
inc eax
and al, 0x38
xchg edx, eax
in al, 0x48
imul dword [0x8a14f250]
jno fcn.00494459
pop ebp
add esp, dword [edx - 0x5825ee08]
or dh, byte [eax + 4]
xchg ecx, eax
scasb al, byte es:[edi]
popal
fdivr dword gs:[ebx + 0x29406927]
push esi
inc edx
jae 0x49441e
sti
js 0x4943e8
mov dh, 0xb9
call 0xb15412d7
fld dword [esi + 0x6e]
mov ecx, 0xace9fe8
mov cl, 0xd9
inc esi
outsb dx, byte [esi]
salc
aaa
in eax, dx
lahf
test al, 0xc3
ja 0x4943d0
jne 0x49444f
pop eax
jnp 0x494405
pop edx
test eax, 0x5546d47a
pop ebx
in al, 0xe6
sub byte [esi - 0x35823380], dl
cmpsd dword [esi], dword es:[edi]
push eax
in al, dx
test eax, 0x33178b0c
jae 0x494431
shr dword [edi], 5
push cs
mov edi, 0x26827648
xor eax, 0xb47645a6
xor eax, 0xb47645a6
inc eax
stosb byte es:[edi], al
push es
mov edx, 0xc4745416
sbb eax, 0x32f4ff30
cmpsb byte [esi], byte es:[edi]
sbb ebp, dword [ecx + 0x3ae978]
lodsb al, byte [esi]
cli
push edx
xor byte [ecx + eax*4], 0x32
sal byte [ebx - 0x3b], 1
push edx
cmp byte [esp + edx + 0x4472dbb2], dh
popal
xor byte [edx], 0xe5
jb 0x494461
jp 0x494469
inc esp
adc al, 0xc0
and byte [ebx + edx*4 - 1], dh
retf