Function at 0x14049ead7
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
ror bh, cl
sbb al, sil
movzx ax, r10b
push rsi
push rdi
cwde
push r12
push r13
and r12d, 0x594d511f
push r14
lahf
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1400b7288]
xor rax, rsp
sar r14b, cl
cmp spl, 0xb
mov qword [rbp - 8], rax
bt r15w, bx
xor bl, r10b
mov rax, qword [rbp + 0x60]
stc
xadd sil, dil
shl r15w, 0xc5
lea r15, [rbp - 0x28]
sar r12b, cl
btr edi, 0xb7
mov r14, qword [rbp + 0x68]
xor r13d, r13d
rol si, cl
mov rdi, qword [rbp + 0x70]
movsx rsi, dx
btr r12w, 0xe1
cmp r9d, 0x3e7
movsx si, r10b
mov si, 0x45b7
mov qword [rbp - 0x30], rax
not rsi
cmovns eax, ecx
mov esi, r9d
cmovg r12, rax
mov r12w, 0x35ac
movsx r12d, di
setg r13b
sal bx, 0x5e
mov dword [rbp - 0x50], r9d
bswap rax
add r13d, 3
shrd bx, bp, 0xfc
and bh, 0x46
mov dword [rbp - 0x48], r8d
sbb ebx, 0x29a92d7a
cmp r9d, 0x63
lahf
cdqe
xchg bl, bl
mov qword [rbp - 0x40], rdi
movzx r12w, r14b
mov eax, 2
movzx r12, r13w
mov r12, rdx
setl bl
movsx rbx, r9w
cmovle r13d, eax
add bl, r11b
cmovg ax, r8w
mov rbx, rcx
cmp r9d, 9
mov eax, 1
jmp 0x14049ebe0
cmovle r13d, eax
and dword [r14], 0
jmp 0x14049ebed
jmp 0x14049ed73
cmp dword [r14], r13d
jmp 0x14049ebfa
jge 0x14049ed85
cmp byte [rbx + 8], 0
jmp 0x14049ec09
jne 0x14049ec91
mov rcx, qword [rbx]
cmp al, 0xce
test rcx, rcx
jmp 0x14049ec1c
je 0x14049ec87
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax]
test bp, r14w
test rdx, rdx
jmp 0x14049ec35
je 0x14049ec55
mov rax, qword [rcx + 0x50]
cmp dword [rax], 0
jmp 0x14049ec47
jle 0x14049ec55
movzx eax, byte [rdx]
jmp 0x14049ec6c
mov rax, qword [rcx]
jmp 0x14049ec5d
mov rax, qword [rax + 0x30]
jmp 0x14049ec66
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049ec74
je 0x14049ec87
mov byte [rbx + 9], al
jmp 0x14049ec82
jmp 0x14049ec8b
and qword [rbx], 0
mov byte [rbx + 8], 1
cbw
movzx ecx, byte [rbx + 9]
jmp 0x14049ec9f
mov rax, qword [rdi + 0x18]
test byte [rax + rcx*2], 0x48
jmp 0x14049ecac
je 0x14049ed85
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x14049ecbd
je 0x14049ed4b
mov rax, qword [rcx + 0x38]
jmp 0x14049eccc
cmp qword [rax], 0
jmp 0x14049ecd5
je 0x14049ed1f
mov rax, qword [rcx + 0x50]
test sil, bpl
cmp dword [rax], 0
jmp 0x14049ecea
jle 0x14049ed1f
dec dword [rax]
cwd
cqo
cmove ax, bx
mov rcx, qword [rcx + 0x38]
mov ax, di
mov rdx, qword [rcx]
lea rax, [rdx + 1]
jmp 0x14049ed0d
mov qword [rcx], rax
setae ah
movsx eax, r12w
movzx eax, byte [rdx]
jmp 0x14049ed36
mov rax, qword [rcx]
jmp 0x14049ed27
mov rax, qword [rax + 0x38]
jmp 0x14049ed30
call qword [0x1400b8d90]
cmp eax, 0xffffffff
je 0x14049ed4b
xor al, al
jmp 0x14049ed46
jmp 0x14049ed59
and qword [rbx], 0
mov al, 1
movzx cx, r9b
xchg cx, cx
mov byte [rbx + 8], al
dec rcx
inc dx
mov rdx, r12
movzx ecx, dx
inc dword [r14]
mov rcx, rbx
jmp 0x14049ed73
call fcn.140453871
test al, al
jmp 0x14049ed7f
je 0x14049ebf2
mov rdx, r12
jmp 0x14049ed90
mov rcx, rbx
jmp 0x14049ed98
call fcn.140453871
test al, al
jne 0x14049f02b
cmp dword [r14], r13d
jmp 0x14049edad
jge 0x14049f02b
cmp byte [rbx + 8], al
jmp 0x14049edbb
jne 0x14049ee63
mov rcx, qword [rbx]
test r14b, 2
cmp r11b, 0xea
test rcx, rcx
je 0x14049ee46
mov rax, qword [rcx + 0x38]
cdq
mov rdx, qword [rax]
cmc
cmp r9b, 0xa0
test rdx, rdx
jmp 0x14049edea
je 0x14049ee19
mov rax, qword [rcx + 0x50]
test r10w, cx
cmp ecx, 0x5a445dd4
cmp dword [rax], 0
jmp 0x14049ee06
jle 0x14049ee19
movzx eax, byte [rdx]
jmp 0x14049ee14
jmp 0x14049ee30
mov rax, qword [rcx]
jmp 0x14049ee21
mov rax, qword [rax + 0x30]
jmp 0x14049ee2a
call qword [0x1400b8d90]
cmp eax, 0xffffffff
je 0x14049ee46
mov byte [rbx + 9], al
jmp 0x14049ee41
jmp 0x14049ee54
and qword [rbx], 0
btr rax, rbp
bts eax, ebx
seta al
mov byte [rbx + 8], 1
shr dl, cl
sub cx, r15w
bsf ax, r9w
mov rax, qword [rdi]
sub r8d, r8d
cmovno ecx, eax
mov dl, byte [rbx + 9]
movsxd rcx, r9d
setnp cl
mov rcx, rdi
jmp 0x14049ee7d
mov rax, qword [rax + 0x50]
jmp 0x14049ee86
call qword [0x1400b8d90]
cmp al, 0x2b
jmp 0x14049ee93
jne 0x14049ef5c
mov rcx, qword [rbx]
lea r15, [rbp - 0x27]
stc
mov byte [rbp - 0x28], al
jmp 0x14049eeaa
test rcx, rcx
je 0x14049ef44
mov rax, qword [rcx + 0x38]
cmc
cmp r14b, 0x15
cmp qword [rax], 0
jmp 0x14049eec5
je 0x14049ef13
mov rax, qword [rcx + 0x50]
cmc
jmp 0x14049eed5
cmp dword [rax], 0
jmp 0x14049eedd
jle 0x14049ef13
dec dword [rax]
not ax
movsxd rdx, r12d
movzx dx, dh
mov rcx, qword [rcx + 0x38]
mov rdx, qword [rcx]
cbw
setl al
lea rax, [rdx + 1]
jmp 0x14049ef04
mov qword [rcx], rax
movsx rax, r15w
movzx eax, byte [rdx]
jmp 0x14049ef2a
mov rax, qword [rcx]
jmp 0x14049ef1b
mov rax, qword [rax + 0x38]
jmp 0x14049ef24
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049ef32
je 0x14049ef44
xor al, al
jmp 0x14049ef3f
jmp 0x14049ef54
and qword [rbx], 0
setae al
not al
mov al, 1
jmp 0x14049ef54
mov byte [rbx + 8], al
jmp 0x14049f02b
cmp al, 0x2d
jmp 0x14049ef63
jne 0x14049f02b
mov rcx, qword [rbx]
lea r15, [rbp - 0x27]
cmp r13b, cl
mov byte [rbp - 0x28], al
test rcx, rcx
jmp 0x14049ef7e
je 0x14049f012
mov rax, qword [rcx + 0x38]
cmp qword [rax], 0
jmp 0x14049ef91
je 0x14049efe9
mov rax, qword [rcx + 0x50]
cmp r11b, cl
cmp dword [rax], 0
jmp 0x14049efa6
jle 0x14049efe9
dec dword [rax]
mov rcx, qword [rcx + 0x38]
movsx eax, cx
cmovo ax, ax
cqo
mov rdx, qword [rcx]
jmp 0x14049efc5
lea rax, [rdx + 1]
jmp 0x14049efce
mov qword [rcx], rax
mov rax, rsi
movzx ax, r15b
movsxd rax, edi
movzx eax, byte [rdx]
jmp 0x14049efe4
jmp 0x14049eff6
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049effe
je 0x14049f012
mov byte [rbx + 8], 0
jmp 0x14049f00d
jmp 0x14049f02b
and qword [rbx], 0
seta ch
bswap ecx
movzx rdx, dx
mov byte [rbx + 8], 1
movzx cx, bh
movsx rdx, r13w
mov rdx, r12
movzx ecx, r12w
movzx rcx, r9w
mov rcx, rbx
jmp 0x14049f03e
call fcn.140453871
test al, al
jne 0x14049f217
mov esi, 1
clc
jmp 0x14049f05a
cmp dword [r14], r13d
jmp 0x14049f062
jge 0x14049f214
cmp byte [rbx + 8], 0
jne 0x14049f10a
mov rcx, qword [rbx]
jmp 0x14049f07a
test rcx, rcx
je 0x14049f0ef
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax]
cmp r8b, cl
clc
test rdx, rdx
je 0x14049f0bd
mov rax, qword [rcx + 0x50]
test r8, 0x18e97942
cmp dword [rax], 0
jmp 0x14049f0aa
jle 0x14049f0bd
movzx eax, byte [rdx]
jmp 0x14049f0b8
jmp 0x14049f0d4
mov rax, qword [rcx]
jmp 0x14049f0c5
mov rax, qword [rax + 0x30]
jmp 0x14049f0ce
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049f0dc
je 0x14049f0ef
mov byte [rbx + 9], al
jmp 0x14049f0ea
jmp 0x14049f0f9
and qword [rbx], 0
sub ecx, 0x4c187549
mov byte [rbx + 8], sil
mov ecx, 0x23b349b0
and ch, 7
bsr cx, r13w
mov rax, qword [rdi]
sub r8d, r8d
mov dl, byte [rbx + 9]
xchg cx, cx
mov rcx, rdi
jmp 0x14049f11e
mov rax, qword [rax + 0x50]
jmp 0x14049f127
call qword [0x1400b8d90]
cmp al, 0x30
jmp 0x14049f134
jne 0x14049f214
add dword [r14], esi
sbb rcx, r12
rcl cx, 0x72
mov rcx, qword [rbx]
cmp r13, 0x5a2d5aa0
test rcx, rcx
jmp 0x14049f156
je 0x14049f1d7
mov rax, qword [rcx + 0x38]
jmp 0x14049f167
cmp qword [rax], 0
je 0x14049f1b5
mov rax, qword [rcx + 0x50]
cmp dword [rax], 0
jmp 0x14049f17d
jle 0x14049f1b5
dec dword [rax]
cdqe
rdtsc
mov rcx, qword [rcx + 0x38]
cmovs dx, r10w
mov rdx, qword [rcx]
mov al, r10b
movzx rax, r9w
sete ah
lea rax, [rdx + 1]
mov qword [rcx], rax
cwde
lahf
movzx eax, byte [rdx]
jmp 0x14049f1b0
jmp 0x14049f1c7
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
jmp 0x14049f1c1
call qword [0x1400b8d90]
cmp eax, 0xffffffff
je 0x14049f1d7
xor al, al
jmp 0x14049f1ea
and qword [rbx], 0
movzx rcx, r11w
jmp 0x14049f1e7
mov al, sil
mov rdx, r12
movsx ecx, r15w
mov byte [rbx + 8], al
xchg ch, cl
movzx cx, bh
mov rcx, rbx
jmp 0x14049f202
call fcn.140453871
test al, al
jmp 0x14049f20e
je 0x14049f05a
mov esi, dword [rbp - 0x50]
cmp dword [r14], 0
jle 0x14049f234
mov byte [r15], 0x30
movzx rdx, r9w
xchg dl, dl
inc cx
inc r15
xchg dh, ch
cdq
mov rdx, r12
movzx cx, dil
mov rcx, rbx
jmp 0x14049f244
call fcn.140453871
test al, al
jmp 0x14049f250
jne 0x14049f461
lea rdi, [rbx + 9]
clc
sar sil, cl
rcr esi, cl
mov rsi, rdi
test al, spl
cmp byte [rbx + 8], 0
jmp 0x14049f26f
jne 0x14049f2fa
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x14049f280
je 0x14049f2f0
mov rax, qword [rcx + 0x38]
shl dx, 0xbf
movsx dx, bh
mov rdx, qword [rax]
test rdx, rdx
jmp 0x14049f29d
je 0x14049f2c4
mov rax, qword [rcx + 0x50]
clc
stc
cmp dword [rax], 0
jmp 0x14049f2b1
jle 0x14049f2c4
movzx eax, byte [rdx]
jmp 0x14049f2bf
jmp 0x14049f2d6
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
jmp 0x14049f2d0
call qword [0x1400b8d90]
cmp eax, 0xffffffff
je 0x14049f2f0
mov byte [rsi], al
movzx rdi, ax
xchg dil, dil
mov rdi, rsi
jmp 0x14049f2f6
and qword [rbx], 0
mov dl, 0x81
mov byte [rbx + 8], 1
mov rcx, qword [rbp - 0x40]
inc ax
xor r8d, r8d
movzx eax, bp
mov al, r9b
movzx ax, r15b
mov dl, byte [rdi]
mov ax, 0x3e89
jmp 0x14049f31d
mov rax, qword [rcx]
jmp 0x14049f325
mov rax, qword [rax + 0x50]
jmp 0x14049f32e
call qword [0x1400b8d90]
lea ecx, [rax - 0x30]
jmp 0x14049f33c
cmp cl, 9
jmp 0x14049f344
ja 0x14049f45a
mov ecx, dword [r14]
cmp ecx, r13d
jge 0x14049f45a
mov byte [r15], al
lahf
xchg dx, dx
lea rdx, [rbp - 9]
movsx ax, dil
movsx rax, r14w
cmp r15, rdx
nop
lea rax, [r15 + 1]
cmovae rax, r15
bts r15w, cx
rcr r15w, cl
mov r15, rax
lea eax, [rcx + 1]
sbb cl, r8b
mov cl, r12b
mov dword [r14], eax
cmp sp, r12w
inc rcx
mov rcx, qword [rbx]
jmp 0x14049f3a1
test rcx, rcx
je 0x14049f43b
mov rax, qword [rcx + 0x38]
jmp 0x14049f3b3
cmp qword [rax], 0
je 0x14049f40a
mov rax, qword [rcx + 0x50]
cmp r8, 0x456641a2
test r15d, 0x319145f8
cmp dword [rax], 0
jle 0x14049f40a
dec dword [rax]
mov rcx, qword [rcx + 0x38]
movzx edx, r11w
rdtsc
mov rdx, qword [rcx]
lea rax, [rdx + 1]
jmp 0x14049f3f0
mov qword [rcx], rax
movzx rax, r14w
mov al, 0x33
movsx rax, ax
movzx eax, byte [rdx]
jmp 0x14049f405
jmp 0x14049f421
mov rax, qword [rcx]
jmp 0x14049f412
mov rax, qword [rax + 0x38]
jmp 0x14049f41b
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049f429
je 0x14049f43b
xor al, al
jmp 0x14049f436
jmp 0x14049f441
and qword [rbx], 0
mov al, 1
mov rdx, r12
mov byte [rbx + 8], al
sete cl
mov rcx, rbx
call fcn.140453871
test al, al
je 0x14049f266
mov esi, dword [rbp - 0x50]
sub r9b, 0x3d
cmp dword [r14], 0
lea rax, [rbp - 0x28]
lea r9, [rbp - 0x4c]
movsxd rcx, edi
mov r8d, 0xa
movzx rdx, r15w
mov edx, 0x3508050a
cmovne rax, r15
cmc
ror dx, 0x68
lea rdx, [rbp - 0x38]
and dword [rbp - 0x4c], 0
lea rcx, [rbp - 0x28]
jmp 0x14049f499
mov byte [rax], 0
jmp 0x14049f4a1
call fcn.14049f8a9
mov rdx, r12
mov cx, bx
movsxd rcx, r11d
movzx edi, r15w
mov rcx, rbx
movsx di, cl
movsx edi, r8w
movzx edi, cx
mov edi, eax
call fcn.140453871
sub ecx, ecx
test al, al
lea eax, [rcx + 1]
jmp 0x14049f4d4
cmovne ecx, eax
lea rax, [rbp - 0x28]
jmp 0x14049f4e3
cmp qword [rbp - 0x38], rax
je 0x14049f527
cmp dword [rbp - 0x4c], 0
jmp 0x14049f4f6
jne 0x14049f527
cmp edi, dword [rbp - 0x48]
jl 0x14049f527
cmp esi, edi
jmp 0x14049f50c
jl 0x14049f527
mov rax, qword [rbp - 0x30]
jmp 0x14049f51b
mov dword [rax], edi
jmp 0x14049f522
jmp 0x14049f531
or ecx, 2
mov al, 0xcb
sal ax, 0x39
lahf
mov eax, ecx
rcl cx, 0xd7
bt rcx, r8
mov rcx, qword [rbp - 8]
cmp rdi, 0x351b2350
test sil, 0x9d
xor rcx, rsp
jmp 0x14049f552
call fcn.1404a07bb
mov rbx, qword [rsp + 0xc0]
shrd r12d, ebp, 0x50
add r14b, dil
rcr r13, cl
add rsp, 0x70
bswap si
pop r15
movsxd r12, ecx
movzx ebp, r13w
movsx r14, bp
pop r14
pop r13
pop r12
jmp 0x14049f58b
pop rdi
cmovs si, bp
pop rsi
setb bpl
movzx bp, r11b
pop rbp
jmp 0x14049f5a0
ret