Function at 0x140906911
Capabilities:
Authenticate hmac

Disassembly:
push rsi
cwde
dec edx
rol edx, 1
ror esi, 0xde
ror cx, 0xae
dec edx
movsxd rdx, edx
and r8, rcx
adc r11, rdx
btr r8d, ecx
inc r8w
mov rdi, qword [r8 + r9 - 1]
or esi, dword [r9 + rax*8 - 0x78]
lea r9, [r9 + r8*2 + 0xa]
idiv r10b
call fcn.140906b46
jmp r10
xor esi, ebx
lea esi, [rsi + rcx - 0xdf0f212]
bswap esi
ror esi, 1
movzx r8d, cl
cqo
lea esi, [rsi + r10*2 - 0x4b979486]
neg r8w
ror r8b, 0xe1
sal qword [rsp + r8*2 - 0x1fe6a], 0x2e
mov qword [rsp + rax - 0xd895], rbx
call fcn.14091db35
mov eax, 0xd7814b22
mov edx, dword [rsi + riz]
cbw
movsx r9d, al
sub rax, r9
lea rsi, [rsi + r9*2 - 0x40]
xor edx, ebx
lea edx, [rdx + rax - 0x56797444]
not edx
call fcn.14089eca3
mov r8d, 0x3d145534
mov edx, dword [rbp + r8 - 0x3d145534]
movzx ecx, r8w
movzx eax, r8w
lea rbp, [rbp + r8 - 0x3d145530]
xor edx, ebx
xor r8w, 0xec96
movsx esi, cx
shl rcx, cl
sbb edx, ecx
imul r8w, r8w
ror ax, 0x64
rol cl, 0xe1
neg edx
jmp 0x14088ceec
ror r9b, 0xc4
movsxd r11, r11d
adc r9d, ebp
btr r8d, 0xa4
and ebp, ebp
adc rdi, r11
mov rdx, qword [r10 + r9 - 0x6777]
bts rbp, r8
and ebp, eax
mov cx, word [rdx + r9*2 - 0xceee]
ror ebp, 0x81
cwde
btr rax, rax
adc r10, r8
rol r8w, 0xe8
ror r8b, 0x43
mov word [r10 + rbp*8 - 0x548], cx
btr r8d, 0xa5
jmp rdi
mov r10d, ecx
sal word [rsp + rdi + 0xc], 0x82
adc dil, byte [rdi + rbp + 1]
shl rax, 2
jns 0x140902cb2
push rbx
shl r8d, 0x63
xor dword [rsp + rsi - 0x1fa4be5e], edx
cbw
movzx ebx, r8w
not r10b
pop rbx
ror r10b, 0xc2
movsxd rdx, edx
inc rdi
btc r10, 0x1f
jb 0x14092996b
adc r11, rdx
dec edi
jmp r11
xor ecx, 0xbb2bd437
movsx edx, al
mov r8d, edx
dec ecx
bswap ecx
bswap ebp
sal r9d, 0x5c
xadd r8d, eax
dec ecx
rol ecx, 3
jmp 0x140924597
rol dx, 0x87
pop r8
pop r9
jnp fcn.1408f7a06
mov qword [rsp + rcx*2 - 0xc8], r11
ret
xadd rsi, r8
movsx ecx, dil
xor edx, ebx
inc r8w
ror edx, 1
movzx r10d, sil
btr r8w, 0x1b
xor edx, 0xa293e811
lea edx, [rdx + rax*2 + 0x39e0191e]
and r8, r10
sbb r8, rax
bts cx, 9
bswap edx
rol edx, 1
sub r10, r8
jno 0x1408c2066
mov edx, 0xee013e26
mov edx, dword [rbp + riz]
mov r8d, 0x40295410
movsx edi, r8w
lea rbp, [r8 + rbp - 0x4029540c]
movzx eax, dil
movsx ecx, dil
sub r8d, edi
xor edx, ebx
push rax
bswap edx
and edi, eax
bswap r8
lea r10, [rax*8 + 0x63245a82]
inc edx
ror edx, 3
movsx esi, r8b
dec edx
mov qword [rsp + rdi - 0x10], rbx
btr eax, 0xb
xor dword [rsp + rdi - 0x10], edx
pop rbx
jmp 0x14088e4e7
mov esi, dword [rbp + rax*2 - 0x1b12a]
lea rbp, [rax + rbp - 0xd891]
jg 0x140897003
push 0x5a3e3d17
mov edi, dword [rsp]
lea rcx, [rdi + rdi*4 - 0x69cda25c]
movzx edx, byte [rbp + rdi - 0x5a3e3d17]
shr qword [rsp + rdi - 0x5a3e3d17], 0x74
movzx r8d, word [rsp + rdi - 0x5a3e3d15]
xor dl, bl
ror ecx, 0x83
sbb dl, r8b
movsx eax, r8w
neg dl
and qword [rsp + rdi - 0x5a3e3d17], 0xffffffff8b8185b3
mov esi, r8d
xchg qword [rsp + rdi - 0x5a3e3d17], rdi
inc dl
shl dil, cl
push rsi
lea r10, [r8 + rdi*4 + 0x4c8f5ca7]
rol dl, 1
neg r8w
mov dword [rsp + rdi*2 + 1], 0xdbbdd905
neg r8
xor bl, dl
lea rdx, [rsp + rdx + 0x10]
xadd byte [rsp + rdi + 1], cl
cwde
cwde
mov ecx, dword [rdi + rdx]
jae 0x1408ba73e
push rcx
not rax
xor dword [rsp + rcx - 0x1ff7], r9d
inc qword [rsp + rcx - 0x1fff]
xor r11, rax
mov rbx, qword [rsp + rcx - 0x1ff7]
movsx r8d, cx
neg r8
movsxd r9, r9d
jns 0x1408e42cf
mov qword [rsp + rcx - 0x1ff7], r11
add rdi, r9
shl qword [rsp + rcx - 0x1ff9], cl
mov r11d, dword [r10 + rcx*2 - 0x3ffe]
dec rax
mov eax, dword [r10 + rcx*2 - 0x3ffa]
xadd dword [rsp + rcx*2 - 0x3ff8], r8d
mul r11d
movzx r9d, cl
pop r9
mov dword [r10 + rcx*2 - 0x3ffe], edx
mov dword [r10 + rcx - 0x1ffb], eax
sal word [rsp + rcx - 0x1ffa], 0x28
setbe cl
bt bp, r8w
mov qword [rsp + rcx - 0x1f01], rdi
ret
xor bl, dil
call fcn.1408be796
mov qword [rsp + rcx*8 - 0x3f8], rbx
pop r8
xor dword [rsp + rcx*4 - 0x200], eax
mov ebp, edx
pop rbx
lea r11, [r8*2 + 0x1da474a1]
movzx r9d, r8w
movsxd rax, eax
btc dx, r9w
adc rdi, rax
push rdx
bts rcx, 0x86
lea rcx, [r10 + rcx - 0xbe]
push r9
adc qword [rsp + r9 - 0xfef9], 0xfffffffffba81f94
mov qword [r10 + r9*2 - 0x1fe08], rcx
neg rdx
lea r10, [r10 + r9*4 - 0x3fc0a]
jb 0x1408cda77
movsxd rcx, ecx
sal edi, 0xac
adc qword [rsp + rsi - 0x1cf6d72f], rdi
adc r11, rcx
mov eax, esi
mov r8d, dword [rdi + r9 - 0x43285000]
lea r9, [rsi + r9 - 0x1cf6d72b]
movzx ecx, ax
movzx eax, byte [rbp + rsi*2 - 0x39edae5e]
ror dword [rsp + rdi - 0x43284ffc], 0x9e
lea rbp, [rbp + rsi - 0x1cf6d72e]
jb 0x1408909f3
xor al, bl
lea r10, [rdx + rdi*8 + 0x60358613]
rol ecx, 0xed
sbb sil, 0xb8
adc al, dil
xchg r10b, cl
lea r10, [rdi + 0x3e2b7507]
dec dil
rol al, 1
sub al, dil
pop r10
xor al, dil
btc rdx, rdx
mov qword [rsp + rsi*4 - 0x73db5ddc], 0xffffffffab2f6999
setb byte [rsp + rsi - 0x1cf6d777]
xor bl, al
mov word [rsp + rsi*2 - 0x39edaeea], cx
bts si, dx
sub r10d, esi
lea rax, [rsp + rax + 8]
call fcn.1408c8f7d
xor dword [rsp + r10 - 0x1026ad32], esi
pop rbx
btc di, 0x81
imul cl
movsxd rsi, esi
inc rax
lea rcx, [rcx*2 + 0x551f83b7]
add r11, rsi
mov r8, qword [r9 + r10*2 - 0x204d5a5c]
movsx esi, dx
lea r9, [r9 + r10 - 0x1026ad22]
shr r10, 0x81
movzx edi, byte [rbp + r10 - 0x8135695]
lea rbp, [r10 + rbp - 0x8135694]
xor dil, bl
not rdx
ror dil, cl
cwd
cdq
shr rdx, 0x92
sbb dil, 0xc
not sil
mul cl
ror dil, cl
sub ax, r10w
rol rax, cl
xor dil, dl
sub rax, 0xffffffffdb0b78ae
shl ecx, cl
xor dil, 6
btc ecx, 0x99
rol dil, 1
add r10d, ecx
xor dil, 0xaf
bt rax, rcx
xor bl, dil
sub ecx, ecx
xchg r10, rax
shr si, 7
add rdi, rsp
mov qword [rdx + rdi - 0x3fff], r8
call fcn.14090b47c
xor dil, bl
inc byte [rsp + r8 + 4]
not word [rsp + r8*2 + 0xa]
movzx edx, r8w
add dil, 0xb6
ror byte [rsp + r8 + 8], 0xe6
rol dil, 1
inc dil
or edx, dword [rsp + r8 + 1]
neg dil
sal sil, 0x65
sbb dil, 0x3b
dec r8d
js 0x1408f4ffa
btr rdi, rdx
cwd
not ecx
mov qword [rsp + rax*8 - 0x2abff8], rbx
xor edi, 0x6a05c42f
mov qword [rsp + rax - 0x55800], rax
cwde
xor dword [rsp + rax - 0x57f8], ecx
mov rbx, qword [rsp + rax*2 - 0xaff8]
movsxd rcx, ecx
shr r8, 0x54
shr eax, 0x5c
adc r11, rcx
dec esi
or dx, 0x7dab
pop rdi
pop r10
jge fcn.1408dc1c2
lea rsi, [rsi + rbp - 0x7206eba3]
xchg ebp, r9d
xor ecx, ebx
sar bpl, 0x81
jno 0x1408c7304
mov r10, qword [r9]
mov eax, 0x432e3e23
movzx esi, ax
neg ax
mov rcx, qword [rax + r9 - 0x432ec1d5]
movsx edi, si
mov r8d, edi
lea r9, [rax + r9 - 0x432ec1d5]
lea rdx, [r8*8 - 0x41584061]
rol sil, 0xc7
sal edx, 0x31
add r10, rcx
ror dx, 0x41
or rdi, rdi
lea r8, [r8 + rsi*8 + 0x1fa24d22]
mov qword [r9 + rsi - 0x3e91], r10
mov edx, dword [rsi + rbp - 0x3e91]
ror al, 0xc2
lea rbp, [rbp + rsi*2 - 0x7d1e]
jnp 0x1408db176
mov r11d, dword [rsi]
add rsi, 4
mov edx, 0x10296706
xor r11d, ebx
or dl, 0x12
movzx r9d, dl
movsx ebp, dx
neg r11d
movzx r8d, dl
shr bpl, 1
xor r11d, 0x5c21a915
lea rcx, [rbp*2 - 0x7d6f53c3]
xchg dx, bp
push rcx
dec r11d
ror r11d, 2
movzx eax, word [rsp + rdx - 0x1029670a]
bswap r11d
imul rdx, qword [rsp + rdx - 0x1029670b]
xadd byte [rsp + r9 - 0xf], cl
mov qword [rsp + r9 - 0x16], rbx
xor dword [rsp + r9*2 - 0x2c], r11d
pop rbx
jmp 0x1408b077a
cwde
or r8d, edx
not ecx
lea r11, [rdx + rbp + 0x290a13a0]
dec ax
cbw
push rbx
inc r8
xor rbp, 0xfffffffff8918a8c
btc ax, 0x1a
xor dword [rsp + r9 - 0x70000000], ecx
push r11
mov rbx, qword [rsp + r9 - 0x6ffffff8]
neg dl
setnp byte [rsp + r9 - 0x6ffffffd]
cwd
movsxd rcx, ecx
mul r9d
add rdi, rcx
mov dword [rsp + rax - 0xffffffd], 0x783d8a34
mov edx, dword [r10 + rax*2 - 0x20000000]
mov r11d, dword [r10 + rax*4 - 0x3ffffffc]
lea r10, [rax + r10 - 0xffffffc]
not r8w
add edx, r11d
lea rcx, [r8*8 + 0x543318b2]
mov dword [rax + r10 - 0x10000000], edx
mov r11d, dword [rsp + rax - 0xfffffff]
mov qword [rsp + rax - 0x10000000], rdi
ret 8
mov esi, 0xb99fbe1d
dec r10
mov ecx, 0x67874312
xor eax, ebx
mov edx, 0x79093036
inc eax
rol eax, 3
xor si, dx
bswap rcx
dec eax
or r8b, cl
bswap eax
ror eax, 2
or r10d, edx
inc eax
push rbx
add r10b, 0x3f
xor dword [rsp + rdx - 0x79093036], eax
xchg r10d, edi
neg dil
pop rbx
movsxd rax, eax
bt rsi, r8
neg r10
jae 0x1408eb1e4
add r11, rax
neg r8
xchg r10d, ecx
shr dil, cl
movzx edx, word [rcx + rbp - 0x142]
call fcn.140939017