Function at 0x14040aa20
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 8], rcx
mov rcx, 0x7e0024b4
cmc
sub rsp, 0xd8
mov rcx, qword [rsp + 0xe0]
call fcn.14040a5db
mov dword [rsp + 0x70], 0
jmp 0x14040aa4e
jmp 0x14040aa64
mov eax, dword [rsp + 0x70]
jmp 0x14040aa5c
inc eax
mov dword [rsp + 0x70], eax
stc
clc
mov rax, qword [rsp + 0xe0]
mov eax, dword [rax + 0x50]
cmp r15, 0xfffffffffbb0961d
test ebp, eax
cmp dword [rsp + 0x70], eax
jge 0x14040ad13
mov rax, qword [rsp + 0xe0]
dec cx
add rax, 0x50
shl ch, cl
dec ch
mov qword [rsp + 0xa0], rax
clc
movsxd rax, dword [rsp + 0x70]
imul rax, rax, 0x20
not cx
mov cx, ax
mov rcx, qword [rsp + 0xa0]
add rax, qword [rcx + 8]
cmp r11, rbx
cmp r8w, 0xed3d
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
cmp qword [rax + 0x18], 0
jmp 0x14040aad6
je 0x14040aaf0
mov rax, qword [rsp + 0x60]
cmp dword [rax + 8], 0
jmp 0x14040aaea
jne 0x14040aaf5
jmp 0x14040aa53
xorps xmm0, xmm0
mov r8d, 0x939ebc8a
movss dword [rsp + 0x8c], xmm0
mov r8b, 0x34
cqo
movzx r9w, cl
xorps xmm0, xmm0
mov cl, 0x30
cqo
movzx r8w, r14b
movss dword [rsp + 0x88], xmm0
setne r8b
xorps xmm0, xmm0
movsxd r8, r8d
movss dword [rsp + 0x84], xmm0
bswap edx
movsx r9d, bp
movzx dx, bpl
xorps xmm0, xmm0
movsx r9, di
movss dword [rsp + 0x80], xmm0
lea r9, [rsp + 0x80]
movsx r8w, spl
lea r8, [rsp + 0x88]
movsx cx, r9b
movzx rcx, sp
cmovp dx, r13w
mov rdx, qword [rsp + 0x60]
movsx ecx, di
jmp 0x14040ab84
mov rcx, qword [rsp + 0xe0]
call fcn.1404061fc
mov rax, qword [rsp + 0x60]
jmp 0x14040ab9b
mov rax, qword [rax + 0x18]
jmp 0x14040aba4
mov qword [rsp + 0xa8], rax
jmp 0x14040abb1
mov rax, qword [rsp + 0x60]
movzx eax, word [rax + 2]
jmp 0x14040abbf
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x60]
jmp 0x14040abcd
movss xmm1, dword [rax + 0x14]
movsxd rax, edx
movsx rax, si
jmp 0x14040abde
addss xmm1, xmm0
cmovs eax, esp
movzx ax, r9b
xchg ah, al
movaps xmm0, xmm1
movzx rax, sp
mov rax, qword [rsp + 0x60]
jmp 0x14040abfd
movzx eax, word [rax]
jmp 0x14040ac05
cvtsi2ss xmm1, eax
mov rax, qword [rsp + 0x60]
movss xmm2, dword [rax + 0x10]
cqo
addss xmm2, xmm1
movsx rcx, r9w
movzx rdx, di
mov cx, r10w
movaps xmm1, xmm2
rdtsc
lahf
cdq
mov rax, qword [rsp + 0x60]
cqo
movzx rdx, bp
movss xmm2, dword [rax + 0xc]
bswap rax
lahf
movss dword [rsp + 0x50], xmm2
mov dx, 0x85ab
cwde
cdq
movss xmm2, dword [rsp + 0x84]
jmp 0x14040ac5a
movss dword [rsp + 0x48], xmm2
movss xmm2, dword [rsp + 0x80]
bswap edx
setno ah
cdq
movss dword [rsp + 0x40], xmm2
not dx
movss xmm2, dword [rsp + 0x8c]
movsxd rax, r11d
mov al, r14b
movss dword [rsp + 0x38], xmm2
cbw
movzx edx, cx
movss xmm2, dword [rsp + 0x88]
movsxd rdx, r11d
movzx eax, r8w
movss dword [rsp + 0x30], xmm2
cbw
movss dword [rsp + 0x28], xmm0
mov al, r15b
movzx cx, r11b
rdtsc
movss dword [rsp + 0x20], xmm1
bswap ax
cdqe
lahf
mov rax, qword [rsp + 0x60]
movss xmm3, dword [rax + 0x14]
rdtsc
mov rax, qword [rsp + 0x60]
movsx rdx, r13w
movss xmm2, dword [rax + 0x10]
mov rax, qword [rsp + 0x60]
movsxd rdx, r15d
mov rdx, 0x1f387e2b
movzx edx, word [rax + 8]
jmp 0x14040acfc
mov rcx, qword [rsp + 0xa8]
jmp 0x14040ad09
call fcn.14040bfc5
jmp 0x14040aa53
mov dword [rsp + 0x68], 0
jmp 0x14040ad20
jmp 0x14040ad39
mov eax, dword [rsp + 0x68]
jmp 0x14040ad2e
inc eax
test spl, 0x36
mov dword [rsp + 0x68], eax
clc
mov rax, qword [rsp + 0xe0]
jmp 0x14040ad46
mov eax, dword [rax + 0x40]
test r9b, r8b
cmp esi, r12d
cmp dword [rsp + 0x68], eax
jmp 0x14040ad58
jge 0x14040ae05
mov rax, qword [rsp + 0xe0]
add rax, 0x40
rol cl, cl
btr cx, r11w
mov qword [rsp + 0xb0], rax
movsxd rax, dword [rsp + 0x68]
inc cx
stc
bts cx, si
mov rcx, qword [rsp + 0xb0]
mov rcx, qword [rcx + 8]
cmc
clc
mov rax, qword [rcx + rax*8]
jmp 0x14040ad9d
movzx eax, byte [rax + 0x5e]
clc
test eax, eax
jmp 0x14040ada9
je 0x14040ae00
mov rax, qword [rsp + 0xe0]
movzx cx, bpl
add rax, 0x40
movzx rcx, r8w
movsx rcx, r11w
mov qword [rsp + 0xb8], rax
movsxd rax, dword [rsp + 0x68]
movsx rcx, r8w
setae cl
mov rcx, qword [rsp + 0xb8]
jmp 0x14040ade9
mov rcx, qword [rcx + 8]
jmp 0x14040adf2
mov rcx, qword [rcx + rax*8]
jmp 0x14040adfb
call fcn.14040b4d5
jmp 0x14040ad25
mov dword [rsp + 0x74], 0
jmp 0x14040ae12
jmp 0x14040ae2b
mov eax, dword [rsp + 0x74]
inc eax
test r15b, 0x86
stc
mov dword [rsp + 0x74], eax
bt ax, 0x14
mov rax, qword [rsp + 0xe0]
mov eax, dword [rax + 0x40]
test sp, r8w
mov dword [rsp + 0x90], eax
neg rax
mov eax, dword [rsp + 0x90]
jmp 0x14040ae50
cmp dword [rsp + 0x74], eax
jmp 0x14040ae59
jge 0x14040af8e
mov rax, qword [rsp + 0xe0]
neg rcx
add rax, 0x40
btr cx, 0x2e
movzx rcx, cx
mov qword [rsp + 0xc0], rax
or cl, spl
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0xc0]
mov rcx, qword [rcx + 8]
cmc
mov rax, qword [rcx + rax*8]
jmp 0x14040aea4
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
clc
stc
movzx eax, word [rax + 0x5c]
cmp eax, 0xffff
jmp 0x14040aec4
je 0x14040aecf
jmp 0x14040ae17
mov eax, 0x2026
jmp 0x14040aed9
mov word [rsp + 0x78], ax
nop
movsx rax, dx
movsx eax, sp
mov eax, 0x85
jmp 0x14040aef1
mov word [rsp + 0x7a], ax
mov dword [rsp + 0x6c], 0
jmp 0x14040af1b
mov eax, dword [rsp + 0x6c]
jmp 0x14040af0c
inc eax
clc
mov dword [rsp + 0x6c], eax
cmp rax, 0xfffffffff39d7b0f
stc
cmp dword [rsp + 0x6c], 2
jmp 0x14040af25
jge 0x14040af89
movsxd rax, dword [rsp + 0x6c]
mov cl, r12b
not dh
movzx edx, word [rsp + rax*2 + 0x78]
mov rcx, qword [rsp + 0x98]
jmp 0x14040af47
call fcn.14040c476
test rax, rax
jmp 0x14040af54
je 0x14040af84
movsxd rax, dword [rsp + 0x6c]
jmp 0x14040af64
mov rcx, qword [rsp + 0x98]
jmp 0x14040af71
movzx eax, word [rsp + rax*2 + 0x78]
mov word [rcx + 0x5c], ax
jmp 0x14040af7f
jmp 0x14040af89
jmp 0x14040af03
jmp 0x14040ae17
add rsp, 0xd8
jmp 0x14040af9a
ret