Function at 0x45a56e
Capabilities:
Encode data using xor

Disassembly:
dec ecx
mov byte [ecx - 0x66dc5dd0], bl
fistp qword [edx]
and cl, byte [edi + 0x292ca6e0]
fdiv qword [ebx]
cmp eax, 0x5ba15308
adc byte [ecx + 0x36], bh
bound esi, qword [ebp - 0x5e671a59]
inc edx
mov dword [0x2b21a9e5], eax
xor ebp, edx
ror dword [edx + 0x4c], cl
dec esp
or eax, 0x44c83d5b
sal byte [eax - 0x40dd53ee], 1
invalid
dec ecx
xchg edi, esi
inc edx
inc edx
jo 0x45a421
or dword [edi], ecx
cmp al, 0xa5
test eax, 0x852042ec
cmp al, 0x48
mov bl, 0xb8
jecxz 0x45a36a
sbb eax, 0xfca2ef9f
cmp dword [esi - 0x3a], edi
mov byte [0xc67e39fc], al
clc
push esp
dec esp
xchg ecx, edx
dec esi
add eax, 0x6b9a5adc
pop eax
push esp
push 0xffffffffffffffdc
insd dword es:[edi], dx
movsb byte es:[edi], byte [esi]
popfd
and al, 0x8b
xor al, 0x8e
popfd
push 0x1e7acc35
or al, 0x82
add al, 0x1d
arpl word [edx - 0x6d], dx
loopne 0x45a383
add al, 0x1d
arpl word [edx - 0x6d], dx
loopne 0x45a383
pop esp
lds esp, [edi]
loope 0x45a3d6
jle 0x45a463
push eax
inc edi
sub eax, dword [ecx + edx*8 + 0x5048fc96]
jns 0x45a3bc
mov dword [ebx + edi*8 - 0x14], esp
cmp bh, bh
sbb dh, al
stc
les ebx, [eax]
adc byte [ecx + 0x76], 0x37
adc eax, 0x44fa4cd3
aad 0x26
sbb dl, byte [esi + 4]
adc eax, edx
sub al, 0x89
das
mov esi, 0x980c7708
popal
sub esi, edx
salc
cmp byte [esi - 0x9f26ec8], ch
test al, 0x73
sub byte [esi + 0x5c12ed85], cl
pushal
pushfd
mov esi, 0x54ebdcef
adc dl, ch
cmp al, 0xec
hlt
pop esi
stc
dec esp
pop ss
cmp al, 0x58
js 0x45a437
dec ecx
mov bl, 0xd1
pop es
lea edi, [edx + 0x2b7b28e1]
jecxz 0x45a4c0
mov byte [esi], dh
invalid
js 0x45a46e
insd dword es:[edi], dx
fimul dword [ecx]
adc eax, 0xa8994cef
or dword [0xa8994cef], edx
test al, 0x71
or dword [edx + 0x50be1739], 0x172c9eaf
cmp ecx, ebx
rcl edx, 0x69
or edi, dword [eax]
fild qword [ebp - 0x6b110e8]
into
mov dword [0x29a1e2c], ebx
pushfd
sub ch, byte [edx + edi - 0x132e4773]
std
inc ebp
mov ah, 0x26
jg 0x45a4bc
pop eax
in al, dx
dec edi
mov al, byte [0xdd35afd9]
imul edi, dword [edi - 0x28], 0x154eacb7
sbb dword [eax + 0x30649906], ebx
push cs
scasd eax, dword es:[edi]
xor eax, 0xd87f69dd
mov bh, 0xac
dec esi
adc eax, 0x99069819
fdiv dword [edi + 0x19154eac]
cwde
push es
cdq
xor byte fs:[esi], cl
mov al, byte [0xe82d8d89]
xor bl, byte [esp + ecx*8 + 0x2543756b]
adc al, 0x2c
test byte [eax + 0x3d], bl
inc edi
sub eax, 0x250a9adc
jns 0x45a54d
sub al, 0x84
pop eax
cmp eax, 0xdc2d47f2
lcall 0x5cce, 0x2979250a
into
pop esp
imul ebx, dword [ebp - 0x68], 0xe49f7604
cmp al, 0xe5
stc
mov eax, dword [0x7ad9b0cc]
lodsb al, byte [esi]
ficomp word [esi + 0x45dba375]
mov ch, 0xb0
stc
sal cl, 1
jae 0x45a4f9
jno 0x45a4fe
wait
retf 0x13de
lds ecx, [eax + 0x141460ad]
cmpsb byte [esi], byte es:[edi]
insd dword es:[edi], dx
loopne 0x45a563
jecxz 0x45a570
push cs
pushfd
stosb byte es:[edi], al
rcr dword [eax + 0x635d2c10], 0x5f
pop edi
or dword [esp + 0x7c], ecx
mov ecx, 0x2bfb9581
jae 0x45a517
invalid
sbb byte [ebx - 0x26], ch
ror word [edx + eax - 0x4d], cl
imul ebx, edx, 0x66
ror dword [edx + eax - 0x4d], cl
sub byte [eax], 0x86
mov al, 0xb6
push ds
mov dword [esi - 0x6e], ebp
push esi
insd dword es:[edi], dx
jo 0x45a5d0
lcall 0x397a, 0xfb8ada6d
pop esp
out dx, eax
jl 0x45a51a
in eax, dx
sub byte [eax + 0x28], dh
cld
xchg edi, eax
mov dword [0xd431f207], eax
pop esi
lcall 0x5cfb, 0xb949281b
clc
jle 0x45a5c4
push ss
sbb eax, 0xa42ead5c
sbb al, 0xe3
xor al, 0xa2
fbstp tbyte [edi + 0x1c3002c8]
hlt
in eax, dx
in al, 0xf8
dec edi
cmp al, 0x64
sub esp, dword [ecx + 0x603e8482]
pushal
mul eax
movsd dword es:[edi], dword [esi]
pop ecx
scasd eax, dword es:[edi]
out dx, eax
xor ch, dh
push ecx
and al, 0x5d
inc esp
cli
lodsb al, byte [esi]
mov al, 0xa6