Function at 0x14049c303
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x18], rbx
rcr bx, 0x85
and rax, 0x50c80f1f
add ah, 0x8e
push rbp
test bl, 0x12
push rsi
push rdi
push r12
seto dil
cmc
push r13
xor bpl, r13b
and si, 0x49c2
push r14
dec bp
mov r12b, 0x8a
rol bpl, 0xa2
push r15
and r14b, 0x70
setnp r12b
mov rbp, rsp
sal bl, cl
sal dil, 8
sub rsp, 0x70
mov rax, qword [0x1400b7288]
xor rax, rsp
cmp r15b, 0xb9
mov qword [rbp - 8], rax
movzx rsi, r12w
mov rax, qword [rbp + 0x60]
xor dil, 0xb
bsr di, r12w
lea r15, [rbp - 0x28]
adc edi, r9d
xchg dil, r14b
mov r14, qword [rbp + 0x68]
and edi, 0x5cb33f43
mov r12, r9
cmc
xor r13d, r13d
ror si, cl
cmovnp si, dx
mov rdi, qword [rbp + 0x70]
shr r13b, cl
ror bl, cl
cmp r9d, 0x3e7
mov r12w, r10w
mov qword [rbp - 0x30], rax
xchg bl, sil
mov bh, 0x21
movzx eax, r12w
mov esi, r9d
mov bx, r13w
setbe r13b
setg r13b
btc r12d, 0x24
mov bl, dl
mov dword [rbp - 0x50], r9d
add r13d, 3
mov dword [rbp - 0x48], r8d
bts bx, r9w
test r9, r12
cmp r9d, 0x63
mov ax, dx
movsx eax, r10w
mov qword [rbp - 0x40], rdi
cbw
mov r12b, r12b
mov eax, 2
movsx r12, sp
movzx r12d, r12w
mov r12, rdx
bswap ebx
cmova rbx, rcx
movzx bx, r12b
cmovle r13d, eax
mov rbx, rcx
movsx rax, di
or ah, 0x3a
cmp r9d, 9
mov eax, 1
jmp 0x14049c42c
cmovle r13d, eax
test cl, 0x53
jmp 0x14049c438
and dword [r14], 0
jmp 0x14049c441
jmp 0x14049c5be
cmp dword [r14], r13d
jmp 0x14049c44e
jge 0x14049c5d0
cmp byte [rbx + 8], 0
jne 0x14049c4e9
mov rcx, qword [rbx]
cmp rbx, r14
test rcx, rcx
je 0x14049c4d3
mov rax, qword [rcx + 0x38]
movsx dx, bh
mov rdx, qword [rax]
cmp bp, 0x1fc8
clc
test rdx, rdx
jmp 0x14049c486
je 0x14049c4a1
mov rax, qword [rcx + 0x50]
cmp dword [rax], 0
jle 0x14049c4a1
movzx eax, byte [rdx]
jmp 0x14049c4b8
mov rax, qword [rcx]
jmp 0x14049c4a9
mov rax, qword [rax + 0x30]
jmp 0x14049c4b2
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c4c0
je 0x14049c4d3
mov byte [rbx + 9], al
jmp 0x14049c4ce
jmp 0x14049c4db
and qword [rbx], 0
seto ch
cwde
mov byte [rbx + 8], 1
or eax, 0x2d917fb3
rcl ch, 0x90
adc ah, dh
movzx ecx, byte [rbx + 9]
mov rax, qword [rdi + 0x18]
test byte [rax + rcx*2], 0x48
jmp 0x14049c4fa
je 0x14049c5d0
mov rcx, qword [rbx]
test rcx, rcx
je 0x14049c599
mov rax, qword [rcx + 0x38]
cmp r13d, edx
cmp bp, 0x2734
cmp qword [rax], 0
jmp 0x14049c521
je 0x14049c56d
mov rax, qword [rcx + 0x50]
test r14b, r12b
cmp bx, 0x3a35
cmp dword [rax], 0
jle 0x14049c56d
dec dword [rax]
movsx rdx, r10w
rdtsc
mov rcx, qword [rcx + 0x38]
rdtsc
cbw
xchg ah, dh
mov rdx, qword [rcx]
lea rax, [rdx + 1]
jmp 0x14049c55a
mov qword [rcx], rax
setge ah
movzx eax, byte [rdx]
jmp 0x14049c568
jmp 0x14049c584
mov rax, qword [rcx]
jmp 0x14049c575
mov rax, qword [rax + 0x38]
jmp 0x14049c57e
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c58c
je 0x14049c599
xor al, al
jmp 0x14049c5a7
and qword [rbx], 0
movsx rdx, r10w
not al
mov al, 1
not edx
mov byte [rbx + 8], al
cmovp rdx, rcx
mov rdx, r12
inc dword [r14]
mov cx, 0x5545
movsx ecx, cx
mov rcx, rbx
call fcn.1404511f6
test al, al
jmp 0x14049c5ca
je 0x14049c446
mov rdx, r12
mov cx, 0x4e4e
cmovnp ecx, r14d
mov rcx, rbx
jmp 0x14049c5e3
call fcn.1404511f6
test al, al
jmp 0x14049c5ef
jne 0x14049c868
cmp dword [r14], r13d
jge 0x14049c868
cmp byte [rbx + 8], al
jmp 0x14049c606
jne 0x14049c6a1
mov rcx, qword [rbx]
jmp 0x14049c61b
test rcx, rcx
jmp 0x14049c623
je 0x14049c689
mov rax, qword [rcx + 0x38]
rol dx, cl
btc dx, si
mov rdx, qword [rax]
test rdx, rdx
jmp 0x14049c63f
je 0x14049c65c
mov rax, qword [rcx + 0x50]
cmp al, 0x5a
cmp dword [rax], 0
jle 0x14049c65c
movzx eax, byte [rdx]
jmp 0x14049c673
mov rax, qword [rcx]
jmp 0x14049c664
mov rax, qword [rax + 0x30]
jmp 0x14049c66d
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c67b
je 0x14049c689
mov byte [rbx + 9], al
jmp 0x14049c696
and qword [rbx], 0
movzx rcx, di
jmp 0x14049c696
mov byte [rbx + 8], 1
btc ax, 0x65
add cl, dh
mov rax, qword [rdi]
btr rcx, rsp
and cx, 0x5737
sub r8d, r8d
mov dl, byte [rbx + 9]
movzx ecx, bp
movsx ecx, di
mov rcx, rdi
jmp 0x14049c6c1
mov rax, qword [rax + 0x50]
call qword [0x1400b8d90]
cmp al, 0x2b
jne 0x14049c79c
mov rcx, qword [rbx]
sal r15b, cl
shr r15b, 0x48
lea r15, [rbp - 0x27]
cmp edi, r9d
mov byte [rbp - 0x28], al
cmp bh, 0x30
test rcx, rcx
jmp 0x14049c6f2
je 0x14049c784
mov rax, qword [rcx + 0x38]
jmp 0x14049c701
cmp qword [rax], 0
jmp 0x14049c70a
je 0x14049c758
mov rax, qword [rcx + 0x50]
cmp r9b, 0xeb
stc
cmp dword [rax], 0
jmp 0x14049c721
jle 0x14049c758
dec dword [rax]
mov rcx, qword [rcx + 0x38]
movsx ax, r10b
cmovle rax, r10
movsxd rax, edi
mov rdx, qword [rcx]
cwde
lea rax, [rdx + 1]
jmp 0x14049c746
mov qword [rcx], rax
cdqe
movzx eax, byte [rdx]
jmp 0x14049c753
jmp 0x14049c76f
mov rax, qword [rcx]
jmp 0x14049c760
mov rax, qword [rax + 0x38]
jmp 0x14049c769
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c777
je 0x14049c784
xor al, al
jmp 0x14049c78f
and qword [rbx], 0
mov al, 1
jmp 0x14049c78f
mov byte [rbx + 8], al
jmp 0x14049c797
jmp 0x14049c868
cmp al, 0x2d
jmp 0x14049c7a3
jne 0x14049c868
mov rcx, qword [rbx]
sar r15b, 0x65
adc r15d, ebp
lea r15, [rbp - 0x27]
test r12w, 0x284c
test r15, rcx
mov byte [rbp - 0x28], al
stc
test rcx, rcx
jmp 0x14049c7cc
je 0x14049c855
mov rax, qword [rcx + 0x38]
test sil, r10b
cmp qword [rax], 0
jmp 0x14049c7e2
je 0x14049c82c
mov rax, qword [rcx + 0x50]
cmp dword [rax], 0
jmp 0x14049c7f4
jle 0x14049c82c
dec dword [rax]
mov rcx, qword [rcx + 0x38]
cdq
movsx eax, r15w
mov rdx, qword [rcx]
movsxd rax, r14d
not al
cwde
lea rax, [rdx + 1]
jmp 0x14049c817
mov qword [rcx], rax
movzx eax, r11w
lahf
movzx eax, byte [rdx]
jmp 0x14049c827
jmp 0x14049c83e
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
jmp 0x14049c838
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c846
je 0x14049c855
mov byte [rbx + 8], 0
jmp 0x14049c868
and qword [rbx], 0
sete dl
movzx cx, dil
movsx edx, si
mov byte [rbx + 8], 1
mov rdx, r12
cmovno ecx, r15d
mov rcx, rbx
call fcn.1404511f6
test al, al
jmp 0x14049c87e
jne 0x14049ca44
mov esi, 1
test bpl, r14b
jmp 0x14049c891
cmp dword [r14], r13d
jge 0x14049ca3e
cmp byte [rbx + 8], 0
jmp 0x14049c8a3
jne 0x14049c92c
mov rcx, qword [rbx]
test rdi, rdi
test rcx, rcx
jmp 0x14049c8b7
je 0x14049c91a
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax]
test rdx, rdx
jmp 0x14049c8cc
je 0x14049c8ed
mov rax, qword [rcx + 0x50]
stc
cmp dword [rax], 0
jmp 0x14049c8df
jle 0x14049c8ed
movzx eax, byte [rdx]
jmp 0x14049c904
mov rax, qword [rcx]
jmp 0x14049c8f5
mov rax, qword [rax + 0x30]
jmp 0x14049c8fe
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c90c
je 0x14049c91a
mov byte [rbx + 9], al
jmp 0x14049c924
and qword [rbx], 0
rcl ecx, cl
ror cx, 0xd0
mov byte [rbx + 8], sil
sub ax, 0x6283
mov rax, qword [rdi]
setnp dl
sub r8d, r8d
mov dl, byte [rbx + 9]
movzx ecx, r9w
movzx cx, dil
movsx rcx, r8w
mov rcx, rdi
mov rax, qword [rax + 0x50]
jmp 0x14049c951
call qword [0x1400b8d90]
cmp al, 0x30
jmp 0x14049c95e
jne 0x14049ca3e
add dword [r14], esi
mov rcx, qword [rbx]
stc
test rcx, rcx
jmp 0x14049c973
je 0x14049ca07
mov rax, qword [rcx + 0x38]
cmc
test bh, 0x5f
cmp qword [rax], 0
je 0x14049c9db
mov rax, qword [rcx + 0x50]
test rax, 0x490b6d0f
cmp dword [rax], 0
jmp 0x14049c99d
jle 0x14049c9db
dec dword [rax]
not rdx
bswap ax
movsx dx, r11b
mov rcx, qword [rcx + 0x38]
movsx rdx, di
mov rdx, qword [rcx]
mov al, sil
movsx rax, si
movsx eax, bx
lea rax, [rdx + 1]
jmp 0x14049c9ce
mov qword [rcx], rax
not ah
movzx eax, byte [rdx]
jmp 0x14049c9ed
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
jmp 0x14049c9e7
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049c9f5
je 0x14049ca07
xor al, al
jmp 0x14049ca02
jmp 0x14049ca1e
and qword [rbx], 0
movsx cx, cl
cmovp dx, sp
mov al, sil
movsxd rcx, r8d
movsx dx, r15b
mov rdx, r12
jmp 0x14049ca26
mov byte [rbx + 8], al
movsx cx, r9b
mov rcx, rbx
call fcn.1404511f6
test al, al
je 0x14049c891
mov esi, dword [rbp - 0x50]
cmp bl, 0x2f
cmp dword [r14], 0
jmp 0x14049ca4d
jle 0x14049ca67
mov byte [r15], 0x30
inc r15
movsx dx, r15b
movzx dx, r14b
bswap rcx
mov rdx, r12
xchg cx, cx
cmovne rcx, rdi
mov rcx, rbx
jmp 0x14049ca79
call fcn.1404511f6
test al, al
jne 0x14049ccaf
lea rdi, [rbx + 9]
cmc
xadd si, si
mov rsi, rdi
test r15b, 0x1a
cmc
cmp byte [rbx + 8], 0
jne 0x14049cb33
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x14049caac
je 0x14049cb25
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax]
cmc
cmp bl, 0xe3
stc
test rdx, rdx
jmp 0x14049cac6
je 0x14049caf1
mov rax, qword [rcx + 0x50]
test r12w, 0x4ad9
cmp dword [rax], 0
jmp 0x14049cade
jle 0x14049caf1
movzx eax, byte [rdx]
jmp 0x14049caec
jmp 0x14049cb08
mov rax, qword [rcx]
jmp 0x14049caf9
mov rax, qword [rax + 0x30]
jmp 0x14049cb02
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049cb10
je 0x14049cb25
mov byte [rsi], al
mov rdi, rsi
jmp 0x14049cb20
jmp 0x14049cb2b
and qword [rbx], 0
cdqe
mov byte [rbx + 8], 1
bsf ax, di
mov rcx, qword [rbp - 0x40]
sub r8d, r8d
lahf
mov dl, byte [rdi]
movzx ax, r8b
mov rax, qword [rcx]
mov rax, qword [rax + 0x50]
jmp 0x14049cb4e
call qword [0x1400b8d90]
lea ecx, [rax - 0x30]
test r9w, 0x105d
cmp cl, 9
ja 0x14049ccac
mov ecx, dword [r14]
stc
cmp ecx, r13d
jmp 0x14049cb72
jge 0x14049ccac
mov byte [r15], al
lea rdx, [rbp - 9]
cmp r15, rdx
movzx eax, r15w
movsx eax, si
lea rax, [r15 + 1]
jmp 0x14049cb92
cmovae rax, r15
bswap r15d
mov r15, rax
bsr eax, esp
bts ax, r15w
movzx rax, r14w
lea eax, [rcx + 1]
btr ecx, 1
movsxd rcx, edi
cmp r9w, 0x4662
mov dword [r14], eax
movsx rcx, r12w
add ecx, 0x1a3d1824
movzx cx, r10b
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x14049cbd5
je 0x14049cc6c
mov rax, qword [rcx + 0x38]
cmp qword [rax], 0
jmp 0x14049cbe8
je 0x14049cc3b
mov rax, qword [rcx + 0x50]
cmp dword [rax], 0
jmp 0x14049cbfa
jle 0x14049cc3b
dec dword [rax]
cdqe
mov dx, 0x3c56
cdq
mov rcx, qword [rcx + 0x38]
rdtsc
cmovl rax, r12
cwde
mov rdx, qword [rcx]
lea rax, [rdx + 1]
jmp 0x14049cc20
mov qword [rcx], rax
movzx rax, bx
movsx ax, r15b
cdqe
movzx eax, byte [rdx]
jmp 0x14049cc36
jmp 0x14049cc52
mov rax, qword [rcx]
jmp 0x14049cc43
mov rax, qword [rax + 0x38]
jmp 0x14049cc4c
call qword [0x1400b8d90]
cmp eax, 0xffffffff
jmp 0x14049cc5a
je 0x14049cc6c
xor al, al
jmp 0x14049cc67
jmp 0x14049cc7c
and qword [rbx], 0
mov dx, 0x55ed
cdq
mov al, 1
not ecx
movzx edx, cx
mov rdx, r12
movzx ecx, r10w
movzx rcx, r14w
xchg cx, cx
mov byte [rbx + 8], al
movzx cx, ch
sets ch
movsxd rcx, r10d
mov rcx, rbx
jmp 0x14049cc9f
call fcn.1404511f6
test al, al
je 0x14049ca97
mov esi, dword [rbp - 0x50]
cmp dword [r14], 0
movsx dx, r8b
movsx r8d, r12w
lea rax, [rbp - 0x28]
movsx r9, r8w
mov cl, r11b
lea r9, [rbp - 0x4c]
mov r8d, 0xa
movsxd rcx, esp
xchg ecx, edx
mov edx, 0x1f4f5a37
cmovne rax, r15
lea rdx, [rbp - 0x38]
add cx, r9w
not cx
and dword [rbp - 0x4c], 0
movsx ecx, r10w
movsx cx, dil
mov cl, r9b
lea rcx, [rbp - 0x28]
jmp 0x14049cd03
mov byte [rax], 0
jmp 0x14049cd0b
call fcn.14049d15f
mov rdx, r12
mov rcx, rbx
mov di, 0x1a86
mov edi, eax
jmp 0x14049cd21
call fcn.1404511f6
sub ecx, ecx
test cl, 0x29
cmp rdi, 0x595e2d7c
jmp 0x14049cd37
test al, al
lea eax, [rcx + 1]
jmp 0x14049cd41
cmovne ecx, eax
movsx eax, r10w
shld rax, rax, 0x27
lea rax, [rbp - 0x28]
cmc
cmp qword [rbp - 0x38], rax
jmp 0x14049cd5b
je 0x14049cd96
cmp dword [rbp - 0x4c], 0
jne 0x14049cd96
cmp edi, dword [rbp - 0x48]
jmp 0x14049cd73
jl 0x14049cd96
cmp esi, edi
jmp 0x14049cd80
jl 0x14049cd96
mov rax, qword [rbp - 0x30]
jmp 0x14049cd8f
mov dword [rax], edi
jmp 0x14049cd9e
or ecx, 2
nop
rcr ah, 0xaf
mov eax, ecx
movsx ecx, r10w
btc cx, 0x75
dec ecx
mov rcx, qword [rbp - 8]
cmp r13b, dil
xor rcx, rsp
jmp 0x14049cdba
call fcn.14049e054
mov rbx, qword [rsp + 0xc0]
sub bpl, bpl
not r14b
add rsp, 0x70
movzx r13w, bpl
movsx r15d, r11w
not edi
pop r15
pop r14
xchg r13w, si
pop r13
movzx ebp, r14w
xchg rbp, rbp
movsx rdi, r14w
pop r12
movsxd rsi, esp
setp dil
movsx bp, r8b
pop rdi
movzx rsi, r14w
xchg bp, si
movzx si, r13b
pop rsi
xchg bpl, bpl
movsxd rbp, r12d
pop rbp
jmp 0x14049ce19
ret