Function at 0x5839f1
Capabilities:
Authenticate hmac

Disassembly:
xor dh, byte [eax - 0x3ca94ecc]
add ch, byte [edx]
out 0x75, al
mov esi, 0xb870d2d5
mov byte [edx + 0x175b334d], ch
pop ebx
pop ss
pop ebx
pop ss
adc byte [0x736e981a], ah
dec eax
cwde
outsb dx, byte [esi]
jae 0x583a42
push ss
cli
push es
loopne 0x583a3c
cmp dword [ebx + 0x6e549a08], ecx
jno 0x583a15
jns 0x5839de
adc edi, 0xf53cc9b0
jle fcn.005839f1
daa
ret
invalid
xchg ecx, eax
loopne 0x583ab2
das
sbb byte [eax - 0x72], dh
inc eax
or al, 0x41
mov es, word [eax + 0xc]
inc ecx
test eax, 0xde552a01
mov bh, 0x55
push ebp
adc eax, 0xac1714f7
psadbw mm6, qword [edx - 0x72]
xor al, byte [eax - 0x5ab2173a]
jp 0x583a3d
mov byte [eax], dh
test al, 0x95
xor ah, byte [esi + ebp*2]
leave
wait
xchg edi, eax
inc eax
jecxz 0x5839f6
jno 0x583aaf
or dword [edi + 0x1c20b130], 0x15ef7293
shl dword [edx], 1
lea eax, [ebx - 0x760dad21]
and eax, 0x615410c3
cmp esi, eax
sbb byte [ecx - 0x17], cl
or eax, 0xebd40d2
stc
inc edx
fnstsw ax
call 0x846ae6e8
lds edx, [eax]
xchg esp, eax
push eax
mov al, byte [0x88c57665]
sbb byte [0x8c1fa2b7], 0xa2
mov ch, byte [ebx + 0x33]
jge 0x583ae5
adc byte [eax + edx*2 - 0x3a899a60], dl
mov byte [eax + 0x1fa2b71d], al
mov word [edx + 0x7d336b8a], fs
cmp edx, esp
sahf
loop 0x583a4c
test dword [edx], ebx
xchg edi, eax
in al, 0x17
sbb dl, byte [edi + 0x36f017e4]
or al, 0xf0
or dword [eax - 0x76], esi
jge 0x583a60
pop ss
invalid
cdq
jle 0x583ac5
int1
movsb byte es:[edi], byte [esi]
xor al, 0xf7
loopne 0x583b21
imul esi, dword [esi + 0x5b], 0xffffffad
xor byte [edx], ah
popfd
jns 0x583afe
imul ebx, dword [0x1569e968], 0x4a41461a
or ah, al
push edi
jmp 0x583af7
inc ebp
jns 0x583a98
adc al, 0xcb
aad 0xf9
sub bh, byte [edx - 0x24]
aaa
jmp 0xc23684d6
rcr dword [eax - 0x1c], 9
into
or esi, ecx
mov dh, 0xb4
mov cl, 0x4b
cmp dword [ebx - 0x2bd991b], 0x57b7ef77
mov ebx, 0xfd4266e5
ja 0x583af4
mov bh, 0x57
jo 0x583abd
out 0xb0, al
mov ebx, 0x80f0d0ec
invalid
int3
mov esp, 0x9e5a744f
std
mov dword [0x60f22395], eax
add eax, 0x8b58d6c0
loope 0x583b79
push dword [edi - 0x2d]
sal dword [edx], cl
aad 0x36
bound esp, qword [edi]
lodsd eax, dword [esi]
ja 0x583b14
push edx
dec esp
cmpsd dword [esi], dword es:[edi]
mov esi, 0xa0fb52f7
invalid
and esi, ebx
daa
push 0xe528b300
inc eax
adc bh, ch
xchg ebx, esp
mov dl, 0x67
xchg esi, eax
jle 0x583c00
sub esi, dword [edi + 0x74]
and eax, dword [eax]
xchg byte [ebp - 0x4de8825b], al
sbb esi, esp
ret
outsd dx, dword [esi]
shl ebx, cl
push cs
sal dword [ebx + edi*4 - 0x7a48f873], 1
out dx, al
inc edi
sahf
xchg dword [edi], ebx
push edi
aam 0x5a
mov ah, 0x25
xchg ebp, eax
sbb dword [eax - 0x7f], 0x67
cmpsd dword [esi], dword es:[edi]
pop ebx
xchg ebx, eax
dec edi
not byte [eax - 0x69]
xor byte [edi + 0xb], dl
in eax, 0x93
in al, dx
jo 0x583c77
sub dh, dh
cmp byte [esi - 0x43a05df0], dl
ljmp 0x2d08
sal dword [edx + 0x7d7751ea], cl
or eax, dword [ecx]
push 0xffffffffffffffea
cmp esi, esi
shl dword [esi - 0x586cd84a], cl
xchg ebx, eax
cmpsd dword [esi], dword es:[edi]
call 0xe1ac4a2a
add al, 0x78
xchg dword [eax - 0x4be84ea0], edx
arpl word [ebx], bp
invalid
pushal
mov cl, 0x17
mov ah, 0x63
sub esi, eax
inc ecx
jne 0x583c28
or edi, dword [edx - 0xa88bdf4]
movsd dword es:[edi], dword [esi]
xor al, 0x84
xlatb
loopne 0x583ca0
mov edx, 0x5025512c
neg dword [eax + 0x6987e18f]
invalid
and eax, 0x8f98f750
loope 0x583bea
imul eax, edi, 0xa299b4b4
jl 0x583c43
mov ah, 0x99
mov byte [0x7c02d87c], al
inc edx
xor bh, byte [ebx + eax]
add bh, byte [edx + eax*2 + 0x32]
cmp al, 3
and byte [esi], dl
dec ebp
xchg byte [edx + 0x6b8937b6], dl
mov ebx, 0x6670e2c9
adc eax, 0x76ac10e6
xlatb
aaa
mov dword [ebx - 0x45], ebp
leave
loop 0x583cee
adc ax, 0x10e6
lodsb al, byte [esi]
jbe 0x583c5c
pushal
js 0x583c66
jae 0x583c38
mov edx, 0xf7338129
push esi
add ah, byte [eax - 0x79881734]
and cl, dh
push edx
arpl sp, di
push ss
add ebp, ebp
push ss
test byte [edx - 0x2fe3878d], bl
outsb dx, byte [esi]
sbb ebp, dword [edi + 0x10213812]
lcall 0x1b6e, 0xd01c7873
scasd eax, dword es:[edi]
adc bh, byte [eax]
and dword [eax], edx
push cs
push ecx
cmp al, 0x51
and sp, si
sub esi, dword [edx]
mul dword [edi]
mov dh, 0x15
lodsb al, byte [esi]
stosb byte es:[edi], al
nop
inc edi
sbb byte [esi - 9], dl
mov ch, 0x36
xchg byte [eax], ah
lcall 0xa317, 0x81c6151f
bound edi, qword [0x9b41761a]
imul ecx, dword [eax + esi*8], 0xffffff87
invalid
add dh, cl
out 6, eax
bound esi, qword [ebx - 0xd875c4a]
cmp dword [edx + 0x37], edx
or byte [0xcc02b001], al
inc ecx
lodsd eax, dword [esi]
add dword [eax - 0x52be33fe], esi
and dword [esi], eax
in al, 0xfb
wait
cmp eax, 0xb1beed0a
jl 0x583c90
xlatb
fld dword [eax + esi*4 + 0x15]
add dword [edx - 0x680b927f], ecx
lcall 0x131e, 0xc3ca2da7
sbb byte [ebp - 0x3c2a6e23], bl
movsd dword es:[edi], dword [esi]
add edi, 0x30818577
sbb al, byte [edi + 0x4726ffba]
dec edi
pop ax
pop ds
adc al, 0xd2
cmp dword [edx], ecx
mov cl, 0xb1
push ebp
and eax, 0x1527fb14
sbb eax, 0xab9356d3
mov esi, 0x87d5a019
and esi, dword gs:[ecx + 9]
mov edi, 0x22216e4e
loope 0x583cdf
invalid