Function at 0xc949be
Capabilities:
Authenticate hmac

Disassembly:
mov dword [esi + 0x44], ecx
jmp 0x9fa03e
ret
je 0xc94d70
mov ebx, dword [ebp + 0xc]
mov edi, 0x1b83ad7
mov di, dx
mov edi, dword [ebp + 8]
jmp 0x9ee41f
call fcn.009f2b43
lea esp, [esp + 4]
jmp 0x9f3636
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebx]
cmovo esi, ecx
movsx esi, bx
mov esi, eax
mov eax, dword [ebp + 8]
jmp 0x91f881
ret
ret
jne 0x8af045
mov edx, dword [ebp + 0x14]
add bl, 0xda
mov dword [edx], 1
sub eax, eax
ror di, 0xc
cmc
cmp dword [esi + 0x20], eax
cmove ebx, ecx
pop edi
pop esi
setne al
pop ebx
jmp 0xc741b9
ret
ret
ret
cmp dword [esi + 0x48], 0x112
jmp 0x9f55df
je 0xc97c3f
mov edi, dword [ebp + 8]
mov eax, 0xccb05e3
xchg al, al
lea eax, [esi + 0x5c]
jmp 0xc6dabf
lea edi, [edi + ecx]
clc
cmp ebx, 0x14
jmp 0x9f1c5e
push eax
jmp 0x9fd568
jne 0x9d604b
cmp dword [esi + 0x20], 0
je 0x9e0a47
mov edx, dword [ebp + 0x14]
mov di, sp
pop edi
pop esi
test esp, 0x4c9c4a47
and bx, 0x61bc
xor bx, bp
mov dword [edx], 2
mov bl, 0xd8
bts ebx, esp
sub eax, eax
setg bl
movsx ebx, bx
pop ebx
jmp 0x9f0a2d
mov ecx, dword [ebp + 0x14]
pop edi
and esi, 0x55760f8
bsf ebx, edi
cmp bx, 0x2a06
pop esi
mov dword [ecx], 4
inc bx
rol bl, 0x2f
jmp 0x9f5e55
jmp 0x9f55e5
mov dword [ebp - 8], edi
test esi, 0x19587fa2
cmp ebx, 0x14
jae 0x9f1c68
cmp edi, dword [ebp - 4]
jmp 0x9f47e9
call fcn.009f2b43
add esp, 4
test eax, eax
mov eax, ebx
jmp 0x8ac7f6
call 0xc96ab2
test eax, eax
jmp 0x9e6ca2
mov dword [esi + 0x18], ebx
jmp 0xc93e5d
jbe 0xc6df12
mov ecx, dword [esi + 0x58]
stc
cmc
clc
cmp ecx, 5
jae 0xc6df0f
mov eax, dword [ebp + 0xc]
mov dl, byte [eax]
jmp 0x9fe507
jmp 0x9f884e
sub eax, eax
setns bh
mov ebx, esp
pop ebx
mov esp, ebp
xchg bp, bp
movzx ebp, bx
pop ebp
jmp 0x8abe39
jne 0x9ebf44
mov ecx, dword [esi + 0x18]
mov edx, dword [ebp - 8]
inc ax
bt eax, 0x61
sub ecx, ebx
or eax, 0x32ae5200
rcl ah, cl
sub ecx, esi
ror ax, 0x7d
add eax, 0x28c52f62
movsx eax, bp
lea eax, [edx + ecx - 0x5c]
stc
sar cx, cl
bt cx, ax
mov ecx, dword [ebp + 0x10]
cmp dh, 2
add dword [ecx], eax
test ax, si
test ecx, 0x6dd25976
stc
add dword [ebp + 0xc], eax
mov dword [esi + 0x58], 0
sub dword [ebp - 4], eax
cmc
clc
jmp 0x9ef1bb
je 0x9f883d
mov ecx, dword [esi + 4]
add ecx, dword [esi]
dec ax
mov edx, dword [esi + 0x10]
cwde
mov eax, 0x300
cmp di, sp
jmp 0xc986dc
cmp dword [esi + 0x48], 0
jmp 0x9d603b
je 0x9f024d
mov edi, dword [ebp - 4]
movsx ebx, dx
mov ebx, dword [ebp + 0x10]
jmp 0x9e139c
pop edi
pop esi
mov eax, 1
pop ebx
jmp 0x9f5a64
mov dword [ebp + 0xc], ebx
jmp 0x9fec2b
mov dword [ebx], 0
call fcn.009f9cca
mov ecx, dword [ebp + 0x14]
test edi, 0x68180efe
mov dword [ecx], 0
jmp 0x8b00e0
push eax
cwde
mov eax, esi
jmp 0x9e4c83
inc dword [esi + 0x58]
jmp 0xc975f9
cmp dword [esi + 0x48], 0x112
jmp 0x9ebd75
je 0x9f7069
sub edx, ebx
dec bl
not bl
mov bl, byte [eax]
mov byte [edx + eax], bl
inc eax
stc
cmc
cmp eax, ecx
jmp 0x9f7063
cmp dword [esi + 0x20], 0
jmp 0x8af033
jne 0x9ebf44
mov eax, dword [esi + 0x18]
cmc
mov ecx, dword [ebp + 0x10]
sub eax, ebx
add dword [ecx], eax
test ebp, eax
cmp bx, dx
add ebx, eax
jmp 0x9ec045
mov esp, ebp
pop ebp
jmp 0x8af385
jb 0x9e231a
mov dword [ebp - 8], edi
cmc
mov dword [esi + 0x58], ebx
cmp ebx, 0x14
jmp 0x9f558f
jne 0x9fc15f
mov ebx, dword [ebp + 0xc]
cmp edi, 0x14
jmp 0xc71b8f
test eax, eax
jmp 0x8b325c
mov esp, ebp
bswap ebp
pop ebp
jmp 0x8af1ab
jae 0x9f1c64
mov eax, dword [ebp + 0xc]
or dl, bl
mov dl, byte [edi + eax]
stc
test esp, 0x25593cf8
mov byte [ebx + esi + 0x5c], dl
add ebx, ecx
jmp 0x91f111
jae 0x8b3262
lea eax, [esi + 0x5c]
jmp 0x9fa5a5
je 0x9f024d
cmp dword [esi + 0x4c], 0
je 0xc6df83
test edi, edi
jmp 0x9e5c13
mov esp, ebp
movzx ebp, bx
pop ebp
jmp 0x8aed43
xor eax, eax
bswap ebx
movsx ebx, bx
pop ebx
mov esp, ebp
cmovb ebp, ebp
movsx ebp, dx
pop ebp
jmp 0x8aeddd
jmp 0x8ac807
jne 0x9ef29f
mov eax, dword [ebp + 0x10]
shrd bx, sp, 0xb0
and bx, bp
mov dword [esi + 0x58], edi
shld ebx, eax, 0xdb
add dword [eax], edi
bswap ebx
btr esi, 0x96
rcr al, cl
mov eax, dword [ebp + 0x14]
pop edi
cmp ch, 0x2b
pop esi
test eax, 0x52ad203e
mov dword [eax], 3
jmp 0x9e5d18
mov ecx, 1
rcl ebx, 0x3f
add ebx, 0x16647b58
and bl, 0x61
mov ebx, dword [esi + 0x58]
stc
test ebx, ebx
jmp 0x9f2062
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], ecx
jmp 0xc71d3f
push eax
movzx ecx, si
bswap eax
mov eax, ebx
setns cl
mov ecx, esi
jmp 0x8ad6de
sub edi, edi
stc
jmp 0x9e2308
mov dword [ebp - 4], edi
jmp 0x9ed1d8
rep stosw word es:[edi], ax
xchg cx, cx
movsx ecx, cx
or cx, sp
mov edi, dword [ebp - 4]
mov ecx, 1
xor eax, eax
jmp 0x8ab42d
mov byte [ecx + esi + 0x5c], dl
jmp 0x9ee740
jmp 0x9e6cf4
mov dword [esi + 0x18], eax
jmp 0xc9858a
jne 0x9e5c19
mov dword [ebp - 4], edi
cmp dword [esi + 0x58], 5
jb 0x9f7085
cmp byte [esi + 0x5c], 0
jne 0x9ebf44
movzx eax, byte [esi + 0x5d]
shl cx, 0x9d
movzx ecx, byte [esi + 0x5e]
movzx edx, byte [esi + 0x5f]
shl eax, 8
or eax, ecx
xchg ch, ch
adc cx, di
movzx ecx, byte [esi + 0x60]
cmc
shl eax, 8
test cx, dx
or eax, edx
shl eax, 8
or eax, ecx
neg edx
mov dword [esi + 0x20], eax
shld dx, cx, 0xf9
movsx dx, bl
xadd dl, dl
mov dword [esi + 0x1c], 0xffffffff
rcl dl, 0x89
mov dword [esi + 0x4c], 0
btc edx, edi
rcl dl, 0xe8
mov dword [esi + 0x58], 0
rcl dh, cl
mov edx, dword [ebp + 8]
cmp dword [esi + 0x24], edx
jmp 0xc97425
jb 0xc975a2
lea eax, [edi + ebx - 0x14]
jmp 0x9f6320
mov dword [esi + 0x38], ecx
jmp 0xc74347
mov esp, ebp
pop ebp
jmp 0x8af0d9
mov dword [esi + 0x34], eax
mov dword [esi + 0x50], eax
jmp 0x9e5ce2
pop ebx
jmp 0x9f3b63
call 0xc96ab2
test eax, eax
jmp 0x9f08d7
mov dword [ebp + 0xc], eax
jmp 0xc6df09
push ebp
mov ebp, esp
sub esp, 8
jmp 0x8aec9c
lea ecx, [edi + ebx]
lea edx, [esi + 0x5c]
stc
test bp, 0x7805
cmp ebx, ecx
jmp 0x9ef293
jae 0x9e9a38
cmp dword [esi + 0x50], 0
jmp 0x9e77eb
push ebx
mov eax, edi
cmove ecx, esi
mov ecx, esi
jmp 0x9e2a47
inc dword [ebx]
inc eax
cmp di, 0x541d
clc
sub edi, 1
jmp 0xc940fa
mov eax, dword [ebp + 0x10]
add dword [eax], edi
bsr bx, dx
sal cl, 0xa0
mov ecx, dword [ebp + 0x14]
movzx ebx, cx
pop edi
bts esi, ebx
shl si, 0x95
pop esi
mov dword [ecx], 3
xor bl, cl
sub eax, eax
xchg bx, bx
jmp 0xc92542
push eax
mov eax, ebx
mov ah, 0xa8
mov eax, esi
jmp 0x9e33de
shl eax, cl
stc
clc
cmc
add eax, 0x736
je 0x9fe3ed
mov ecx, eax
rol di, 0x36
xor eax, ebp
mov eax, 0x400
mov edi, edx
movzx edx, ax
bt eax, esp
mov eax, edx
cmp bp, 0x6494
shl edx, 0x10
or eax, edx
test sp, dx
cmp sp, di
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
jmp 0x9fe3de