Function at 0x180099184
Capabilities:
Authenticate hmac
Check for software breakpoints
Execute anti-debugging instructions

Disassembly:
push rbx
shr bh, cl
jmp 0x180099191
push rsi
bsf bx, r8w
cmp dil, 9
xadd bl, bl
push r12
rol rbx, cl
btc r12w, 0x7c
push r14
movzx r14, bx
sar r12w, cl
and bl, 0x77
push r15
xadd r14w, r14w
mov r12b, r15b
sar bh, 0x23
sub rsp, 0x60
cmp r11w, 0x4227
movsx r15d, bx
movzx r12w, r14b
cmp byte [0x180081821], 0
mov r12, r9
mov r14, r8
mov rbx, rdx
movsx r15w, dl
mov r15b, r15b
mov r15b, 0x43
mov r15, rcx
jmp 0x1800991f9
je 0x180099438
mov rcx, rdx
jmp 0x180099207
call fcn.180117d26
test al, al
jmp 0x180099213
jne 0x180099438
xor esi, esi
stc
cmp byte [0x180081834], sil
jmp 0x180099228
je 0x1800992df
test rbx, rbx
jmp 0x180099236
je 0x1800992b2
mov rax, qword [0x180083138]
mov rdx, qword [rax + rbx]
test rdx, rdx
jmp 0x18009924f
jne 0x180099262
movzx eax, si
jmp 0x18009925d
jmp 0x1800992ba
mov rax, qword [0x1800830c0]
rcr cl, 0x9b
mov ecx, dword [rax + rdx]
clc
stc
test ecx, ecx
jmp 0x180099278
jne 0x18009928a
mov eax, esi
jmp 0x180099285
jmp 0x1800992ba
mov rax, qword [0x1800830b8]
jmp 0x18009929a
add cx, word [rax + rdx]
xchg ah, ah
cmove ax, r10w
movzx eax, cx
jmp 0x1800992ad
jmp 0x1800992ba
movzx eax, word [rsp + 0x20]
sbb cx, bp
mov ecx, esi
test rax, r8
movzx eax, ax
cmp eax, dword [0x18008182c]
mov cl, 0x70
setge cl
stc
test r12b, 0xa5
test ecx, ecx
jmp 0x1800992d9
je 0x1800993dc
cmp byte [0x180081835], sil
jmp 0x1800992eb
mov qword [rsp + 0x58], rbp
jmp 0x1800992f5
mov qword [rsp + 0x50], rdi
jmp 0x1800992ff
je 0x180099409
cmp dword [0x180081870], esi
mov rdi, r10
movsxd rdi, r8d
jmp 0x180099316
mov edi, esi
jmp 0x18009931d
jle 0x1800993ca
mov rbp, rsi
nop dword [rax]
mov rax, qword [0x180081868]
movups xmm0, xmmword [rax + rbp]
cmp sil, r14b
clc
movups xmmword [rsp + 0x38], xmm0
test rbx, rbx
jmp 0x180099346
je 0x180099367
mov rcx, qword [0x1800830c8]
test rsp, 0x7ce77d10
add rcx, rbx
jmp 0x180099362
jmp 0x180099372
mov rcx, rsi
mov r8b, 0x26
movsx dx, r11b
movups xmm0, xmmword [rcx]
movsx dx, r10b
bswap cx
mov r8b, 1
movzx rcx, r12w
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x38]
jmp 0x180099393
movups xmmword [rsp + 0x28], xmm0
jmp 0x18009939d
call fcn.1800fff14
test al, al
jmp 0x1800993a9
jne 0x180099409
inc edi
cmc
cmp rdx, r10
add rbp, 0x10
cmp edi, dword [0x180081870]
jmp 0x1800993c4
jl 0x18009932a
mov rbp, qword [rsp + 0x58]
sub r12b, 0xcf
cmc
mov rdi, qword [rsp + 0x50]
ror r14b, cl
add rsp, 0x60
movzx rbx, ax
not r14w
pop r15
mov r12d, r11d
movzx esi, ax
pop r14
not sil
pop r12
mov sil, dl
movzx rbx, r13w
movsxd rbx, r13d
pop rsi
pop rbx
jmp 0x180099408
ret
mov r9, r12
not cl
movzx ecx, r13w
movsx rcx, r13w
mov r8, r14
movsx cx, r14b
xchg dh, dl
mov rdx, rbx
mov cl, r14b
mov rcx, r15
jmp 0x18009942e
call fcn.180097a49
jmp 0x1800993ca
xor esi, esi
cmp byte [0x180081823], sil
jmp 0x180099446
je 0x1800994ad
mov rcx, rbx
call fcn.180117d26
test al, al
jmp 0x18009945b
je 0x1800994ad
test r14, r14
je 0x180099486
mov rcx, qword [0x180083148]
stc
test r13w, 0x4fbe
clc
add rcx, r14
jmp 0x180099481
jmp 0x180099493
mov rcx, rsi
cwd
movzx rdx, r9w
movsx edx, r11w
mov edx, dword [rcx]
movzx cx, sil
seta cl
mov rcx, rbx
call fcn.18011659a
test al, al
jne 0x180099516
cmp byte [0x180081822], sil
je 0x1800993dc
mov rcx, rbx
call fcn.180117d26
test al, al
jmp 0x1800994c9
je 0x1800993dc
test r14, r14
jmp 0x1800994d7
je 0x1800994f6
mov rsi, qword [0x180083148]
shrd cx, dx, 0x5e
jmp 0x1800994f3
add rsi, r14
mov edx, dword [rsi]
movsx ecx, r9w
mov rcx, rbx
jmp 0x180099504
call fcn.18011659a
test al, al
jmp 0x180099510
jne 0x1800993dc
mov r9, r12
mov r8, r14
sub ch, 0xde
btr ecx, 0x1e
test r11b, r12b
mov rdx, rbx
seto cl
mov rcx, r15
shr r14, 0x57
add rsp, 0x60
movsx r15, bp
pop r15
movzx esi, sp
movsx r14w, r12b
pop r14
pop r12
jmp 0x180099552
pop rsi
movzx rbx, sp
movzx ebx, r14w
xchg bh, bh
pop rbx
jmp 0x180099563
jmp fcn.180097a49