Function at 0x8de144
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
pushal
call 0x8de14a
pop ebp
sub ebp, 6
sub ebp, 0x4de144
jmp 0x8de1a8
jmp 0x8de1b1
mov eax, 0x4de144
add eax, ebp
add eax, 0x93
mov ecx, 0x617
mov edx, 0x851d42b5
xor byte [eax], dl
inc eax
dec ecx
jne 0x8de1c8
jmp 0x8de1db
fcompi st(5)
fnsave dword [ebp - 0x224a4a5b]
mov ch, 0x79
cdq
mov ch, 0x34
inc ebp
cmpsb byte [esi], byte es:[edi]
dec esp
adc dword [0x4ca64534], ebx
adc dword [0x4ae57586], ebx
and byte [ecx - 0x1a4a0e6c], cl
js 0x8de23e
cmp al, 0x89
mov ch, 0xb5
mov ch, 0x34
je 0x8de255
mov ch, 0xb5
mov ch, 0xb6
js 0x8de21b
mov ch, 0xb5
mov dh, 0x78
or eax, 0xb5b5b5b3
mov bl, 0xb5
mov ch, 0xb5
setge byte [ebp + 0x5742b5b5]
mov dh, 0x7d
xor al, 0xb9
mov ch, 0xb5
mov ch, 0xb6
jo 0x8de209
fld qword [edx - 0x80]
mov esp, 0x1effddb5
int1
mov ch, 0xb4
cdq
xchg ecx, eax
fnsave dword [ebp + 0x5db5b5b5]
mov al, 0xb5
mov ch, 0xb5
pop esp
popfd
mov ch, 0xb5
mov ch, 0xe0
pop ecx
mov ch, 0xb5
loopne 0x8de280
pop ecx
xor byte ds:[ebp + 0x3eb5b5b5], bh
and byte [ecx + 0x3eb5b5b5], bh
cmp byte [ebp + 0x74b5b5b5], ah
pop esp
je 0x8de2b3
mov bh, 0x84
mov bh, 0x36
ja 0x8de20e
cld
mov edx, 0x4a4a4130
dec edx
call 0x3f439be0
cmp dword [ecx - 0x4a4a4a4f], edx
fld qword [edx - 0x80]
mov esp, 0x1effddb5
int1
mov ch, 0xb4
cdq
xchg ecx, eax
in al, 0x5d
mov al, 0xb5
invalid
mov ch, 0xb5
pop esp
xchg byte [edi + 0x3ee0b5b5], dh
pop ecx
dec edx
sar byte [ecx + 0x5dbdc04a], 0xd3
mov ch, 0xb5
mov ch, 0x3e
or byte [ebp - 0x794a4a4b], bh
jl 0x8de224
pop ebp
pop ebp
mov al, 0xfd
mov edx, 0xb5b5fb31
mov ch, 0xba
cmp eax, 0xb5b5b5fd
sar dword [esi], cl
test eax, 0x5d4e358c
mov edx, 0xb5b5af31
xor eax, 0x31ba5d4e
scasd eax, dword es:[edi]
mov ch, 0xb5
mov ch, 0x35
dec esi
pop esp
mov edx, 0xb5b5a431
mov ch, 0xd3
xor al, 0x4e
dec edx
nop
mov edx, 0xb5b5a031
mov ch, 0xf4
pop esp
jns 0x8de31e
dec edx
dec edx
pushfd
stc
invalid
or byte [edx + 0x4a], cl
dec edx
dec edx
dec edx
pushfd
loope 0x8de274
mov bh, 0x36
je 0x8de29f
pop edi
mov cl, 0x36
pop ebp
mov al, 0x5c
push ds
dec edx
dec edx
dec edx
call 0xe1439c73
pop ecx
jecxz 0x8de2e2
loop 0x8de2e1
loopne 0x8de340
sar byte ds:[ecx + 0x49bdc83e], 7
sar byte [ecx + 0x49bdc83e], 7
xor eax, 0x7334b33f
mov ah, 0xb5
mov ch, 0xb5
cmp eax, 0xb47234b2
mov ch, 0xb5
mov ch, 0xe
mov bh, 0xb5
mov ch, 0xb5
mov bh, 0x67
mov ch, 0xb7
mov edx, 0xb5b5b030
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
insd dword es:[edi], dx
dec edx
dec edx
dec edx
mov bh, 0x67
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
mov edx, 0xb5b5df36
mov ch, 0x86
jne 0x8de2ff
fbstp tbyte ss:[ebp + 0x7586b5b5]
mov bh, 0x67
mov edx, 0xb5b5b030
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
lahf
mov ah, 0xb5
repe cmpsd dword [esi], dword es:[edi]
mov edx, 0xb5b49f36
mov ch, 0xb7
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jne 0x8de321
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jne 0x8de330
mov edx, 0xb5b5b030
mov ch, 0x3f
xor byte [eax + 0x3fb5b5b5], dh
mov dword [0xa667a7f3], eax
jne 0x8de33f
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jne 0x8de351
xor dword [ebx + 0x3eb5b5b5], esi
push 0xffffffffffffff9e
insd dword es:[edi], dx
aas
mov dh, 0x3d
mov dl, 0xf2
push cs
mov bh, 0xb5
mov ch, 0xb5
pop esp
lds ecx, [edx + 0x4a]
dec edx
or eax, 0xb5b5b5b4
mov bh, 0x67
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jne 0x8de37b
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
aaa
imul ecx, dword [edx + 0x4a], 0x4a
sahf
jbe 0x8de3e7
mov ah, 0xb5
mov ch, 0xb5
mov edx, 0xb5b58130
mov ch, 0xc
mov ah, 0xb5
mov ch, 0xb5
mov bh, 0x67
mov edx, 0xb5b5b030
mov ch, 0xb7
mov edx, 0xb5b5b030
mov al, 0xb5
mov ch, 0xb5
aas
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jl 0x8de3af
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
aaa
imul ecx, dword [edx + 0x4a], 0x4a
jecxz 0x8de44a
inc edx
sahf
inc eax
inc esi
adc ebx, ebp
pop esp
mov ebp, 0xfd4a4a4a
je 0x8de46f
mov ebp, 0x3ef3b33f
pop ebp
or al, 0xb4
mov ch, 0xb5
mov ch, 0xb7
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xa667a7f3], eax
jl 0x8de3ec
mov edx, 0xb5b5b030
mov ch, 0x3f
mov dword [0xba67a7f3], eax
aaa
imul ecx, dword [edx + 0x4a], 0x4a
xor al, 0x4d
mov ch, 0xc8
mov ch, 0xb5
xor al, 0x6c
enter 0xffffffffffffb5b5, 0x34
insb byte es:[edi], dx
dec edx
dec edx
dec edx
dec edx
xor al, 0x4d
mov ch, 0xb0
mov ch, 0xb5
xor al, 0x6c
dec edx
dec edx
dec edx
dec edx
xor al, 0x4d
xor eax, 0x34b5b5b5
mov ch, 0xb5
mov ch, 0xb5
xor al, 0x4d
xor eax, 0x34b5b5b5
mov ch, 0xb5
mov ch, 0xb5
xor al, 0x64
mov ch, 0xb5
mov ch, 0xb5
jecxz 0x8de4b7
mov ch, 0xe3
inc edx
inc edx
sahf
inc ebp
inc esi
adc ebx, ebp
pop esp
dec ebx
dec edx
dec edx
aas
mov bl, 0xf3
xchg byte [ebp + esi*2 + 0x5d], bh
mov ah, 0xba
xor dword [edi + 0x34b5b5b5], ebp
mov bh, 0xb5
mov ch, 0xb5
pop ebp
jecxz 0x8de4da
inc edx
sahf
inc ebp
inc esi
adc ebx, ebp
push cs
mov ah, 0xb5
mov ch, 0xb5
pop esp
invalid
ja 0x8de476
mov ch, 0xea
jmp 0x8de519
pop esp
mov al, byte [ebp - 0x45030a5b]
xor byte [ebx + 0x4a], al
dec edx
dec edx
pop esp
mov cl, 0xb5
mov ch, 0xb5
scasb al, byte es:[edi]
push ebx
lahf
and eax, dword [ecx + 0x40]
inc eax
and al, 0xd7
pushfd
cdq
inc edi
push ss
pop ss
pop ss
salc
invalid
dec ebp
xchg esi, eax
aad 0xef
pop ss
pop ss
pop ss
adc al, 0xc1
xchg esi, eax
in al, dx
pop ss
pop ss
pop ss
pop ss
sbb byte [ebx + 0x1717170c], dl
inc ecx
inc eax
pushfd
pop ebp
pop es
adc al, 0x6d
sbb edx, dword [0x48b3e503]
dec ecx
xchg esi, eax
aad 0x3f
pop ss
pop ss
pop ss
pop esp
dec dh
call 0x180dce33
push edi
pop ss
pop ss
jg 0x8de567
fstp xword [ebx]
pop ss
inc ecx
call 0x53c43cdb
pop ss
nop
jmp 0x9cb94efc
jmp 0xfd24af08