Function at 0x48a398
Capabilities:
Encode data using xor

Disassembly:
scasb al, byte es:[edi]
jo 0x468531
test byte [ebx + 0x4b9b2d47], dl
loope 0x468579
test dword [ebx + 0x13], esi
out dx, al
test al, 0x24
sub esi, dword [ebx + 0x57af3245]
and dword [edx], 0x2b
mov dl, 0xfd
pop ebx
sub edi, dword [0x2e294209]
sub esi, dword [edx + 0x3d2b5bfd]
or dword [edx + 0x29], eax
test dword cs:[ebx + 0x13], esi
inc edx
sub dword [esi], ebp
test dword [ebx + 0x13], esi
xchg ebx, eax
jnp 0x468543
sub ebx, dword [edx]
sbb al, 0x79
adc byte [esi], 0xc6
les ebp, [esi + ebp]
out dx, eax
mov dh, 0x1e
outsb dx, byte [esi]
or bl, bh
das
fild qword [edi]
test dword [eax + 0x23956ae9], esi
sub edi, dword [ecx - 0x5cde5744]
wait
jns 0x4684f8
std
insd dword es:[edi], dx
push esi
int 0x2f
test dword [eax - 0x518c5cdf], ebp
xor dword [eax + 0x2df9ae86], ebx
xchg esi, eax
push cs
adc byte [ecx - 0x1da5f470], bl
xchg byte [ebx], ah
mov cl, byte [eax + ecx*2 - 0xfe54988]
js 0x468518
sbb dh, al
and dl, byte [esi + ebp*2 - 0x69d4906b]
stc
bnd jno 0x46859d
outsd dx, dword [esi]
sub edx, dword [esi + 0x2e71f2f9]
jmp 0x8574b138
sub ebp, dword [esi]
test dword [ebx], esp
scasb al, byte es:[edi]
sbb bl, dh
jbe 0x468503
test dword [esi], ecx
mov byte [ebx], dl
wait
jg 0x468568
jbe 0x468511
push esi
std
mov eax, 0xf640ac59
xor al, 0x71
sub edi, dword [ecx + 0x2e0ca44d]
xchg byte [ebx], ah
sub esi, dword [edi + 0x7cdae792]
test esp, esp
or al, 0x37
mov ch, ch
mov ah, 0x3b
inc ebp
sar byte [ecx + 0x2e], cl
inc esi
or edi, dword [ecx + edx*8]
inc ecx
sar byte [ecx + 0x2e], cl
out dx, eax
and al, 0x13
jg 0x46858a
and ebp, dword [ebx]
xchg dword [edx], ecx
jecxz 0x468562
out dx, eax
aas
adc esi, edx
test dword [ebx], esp
sub eax, dword [edi + 0x2e721e6d]
test dword [eax - 0x72725c15], ebp
cmp edx, dword [esi]
cmp byte [ebx], ah
sub ebp, dword [esi]
ficom word [esi + 0x21]
mov eax, 0x58141ffa
retf 0x2b23
pop edi
sbb eax, dword [ebx + 0x51faf822]
and ah, byte [ecx - 0x4da591e2]
sub eax, 0xeee3e685
sub al, 0x6f
sub edx, dword [edi]
mov dword [0x862e2910], eax
add eax, dword [eax]
add byte [eax], al
dec eax
outsd dx, dword [esi]
idiv edi
sub eax, 0x44000224
das
add al, 0
mov edx, 0xd000003c
add al, byte [eax]
add byte [edi], bh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bl, ch
jmp 0x48a0fc
add esi, dword [ebx + 0x66]
jmp 0x48a0fc
aaa
jnp 0x48a161
push ebx
mov edx, 0xe5701251
mov byte [ebx - 0xc1f0413], cl
cmpsd dword [esi], dword es:[edi]
xor ecx, dword [edx - 0x3b]
inc ecx
jae 0x48a099
enter 0xfffffffffffff860, 0xffffffffffffffeb
sub dword [ebp - 0x31e91e7b], ebp
or edx, edx
cmc
push ebp
dec edx
fidiv word [esi - 0x4257195b]
sahf
rdpmc
push ebp
jno 0x48a118
pushal
clc
jmp 0x48a129
push ecx
push edx
mov bl, 0xd2
pop esi
cmc
mov cl, 0x68
sub eax, 0x43c8040f
imul esp, dword [ebp - 0x69], 0xe8c26443
adc al, 0
add byte [eax], al
call 0x48a142
stosb byte es:[edi], al
fst qword [ecx + 0x6453bc01]
and al, 0xbf
dec esp
mov ebp, 0x24f4668c
jne 0x48a0cf
or byte [eax + 0x12], bh
pop esi
jmp 0x48a15a
mov bh, 0xc
sal ebx, 0x1d
dec esi
fdivr qword [0xc46695ad]
jmp 0x48a0f9
add esi, 0xffffff86
jmp 0x48a186
and al, 0x72
cmc
mov esp, 0x72ca9ee5
bound ecx, qword [eax + 0x372a5225]
inc ebx
mov edx, 0x7b3714f4
sbb al, 0x9f
shr dword [edi], cl
mov dword [0x76cdcb61], eax
and dword [eax], ebx
jp 0x48a175
pop ebx
wait
mov byte [0x3e83a9], al
cmp dword [esi], 0
clc
jmp 0x48a19b
je 0x48a37d
jae 0x48a1ce
rol bl, 0xc9
jge 0x48a1e3
fisttp word [ebx]
das
or ebp, dword [edi]
dec dword [ecx - 0x16]
jp 0x48a151
adc al, dl
wait
and ebp, 0x1f
aas
movsd dword es:[edi], dword [esi]
invalid
mov edi, esi
jae 0x48a1ef
cmp dword [eax + 0x6d], 0xbf335834
mul dword [edi]
mov ecx, 0x8f489890
mov eax, dword [0xf4261be5]
in al, dx
dec edx
or ch, byte [esi]
leave
push edx
pop esp
inc eax
mov esp, 0x4c6833f
hlt
add esi, 4
jmp 0x48a20a
xchg ecx, eax
int3
mov eax, dword [esi]
jmp 0x48a218
add eax, esi
clc
jae 0x48a249
nop
adc dword [ecx + 0x56169ca8], esp
jge 0x48a1a9
jne 0x48a26b
fdivr qword [eax]
and dword [ebx], ebx
cli
sub ebx, dword [eax + esi*8 - 0x5a8de20e]
imul esi, dword [ebx], 0x4a6da706
nop
fsub dword [ebx - 0x5d339875]
aas
jl 0x48a27c
lcall 0x568b, 0x39a727e4
add al, 0xeb
sub al, 0x27
outsd dx, dword [esi]
iretd
mov edx, dword [esi + 4]
jmp 0x48a27a
and dword [eax - 0x73], ebp
loopne 0x48a200
mov esp, 0x780ab9f6
jg 0x48a29f
call 0x23712422
sub ebp, dword [esi]
test ebx, ebp
sub dword [eax], 0x852e2b23
jmp 0x48a298
and ebp, dword [ebx]
test ebx, ebp
push ss
cwde
xor byte [eax + 0x33], al
mov bh, 0xe2
lodsd eax, dword [esi]
adc dword [eax - 0x7655b093], ecx
inc esi
outsb dx, byte [esi]
lea ebx, [edi + edx*4 + 0x5d]
push ebp
test byte [ebx + 0x19eb04c0], al
pop ebx
fmul st(1)
add eax, 4
jmp 0x48a2b6
leave
in al, dx
adc ah, byte [ecx - 0x5e9b5f23]
aas
xchg edi, eax
and dword [bx + si - 0x71], esp
scasb al, byte es:[edi]
sti
add eax, 0xec0acb49
xchg edi, eax
adc dword [ebx + 0x27eb01ea], eax
mov bh, 0x9f
mov ch, 0xf4
fistp word [edx - 0x46e64a59]
and edi, edi
push ecx
pop es
xchg ebp, eax
int 0xac
in al, 0x6f
sub dword [ecx*2 + 0x5e32924a], ebx
mov al, byte fs:[0xeb4f1533]
insd dword es:[edi], dx
pop ecx
ljmp 0x850f
sub edx, 1
jmp 0x48a2e2
jne 0x48a24c
jmp 0x48a2f5
add esi, 8
jmp 0x48a2fe
sub dword [edi], 1
stc
jmp 0x48a31f
jne 0x48a1f2
jb 0x48a34f
cmpsb byte [esi], byte es:[edi]
push ds
jmp 0x416cd18c
mov ebx, esi
jmp 0x48a378
call 0x48a398
jmp 0x48a38d
popal
clc
jae 0x48a393
mov cx, gs
enter 0xfffffffffffffde1, 0xffffffffffffffff
scasb al, byte es:[edi]
div byte [ecx + 0x67ae2748]
test dword [ecx - 0x516746c6], esp
outsb dx, byte [esi]
xor cl, byte [esi]
daa
inc ebp
mov cl, 0x48
sub ebp, dword [edx]
cmp byte [eax + 0xf], dh
mov bh, 0x31
fsub dword [esi + edx + 0x2b2b2603]
mov bl, 0x45
xchg edi, eax
cmp dword [ecx], esi
jmp 0x468560
dec eax
jbe 0x48a43d
jle 0x48a431
ja 0x48a3f1
test dword cs:[esi + 0x7be036ef], esp
mov dh, 0x21
pop es
adc dword [esi + ebp], ebp
lds esp, [ebx]
lahf
jb 0x48a3e8
and ebx, dword [edi + 0x2f731072]
jae 0x48a409
xor dword [eax - 0x52], ebx
jae 0x48a415
or byte [esp + ebp], bl
lodsb al, byte [esi]
mov esp, 0x48312dae
scasb al, byte es:[edi]
movsd dword es:[edi], dword [esi]
xor dh, byte [eax + 0x74b17cf2]
sub edi, esp
cld
sbb eax, 0x6133e509
dec esi
cmpsb byte [esi], byte es:[edi]
sub ch, byte [edi]
stc
xchg ecx, eax
mov ecx, 0x30eda68f
jl 0x48a3e9
sub ebx, dword [esi]
xchg byte [ebx], ah
lahf
cmp byte [esi], al
add al, 0x2b
test dword ds:[ebx], esp
test byte cs:[esi + 0x66197a54], 0x7c
push ss
jp 0x48a430
jl 0x48a430
dec eax
js 0x48a3d4
sbb dl, byte [ecx]
xor byte [ebx], 0x61
dec esi
mov dword [esi + 0x2e899179], esi
jns 0x48a3bf
cmpsb byte [esi], byte es:[edi]
out dx, al
or byte ds:[esp + ebp], bl
sbb al, 0x2c
sub al, 0xac
lodsb al, byte [esi]
popfd
je 0x48a460
movsb byte es:[edi], byte [esi]
xchg ebp, eax
and ah, byte [ecx + 0x3b0bd83a]
test dword cs:[ebx], esp
cmp ebp, dword [esi]
test dword [ebx], esp
xchg byte [ecx + 0x77842b49], dh
or dh, ah
xor ebx, dword [ecx]
imul ebp, dword [esi + 0x78488c10], 0x80111ab6
xor edi, dword [ecx - 0x7449d838]
xchg ecx, eax
int3
mov dword [0x9884419f], eax
cmp eax, dword [ecx + 0x2e2b22aa]
add eax, 0x6d820326
retf