Function at 0x14cd2c9
Capabilities:
Authenticate hmac

Disassembly:
ror edx, 1
dec edx
mov dword [esp + ebp - 0x5ac67819], 0x452737b8
cwde
neg edx
dec ecx
rol esp, 0x37
inc si
adc dword [esp + ebp - 0x5ac6780c], ebp
rol edx, 1
jmp 0x152f285
and eax, eax
rol edx, 2
lea edx, [edx + ecx*8 + 0x6a735397]
inc ax
inc cl
shl cl, cl
bswap edx
setle cl
and eax, 0x96ab3490
jnp 0x14d67dc
mov ebx, 0x78070a3b
inc ecx
mov ecx, dword [esi + ebx - 0x78070a3b]
inc ebp
mov eax, dword [esi + ebx - 0x78070a37]
inc ecx
add ecx, eax
movzx eax, bl
dec esp
lea ebx, [eax + ebx*4 - 0x405244d8]
inc ecx
mov dword [esi + eax*2 - 0x72], ecx
mov eax, dword [esi + ebx - 0x78070a3f]
inc ecx
movzx edx, bx
and ebx, edx
shl edx, 0x55
dec eax
lea esi, [esi + ebx*4 - 0x30]
inc esp
mov ecx, ebx
inc ebp
mov esp, ebx
dec esi
lea edx, [0x4ca9ce3f]
inc ecx
xor eax, edi
jmp 0xc99896
inc esp
movzx edx, dx
dec edx
lea esi, [esi + edx*2 - 0x886f]
inc ecx
movsx ebx, dl
inc ecx
movsx ebp, dx
inc ebp
movsx ecx, dx
inc ebp
movzx edx, byte [edx + esi - 0x4437]
dec ecx
lea edx, [ecx + edx*2 - 0x2cc67a60]
ror bp, 0xc3
inc ebp
xor dl, bh
btr bx, bp
inc ecx
xor dl, 0x2f
push ebp
inc ecx
neg dl
inc ecx
xor dl, 0xc
neg word [esp + ebx - 0x36]
inc ecx
not dl
jp 0x12eb618
inc ecx
mov edx, 0x4937b728
inc ebp
mov eax, edx
dec ebx
mov ecx, dword [esi + eax - 0x4937b728]
inc edi
mov ebp, dword [esi + eax - 0x4937b720]
inc ecx
mov ebx, edx
inc ecx
mov ebp, eax
inc ecx
dec eax
dec edi
lea esi, [edx + esi - 0x4937b71c]
inc cx
bt edx, 0x32
push ebx
inc esi
mov dword [ecx + eax - 0x4937b727], ebp
inc cx
and ebp, edx
dec ecx
lea esi, [eax + esi - 0x4937b72b]
movzx eax, word [esp + ebp - 0x4937b727]
inc ecx
inc al
inc edx
mov ecx, dword [esi + edx - 0x4937b728]
inc esp
movzx ebx, ch
inc ecx
xor ecx, edi
inc edx
neg byte [esp + edx - 0x4937b721]
not ecx
inc edx
lea ecx, [ecx + edx*2 - 0x3b4fe59f]
inc esp
xchg byte [esp + ebx - 0x4937b725], dl
jne 0x12aa19a
xor ecx, 0x563e29a7
dec eax
cwde
inc edx
neg dword [esp + eax - 0x4937b724]
dec esi
lea ebp, [ebx + ebx*4 - 0x71e98b4d]
not ecx
dec esp
mov dword [esp + eax*2 - 0x6f6e], edi
dec eax
ror eax, 0x8d
movsx edx, al
inc edx
xor dword [esp + edx - 0x4937b749], ecx
inc ecx
pop edi
dec eax
arpl cx, cx
inc ebp
movzx esp, dx
dec edi
lea ecx, [eax + edx*8 - 0x1f75bad2]
dec eax
add edi, ecx
cwd
inc cx
neg edx
mul al
dec eax
or edx, edi
jmp edx
not ecx
movzx eax, dl
call fcn.00c902d4
mov ecx, 0x86874f22
inc ebp
xor bh, dl
movsx eax, cl
dec esi
lea edx, [esp + edx + 8]
inc esp
mov eax, ebp
shl al, cl
dec esp
add eax, ecx
inc ebp
mov dword [edx + ebx*2 - 0x6e], ebp
dec eax
lea esi, [esi + ebx*2 - 0x72]
inc esp
movzx esp, byte [esp + ebx*2 - 0x6b]
inc ebp
movsx ebp, ah
jp 0xc1c261
inc esp
adc esp, dword [esi + ebx*8 - 0x1b8]
inc ebp
xor esp, edi
inc cx
ror eax, cl
inc ecx
xor esp, 0x52b96da3
shr eax, 0xe7
mul byte [esp + ebx - 0x33]
dec edi
lea edx, [eax + ebp*4 + 0x69284501]
inc ecx
rol esp, 3
shl byte [esp + ebx*4 - 0xd6], cl
inc ecx
neg ecx
inc esp
adc esp, eax
inc ecx
rol esp, 1
sub dl, dh
cdq
jle 0x1417b3f
add ecx, 0xb21b2284
call fcn.01379b71
adc eax, 0x901fd915
xchg byte [esp + ecx*2 - 0x7a78], al
xor ebx, edx
xadd word [esp + ecx - 0x3d36], ax
jg 0x13f0808
adc esi, edx
inc word [esp + ecx*2 - 0x7a76]
pop eax
pop edx
pop ecx
jne fcn.01497d09
mov eax, dword [esi + edx*2 - 0x1be0005]
pop edx
adc cx, 0x3110
shl dword [esp + edx - 0x6f50e20c], 0xd6
xor eax, ebx
shl cx, 0x65
call fcn.014ca7ed
xor dword [esp + edx*2 - 6], ebp
dec ecx
imul edi
inc ecx
div bl
cdq
inc ecx
pop edi
inc cx
xor ebx, 0x87445091
loope 0x1404ace
btc eax, edx
dec eax
arpl bp, bp
dec eax
btr ebx, 0x33
inc ebp
cmovb ebx, ecx
dec eax
adc edi, ebp
or al, bh
jl fcn.012e2664
xor eax, dword [ebp + 0xf]
inc edx
invalid
mov ecx, 0xca25f785
xor ecx, 0x2eb38ca8
imul ecx, ecx
mov edx, dword [esi - 4]
inc cx
jg 0x1508c10
push 0x4773e324
je 0x1404b36
push 0x64
jg 0x1404af9
call 0xdc30669f
hlt
int 0x1b
invalid
stosb byte es:[edi], al
aam 0x8d
mov al, 0xfe
ja 0x1404af2
jg 0x1404b3e
mov dl, 0xfe
jbe 0x1404a96
lodsd eax, dword [esi]
ljmp 0xc316
jne 0x1404b0c
mov bl, 0x42
xor al, 0xd6
sub al, 0x25
aam 0x15
sar dword [ebp + 0xfa88a40], 1
dec esp
jb 0x1404ac7
and eax, 0xbdd115d4
inc eax
mov ch, byte [eax + 0x36644c0f]
jb 0x1404ac7
mov dword [eax + 0x4d], eax
loopne 0x1404add
stc
pop ebp
fiadd word [ecx + 0x44]
int3
retf
invalid
cwde
bts ax, cx
imul cx, cx
xor dl, bl
add dl, 0xa4
lea eax, [eax + ecx*4 - 0x3ce0dff1]
call fcn.00d2feb4
inc ecx
mov ebp, 0x57a4d48a
inc edi
mov ebp, dword [esi + ebp - 0x57a4d48a]
dec ecx
add esi, 4
mov edx, 0xc5924437
jmp 0x12d631d
inc bp
xor edi, esp
dec al
inc esp
mov eax, ebp
dec ecx
xchg ecx, eax
dec esp
add esp, esp
dec ecx
mov ebp, dword [esp + edx - 0xffff]
inc cx
sar eax, cl
dec esi
lea esi, [edx + esi - 0x10007]
dec eax
sar ecx, cl
dec esi
lea esp, [edx + ebp*4 + 0x789bcd37]
dec ecx
mov dword [esi + edx*2 - 0x1fffe], ebp
dec eax
lea esi, [esi + edx*4 - 0x40000]
mov ebp, dword [esi + edx*8 - 0x7fff8]
inc ecx
dec ecx
inc ecx
xor ebp, edi
inc edx
lea ebp, [ebp + ebx - 0x94dcde3]
shr dx, 0x6e
inc ecx
movsx ebx, sp
inc cx
shl ecx, 0xcb
neg ebp
inc ebp
dec esp
lea ebp, [eax + edx*8 + 0x1723979d]
not ebp
inc ecx
push edi
dec ecx
rol ebx, 0xa9
inc ebp
movsx edi, sp
jb 0x1404a76
mov ecx, 0x40a273a5
mov eax, dword [esi + edx]
and dl, dh
setg cl
btc cx, cx
lea esi, [esi + edx*4 + 4]
btc edx, 0x1c
dec edx
jns 0x151e477
lea esi, [esi + edx*2 - 0x514dcb59]
pop edx
xor al, bl
neg al
xor al, 0x2d
or dx, dx
btr edx, 0x2f
neg al
xchg dh, dl
rol al, 1
sub al, 0x9c
or dx, dx
sal edx, 0xaf
rol dl, 0xc5
xor bl, al
shr edx, 0x9b
btc edx, edx
adc eax, esp
mov byte [eax + edx*8 - 0x80080], cl
not edx
movsx eax, dx
jmp ebp
push ebx
not dl
movzx ebx, dl
xor ebx, edx
mov ebx, eax
shl edx, 0xb2
call fcn.00d1b41c
sar eax, 0x55
rol edx, 3
mov dword [esp + ecx - 0x3d40], eax
bt ax, 0xbf
shl ax, 0x8f
bswap edx
js 0x12ef878
mov eax, 0x1582e5a8
movzx edx, ax
add edx, edx
movzx eax, byte [esi + eax - 0x1582e5a8]
dec dx
lea esi, [edx + esi - 0x1cb4e]
rol edx, 0xba
not dx
xor al, bl
inc al
ror dx, 0x41
jae 0x14d32ce
jmp 0x150ebd0
inc dx
neg al
add al, 2
shl edx, 0x32
shr dx, 0x63
not al
adc al, 0xb2
xor edx, 0x9716af9e
sub edx, edx
setp dl
xor bl, al
push edx
or byte [esp + edx*2 - 2], dh
mov dword [esp + edx*2 - 2], esi
jbe 0x145d232
neg dx
push edi
sal edx, 0x38
adc dx, dx
jae 0x14639da
dec edx
btr ecx, eax
xor edx, 0xd1bceeb1
call fcn.0138945c
mov edx, 0x11207023
btr edx, 0x8f
mov edx, dword [esi + edx - 0x11207023]
mov ax, word ss:[edx]
mov ecx, 0xb8b51001
call fcn.0136ea9c
bswap ecx
mov edx, 0xb286da19
xor ecx, 0x8f9a8da1
neg ecx
jmp 0x12d9f7f
xor edx, ebx
mov eax, ecx
add al, 2
lea eax, [ecx - 0x104fa7d2]
neg edx
bswap edx
dec ecx
xor edx, 0xd5300d15
and ecx, eax
shl cl, 0xa1
adc ecx, eax
lea edx, [edx + ecx - 0x3109860a]
call fcn.0151ccb0
shld edx, eax, cl
mov ecx, 0xb2b491b5
mov dword [esi], edx
movzx eax, cx
mov edx, dword [edi + eax*2 - 0x1236a]
lea edi, [edi + eax - 0x91b1]
push ecx
push ecx
xor edx, ebx
push eax
lea eax, [eax - 0x42d3b0d0]
xor edx, 0x9b89a0b2
neg eax
bswap edx
or byte [esp + eax - 0x42d31f11], ah
push eax
pop eax
sbb edx, 0x40141c28
xadd dword [esp + eax - 0x42d31f17], eax
ror edx, 3
sal cl, 0xe4
pop eax
xor ebx, edx
add ebp, edx
ror ecx, 0xb
mov dword [esp + eax*4 - 0x246d4], ebp
ret 4
mov edx, 0x591da2ab
mov edx, dword [edx + ebp - 0x591da2ab]
mov ecx, 0xda9ee2bf
movsx eax, cx
cwde
add ebp, 4
push edx
popfd
mov edx, dword [esi]
xchg ch, cl
add esi, 4
and cl, al
sbb ax, cx
xor edx, ebx
lea ecx, [ecx + eax*4 + 0x2c8db803]
xor edx, 0x47a48a03
sar cl, 5
jb 0x12bfece
mov ebp, 0xdabc0483
mov eax, 0xac9bfd12
mov ecx, eax
inc ecx
mov ebx, dword [esi]
inc esp
mov ebx, ebp
dec ecx
add esi, 4
dec esp
lea edx, [ecx + eax - 0x646cb0c2]
dec eax
sub esi, 1
push ecx
dec ecx
inc ebx
inc esp
movzx ebp, byte [esi]
dec eax
rol ebp, 3
cwde
inc ecx
mov ecx, 0xb4bb0334
inc ebp
xor ch, bh
ror dword [esp], 0xc3
sbb cl, 0x1f
movsx edx, cl
inc ecx
xor ch, 0x2f
inc esp
add dword [esp + 3], edx
dec ebp
or edx, edx
jl 0x145f27c
inc ecx
neg ch
inc ecx
idiv ecx
idiv byte [esp + eax - 0x25]
inc ecx
xor ch, 0xc
inc esp
mov esp, dword [esp + eax - 0x27ff]
inc esp
xchg dword [esp + eax*8 - 0x13ffd], ebx
inc ecx
not ch
dec eax
dec dword [esp + eax - 0x2800]
inc ebp
xor bh, ch
xor eax, ebx
or cx, cx
imul ecx, ecx
inc eax
xor eax, 0x41fee12
btr ecx, 0x9b
sbb eax, 0xaf1eb228
shl dl, cl
or cl, cl
xor eax, 0x13905223
neg dl
btr dx, cx
xor ebx, eax
jmp 0x13088cf
inc cx
sar ebx, 0xa1
dec esp
mov dword [esp + ebx*2 - 0x19a06], edi
inc cx
neg ebx
inc edx
movsx ecx, word [esp + ebp - 0x5ac67817]
inc cx
sbb ebp, esp
inc edx
xor dword [esp + ebp - 0x5ac67811], edx
dec esp
lea edx, [ecx*4 - 0x17f54e66]
dec ecx
lea eax, [ebx + 0x32929d1a]
inc ebp
xadd ch, al
dec esi
mov edi, dword [esp + eax - 0x5ac67811]
dec eax
mov dword [esp + ebx*8 - 0x66830], 0x2887cd35
shl eax, 0xaa
dec edx
xadd dword [esp + eax - 0x5ac67813], ebp
dec eax
arpl dx, dx
inc edx
sets byte [esp + ebp - 0x5ac67830]
dec eax
lea ecx, [ecx*4 + 0x47a9c000]
dec eax
adc edi, edx
inc edx
xchg byte [esp + eax - 0x5ac67814], al
dec edx
mov dword [esp + eax - 0x5ac67819], edi
ret 8