Function at 0x4e3275
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x4a2008]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
mov edx, eax
push ebx
push esi
push edi
mov edi, ecx
shr edx, 0x10
mov ecx, eax
and ecx, 0xf0
cmp ecx, 0x90
je 0x4e32b0
cmp ecx, 0x80
jne 0x4e33d8
jmp 0x4e32b8
test dl, dl
jne 0x4e3380
shr eax, 8
movzx eax, al
push eax
push dword [edi + 0x39c]
push dword [edi + 0x398]
call fcn.00547ff5
mov edx, dword [edi + 0x39c]
cmp eax, edx
je 0x4e33d8
lea ecx, [eax + 4]
sub edx, ecx
push edx
push ecx
push eax
call fcn.005289d5
add dword [edi + 0x39c], 0xfffffffc
add esp, 0xc
mov eax, dword [edi + 0x398]
cmp eax, dword [edi + 0x7c00039c]
shl byte [eax], cl
rcr byte [ecx + 0x50c109f7], 0xfd
pushal
out dx, al
sbb al, byte ds:[eax + 0x1f]
mov al, 0x50
xchg byte [eax + 0x30], al
rcl al, 1
outsb dx, byte [esi]
invalid
and al, 0x41
sbb al, 0x81
mov esp, 0x6cc16be4
test byte [ecx - 0x70], ah
invalid
sbb byte [ebp - 0x7f], 0xf2
retf 0xe498
in al, 0x52
add al, 0x49
jl 0x4e33d2
cmp eax, 0x349271d4
pop eax
push 0xac8a1539
fidiv word [edi + ebp]
xchg ecx, eax
nop
pushal
mov al, byte [0x2ab14191]
mov ss, word [eax - 0x6d6d9374]
ror dword [eax + ebp*8 + 0x64e26292], 0x7a
popfd
push cs
xor eax, 0xb2941458
popfd
xor ch, byte [edx + edx + 0x71e25417]
xchg edx, eax
jbe 0x4e33d6
adc al, 0x63
loop 0x4e348b
scasd eax, dword es:[edi]
pop ebp
push 0x7f
add al, 0x82
into
push esp
les ebp, [eax - 0x7c]
sal dword [eax + 0x3558b585], 1
ret
inc ecx
and dword [ebp + 0x70], ebp
popal
mov cl, 0x64
ficom word [esi]
salc
adc ah, bh
cmp eax, 0x95f511ed
inc ecx
add byte [ebx - 0x80], bh
add byte [eax], ah
xchg esi, eax
push es
test byte [edx], ah
call 0xd70ec5e1
invalid
pushfd
inc esp
xor al, dl
mov dword [0xe561d7b4], eax
and byte [eax + 0x1a756080], bl
adc al, 4
nop
xor eax, 0xc63d90c0
and al, 0x90
sar bl, 1
sub esp, 0xa8c1687c
jne 0x4e344e
inc edi
sti
sbb byte [edx], ch
sbb dword [ebx], ebx
mov al, byte [0x1418e98d]
imul eax, dword [0x1020d8c0], 0xffffffb7
leave
mov al, 0x98
push ebp
inc edx
fsub dword [eax]
jbe 0x4e3518
sal dword [eax], 0xc1
nop
and edi, 0xfc9a2450
cld
test al, 0xd1
loope 0x4e34ce
xchg ebp, eax
leave
mov bh, 0xc5
xor byte [eax + ebp*4], dl
je 0x4e34ea
rcl edx, 1
rol byte cs:[eax + 0x61ddfba5], 0x92
popal
xchg edx, eax
dec edi
cdq
add byte [eax], dl
sbb byte [ebx - 0x6c], ch
mov eax, dword [0x408cfd0d]
and dl, ch
cmp byte [ecx], al
test al, 0xb5
fist word [ebp - 0x39908820]
wait
and edx, dword [eax - 0x14]
sal byte [edi + 0x3510d730], 0xc3
movsb byte es:[edi], byte [esi]
lodsd eax, dword [esi]
pop edx
add byte [edx - 0x5e2ba1ea], 0xc0
clc
out 0xf8, eax
mov word [eax + 0x22], es
aad 0x38
add dword [eax - 0x1f6a204b], ebp
ja 0x4e3572
invalid
sar al, 0xe7
clc
xchg ebp, eax
cmp bl, al
in al, dx
jnp 0x4e34f6
mov byte [0x15f2cf45], al
sub al, 0x7a
mov al, 0xd3
adc eax, 0xd3b07a2c
xor byte [ecx - 0x119af3cb], 0x4f
xor byte [esi - 0x17743e5e], ch
test al, 0x21
xchg esp, eax
rcr byte [eax], 0x8c
ret
sub dword [ebp - 0x2b], 0x36
xchg ecx, eax
cmc
shl byte [eax - 0x5b], 1
pushal
movsd dword es:[edi], dword [esi]
shl byte [edx], 0xf8
sbb eax, 0x78b350fc
rcr byte [esi - 0x2f9fcf46], 1
inc esp
push ds
aam 0xf0
jne 0x4e3525
xor ebp, dword [eax]
popal
mov byte [0xbf41e3d6], al
mov cl, 0xf5
int1
or byte [edx - 0xf8c0be0], dl
wait
insb byte es:[edi], dx
enter 0xfffffffffffff390, 0xffffffffffffffd9
and byte [esi + 0x400e1ed2], ah
mov ch, 0x8d
mov eax, dword [0x8a64b8b2]
lea esp, [ecx - 0x759b474e]
sbb al, 0xb8
push eax
loopne 0x4e35a6
int 0x81
or eax, 0x60b520c0
mov ch, 0xe0
lds edx, [ebx - 0x203ba91b]
mov al, 0x9d
test al, 0x88
daa
mov byte [0x72f1b27b], al
or edi, eax
add byte [ecx + 0x38], al
xor eax, dword [edi]
aad 0x72
mov edi, dword [esi - 0xf]
wait
sti
sbb al, 0x50
sbb byte [eax + 0x65], bh
loopne 0x4e356b
jnp 0x4e3629
mov dword [edi + ebx + 0x7c99f54e], esi
lds esi, [eax - 0x3e]
test al, 0x4c
mov dword [ebp - 0x4f], esp
clc
xor dword [eax + 0x53dee468], ebx
cmc
dec ebp
push ebp
test eax, 0xdfd0205e
retf
lcall 0x1640, 0x31e1445c
mov dl, 0x4b
pushal
push cs
adc al, 0x70
inc eax
add edx, edi
pushal
in eax, dx
xchg edx, eax
inc ebp
xor dword [eax + 0x31c4d220], ebp
sbb dl, al
push ecx
imul edx, dword [eax - 0x6d], 0xffffff99
jnp 0x4e36ae
insb byte es:[edi], dx
test al, 0x22
and al, 0x1e
dec esi
mov dword [ecx + 0x71752720], 0xc1bdf103
mov ss, word [eax]
mov al, byte [0x80a0c82b]
jle 0x4e3659
add esi, ecx
mov ebp, 0xa0108ec1
sub ecx, eax
mov al, byte [0xff37e80]
in eax, 0x76
dec edi
pmulhw mm6, qword [esi + 0x4f]
and byte [eax], dh
dec ebx
sub eax, 0x7ab07b84
mov al, byte [0x4371ac56]
adc al, byte [ebx]
mov dword [0xe6c2ede1], eax
mov dword [0xab7082ab], eax
dec ecx
iretd
shl byte [eax], cl
mov ch, 0x81
nop
pushal
fld xword [esi - 0x64]
or eax, 0x8d08d720
pop ebp
insd dword es:[edi], dx
std
enter 0xffffffffffff99ac, 0x19
sub al, 0x90
rcl dword [eax + 0xd5465f0], cl
mov al, byte [0x1dc5566a]
mov esp, 0xb59b2c60
sahf
ret