Function at 0x44a99c
Capabilities:
Authenticate hmac

Disassembly:
jno 0x44a9cc
mov edx, 0x45934388
mov eax, 0xfcb09b18
shr dl, 0x65
mov eax, dword [edx + ebp - 0x45934304]
not edx
movzx ecx, dl
mov dl, byte [ebp + ecx*4 - 0x3e8]
btc ecx, ecx
and ecx, 0x3a3ce189
seto cl
lea ebp, [ecx + ebp - 0x7fffffa]
xor ecx, ecx
rol cl, 0xe2
sal cx, 0x4b
mov byte [eax + ecx*8], dl
lea esi, [ecx + esi - 4]
mov eax, ecx
add ecx, dword [ecx + esi]
movzx edx, al
xor ecx, ebx
cdq
xor ecx, 0x960a613b
sar edx, 0x42
sal al, 0xc6
rol ecx, 2
bts eax, eax
not ecx
rol ecx, 1
xor ecx, 0x62b0739d
sar edx, 0xe4
call fcn.0045d4d9
mov ecx, 0x4595771d
movzx eax, cx
lea eax, [ecx + ecx*4 - 0x2f41c862]
lea edi, [ecx + edi - 0x4595771e]
movzx edx, al
mov dl, byte [edi + ecx - 0x4595771d]
lea eax, [ecx*2 - 0x1c7c824c]
lea ecx, [eax + ecx*2 - 0x3dee9b7d]
cwde
xor dl, bl
neg ax
push eax
sar word [esp + eax - 0x9411], cl
neg dl
xor dl, 8
lea eax, [ecx + eax - 0x2c7580d3]
dec cx
rol dl, 1
inc dl
rol dl, 1
xor bl, dl
lea edx, [esp + edx + 4]
not ax
mov cx, word [edx]
pop edx
lea esi, [esi + edx*8 - 0x92]
shr edx, 0x66
or edx, eax
mov word [esi], cx
dec edx
sbb edi, 4
dec eax
sal eax, 0x9f
add edx, edx
mov ecx, dword [edi + eax*2]
xchg dx, ax
setb al
xor ecx, ebx
push edx
ror ecx, 1
not dx
xchg edx, eax
lea ecx, [eax + ecx + 0x5235fc8e]
shl byte [esp + edx*4 - 0x17002], 0x43
sal ax, 0xaa
rol ecx, 1
xor dword [esp + eax*4 - 0x7babf000], 0x68ae8319
xadd eax, edx
dec ecx
rol ecx, 3
inc al
lea eax, [edx + edx*8 + 0x15af0493]
xor dword [esp + edx - 0x1eeafc00], edx
lea ecx, [ecx + eax*2 - 0x7d169b4c]
bts dx, dx
ror edx, 0x41
btr eax, eax
neg ecx
ror dword [esp + eax - 0x2bf1e093], 0xf9
dec ecx
sal ax, 0x22
not al
rol ecx, 2
sar al, 0xe2
dec ecx
xor ebx, ecx
shl dl, 0xa3
adc ebp, ecx
ror eax, 0xe
pop edx
jae fcn.0041f988
mov eax, 0xbd2f0f27
sub ebp, 4
movsx ecx, al
mov eax, dword [ebp + ecx*2 - 0x4e]
push ecx
or cx, cx
xor eax, ebx
and word [esp + ecx*8 - 0x137], cx
mov dword [esp + ecx*4 - 0x9c], 0x963a7185
neg eax
dec eax
not eax
sal dword [esp + ecx*2 - 0x4e], 0xb8
seta cl
adc eax, ecx
imul ecx, ecx
add byte [esp + ecx + 2], ch
push ecx
rol eax, 3
pop ecx
xor ebx, eax
lea edx, [ecx*4 - 0x31427a50]
pop ecx
add edi, eax
mov edx, dword [esi]
lea eax, [ecx + ecx*2 + 0x79084915]
dec ecx
mov eax, dword [esi + eax - 0x8084911]
mov ecx, dword [esi + 8]
add esi, 4
call fcn.00458568
not edx
movzx ecx, al
shl byte [esp + eax], 0xe6
sal ecx, 0x5d
xor ebx, edx
add ebp, edx
movzx dx, byte [edi + eax*2]
add al, byte [eax + edi + 2]
lea edi, [ecx + edi + 2]
ror dword [esp + ecx], 0x47
jb 0x453728
not dl
not al
pop ecx
call fcn.00444d35
or word [esp + eax*8 - 0x70e27e], 0x8d8c
not cl
add eax, edx
sal edx, 0x89
neg cl
and word [esp + eax - 0xe0bd5], dx
setle byte [esp + eax*8 - 0x705eb0]
rol cl, 1
btr dx, dx
shl dword [esp + eax*2 - 0x1c17ac], 0x97
sbb cl, 0xa
rol dword [esp + eax*4 - 0x382f58], 0x30
xor bl, cl
call fcn.004433cf
mov edx, edi
sub edi, 4
call fcn.00445a93
mov ecx, edx
mov dword [esp], 0x8d3f7b1a
mov edx, dword [edi]
lea eax, [ecx*4 - 0x7e6c7ce3]
sub al, byte [esp + eax - 0x57c65007]
pop eax
xor edx, ebx
dec ecx
cmovl ecx, eax
neg edx
bts cx, 0x1a
sub cl, al
call fcn.004093ce
jns 0x419da4
call fcn.004089b1
xadd eax, ecx
neg edx
rol ax, 0x8a
setb cl
jb 0x45147c
mov eax, 0x2f24f925
shr ax, 0x25
lea ebp, [ebp + eax*2 - 0x5e480f96]
mov edx, dword [ebp + eax*2 - 0x5e480f92]
xor edx, ebx
bswap edx
movsx ecx, al
shr cl, 0x65
inc edx
ror cl, cl
bswap edx
cwde
neg eax
sbb al, ch
inc edx
xor ebx, edx
push ecx
add edi, edx
lea edx, [eax + eax*4 - 0x8523451]
neg cx
neg ecx
lea ebp, [ebp + ecx*8 - 0x7f8c1]
imul ecx, eax
movzx ecx, byte [ebp]
adc eax, eax
xor cl, bl
lea edx, [edx*4 + 0x5e269534]
mul dword [esp + edx - 0x3cdd283c]
xor cl, 0x13
jmp 0x42dee8
xor eax, ebx
imul dx, cx
and ecx, 0xd291e5be
lea eax, [eax + ecx*4 - 0x7044bb9e]
ror edx, cl
and ecx, 0x5918cc2b
neg eax
or edx, ecx
lea eax, [eax + ecx*2 + 0x6e001366]
neg cl
sub edx, 0xc2128905
adc ecx, ecx
ror eax, 3
dec dl
bswap eax
dec cl
dec eax
or ecx, 0x8c195900
dec edx
xchg dh, dl
xor ebx, eax
shl cx, 0x29
add ebp, eax
and edx, ecx
jmp ebp