Function at 0x8dbb0d
Capabilities:
Authenticate hmac

Disassembly:
xor ebx, ebp
call 0x1b07b5ac
jns 0x8db657
js 0x8db657
pop ecx
leave
test al, 0x5b
fdivp st(6)
jg 0x8db636
mov bh, byte [ecx]
mov byte [edx + ebx*8 - 0x43], 0x4c
pushfd
add eax, dword [eax + 0x42807116]
out 0x60, eax
pushal
je 0x8db673
jmp 0x8db673
mov esi, ecx
jl 0x8db68f
jge 0x8db68f
test eax, 0xb2d747c1
inc ecx
wait
inc esi
lds edx, [ebp + 0x3c]
iretd
cmp al, 0xcf
push ds
div byte [eax - 0x1a]
xor dword [eax - 9], 0x66127cfb
mov ebp, dword [esp]
out 0x81, al
jo 0x8db683
sti
jl 0x8db6a1
mov bp, word [esp]
js 0x8db6ab
jns 0x8db6ab
shl eax, 0x61
int1
nop
arpl word [ebx + 0x3e5bcb45], sp
int 0x1f
int 0x1f
pop ds
rol byte [edi - 0x29], 0xb2
inc ecx
pushfd
xor cl, byte [ebx + 0x1770241c]
mov ebx, dword [esp]
jo 0x8db6c7
jno 0x8db6c7
dec eax
das
ficomp dword [ebp - 0xa]
je 0x8db6a3
lea edi, [esp + ebp*4 - 0x3f]
inc edx
sal byte [edi - 0x1a987fbe], 1
jne 0x8db6e2
out dx, eax
popal
jno 0x8db6e3
jo 0x8db6e3
daa
div dh
jo 0x8db6b7
xor dword [eax - 9], 0xdfb82aad
sub ch, byte [ebp + 0x2247d753]
ror dword [edi], 1
and dword [edx + 0x7d546630], esp
sbb byte [esi + edx - 0x4c], bh
inc edi
xor byte [esi + 0x54], ah
push sp
jge 0x8db6ff
jl 0x8db6ff
mov ah, 0x47
xchg ecx, eax
mov cs, word [0xc617e49d]
pop ds
lahf
punpckhdq mm3, qword [ecx - 0x49df58e0]
shl dword [eax], 1
cmpsd dword [esi], dword es:[edi]
jecxz 0x8db688
mov byte [esp], al
add al, 0x24
js 0x8db71b
jns 0x8db71b
inc esi
and eax, edx
adc ah, byte [eax - 0x20]
jbe 0x8db71f
loopne 0x8db744
dec ebx
retf 0x3f58
lea esp, [esp + 1]
jae 0x8db737
jb 0x8db737
mov ah, 0x2a
dec ebp
mov esp, 0xe373ee6c
xchg byte [ebp - 0x4f], dh
mov dword [0x23d0b121], eax
cmc
cmpsb byte [esi], byte es:[edi]
and eax, 0x24248db5
lea esp, [esp]
jno 0x8db753
jo 0x8db753
mov byte [ecx - 0x3b], 0x42
sal byte [edi + 0x4ac8c542], 1
fdivr dword [edi + 0x29a89a4a]
mov ecx, 0x9eb2bd8
inc edx
invalid
lea esp, [esp]
js 0x8db76f
jns 0x8db76f
adc al, 0x73
mov ds, word [ebp + 0x29]
lodsd eax, dword [esi]
cmp eax, 0x2032b744
movsd dword es:[edi], dword [esi]
xor eax, 0xd32aaf5c
push edi
invalid
mov byte [esp], dl
jge 0x8db78b
jl 0x8db78b
sub ch, byte [edx + 0x7eaa5f38]
cmpsd dword [esi], dword es:[edi]
mov ah, 0xd3
std
inc esi
rcl byte [esi + 0x31], 0xc0
inc edi
pushal
in eax, 0x75
mov byte [esp], bl
jge 0x8db7a7
jl 0x8db7a7
cli
sub bh, byte [ebp - 2]
insb byte es:[edi], dx
or eax, dword [esi]
les ebp, [edx + 0x2adfb82a]
invalid
pushfd
je 0x8db7c3
jmp 0x8db7c3
lea esp, [esp + 4]
jp 0x8db7df
jnp 0x8db7df
xlatb
inc edi
and dl, cl
pop eax
retf
lea esp, [esp]
jno 0x8db7fb
jo 0x8db7fb
mov byte [0x26b03176], al
inc ecx
mov al, 0x63
rcl byte [edx + ecx*8 - 0x53], cl
pop esp
fisttp dword [esi]
invalid
push ecx
jbe 0x8db817
ja 0x8db817
mov byte [0x21d2b727], al
in eax, dx
cmpsb byte [esi], byte es:[edi]
mov ah, 0xd3
cli
add byte [ecx], 0x91
invalid
push word [esp]
js 0x8db833
jns 0x8db833
xchg edi, eax
pop es
bound edx, qword [ecx - 0x26b637b1]
mov eax, 0x68e88b4b
invalid
lea esp, [esp + 3]
jmp 0x8db84f
lea esp, [esp + 4]
jne 0x8db86b
je 0x8db86b
add al, 0xf7
in al, dx
push 0xfffffffffffffff8
lahf
push 0xffffffffffffffed
mov ah, 0x31
mov eax, dword [0x17b633c0]
wait
or ebp, dword [esi - 0x63]
jns 0x8db887
js 0x8db887
sub eax, 0xb7311edc
daa
inc edx
mov cl, 0x6b
invalid
push ebp
jae 0x8db8a3
jb 0x8db8a3
int1
nop
arpl word [ecx - 0x3651c745], si
cmp dl, bh
popfd
and esi, dword [ebx + 0x56f725d6]
aad 0x45
sub al, 0xdf
push cs
std
jl 0x8db8bf
jge 0x8db8bf
invalid
mov ebp, esp
jnp 0x8db8db
jp 0x8db8db
inc edi
ljmp 0xf4f3
jg 0x8db8f7
jle 0x8db8f7
inc eax
salc
mov cl, 0x40
xchg esp, eax
cwde
pop ds
invalid
pushal
jmp 0x8db913
mov word [esp + 0x10], sp
jle 0x8db92f
jg 0x8db92f
in al, dx
mov eax, dword [esi - 0x1a8a0baa]
invalid
pop dword [esp + 2]
jne 0x8db94b
je 0x8db94b
or bl, cl
dec esp
ret 0x54a5
rcl dword [esi - 0x2c], cl
dec edx
sub eax, 0xb5340cdc
and eax, 0xa77fbf4c
lea esp, [esp + 0x10]
jne 0x8db967
je 0x8db967
xchg ebp, eax
mov bh, 0x8c
or bl, byte [eax - 0x4672f501]
lodsb al, byte ds:[esi]
retf
push word [esp + 8]
jno 0x8db983
jo 0x8db983
imul ecx, dword [eax], 0xc6472dfb
push esp
xor ecx, esi
sbb eax, 0xe683138b
adc eax, 0x48da5d94
mov dword [esp + 1], ebp
jnp 0x8db99f
push ss
jp 0x8db99f
movsb byte es:[edi], byte [esi]
invalid
mov dword [esp + 3], ebx
jge 0x8db9bb
jl 0x8db9bb
sbb esi, esi
jno 0x8db93d
adc byte [esi + 0x5dc010e1], al
fimul word [ebx + ebp - 0x1a]
and al, 0x39
mov edi, 0x8db94a2f
and al, 3
lea esp, [esp + 3]
jg 0x8db9d7
jmp 0x8db9d7
pop dword [esp]
jge 0x8db9f3
jl 0x8db9f3
cmp dword [ebx + 0x3354c647], edx
into
sbb eax, 0x95f25cda
xchg ebp, eax
jecxz 0x8db988
sbb al, 0xb2
aad 0x24
mov dword [0x24648d2a], eax
add edi, dword [edi + 0x16]
lea esp, [esp + 3]
jg 0x8dba0f
jle 0x8dba0f
movsd dword es:[edi], dword [esi]
push esp
xchg esi, eax
cli
jp 0x8db9e9
invalid
mov dword [esp], ecx
je 0x8dba2b
jne 0x8dba2b
xchg esi, eax
adc al, 0x8a
in eax, dx
sbb al, 0xcc
push eax
rol dword [ecx + 0x20], 1
rcl dword [ebx], cl
div dword [ebp - 0x1b]
invalid
pushal
jbe 0x8dba47
ja 0x8dba47
salc
mov cl, 0x40
invalid
pop dword [esp + 0x16]
jo 0x8dba63
jno 0x8dba63
invalid
inc ecx
and bl, dl
push esi
fstp dword [ecx - 0x37]
test al, 0x5b
mov dword [esp], ecx
jmp 0x8dba7f
pop dword [esp + 0x12]
jne 0x8dba9b
je 0x8dba9b
clc
idiv byte [ebx - 0x15]
invalid
lea esp, [esp + 0x18]
jae 0x8dbab7
jb 0x8dbab7
les esi, [edi]
mov dl, 0x3e
mov esp, 0x14c43552
lodsb al, byte [esi]
sub eax, 0xf737c4bd
outsb dx, byte [esi]
out dx, al
jl 0x8dbad1
div byte [edx + ebx + 0x75]
je 0x8dbad3
jne 0x8dbad3
sbb bl, cl
inc esi
xchg ebp, eax
adc eax, 0x93600191
push ss
jae 0x8dbaba
retf
push 0xd
cld
jnp 0x8dba5a
adc eax, dword [ebx + 0x18c315e6]
cdq
or dword [ebx + 0xf], edx
test byte [eax - 0x33], bh
add al, byte [eax]
push ebx
je 0x908852
jne 0x908852
ror dword [ebx + ebp*8], 1
jae 0x8dbac8
xchg byte [ebp - 0xc], dh
push edi
rol byte [esi + 0x21], 1
rcl byte [edi + 0x73]
call fcn.008edfbb
jmp 0x8dbb72
jge 0x8dbb29
jl 0x8dbb29
invalid
lea esp, [esp + 4]
jne 0x908d4e
je 0x908d4e
into
pop esp
cmp edx, esi
add eax, 0x9dfa64e2
insb byte es:[edi], dx
jmp 0x8dbb56
ja 0x8dbb61
jbe 0x8dbb61
sbb dword [edx - 0x38], ecx
pop esi
cmp eax, ecx
sbb byte [eax - 0x27], bl
dec ecx
sub bl, bl
sbb ecx, dword [esi - 0x32]
dec esi
into
pop esp
cmp edx, esi
add al, byte [eax + 0x1f29707]
js 0x90897e
jns 0x90897e
dec edx
pop edi
jecxz 0x8dbbe4
push ss
in eax, 0x33
add byte [ecx + 0x43837011], al
hlt
xchg ebx, eax
push ss
rcl dword [esi - 0x3c]
mov dword [0x585d95e], eax
xchg ebp, eax
cld
invalid
cmp ebx, edi
jb 0x908673
clc
cmc
sub esp, 0x11
jnp 0x90864f
jp 0x90864f
sub byte [ecx + 0x6bab5839], ch
cmp byte [eax + 0x6cb8492e], bh
adc eax, 0x9c6d0a94
dec edi
push es
sahf
ror dword [ebx + 0x448d5f07], cl
sbb cl, al
mov eax, dword [edi]
pop edi
lea eax, [eax + ebx - 0x3f]
call fcn.008ffc76
add dword [ebp - 4], 0x40
add ebx, 0x40
jmp 0x908618
mov word [esp + 0xd], di
push word [esp + 2]
ja 0x908716
jbe 0x908716
test al, 0x2e
mov esp, 0x63b136db
in al, 0x7a
sbb eax, 0x58576bec
push edi
mov edi, ebp
lea edi, [edi + 8]
je 0x90863a
or byte [edi + edi*4 + 0x75], dh
mov ebp, 0x3354c644
into
push ds
in al, 0x7a
sbb eax, 0xc0402eec
push esi
xor eax, eax
adc al, 0x18
invalid
jne 0x90863a
inc esp
invalid
and dword [ebp - 4], 0
jmp 0x9086f0
pop eax
sub edi, ecx
sub esp, 0x1f
jle 0x908833
jg 0x908833
mov ecx, 0x38c9ae38
jmp 0x908678
cmc
lea esp, [esp + 3]
xor eax, eax
push cx
lea esp, [esp + 2]
lea esp, [esp + 0x2c]
jmp 0x9086f0
mov ecx, dword [ebp - 4]
push eax
mov eax, ebp
lea eax, [eax + 8]
mov edx, dword [eax]
ja 0x90869a
jbe 0x90869a
lodsb al, byte [esi]
mov esp, 0xc7e636db
inc esp
fidivr dword [ebp + 0x36b68e4c]
movsb byte es:[edi], byte [esi]
ret
sub esp, 0x1c
jmp 0x9086b9
push 0x40
mov ecx, edi
push ebp
shr ecx, 0x1d
push edx
mov byte [esp + 1], cl
mov dword [esp], esi
push dword [esp + 2]
pop dword [esp]
lea esp, [esp + 8]
add dword [esi + 0x14], ecx
pop ebx
sub esp, 0xe
push dword [esp + 9]
push word [esp + 7]
pop dword [esp + 8]
add esp, 2
mov dword [esp + 9], esi
lea esp, [esp + 2]
sub ebx, eax
push si
push dx
lea esp, [esp + 0x10]
sub esp, 3
lea esp, [esp + 2]
add esp, 0
sub esp, 0xd
push di
mov dword [esp], edx
lea esp, [esp + 1]
pop dword [esp + 3]
lea esp, [esp + 3]
cmp edi, ebx
pushal
mov byte [esp + 0x1a], dl
mov word [esp + 0x19], ax
lea esp, [esp + 0x10]
lea esp, [esp + 9]
push word [esp + 2]
push dword [esp + 2]
mov byte [esp + 9], cl
lea esp, [esp + 1]
lea esp, [esp + 0x14]
jb 0x908692
mov edx, dword [ebp + 8]
push ebx
lea ecx, [eax + esi + 0x18]
call fcn.008de0f3
pop ecx
lea eax, [esi + 0x18]
call fcn.008ffc3e
mov dword [ebp - 4], ebx
add ebx, 0x3f
jmp 0x908618
lea esp, [esp + 0x1c]
jne 0x908a84
je 0x908a84
jno 0x9087ed
pushal
pop es
xor byte [edx + 0x3acfa83a], bh
out dx, al
sub al, 0x89
dec esp
and al, 0x1a
mov dword [esp + 0x1a], ecx
lea esp, [esp + 3]
add edx, ecx
pushfd
pop word [esp]
lea esp, [esp + 2]
jne 0x9087e9
je 0x9087e9
cwde
pop ds
invalid
mov word [esp], bx
jo 0x908806
jno 0x908806
movsd dword es:[edi], dword [esi]
and eax, 0xfd2fdcb5
cmp al, 0xbd
sub eax, 0x4c07c734
int3
push esi
pushal
lea esi, [0x7dac7881]
bswap di
xchg dx, si
mov dword [esp + 4], ecx
pushal
lea esp, [esp + 3]
lea esp, [esp + 6]
pushal
push word [esp + 0x28]
pop dword [esp + 0x1c]
push sp
mov word [esp + 0x27], cx
mov dword [esp + 0x17], esi
lea esp, [esp + 3]
lea esp, [esp + 0x34]
popal
mov ecx, dword [esi + 0x10]
push edi
mov edi, eax
pushal
bswap eax
mov ah, 0xd7
xchg si, bp
lea ebx, [ebx + 0x4d9b]
mov dword [esp + 0x1c], ecx
push eax
push dword [esp]
push dword [esp]
pop word [esp + 7]
lea esp, [esp + 2]
lea esp, [esp + 8]
popal
shr eax, 3
mov edx, edi
lea ecx, [ecx + edi*8]
shl edx, 3
and eax, 0x3f
mov dword [esi + 0x10], ecx
cmp ecx, edx
jae 0x908734
inc dword [esi + 0x14]
jmp 0x908734
mov ecx, dword [ebp - 4]
dec dword [ebp - 4]
test ecx, ecx
jne 0x90893a
push esi
lea esi, [edi + 0x10]
push 8
pop edx
pushal
jo 0x90895d
jno 0x90895d
or eax, 0x967b1c8e
push esp
iretd
lea esp, [esp + 0x24]
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 4], 0x40
lea eax, [ebp - 0x4c]
jmp 0x9088f4
mov byte [eax], 0
inc eax
jmp 0x9088f4
mov bp, di
ja 0x908a0b
jbe 0x908a0b
cmpsd dword [esi], dword es:[edi]
daa
mov bh, 0xd2
and dword [eax - 0xe69ff79], ebp
add byte [edi + 0x5466578f], al
push sp
xchg dh, bl
xchg byte [esp], al
jno 0x908940
jo 0x908940
jmp 0x9089e6
push si
lea esp, [esp]
push word [esp + 1]
mov dword [esp], ebp
push edi
push dword [esp + 3]
pop word [esp + 1]
pushal
pop word [esp + 3]
mov word [esp + 0x1b], dx
push word [esp + 0x1d]
lea esp, [esp + 2]
js 0x908921
jns 0x908921
sub eax, 0xb44522ac
adc eax, 0x93600191
push ss
arpl word [eax - 0x73], sp
mov dl, cl
mov dword [0xc7c6ffff], eax
push esp
pushal
lea esp, [esp + 0x20]
popal
pushal
mov dword [esp + 7], esi
push dword [esp + 0xe]
pop dword [esp + 0x14]
pop dword [esp + 0x10]
mov dword [esp + 4], edx
mov word [esp + 0xc], ax
add al, 0x66
mov dword [esp + 0xc], eax
mov dword [esp + 0x16], edx
pop dword [esp + 0x11]
pushal
pushfd
mov byte [esp + 0x15], bh
pushfd
lea esp, [esp + 0xc]
lea esp, [esp + 0x34]
jmp 0x8db63b
mov ebx, dword [esp]
mov edi, dword [esp]
lea esp, [esp]
xchg ah, dl
lea esp, [esp + 2]
mov dword [esp + 0x1c], esi
push dx
mov byte [esp], dl
lea esp, [esp + 2]
popal
lea ecx, [ebp - 0xc]
mov byte [ebp - 0x4c], 0x80
call fcn.008ffc89
mov ecx, dword [esi]
shr ecx, 3
pushal
lea esp, [esp + 0x20]
push 0x38
pop eax
and ecx, 0x3f
pop esi
cmc
push bp
lea esp, [esp + 2]
cmp ecx, eax
pushal
push dword [esp + 6]
push esp
push word [esp + 0x1b]
mov byte [esp + 0xf], ch
lea esp, [esp + 2]
lea esp, [esp + 0x28]
jb 0x908b1a
jae 0x908ae1
invalid
push edi
lea ecx, [eax + esi + 0x18]
call fcn.008de0f3
pop ecx
pop edi
pop esi
bswap ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
leave
ret
mov dword [esp + 4], ecx
jp 0x908b90
jnp 0x908b90
dec edx
retf 0x3f58
mov word [esp + 1], si
push word [esp + 1]
jnp 0x908aa2
jp 0x908aa2
ficomp dword [edx + esi*8 - 0x6b]
jecxz 0x908aed
sahf
or al, 0x6b
cmpsb byte [esi], byte es:[edi]
and dword [esi + 0x14e5820c], ecx
invalid
push 0x78
bswap eax
not ah
mov eax, dword [esp]
pushfd
and al, 0x9c
mov byte [esp + 1], dh
and al, 1
mov dword [esp], edi
push word [esp + 1]
lea esp, [esp + 2]
lea esp, [esp + 8]
jmp 0x908b1a
sub eax, ecx
lea ecx, [ebp - 0x4c]
pushfd
mov byte [esp + 2], al
push word [esp + 2]
push word [esp + 2]
pop word [esp + 3]
js 0x908abf
jns 0x908abf
in eax, dx
push 0xfffffffffffffff8
lahf
push 0xffffffffffffffed
in al, dx
outsb dx, byte [esi]
cld
wait
jbe 0x908ae9
jae 0x908b35
add ax, si
xor bl, ah
popfd
push edi
push dword [esp + 3]
push dword [esp + 1]
pop dword [esp + 3]
mov byte [esp + 6], dl
pop word [esp]
lea esp, [esp]
mov word [esp + 3], sp
push word [esp + 3]
lea esp, [esp + 0xc]
pushal
mov dh, byte [esp]
xchg dl, cl
push eax
mov word [esp], bp
mov byte [esp + 2], dl
pop edx
lea esi, [ebp + 0xdd3]
mov dl, byte [esp]
mov dword [esp + 0x18], edi
pushfd
mov dword [esp], ecx
push dword [esp + 1]
lea esp, [esp + 8]
popal
call fcn.008ffd6a
lea eax, [ebp - 0xc]
push eax
push 8
setb al
mov eax, dword [esp]
push eax
mov dword [esp], esi
mov dword [esp], esi
push dword [esp]
mov dword [esp], eax
push word [esp + 4]
lea esp, [esp + 2]
lea esp, [esp + 0xc]
mov ecx, edi
call fcn.008ffd7a
push ebx
mov ebx, ebp
lea ebx, [ebx + 8]
mov ecx, dword [ebx]
pop ebx
push 0x10
pop edx
pushal
not eax
mov dword [esp + 0x1c], edi
push ax
push word [esp + 1]
push edi
mov dword [esp + 2], ebp
push word [esp + 5]
push word [esp + 3]
pop dword [esp]
push dword [esp + 1]
mov word [esp], ax
lea esp, [esp + 0xc]
popal
call fcn.008db3cd
push 0x58
mov ecx, edi
jb 0x908d9f
jmp 0x908d9f
jmp 0x8dbb45
call fcn.008de0b5
add esp, 0xc
leave
ret