Function at 0x1404b73c4
Capabilities:
Authenticate hmac

Disassembly:
push rbp
or bpl, 0xeb
sar ax, 0x1a
push rbx
push rsi
btc si, 0xbf
sar ax, cl
push rdi
cwde
bsr ebp, esp
bt rbp, 9
push r12
not ax
push r13
push r14
cmp rax, rsi
btr r14d, 0xa5
push r15
lea rbp, [rsp - 0x168]
movsx di, r14b
movzx rsi, r14w
dec r13
sub rsp, 0x268
mov rax, qword [0x1400b7288]
shl r13d, 0xd6
xor rax, rsp
xchg r13b, bl
bsf edi, esp
mov qword [rbp + 0x150], rax
xor dil, 0xa0
mov rdi, qword [rbp + 0x1d0]
rcr ah, 0x9d
xor r15d, r15d
movsx r14, r10w
mov r14, qword [rbp + 0x1d8]
btc si, 0x53
jmp 0x1404b7454
mov rax, r8
rcr ebx, cl
xchg rbx, r13
adc ebx, r14d
mov qword [rsp + 0x70], rax
mov r13, r9
rcl bx, 0x29
mov qword [rsp + 0x78], rdx
bts bx, dx
btr si, r14w
test dil, sil
mov rsi, rdx
mov qword [rsp + 0x30], rdi
neg bl
mov rbx, rcx
cmp r13b, 0x98
cmp ebx, edx
mov qword [rsp + 0x68], r14
jmp 0x1404b7499
test rcx, rcx
jmp 0x1404b74a1
jne 0x1404b7505
xor eax, eax
sal rcx, 0x21
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
jmp 0x1404b74bc
call fcn.1404a55f8
add rsp, 0x268
not r15b
xchg rsi, r15
pop r15
movsx r14d, si
cmovne r12d, edi
jmp 0x1404b74dd
pop r14
movsx r12w, bl
movsx esi, di
xchg sil, bpl
pop r13
pop r12
not dil
movsxd rbp, r10d
pop rdi
movsxd rbx, r8d
pop rsi
xchg bpl, bl
pop rbx
xchg bpl, bpl
not bpl
pop rbp
ret
cmp word [rcx], 0x43
jmp 0x1404b750e
jne 0x1404b757e
cmp word [rcx + 2], r15w
jmp 0x1404b751e
jne 0x1404b757e
lea r8, [0x1400cefe8]
not ecx
cmovns cx, r11w
bswap cx
mov rdx, rax
bswap cx
movsx cx, r12b
cmovo cx, cx
mov rcx, rsi
jmp 0x1404b754c
call fcn.1404cfdc6
xor r13d, r13d
cmc
cmp r15, rbx
test eax, eax
jmp 0x1404b755f
jne 0x1404b7cf3
mov dword [r14], r13d
movsx rax, r15w
jmp 0x1404b7571
mov rax, rsi
jmp 0x1404b7579
jmp 0x1404b74ad
call fcn.1404cf477
add rax, 0x98
xchg dl, r8b
not r8w
mov qword [rsp + 0x48], r13
cdq
mov rdx, r12
xchg cl, r8b
mov r9d, 0x55
mov qword [rsp + 0x50], rdi
movzx rcx, bp
movsxd r12, r10d
mov rdx, rdi
mov r8b, r14b
movzx r8d, r11w
mov qword [rsp + 0x58], rax
mov r14b, r15b
jmp 0x1404b75c5
mov byte [rsp + 0x60], r15b
movsx ecx, r8w
movsxd rcx, esi
lea rcx, [rax + 0x20]
movzx r12d, r12w
xchg r8b, r12b
mov qword [rsp + 0x38], rcx
mov r12b, 0x36
movzx ecx, dx
movsx r12d, r15w
lea r8, [rax + 0x258]
mov cx, 0x4f4a
bswap cx
lea rcx, [rax + 0x24]
mov r12b, dl
movzx r12d, cx
mov r12b, 0xab
mov qword [rsp + 0x40], rcx
jmp 0x1404b7618
lea r12, [rax + 0x12a]
jmp 0x1404b7624
mov rcx, r13
jmp 0x1404b762c
call fcn.1404c862d
test eax, eax
jne 0x1404b7cf0
or rsi, 0xffffffffffffffff
mov r15, rsi
cmc
xor edi, edi
jmp 0x1404b7648
inc r15
cmp al, r8b
jmp 0x1404b7653
cmp word [rbx + r15*2], di
jmp 0x1404b765d
jne 0x1404b7648
cmp r15, 0x83
jmp 0x1404b766f
jae 0x1404b7735
mov r8, rbx
xadd rdx, rax
movzx ax, bpl
mov rax, r12
btc rcx, 0xbf
sub r8, r12
movzx ecx, word [rax]
sbb dl, r12b
rcl dl, 0x34
rcr dh, cl
movzx edx, word [rax + r8]
cmc
sub ecx, edx
jmp 0x1404b76a4
jne 0x1404b76bb
add rax, 2
test edx, edx
jmp 0x1404b76b5
jne 0x1404b768c
test ecx, ecx
jmp 0x1404b76c2
je 0x1404b7c8a
mov rax, qword [rsp + 0x40]
mov r8, rbx
movzx cx, r12b
cqo
mov ch, dh
sub r8, rax
movsx dx, r14b
shl dx, 0x55
bswap rdx
movzx ecx, word [rax]
btc edx, 0xac
bsr edx, r9d
movzx edx, word [rax + r8]
test r14b, al
cmc
test r10b, 0x68
sub ecx, edx
jmp 0x1404b7707
jne 0x1404b7728
add rax, 2
jmp 0x1404b771b
test edx, edx
jmp 0x1404b7722
jne 0x1404b76e8
test ecx, ecx
jmp 0x1404b772f
je 0x1404b7c8a
call fcn.1404d12f3
test al, al
bswap cx
lea rcx, [rbp - 0x80]
cwd
movsxd rdx, r14d
mov rdx, rbx
sete dil
call fcn.1404b7fc3
test eax, eax
jmp 0x1404b775b
jne 0x1404b7851
test edi, edi
mov dil, 0xa4
lea r8, [rbp - 0x80]
movsx rdi, r12w
movzx edx, cx
mov rdi, qword [rsp + 0x38]
cdq
cwd
lea rcx, [rbp - 0x80]
mov dx, si
mov rdx, rdi
jmp 0x1404b7788
je 0x1404b7798
call fcn.1404dc111
jmp 0x1404b779d
call fcn.1404daca0
test eax, eax
jmp 0x1404b77a4
je 0x1404b7856
lea r8, [rbp - 0x80]
cwd
movsx edx, r10w
mov edx, 0x83
mov rcx, r12
jmp 0x1404b77c1
call fcn.1404b7e5d
lea rcx, [rbp + 0xa0]
cmp r8b, 0x42
stc
sub eax, eax
jmp 0x1404b77d9
inc rsi
jmp 0x1404b77e1
cmp word [rcx + rsi*2], ax
jmp 0x1404b77ea
jne 0x1404b77d9
mov rdx, qword [rsp + 0x30]
movzx r9, r10w
lea r8, [rbp + 0xa0]
jmp 0x1404b780c
mov r14d, 1
bswap rcx
mov cl, bpl
mov rcx, r13
movsx r9w, cl
setae r9b
movzx r9, bx
lea r9, [r14 + rsi]
jmp 0x1404b7831
call fcn.1404c862d
xor r13d, r13d
cmp bh, bl
test eax, eax
jmp 0x1404b7842
jne 0x1404b7d26
lea rdi, [r15 + 1]
jmp 0x1404b7c22
mov rdi, qword [rsp + 0x38]
mov rcx, rbx
call fcn.1404d0d1d
sub r13d, r13d
clc
test eax, eax
jmp 0x1404b7869
je 0x1404b793a
lea r9d, [r13 + 2]
not dh
jmp 0x1404b787a
mov dword [rsp + 0x30], r13d
not cx
lea r8, [rsp + 0x30]
cwd
mov edx, 0x20001004
jmp 0x1404b7897
mov rcx, rbx
jmp 0x1404b789f
call fcn.1404d0916
test eax, eax
jmp 0x1404b78ab
je 0x1404b78cc
mov eax, dword [rsp + 0x30]
cmp r12, rax
test rdi, 0x6e00200
test eax, eax
jmp 0x1404b78c6
jne 0x1404b78d1
mov eax, 0xfde9
movzx eax, ax
movzx dx, r10b
movsxd r9, edi
setle dl
mov r8, rbx
movzx rdx, r14w
cwd
mov dword [rdi], eax
cwd
mov edx, 0x83
setb dil
lea rdi, [r15 + 1]
jmp 0x1404b7903
mov rcx, r12
bswap r9w
movzx r9d, r9w
mov r9, rdi
jmp 0x1404b7916
call fcn.1404c862d
test eax, eax
jmp 0x1404b7922
jne 0x1404b7d26
mov r8, rdi
cqo
mov rdx, rbx
jmp 0x1404b7935
jmp 0x1404b7c0e
mov rdx, rbx
xchg ch, ch
movzx cx, r9b
mov ecx, ebx
lea rcx, [rbp - 0x80]
call fcn.1404b9ac1
test al, al
jmp 0x1404b7956
je 0x1404b7a81
lea rcx, [rbp + 0xa0]
jmp 0x1404b7968
call fcn.1404d0d1d
test eax, eax
jmp 0x1404b7974
je 0x1404b7a81
movzx eax, word [rbp + 0x80]
cmc
stc
test ax, ax
je 0x1404b7afc
mov r8, qword [rbp + 0x88]
neg cl
rol dl, 0x5c
mov ecx, eax
bt edx, 0xc7
add eax, 0xffffffbf
not dx
cmp eax, 0x19
lea edx, [rcx + 0x20]
cmova edx, ecx
jmp 0x1404b79b2
cmp edx, 0x75
jmp 0x1404b79ba
jne 0x1404b7a4b
movzx edx, word [rbp + 0x82]
add cl, 0x12
xchg ah, cl
btc cx, 0x27
lea eax, [rdx - 0x41]
xchg cl, ch
shrd cx, r15w, 0xd
btc ecx, eax
cmp eax, 0x19
lea ecx, [rdx + 0x20]
cmova ecx, edx
cmp ecx, 0x74
jmp 0x1404b79f0
jne 0x1404b7a4b
movzx edx, word [rbp + 0x84]
movzx ax, r14b
cmc
movzx rax, cx
lea eax, [rdx - 0x41]
bsf ecx, eax
jmp 0x1404b7a12
cmp eax, 0x19
lea ecx, [rdx + 0x20]
jmp 0x1404b7a1d
cmova ecx, edx
cmp ecx, 0x66
jmp 0x1404b7a28
jne 0x1404b7a4b
cmp word [rbp + 0x86], 0x38
jmp 0x1404b7a3b
jne 0x1404b7a4b
test r8w, r8w
je 0x1404b7b5f
cmp word [rbp + 0x86], 0x2d
jmp 0x1404b7a58
jne 0x1404b7a81
cmp r8w, 0x38
jmp 0x1404b7a68
jne 0x1404b7a81
cmp word [rbp + 0x8a], r13w
jmp 0x1404b7a7b
je 0x1404b7b5f
mov r12, r13
test sp, 0x1e08
jmp 0x1404b7a8f
test r14b, r14b
jmp 0x1404b7a97
jne 0x1404b7aef
mov rcx, qword [rsp + 0x58]
shrd edx, r11d, 0x90
xchg r8b, dl
mov edx, 0x55
movsxd r9, ebx
mov r9, qword [rsp + 0x50]
movsx r8, cx
movzx r8d, ax
cmp r15b, 0x6e
add rcx, 0x258
jmp 0x1404b7ad8
mov r8, qword [rsp + 0x48]
call fcn.1404c862d
test eax, eax
jmp 0x1404b7ae9
jne 0x1404b7cf3
mov rax, r12
jmp 0x1404b7af7
jmp 0x1404b74ad
mov r9d, 2
mov dword [rsp + 0x30], r13d
movzx r8w, r10b
movzx r8d, r10w
movsxd rcx, eax
lea r8, [rsp + 0x30]
not ch
movsx rcx, r10w
movzx dx, r11b
mov edx, 0x20001004
lea rcx, [rbp + 0xa0]
jmp 0x1404b7b34
call fcn.1404d0916
test eax, eax
jmp 0x1404b7b40
je 0x1404b7b5f
mov eax, dword [rsp + 0x30]
cmc
cmp r13b, 0x29
cmp rsi, r14
test eax, eax
jmp 0x1404b7b59
jne 0x1404b7b69
mov eax, 0xfde9
movzx r9w, bl
movzx eax, ax
movsx rdx, cx
movsx edx, r14w
jmp 0x1404b7b79
mov r8, rbx
mov dword [rdi], eax
movzx ecx, bp
setp cl
mov edx, 0x83
not r9b
lea rdi, [r15 + 1]
bswap ecx
mov rcx, r12
setle r9b
mov r9, rdi
jmp 0x1404b7ba1
call fcn.1404c862d
test eax, eax
jmp 0x1404b7bad
jne 0x1404b7d26
lea rax, [rbp + 0xa0]
jmp 0x1404b7bbf
inc rsi
cmp sil, 0x14
cmp word [rax + rsi*2], r13w
jmp 0x1404b7bd0
jne 0x1404b7bbf
mov r8d, 1
shl rdx, 0x4e
bswap ecx
btr rcx, 0x91
lea rdx, [rbp + 0xa0]
movsx cx, r9b
shld cx, r10w, 0xf1
sub ecx, 0x1b8a17e3
add r8, rsi
movzx rcx, r10w
movsx ecx, r8w
movsx rcx, ax
lea rcx, [rsp + 0x48]
call fcn.1404b9ece
mov r14b, byte [rsp + 0x60]
cmc
cmp r10w, dx
cmp word [rbx], r13w
jmp 0x1404b7c2b
je 0x1404b7c77
cmp r15, 0x83
jae 0x1404b7c77
mov rcx, qword [rsp + 0x40]
mov r9, rdi
setno dh
mov r8w, di
movsxd r8, r15d
mov r8, rbx
movsx edx, bp
mov edx, 0x83
jmp 0x1404b7c60
call fcn.1404c862d
test eax, eax
jmp 0x1404b7c6c
jne 0x1404b7d26
jmp 0x1404b7c94
mov rax, qword [rsp + 0x40]
jmp 0x1404b7c81
mov word [rax], r13w
jmp 0x1404b7c94
xor r13d, r13d
cwd
lahf
movsx r8, r14w
mov rax, qword [rsp + 0x38]
movsx r8w, sil
movsx rcx, r10w
mov r8, r12
movsx cx, al
cqo
movzx rcx, di
mov rcx, qword [rsp + 0x68]
movsx rdx, bx
mov rdx, qword [rsp + 0x70]
jmp 0x1404b7cc2
mov eax, dword [rax]
jmp 0x1404b7cc9
mov dword [rcx], eax
mov cx, 0x1c32
mov rcx, qword [rsp + 0x78]
jmp 0x1404b7cd9
call fcn.1404cfdc6
test eax, eax
jmp 0x1404b7ce5
jne 0x1404b7cf3
jmp 0x1404b7a8f
sub r13d, r13d
xor r9d, r9d
cmp r8b, cl
jmp 0x1404b7cff
mov qword [rsp + 0x20], r13
cmp ah, 0x46
stc
sub r8d, r8d
cmc
cmp dil, 0x8b
stc
xor edx, edx
cmc
xor ecx, ecx
jmp 0x1404b7d1b
call fcn.1404bbe6a
int3
sub r9d, r9d
test r8d, r8d
cmc
jmp 0x1404b7d32
mov qword [rsp + 0x20], r13
clc
sub r8d, r8d
test spl, al
xor edx, edx
jmp 0x1404b7d46
sub ecx, ecx
jmp 0x1404b7d4d
call fcn.1404bbe6a
int3