Function at 0x150770e
Capabilities:
Authenticate hmac

Disassembly:
dec ecx
add ebx, ebx
jmp ebx
xor dword [esp + edx - 0x5bbd89c0], esi
ret
dec esi
lea esp, [edx + ecx*8 - 0x75e627d4]
dec ebp
mov dword [edx + ebx - 0x653cd432], edi
inc cx
cmovs ebx, esp
mov ecx, 0xca31970a
inc esp
mov esp, dword [ebx + edi - 0x653cd42f]
dec eax
lea edi, [eax + edi - 6]
inc ebp
xor esp, ebp
and word [esp + eax + 4], 0x8fa8
cwd
dec eax
mul eax
inc ecx
bswap esp
cbw
mul eax
inc ecx
ror esp, 1
inc ecx
bswap esp
inc ecx
neg esp
jmp 0x153c6d2
add word [esp + 0xe], ax
imul edx, edx
sbb ecx, edx
xor ebx, ecx
add esi, ecx
movsx ecx, ax
sub ax, ax
pop edx
pop eax
pop ecx
pop eax
je fcn.01508028
inc ecx
mov edi, 0x291cfbb
mov ecx, 0x6812f43c
dec eax
lea edi, [edi + ecx - 0x6812f440]
inc esi
mov edi, dword [edi + edi*2 - 0x5239f76]
inc ebp
xor edi, ebp
inc esp
movzx esi, cl
inc ecx
not edi
inc ebp
movsx ecx, si
inc ecx
dec edi
inc ecx
not edi
inc ecx
movsx edx, dh
inc esp
movzx esp, cl
inc ecx
movzx ebx, ah
inc ecx
xor edi, 0x9597083a
inc ecx
bswap edi
inc ebp
movzx eax, dh
inc ecx
push ebp
inc esi
xor dword [esp + esi*2 - 0x78], edi
inc esp
xadd cl, al
xchg dh, dl
inc ecx
pop ebp
jns 0x153bbbc
inc ecx
mov esi, 0x87ef0d
inc edi
mov esi, dword [esi + edx - 0x87ef0d]
mov ebx, 0xf39d01b4
movzx esi, byte [edi - 1]
mov eax, ebx
inc ecx
xor dh, ch
cdq
inc eax
neg dh
movzx ebp, bx
inc esp
mov edi, edx
inc eax
ror dh, 1
inc eax
inc ch
inc eax
sub dh, dl
call fcn.0151fe02
mov eax, 0x7d088731
lea ecx, [eax*4 - 0x3b50575b]
fmul qword [ebp + eax - 0x7d088731]
lea edi, [eax + edi - 0x7d088735]
inc ecx
push eax
mov eax, dword [edi + eax - 0x7d088731]
xor eax, ebx
movsx edx, byte [esp]
pop ecx
btc edx, edx
lea eax, [eax + ecx*2 - 0x5a1091db]
xor dx, 0x1b8f
lea edx, [ecx*2 - 0x2060b2ca]
neg eax
inc dx
ror edx, 0x90
sub edx, edx
sbb eax, 0xf9183e3d
bswap edx
rol eax, 1
and ecx, ecx
btr cx, 0x2f
xor ecx, edx
xor eax, 0x26394b06
lea ecx, [ecx + ecx - 0x2558354c]
inc eax
neg eax
ror eax, 1
push edx
sar dx, 0xae
setb byte [esp + edx*8]
xor ebx, eax
sub edx, 0xcf8a9d2e
btr cx, dx
setae byte [esp + edx*2 - 0x60eac5a2]
add esi, eax
sub edx, ecx
jg 0xd39204
dec ebp
arpl di, di
inc ecx
dec esp
mov eax, ebx
movzx esi, ax
dec ebp
adc ebx, edi
inc cx
mov edx, dword [edx + ecx - 0x6812f478]
sub bl, bl
inc cx
mov ecx, dword [edx + ecx - 0x6812f476]
dec edi
lea edx, [edx + esi - 0x3a]
inc ecx
or esp, 0xa0c50ae
adc dx, cx
inc eax
shr dh, 0xa1
inc ecx
movsx ebp, dh
inc bx
mov dword [esi + edx - 0x3c], edx
jno 0xca8d4e
mov ebx, 0x653cd42a
movzx eax, bl
dec esp
lea esi, [ebx + ebx*2 - 0x2d57843]
inc esp
movzx esp, byte [eax + edi - 0x2b]
cmp ch, dl
inc ebp
xor ah, ch
dec eax
lea esi, [ebx + 0x1898503a]
inc ecx
dec ah
inc eax
sub dh, dh
dec edx
lea edx, [esi*8 - 0x407f38e5]
inc ecx
not ah
inc esp
mov edi, esi
inc ecx
neg ah
dec eax
sal esi, 0x45
inc ebp
mov eax, esi
inc esp
movzx ecx, al
inc ecx
xor ah, 0x90
inc bp
or eax, eax
inc ecx
push eax
xadd dword [esp + ebx - 0x653cd427], eax
inc ebp
xor ch, ah
inc ecx
add ecx, 0x23957c23
test byte [ecx + ebx*8], bl
sub eax, ebx
lcall 0xc181, 0x41ec3245
and edi, dword [ebp + edx*4 + 0x23]
idiv al
dec ebp
sub esi, edi
dec esi
lea esp, [esp + 8]
inc sp
adc ecx, dword [esp + eax + 4]
movzx ebp, al
dec ebp
mov edi, dword [esp + ebx - 0x653cd42a]
inc eax
setae ch
ja 0x150183f
jp 0x153bc14
xor dword [edx - 0x5fa9984b], esi
add dword [ebx - 0x4c], esi
jae 0x153bc43
jg 0x153bcd7
nop
add dword [ebx - 0x4c], esi
dec edi
push ss
mov byte [ecx], al
jae 0x153bc4f
push edi
add bl, ah
add dword [ebx - 0x4c], esi
add eax, dword [ecx]
or eax, 0x60580e7e
sti
invalid
or ch, cl
aam 0x3f
mov eax, dword [0xea66e90a]
aas
or dword [edx], 0xdf0666e9
maxps xmm1, xmmword [ecx + 0x64]
clc
popal
mov ebx, 0xda0c112c
push ecx
jp 0x153bd0c
add eax, 0x7a51badc
sub eax, 0x51826c65
jp 0x153bd18
pop ebp
mov al, 0xce
push ecx
jp 0x153bd1e
adc dword [ebx + 0x5d], edi
ja 0x153bc8d
sbb al, 0x2e
stosd dword es:[edi], eax
test esi, 0xde6392fe
xor ebp, ebx
jmp 0x153bd1a
jns 0x153bcc0
invalid
sbb dh, bl
insd dword es:[edi], dx
rep insd dword es:[edi], dx
or ebp, ecx
invalid
sar dword [esp + ebx - 0x653cd428], 0xb9
inc ecx
ror esp, 1
shr byte [esp + ebx - 0x653cd427], 7
inc ecx
or cl, 0x39
not byte [esp + ebx - 0x653cd42a]
inc ecx
neg esp
inc ecx
rol esp, 1
mul byte [esp + ebx - 0x653cd424]
bt dx, si
inc cx
btr ecx, eax
inc ecx
xor esp, 0x1f3a6999
call fcn.00d0fb8b
dec ecx
dec esp
call fcn.00cebabd
mov dl, byte [ebp + 4]
push 0xcc269ea3
sub byte [esp], 0xa5
mov eax, dword [esp]
adc ebp, 5
dec al
mov byte es:[ecx], dl
lea edx, [eax + eax*4 - 0x6a6bbafa]
sub edi, 4
or eax, dword [esp]
add eax, dword [esp]
pop eax
mov ecx, dword [edi + eax + 0x33d96102]
cmovb edx, eax
lea eax, [edx*2 - 0x1c6fa4c6]
xor ecx, ebx
inc ecx
bswap ecx
btc eax, 0x27
dec ecx
or ax, 0x3e0f
sub dl, 0x36
bswap ecx
shr edx, 0x58
cwde
xor ebx, ecx
and eax, edx
setne al
adc esi, ecx
jmp esi