Function at 0x544315
Capabilities:
Encode data using xor

Disassembly:
mov dl, 0x2c
js 0x544370
mov dl, 0x54
jg 0x544322
mov esp, 0xa1da1c79
cmp eax, dword [ebx]
invalid
xchg ebp, eax
adc dword [ebx], ebx
inc esp
inc edx
push es
jge 0x544311
cmp bh, ch
xor ecx, dword [eax]
clc
pop edi
dec esp
push esi
in al, dx
test eax, 0x7027795e
aaa
or ecx, dword [ebx - 0x13]
aas
ret 0xadf5
test dword [ecx], edi
and byte [edi + edi*2 - 0x13], 0xab
mov dword [0xe36159ca], eax
mov edx, 0xcafbf88b
dec esp
mov byte [eax + 0x28239963], 0xb5
dec ebp
popfd
mov esi, dword [ebx + 0x51982742]
and byte [ebx - 0x67], 0x23
sub byte [ebp - 0x4c7462b3], dh
inc edx
daa
cwde
push ecx
imul dword [ecx + edi*2]
fsub dword es:[ecx - 0x5b]
aam 0xab
inc ecx
mov dh, 0xe
push eax
inc ecx
sub byte [ecx + 0x511efbb8], dh
in al, 0x9a
mov eax, 0x80e47980
aam 0x2d
pop eax
adc dword [edx], ecx
sar cl, 1
sti
mov ebx, 0x88de3379
mov ecx, 0xae0c64b9
leave
push 0x2b1b9911
jb 0x5443e0
xor eax, 0xc948296b
adc dword fs:[edx], 0xb2551c93
stosb byte es:[edi], al
fsub dword [edi + ecx*8 - 0x4f290622]
inc ecx
adc esi, ebx
inc ecx
xor dword [ebx], eax
rcl byte [edx - 0x22], cl
loope 0x5443c4
iretd
push ds
cmp eax, 0x210024d8
sbb esi, dword [eax - 0x80]
and dword [ebx], ebx
jo 0x54435d
dec eax
sbb eax, 0x18bc6968
jp 0x5443d9
push 0x7a18bc69
hlt
imul edi, dword [eax + ebx + 0x2f87f47a], 0xf4711f1e
xchg dword [edi], ebp
push ds
pop ds
jno 0x5443df
jo 0x544406
inc edx
jns 0x5443b3
stc
test eax, 0x6c94155
test dword [eax - 0x75], 0xa46f3140
inc eax
mov eax, dword [eax + 0x31]
outsd dx, dword [esi]
movsb byte es:[edi], byte [esi]
push ebp
jns 0x5443f7
sub al, 0xb0
test eax, 0x4c2fad45
dec esp
movsd dword es:[edi], dword [esi]
mov ebx, 0x8ca4d19b
cmp esp, ebp
lahf
mov ebp, 0x38574031
cmp dword [edi], eax
inc eax
loope 0x544437
scasd eax, dword es:[edi]
mov ebp, ss
add al, 0xc1
adc esp, dword [ecx + edi*4]
mov ebx, 0x8a66a9df
pop eax
mov ecx, dword [edx - 0x3ff75863]
mov eax, 0x890b54d0
push ss
cdq
test byte [0x38222627], al
daa
and bh, byte es:[eax]
jecxz 0x544440
pop esp
dec ebx
inc esi
loope 0x544451
xchg ebp, eax
mov dword [0x92dd91c4], eax
fxch st(1)
cmp al, 0x2d
movsb byte es:[edi], byte [esi]
mov eax, 0x915dc909
xchg ecx, eax
mov ebx, 0x21c4042
mov esp, ebp
int1
into
mov cl, 0xe1
outsd dx, dword [esi]
shl dword [eax - 2], 0x3a
cmpsd dword [esi], dword es:[edi]
test al, 0xef
pushfd
push ebx
popal
inc ebx
mov eax, dword [0xf585ff1d]
pop eax
pop esp
jp 0x5444b5
inc dword [ebp + 0x7a5c58f5]
inc ebx
or dword [edi], edi
push ecx
adc esp, dword [esi]
out dx, eax
invalid
xchg ebp, eax
inc eax
and ah, byte [eax + 0x2775b62b]
jno 0x5444b3
push eax
jg 0x54446b
cwde
sub ah, byte [ecx - 0x3f8a489b]
pop ebp
mov esp, dword [0x83e67b4d]
sbb eax, 0xd8b1fab2
cwde
mov bh, 0x75
rcr byte [ebp - 0x75], 0x25
dec ebp
jnp 0x5444a5
sbb dword [0xd8b1fab2], 0xffffff98
xchg dword [ebx + edi + 0x1fb7a153], esi
test eax, 0xda31e081
jg 0x5444f6
jecxz 0x54453b
mov al, 0x13
popfd
rep stosb byte es:[edi], al
xor edi, dword [0xa04bc0b9]
push cs
mov dword [0x2357df4b], eax
adc byte [edx + 3], 0x3a
pop esp
sti
sub dword [ebx + 0x41], eax
inc ecx
stosd dword es:[edi], eax
inc eax
ficomp dword [esi]
pop eax
add eax, 0x2218e379
xor eax, dword [ecx + 0xc]
dec edx
mov dh, 0x34
pop edx
xchg ecx, eax
rol byte [ecx - 0x5e6a25d7], cl
nop
out dx, al
fcmovbe st(0), st(2)
int1
lds ebx, [edx + eax*4 + 0x766020f]
xchg esp, eax
sal byte [ecx], cl
call 0x5601a86a
sbb dword [edx - 0x54], eax
xchg edx, eax
js 0x5444f1
invalid
push ebx
jns 0x544567
jns 0x5444e8
invalid
mov edi, 0xc2eb5508
mov ecx, 0x5878872f
xor ebp, eax
daa
cmpsd dword [esi], dword es:[edi]
sbb bh, dh
jmp 0xc2eafca6