Function at 0x401219
Capabilities:
Encode data using xor

Disassembly:
dec eax
mul byte [edi + 0x62da7575]
xor ch, cl
fist dword [edi]
aaa
jne 0x401238
call dword [esi + 0x37556a59]
pop ds
shr eax, 1
xlatb
sub eax, 0x75371662
invalid
adc dword [ebx + 0x17], edi
aaa
jne 0x4011f9
inc edx
mov esi, 0x5fe8b090
imul ebp, dword [edx + 0x55], 0x7401d37
ja 0x4012a3
mov dh, byte [ebx - 0x42]
push eax
ficom dword [edi]
aaa
jne 0x401290
sti
daa
mov word es:[eax - 0x42], es
adc byte [edx], dh
inc edi
out dx, al
dec ecx
invalid
call 0x55aa677a
push ebp
aaa
cld
inc dword [ebx]
xchg dword [edi], esi
aaa
invalid
aaa
jne 0x4012a6
aam 0x53
salc
ficom dword [edi]
aaa
jne 0x4012b4
pop ss
invalid
pop ss
fild word [edx + 0x263717ac]
mov word [eax - 0x78], es
lodsb al, byte [esi]
pop ss
aaa
mov word es:[eax - 0x78], es
mov ecx, 0xcd6883e7
out 0x58, eax
aaa
jne 0x4012e4
invalid
mov esi, 0xc9a42af0
mov dl, byte [ebx - 0x30]
pop ebp
jne 0x401273
pop ss
pop ebp
jbe 0x401277
pop ss
pop ebp
jne 0x40127d
pop ss
aaa
jne 0x401329
jg 0x4012e8
in eax, 0x9a
pop ss
fbld tbyte [edx]
mov byte [0x19fc3717], al
xchg esp, eax
int3
mov dh, 0x9a
push edx
inc edi
lcall 0x17b0, 0x75374752
aaa
jne 0x40129b
pop ss
mov edx, 0xc9a42ef0
mov cl, byte [edx - 0x24c6c081]
pop ss
mov edx, 0xc9a422f0
mov cl, byte [edx - 0x5dbd20bc]
pop ss
aaa
xor cl, byte es:[esi + 0x40]
jne 0x4012e5
rcr dword es:[edi], 0xdb
jg 0x4012b8
xlatb
cwde
pop ss
mov edx, 0x84efeff1
mov esp, dword [0xdb66df47]
pop ss
aaa
neg byte [esi]
sbb ecx, dword [edx]
mov ah, byte [0xdf013717]
add edi, ebx
div dword es:[0x9ab60431]
sbb byte [esi + 0x37], ah
jne 0x401390
shl dword [esi], 1
dec esi
outsd dx, dword [esi]
jecxz 0x4012c1
mov esp, dword [0x1a44fb65]
dec eax
imul ebp, dword [esi], 0xfc62d413
aas
inc esi
and ecx, dword [di + 0xea8]
aas
arpl word [esi], bx
mov dh, 0xb2
inc esp
or dh, byte [edi]
jne 0x4013b2
push edx
iretd
ficomp dword [eax]
aaa
pop ds
fidivr dword [ebp + 0x37]
pop ds
invalid
and eax, 0xc09d3f62
insd dword es:[edi], dx
aaa
jne 0x4013ce
sal dword [esi + 0x3745119a], 1
adc dword [ebp + 0x37], eax
jne 0x401356
loope 0x4013c8
jno 0x401372
xlatb
fmul qword [ebx + 0x25]
bound ebp, qword [edi]
mov ch, byte [edi - 0x39ff37fd]
jge 0x4013cc
enter 0xffffffffffffc600, 0x7d
aaa
mov ch, byte [edi + 0x2600c807]
call dword [ebx]
call dword es:[ebx]
pminub mm2, qword [edi]
mov esi, 0xcb6225b3
popfd
sub al, 0x6e
aaa
jne 0x40137e
loope 0x4013f0
jno 0x40139a
xlatb
fsub qword [ebx + 0x59]
pop ecx
push 0xffffffffffffffcf
je 0x401366
adc byte [edi + 0x3717da77], cl
sahf
rcr dword [esi - 0x61dd8b31], cl
invalid
push 0x62d4132b
invalid
cld
aas
inc esi
popal
and ah, byte [ebp - 0x27]
inc edi
std
mov byte [esi + 0x17b956d8], dl
xchg esi, eax
fcom dword [esi - 0x47]
pop ss
aaa
clc
lahf
jmp 0x401448
jge 0x401421
scasb al, byte es:[edi]
dec esi
jne 0x4013cd
sahf
int1
jl 0x401423
arpl word [ebx], si
inc esp
sbb bh, ah
add al, 0x8a
scasd eax, dword es:[edi]
bswap eax
add dh, cl
call 0x17f07d4a
enter 0xffffffffffffca00, 0xffffffffffffffe8
inc edx
mov dword [edx], esi
mov dl, 0x4e
jne 0x4013ed
sahf
int1
mov ch, byte [edi - 0x5c092015]
pop ss
aaa
jl 0x40144b
arpl word [ebx], si
inc esp
sbb bh, ah
cld
cmp al, 0x44
sbb dl, byte [edi - 0x24]
jae 0x401486
rol byte [eax + 0x61], 1
ficom dword [edi]
push 0x62d4132b
cld
aas
xchg esp, eax
fld xword [ebp - 0x77]
inc ecx
pushal
invalid
jb 0x4013d7
push ebx
push edx
invalid
rcr byte [eax], cl
mov dword [ecx - 0x28], esi
sbb byte [ecx - 0x18d11b9f], cl
add bl, bl
push esp
mov esi, 0xc8df5984
xor eax, 0x75362b5a
scasd eax, dword es:[edi]
out dx, al
push cs
mov dh, 0xaf
pop es
enter 0x2e30, 0xffffffffffffff9c
jb 0x40150f
out 0, eax
fist dword [esi + edi*4 - 0x7c]
pop ecx
invalid
jecxz 0x4014fe
ret
pushfd
jb 0x40154f
push ebx
salc
mov ah, 0xbd
and eax, 0xdb49b757
pop ss
inc edx
mov ebx, fs
push edx
retf
mov bl, dl
pop ss
fdivr qword [edi + 0x51]
push edx
iretd
ficom dword [esi]
aaa
popfd
inc eax
arpl word [edi], si
jne 0x401490
inc ecx
pushal
invalid
sal byte [edx - 0x3716da77], 1
loop 0x4014ce
sub esp, dword [ebp - 2]
pop edi
jmp 0x4014e5
invalid
xchg edi, eax
or esi, dword [edx + ebx*8 + 0x62]
into
dec esp
sbb al, 0x61
mov bl, 0x5f
push ss
aaa
mov ah, byte [0x5345dc17]
loopne 0x401541
push ebx
out dx, eax
push ds
test dword [ecx + 0x42], edx
aas
dec esi
sub eax, 0x16dfe1bf
aaa
mov ah, byte [0xa6aa0e50]
std
mov dh, 0xd8
call 0x12d7a04d
adc dh, byte [edi]
aaa
jne 0x4015da
iretd
cmp esi, dword [edx + 0x69feb9f]
jmp 0x2670d1d9
fst st(6)
into
push 0xfffffffffffffff3
fnstsw word [esi - 0xa617c5b]
neg byte [eax]
jbe 0x4015a8
popal
in eax, dx
push ecx
push cs
stosd dword es:[edi], eax
cmpsb byte [esi], byte es:[edi]
sar dword [eax + esi + 0x6d33d1d2], 0xda
xchg esi, eax
jb 0x401583
mov dh, 0xb
aaa
jne 0x401584
dec ecx
insb byte es:[edi], dx
mov esp, 0x90be4219
mov eax, dword [ecx + 0x22]
push ecx
dec edx
cmp esi, dword [edx + 0x7c45eb9f]
add dword [eax - 0x44], ebp
xor byte [esi], ah
sahf
cmc
pop esp
sbb byte [esi - 0x1e14769e], bl
fcom qword [ebx + 0x32]
dec edi
jne 0x401601
pushfd
dec edx
jge 0x40168b
les edi, [edx + 0x17]
retf 0xbe46
and eax, 0xfe604189
scasd eax, dword es:[edi]
pop es
mov esp, 0x72d0ce28
mov dword [esi + 0x5a], ebp
mov gs, word [ebp + 0x51]
push edx
retf
loopne 0x401669
imul edx, dword [ecx + 0x52], 0x13647a3f
paddb mm4, qword [eax]
invalid