Function at 0x6e2ec15d
Capabilities:
Authenticate hmac

Disassembly:
insb byte es:[edi], dx
dec ebx
outsb dx, byte [esi]
outsd dx, dword [esi]
ja 0x6e2ec1d1
push ebx
imul esp, dword [eax + eax], 0x6f430071
outsb dx, byte [esi]
jbe 0x6e2ec1d4
jb 0x6e2ec1e5
push ebx
je 0x6e2ec1e6
imul ebp, dword [esi + 0x67], 0x75636553
jb 0x6e2ec1e6
je 0x6e2ec1f8
inc esp
jae 0x6e2ec1e6
jb 0x6e2ec1ee
jo 0x6e2ec1fb
outsd dx, dword [esi]
jb 0x6e2ec1de
outsd dx, dword [esi]
push ebx
arpl word gs:[ebp + 0x72], si
imul esi, dword [ecx + edi*2 + 0x44], 0x72637365
imul esi, dword [eax + 0x74], 0x41726f
add ch, al
add al, byte [edi + 0x6c]
outsd dx, dword [esi]
bound esp, qword [ecx + 0x6c]
push ebp
outsb dx, byte [esi]
insb byte es:[edi], dx
outsd dx, dword [esi]
arpl word [ebx], bp
add byte [esi + 0x6f6c4702], bh
bound esp, qword [ecx + 0x6c]
dec esp
outsd dx, dword [esi]
arpl word [ebx], bp
add byte [edi + 3], dl
dec ebp
popal
jo 0x6e2ec21a
imul esp, dword [ebp + 0x77], 0x6946664f
insb byte es:[edi], dx
add byte gs:[edx + 0x6f6c4702], bh
insb byte es:[edi], dx
outsd dx, dword [esi]
bound esp, qword [ecx + 0x6c]
popal
insb byte es:[edi], dx
inc esi
jb 0x6e2ec23e
add byte gs:[eax], al
mov bl, 2
inc edi
insb byte es:[edi], dx
outsd dx, dword [esi]
bound esp, qword [ecx + 0x6c]
inc ecx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsd dx, dword [esi]
arpl word [eax], ax
inc dword [ecx]
inc edi
je 0x6e2ec238
je 0x6e2ec238
popal
outsb dx, byte [esi]
insb byte es:[edi], dx
dec ecx
outsb dx, byte [esi]
outsw dx, word [esi]
outsd dx, dword [esi]
jb 0x6e2ec268
popal
je 0x6e2ec267
outsd dx, dword [esi]
outsb dx, byte [esi]
add byte [eax], al
pop eax
add al, 0x53
je 0x6e2ec24d
jb 0x6e2ec27c
outsd dx, dword [esi]
jb 0x6e2ec25a
outsd dx, dword [esi]
add byte gs:[eax], al
rol dword [ecx], 0x47
je 0x6e2ec25b
jne 0x6e2ec28c
jb 0x6e2ec281
outsb dx, byte [esi]
je 0x6e2ec26f
jb 0x6e2ec290
arpl word [ebp + 0x73], sp
jae 0x6e2ec26f
add bl, dl
add cl, byte [eax + 0x65]
popal
jo 0x6e2ec282
je 0x6e2ec27b
outsb dx, byte [esi]
outsw dx, word [esi]
jb 0x6e2ec2a4
popal
je 0x6e2ec2a3
outsd dx, dword [esi]
outsb dx, byte [esi]
add byte [eax], al
mov cl, 3
push edx
popal
imul esi, dword [ebx + 0x65], 0x65637845
jo 0x6e2ec2bf
imul ebp, dword [edi + 0x6e], 0x2e20000
outsb dx, byte [esi]
add byte [eax], al
loop 0x6e2ec254
dec ecx
outsb dx, byte [esi]
imul esi, dword [ecx + ebp*2 + 0x61], 0x657a696c
jp 0x6e2ec2c1
inc ebx
inc ebx
jb 0x6e2ec2c8
je 0x6e2ec2ca
arpl word [ecx + 0x6c], sp
push ebx
arpl word gs:[ecx + ebp*2 + 0x6f], si
je 0x6e2ec2d2
imul ebp, dword [edi + 0x6e], 0x4400d100
outsd dx, dword [esi]
outsb dx, byte [esi]
add cl, dl
add byte [ebp + 0x6c], al
insb byte es:[edi], dx
je 0x6e2ec2d9
inc ebx
jb 0x6e2ec2e0
je 0x6e2ec2e2
arpl word [ecx + 0x6c], sp
insb byte es:[edi], dx
push ebx
arpl word gs:[ecx + ebp*2 + 0x6f], si
outsd dx, dword [esi]
outsb dx, byte [esi]
add byte [0x61655304], bl
jb 0x6e2ec2ee
push 0x68746150
push eax
popal
je 0x6e2ec2f8
push edi
add byte [esi + 0x74654702], bl
push ebp
jae 0x6e2ec2ff
jb 0x6e2ec2e0
popaw
jne 0x6e2ec30d
je 0x6e2ec2f8
dec ecx
dec esp
popal
outsb dx, byte [esi]
jne 0x6e2ec30b
add byte gs:[bx + si], al
outsb dx, byte [esi]
add al, byte [edi + 0x65]
je 0x6e2ec307
jns 0x6e2ec329
je 0x6e2ec31d
insd dword es:[edi], dx
inc esp
popaw
jne 0x6e2ec32b
je 0x6e2ec316
dec ecx
dec esp
popal
outsb dx, byte [esi]
jne 0x6e2ec329
add byte gs:[bx + si], al
add byte [eax], al
push es
add al, byte [edi + 0x65]
je 0x6e2ec31e
outsd dx, dword [esi]
arpl word [ecx + 0x6c], sp
dec ecx
outsb dx, byte [esi]
outsw dx, word [esi]
push edi
add byte [eax], al
movsb byte es:[edi], byte [esi]
add al, byte [edi + 0x65]
inc edi
je 0x6e2ec33a
je 0x6e2ec33a
jb 0x6e2ec35a
imul ebp, dword [edi + 0x6e], 0x577845
pop dword [eax]
inc ebx
jb 0x6e2ec358
popal
je 0x6e2ec35b
inc esi
imul ebp, dword [ebp + 0x57], 0x43008c00
insb byte es:[edi], dx
push edi
add byte [eax + eax + 0x61657243], cl
jb 0x6e2ec366
popal
je 0x6e2ec369
inc esi
imul ebp, dword [ebp + 0x4d], 0x69707061
dec ebp
popal
jo 0x6e2ec37c
jo 0x6e2ec376
imul ebp, dword [esi + 0x67], 0x4d000057
outsb dx, byte [esi]
push edi
add byte [eax], al
dec ebp
add dword [esi + 0x69], eax
outsb dx, byte [esi]
push edx
jae 0x6e2ec38b
jne 0x6e2ec390
jb 0x6e2ec382
arpl word [ebp + 0x45], sp
inc ebp
js 0x6e2ec37a
add cl, bh
add al, 0x57
popal
imul esi, dword [esi + eax*2 + 0x6f], 0x6e695372
insb byte es:[di], dx
dec edi
bound ebp, qword [edx + 0x65]
je 0x6e2ec371
outsd dx, dword [esi]
jb 0x6e2ec381
imul ebp, dword [esi + 0x67], 0x624f656c
push 0x65
arpl word [eax + eax - 6], si
cli
add edx, dword [edx + 0x65]
insb byte es:[edi], dx
popal
jae 0x6e2ec3a8
dec ebp
jne 0x6e2ec3ba
js 0x6e2ec349
add bh, dh
add al, 0x57
popal
imul esi, dword [esi + eax*2 + 0x6f], 0x6c754d72
je 0x6e2ec3c1
jo 0x6e2ec3c6
dec edi
dec edi
bound ebp, qword [edx + 0x65]
arpl word [ebx + esi*2], si
add byte [edx + 0x74754f03], cl
dec edi
jne 0x6e2ec3dd
jo 0x6e2ec3e0
je 0x6e2ec3b1
bound esi, qword gs:[ebp + 0x67]
push ebx
je 0x6e2ec3e6
imul ebp, dword [esi + 0x67], 0x70000057
add byte [ebx + 0x6f], al
push edi
add byte [eax], al
jo 0x6e2ec37c
inc ebx
outsd dx, dword [esi]
jo 0x6e2ec3f9
inc esi
imul ebp, dword [ebp + 0x41], 0x4400d300
insb byte es:[edi], dx
insb byte es:[edi], dx
inc ecx
add bl, dl
add byte [ebp + 0x6c], al
je 0x6e2ec3f3
inc esi
imul ebp, dword [ebp + 0x41], 0x46015a00
insb byte es:[edi], dx
inc ecx
add byte [edx + 1], bl
inc esi
insb byte es:[edi], dx
jne 0x6e2ec40d
push 0x77656956
dec edi
inc si
imul ebp, dword [ebp], 0x65470203
je 0x6e2ec3f8
inc edi
je 0x6e2ec3f8
outsd dx, dword [esi]
arpl word [ecx + 0x6c], sp
push esp
imul ebp, dword [ebp + 0x65], 0x880000
inc ebx
jb 0x6e2ec420
popal
popal
je 0x6e2ec423
inc esi
imul ebp, dword [ebp + 0x41], 0x5504d600
inc ecx
add dh, dl
add al, 0x55
push ebp
outsb dx, byte [esi]
insd dword es:[edi], dx
popal
jo 0x6e2ec422
imul esp, dword [ebp + 0x77], 0x6946664f
insb byte es:[edi], dx
add byte gs:[esi + 1], bl
inc esi
outsd dx, dword [esi]
jb 0x6e2ec449
popal
je 0x6e2ec42c
jae 0x6e2ec455
jae 0x6e2ec455
popal
push edi
add byte [eax], al
and eax, 0x6c694601
push esp
imul ebp, dword [ebp + 0x65], 0x79536f54
jae 0x6e2ec46c
outsd dx, dword [esi]
push ebx
jns 0x6e2ec46a
je 0x6e2ec45e
insd dword es:[edi], dx
insd dword es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x4be0000
push ebx
jns 0x6e2ec478
je 0x6e2ec46c
insd dword es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x7a546f54
push ebx
outsd dx, dword [esi]
push esp
jp 0x6e2ec464
jo 0x6e2ec478
arpl word [ecx + 0x66], bp
imul esp, dword [ebx + 0x4c], 0x6c61636f
push esp
imul ebp, dword [ebp + 0x65], 0x47029700
je 0x6e2ec47c
add byte gs:[edi + 0x74654702], dl
push esp
xchg edi, eax
add al, byte [edi + 0x65]
je 0x6e2ec47c
imul ebp, dword [ebp + 0x65], 0x6d726f46
outsd dx, dword [esi]
jb 0x6e2ec49c
popal
je 0x6e2ec489
add byte [eax], al
dec eax
add ecx, dword [edi + ebp*2 + 0x63]
popal
insb byte es:[edi], dx
inc esi
jb 0x6e2ec4a3
add byte gs:[ebp + 4], bh
push ebx
je 0x6e2ec496
jb 0x6e2ec4b1
outsd dx, dword [esi]
jb 0x6e2ec4b4
je 0x6e2ec4c6
inc ebx
insb byte es:[edi], dx
popal
jae 0x6e2ec4c5
add byte [eax], al
jae 0x6e2ec45a
add al, 0x53
push ebx
je 0x6e2ec4a6
popal
jae 0x6e2ec4d1
inc ebp
jb 0x6e2ec4d2
outsd dx, dword [esi]
jb 0x6e2ec463
add byte [0x70784501], bl
sbb eax, 0x70784501
popal
outsb dx, byte [esi]
inc ebp
inc ebp
outsb dx, byte [esi]
jbe 0x6e2ec4d9
jb 0x6e2ec4e1
outsb dx, byte [esi]
insd dword es:[edi], dx
outsb dx, byte gs:[esi]
je 0x6e2ec4cb
je 0x6e2ec4ec
imul ebp, dword [esi + 0x67], 0x89005773
add ecx, dword [edi + 0x75]
je 0x6e2ec4f6
jae 0x6e2ec4d6
add byte [ecx + 0x74754f03], cl
jo 0x6e2ec4fc
jne 0x6e2ec4fc
je 0x6e2ec4cd
inc esp
bound esi, qword gs:[ebp + 0x67]
push ebx
je 0x6e2ec502
imul ebp, dword [esi + 0x67], 0xd3000041
add al, 0x55
outsb dx, byte [esi]
push 0x6c646e61
rol dword [edx*2 + 0x6e61686e], cl
outsb dx, byte [esi]
insb byte es:[edi], dx
inc ebp
js 0x6e2ec507
arpl word [ebp + 0x70], sp
jo 0x6e2ec51b
je 0x6e2ec511
imul ebp, dword [edi + 0x6e], 0x746c6946
jb 0x6e2ec4b1
outsd dx, dword [esi]
outsb dx, byte [esi]
inc esi
imul ebp, dword [esp + esi*2 + 0x65], 0xc0000072
add al, al
add al, 0x54
push esp
jb 0x6e2ec525
imul ebp, dword [esi + 0x61], 0x72506574
outsd dx, dword [esi]
arpl word [ebp + 0x73], sp
jae 0x6e2ec4c5
add byte [ecx + 2], bh
jns 0x6e2ec4ca
inc edi
je 0x6e2ec51f
je 0x6e2ec51f
push ebx
jns 0x6e2ec541
jae 0x6e2ec543
je 0x6e2ec535
insd dword es:[edi], dx
insd dword es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x69467341
jae 0x6e2ec51e
imul ebp, dword [ebp + 0x54], 0x656d69
lds eax, [ecx]
inc edi
insb byte es:[edi], dx
push esp
imul ebp, dword [ebp + 0x65], 0x4701c500
add dword [edi + 0x65], eax
je 0x6e2ec529
je 0x6e2ec529
jne 0x6e2ec55a
jb 0x6e2ec54f
outsb dx, byte [esi]
je 0x6e2ec541
push esp
push 0x64616572
dec ecx
add byte fs:[eax], al
xchg ebx, eax
add al, byte [edi + 0x65]
je 0x6e2ec550
imul esp, dword [ebx + 0x6b], 0x6e756f43
outsb dx, byte [esi]
je 0x6e2ec505
add byte [edi + 0x65755103], ah
jb 0x6e2ec586
add edx, dword [ecx + 0x75]
jb 0x6e2ec586
push eax
jb 0x6e2ec577
outsd dx, dword [esi]
jb 0x6e2ec581
popal
outsb dx, byte [esi]
arpl word [ebp + 0x43], sp
outsd dx, dword [esi]
jne 0x6e2ec58a
outsb dx, byte [esi]
je 0x6e2ec583
jb 0x6e2ec520
add byte [0x74654702], dl
adc eax, 0x74654702
dec ebp
outsd dx, dword [esi]
jne 0x6e2ec596
insb byte es:[edi], dx
dec eax
popal
outsb dx, byte [esi]
insb byte es:[edi], dx
inc ecx
add byte [eax], al
movsd dword es:[edi], dword [esi]
add al, 0x53
je 0x6e2ec58f
outsb dx, byte [esi]
push 0x6c646e61
inc ebp
inc ebp
js 0x6e2ec5a8
jo 0x6e2ec5bc
imul ebp, dword [edi + 0x6e], 0x746c6946
jb 0x6e2ec552
jb 0x6e2ec552
jmp 0xe29d0e59
outsd dx, dword [esi]
arpl word [ebx + 0x65], bp
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
jo 0x6e2ec5c5
jb 0x6e2ec5cb
inc ebp
js 0x6e2ec5cc
push 0x65676e61
add byte [eax], al
mov dl, 4
push ebx
insb byte es:[edi], dx
jo 0x6e2ec578
add byte [ebp + 5], cl
insb byte es:[edi], dx
jae 0x6e2ec5f1
dec ebp
add eax, 0x7274736c
insb byte es:[edi], dx
jb 0x6e2ec5eb
outsb dx, byte gs:[esi]
inc ecx
add byte [eax], al
add al, byte [edx]
add byte [edx], al
add al, byte [edi + 0x65]
je 0x6e2ec5d6
inc edi
je 0x6e2ec5d6
popal
jae 0x6e2ec601
inc ebp
jb 0x6e2ec602
jb 0x6e2ec600
outsd dx, dword [esi]
jb 0x6e2ec593
add byte [ecx], dl
add eax, 0x65646957
inc ebx
push 0x6f547261
push edi
imul esp, dword [ebp + 0x43], 0x54726168
outsd dx, dword [esi]
dec ebp
jne 0x6e2ec60f
je 0x6e2ec60e
inc edx
jns 0x6e2ec61c
add bh, ch
add cl, byte [ecx + 0x6e]
je 0x6e2ec615
jb 0x6e2ec61e
outsd dx, dword [esi]
arpl word [ebx + 0x65], bp
dec ecx
outsb dx, byte [esi]
arpl word [edx + 0x65], si
insd dword es:[edi], dx
outsb dx, byte gs:[esi]
outsb dx, byte [esi]
imul esp, dword [ebp + 0x64], 0x45
add byte gs:[ebx + 0x74654702], ah
insb byte es:[edi], dx
push ebx
je 0x6e2ec649
je 0x6e2ec660
push eax
rol byte [ecx], 0x47