Function at 0x140c2b101
Capabilities:
Authenticate hmac

Disassembly:
not r8w
lea r9, [r9*4 + 0x2aa42c0e]
sal dword [rsp + rdx*4 - 0x2048f9fe], 0x54
or word [rsp + rdx*4 - 0x2048f9fb], bp
xor bx, r8w
lea r8, [rsp + r8 + 8]
sar dword [rsp + rdx*4 - 0x2048f9fd], 0x4f
mov r9w, word [r8 + rdx*8 - 0x4091f400]
lea rsi, [rsi + rdx*8 - 0x4091f402]
movzx eax, dl
mov word [rsi + rdx*8 - 0x4091f400], r9w
lea rcx, [rbp + 0x3d05ae97]
mul r11w
jb 0x140c1e38f
sub rdi, 4
mov r8d, dword [rdi]
xor r8d, ebx
rol r8d, 1
mov ecx, 0x5ca672aa
neg r8d
inc r8d
neg r8d
mov eax, ecx
lea r8d, [rcx + r8 + 0x29782560]
neg rcx
movzx r9d, cl
ror r8d, 1
inc r8d
movsx r11d, r9w
rol r8d, 1
bt ax, 0x9f
rol r11b, 0xe1
push rbx
bts ax, r9w
mul r11b
xor dword [rsp + rcx + 0x5ca672aa], r8d
lea r9, [r11*8 + 0x18a9912b]
pop rbx
movsxd r8, r8d
push rcx
sub rax, rcx
add r10, r8
sar rax, 0x5f
pop r9
movsx edx, cx
mov r8w, word [rcx + rsi + 0x5ca672aa]
sete al
mov dx, word [rcx + rsi + 0x5ca672ac]
push r11
adc al, r9b
mov cl, byte [rcx + rsi + 0x5ca672ae]
movzx ebp, r9w
xor bpl, r11b
xchg r9, rbp
lea rsi, [rsi + r11 - 0xa8]
shld r8w, dx, cl
mov word [rax + rsi - 0x56], r8w
not dword [rsp + rax*2 - 0xab]
dec r9w
mov qword [rsp + rax*2 - 0xac], r10
ret
mov r8d, 0xd60e0899
btr r8d, eax
xor dword [rsp + rax - 0x60730000], r11d
xchg bp, r8w
sar bp, 0x61
rol r8b, 0xa4
pop rbx
movsxd r11, r11d
imul bp
idiv r9w
bts ax, 0x20
adc r10, r11
or rax, 0x613f943e
ror r8w, 0xeb
jp fcn.140bfdea8
lea rdi, [rdi + rdx*4 - 0x20480020]
sal dx, 0x44
mul byte [rsp + rdx*8 - 0x4090037c]
movsx r8d, word [rsp + rdx*4 - 0x204801bd]
mov r11d, dword [rdi + rdx*4 - 0x204801c0]
not dx
xor cx, 0x6c14
xor r11d, ebx
sar eax, 0x3c
lea r9, [rbp + rbp*2 - 0x2e7baa79]
neg r11d
dec r11d
sub r8w, r9w
neg r11d
cwd
mul r9w
not r9
xor r11d, 0xcd0e7280
xadd eax, edx
mul ecx
shl qword [rsp + rdx - 0x1ec787b], 0x6a
dec r11d
mov qword [rsp + rdx*2 - 0x3d8f0f6], rbx
jmp 0x140c3c69a
inc qword [rsp + rax - 0xc62]
xor ebp, ebx
shr eax, 3
xadd r8w, ax
neg ebp
rol dword [rsp + rax - 0x7ff7], cl
mov r11d, r8d
lea ebp, [rbp + rax*2 + 0x13bb09a7]
sar cx, 0xd
neg r11w
bswap ebp
mov qword [rsp + rax*2 - 0x10000], 0x2cb96f35
and byte [rsp + rax - 0x7ff3], r11b
movsx r9d, word [rsp + rax*2 - 0xfff9]
ror ebp, 3
add byte [rsp + rax - 0x7ff9], ch
mov qword [rsp + rax - 0x7ff0], rbx
dec qword [rsp + rax - 0x7ff8]
add ecx, eax
xor dword [rsp + rax*4 - 0x1fff0], ebp
lea rbx, [r11 + rax*4 + 0x186e695]
cbw
sal qword [rsp + rax*8 + 8], cl
mov rbx, qword [rsp + rax + 0x10]
mov qword [rsp + rax + 0x10], r9
movsxd rbp, ebp
add r10, rbp
mov edx, 0x162f1f0f
add al, byte [rax + rdi - 6]
shl dword [rsp + r9*2 - 0xfbed], 0x1b
lea rdi, [r11 + rdi - 0x431c7e78]
sub byte [rsp + r11 - 0x431c7e5e], cl
pop r8
xor al, bl
or r8w, word [rsp + r9 - 0x7df5]
push r9
ror al, 1
and qword [rsp + r11 - 0x431c7e6d], r9
lea rbp, [r8 + r9*4 + 0x1d971b1d]
not al
sal word [rsp + r11 - 0x431c7e60], 0xa
sbb al, 0x28
push rbp
sub rcx, 0xffffffff90aa9a2e
rol al, 1
xor al, 0xa
shl qword [rsp + r9 - 0x7dfb], 0x6b
jns 0x140c020c5
xchg dword [rsp + r9*8 - 0x3effc], r8d
xor bl, al
not bp
lea rax, [rsp + rax + 0x20]
imul r11d, dword [rsp + r8*2 + 0x18]
jae 0x140c3587b
and rdx, 0x23a7c25
xor r8, qword [rax + r8]
sar ecx, cl
or r11, 0xffffffff99839c8e
xor r9d, edx
mov qword [rsi + rcx - 0x9fff], r8
lea rsi, [rsi + rcx*2 - 0x13ff8]
shr rbp, 0xb9
pop r8
pop rcx
pop rbp
pop rax
jne fcn.140bfdea8
mov r8, qword [rsi]
call fcn.140c0f3f9
mov qword [rsp + rdx - 0x4091f626], rdx
xor r8w, 0x3f07
mov r11d, 0x71b5f9ac
or dword [rsp + r11 - 0x71b5f9a9], 0x1d3990a8
movsx ebp, dx
not r8w
xor r11w, dx
ror rdx, 0x4a
sar rbp, 0x26
dec r8w
shl rdx, 7
movsx r9d, dl
js 0x140bfbf65
xor r11w, 0x9a4
lea r9, [rdx + r11*8 + 0x48b80597]
rol ecx, 1
imul r9w, r9w
inc ecx
push rbx
bts dx, r11w
push r8
idiv dword [rsp + rdx*2 - 0x20025288]
xor dword [rsp + rdx*2 - 0x1a962d3e], ecx
mov rbx, qword [rsp + r11*2 - 0x200013a8]
call fcn.140c05023