Function at 0x1404877dd
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
cmova eax, r15d
push rsi
sal ebx, 0xdc
cmp r14, rcx
clc
push rdi
xadd bl, sil
shr dil, 0x5d
push r12
cdqe
xadd eax, esi
or ah, 0x4d
push r13
push r14
sar r14w, cl
push r15
xadd ebp, esi
cmc
ror rsi, 0x1d
mov rbp, rsp
sar r15b, cl
sal r15w, cl
test r8b, 0x85
sub rsp, 0x80
mov rax, qword [0x1400b7288]
mov r14b, cl
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rax, qword [rbp + 0x60]
cmc
or r15b, al
cmove r15w, di
lea r15, [rbp - 0x30]
mov r14, qword [rbp + 0x68]
sal di, 0xef
sub r13d, r13d
mov rdi, qword [rbp + 0x70]
btc esi, eax
sal bh, 0x58
cmp r9d, 0x3e7
movzx r12d, r9w
mov qword [rbp - 0x38], rax
mov esi, r9d
lahf
movsx rax, si
setg r13b
sal eax, cl
shr r12d, 0xc7
rcr bh, 0xc5
mov dword [rbp - 0x60], r9d
xor ax, 0x316e
cmp r12w, r8w
or al, 0x39
add r13d, 3
adc bl, spl
mov dword [rbp - 0x58], r8d
shl ax, cl
ror bl, 0xbe
clc
cmp r9d, 0x63
movzx r12, bp
not al
mov qword [rbp - 0x48], rdi
movzx rbx, r11w
lahf
mov eax, 2
movzx r12w, r15b
xchg r12w, bx
movzx ebx, r13w
mov qword [rbp - 0x50], r15
mov bl, 0xdd
bswap ebx
movzx r12, dx
cmovle r13d, eax
movsx rbx, di
mov r12, rdx
bsr eax, ebx
cmp r9d, 9
mov eax, 1
not bx
mov ebx, 0x404b0359
mov rbx, rcx
jmp 0x1404878fc
cmovle r13d, eax
and dword [r14], 0
jmp 0x140487909
call fcn.14046211e
test al, al
jne 0x140487adf
mov esi, 0xffff
cmp dword [r14], r13d
jmp 0x140487923
jge 0x140487adc
cmp byte [rbx + 8], 0
jne 0x1404879c0
mov rcx, qword [rbx]
cmp r13w, r12w
cmc
test rcx, rcx
jmp 0x140487943
je 0x1404879a4
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax]
test rdx, rdx
je 0x140487976
mov rax, qword [rcx + 0x50]
cmp bp, di
cmp dword [rax], 0
jle 0x140487976
movzx eax, word [rdx]
jmp 0x140487971
jmp 0x14048798d
mov rax, qword [rcx]
jmp 0x14048797e
mov rax, qword [rax + 0x30]
jmp 0x140487987
call qword [case.0x140441677.0]
cmp si, ax
je 0x1404879a4
mov word [rbx + 0xa], ax
jmp 0x14048799f
jmp 0x1404879b3
and qword [rbx], 0
lahf
cmovge ax, r11w
movzx dx, r10b
mov byte [rbx + 8], 1
setl dh
cwd
movsx rax, ax
mov rax, qword [rdi]
movsx cx, bpl
movzx edx, ax
cqo
mov edx, 0x48
movzx rcx, si
movsx r8d, r10w
movsx rcx, bp
movzx r8d, word [rbx + 0xa]
setne ch
movsx ecx, bp
mov rcx, rdi
mov rax, qword [rax + 0x20]
jmp 0x1404879f5
call qword [case.0x140441677.0]
test al, al
jmp 0x140487a02
je 0x140487adc
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x140487a13
je 0x140487a99
mov rax, qword [rcx + 0x38]
cmp qword [rax], 0
jmp 0x140487a26
je 0x140487a72
mov rax, qword [rcx + 0x50]
stc
cmp dil, 0x13
cmp dword [rax], 0
jmp 0x140487a3d
jle 0x140487a72
dec dword [rax]
mov rcx, qword [rcx + 0x38]
mov dx, 0x3bee
xchg dh, dl
movsx eax, si
mov rdx, qword [rcx]
setnp al
lea rax, [rdx + 2]
mov qword [rcx], rax
movsx rax, r8w
nop
movzx eax, word [rdx]
jmp 0x140487a6d
jmp 0x140487a84
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
jmp 0x140487a7e
call qword [case.0x140441677.0]
cmp si, ax
jmp 0x140487a8c
je 0x140487a99
sub al, al
jmp 0x140487aa6
and qword [rbx], 0
cdq
mov al, 1
setnp dh
movsxd rdx, esi
mov byte [rbx + 8], al
cmovno rcx, r14
movsx edx, di
mov rdx, r12
movzx rcx, r14w
jmp 0x140487abc
inc dword [r14]
movzx ecx, sp
mov rcx, rbx
jmp 0x140487aca
call fcn.14046211e
test al, al
jmp 0x140487ad6
je 0x14048791b
mov esi, dword [rbp - 0x60]
mov rdx, r12
mov rcx, rbx
call fcn.14046211e
test al, al
jmp 0x140487af1
jne 0x140487d77
cmp dword [r14], r13d
jge 0x140487d77
cmp byte [rbx + 8], al
jmp 0x140487b08
jne 0x140487bb9
mov rcx, qword [rbx]
jmp 0x140487b16
test rcx, rcx
jmp 0x140487b1e
je 0x140487bad
mov rax, qword [rcx + 0x38]
bts edx, r9d
sub dh, 0xc6
movzx dx, dh
mov rdx, qword [rax]
test r9b, r15b
cmp r13w, r11w
jmp 0x140487b42
test rdx, rdx
jmp 0x140487b4a
je 0x140487b79
mov rax, qword [rcx + 0x50]
jmp 0x140487b5e
cmp dword [rax], 0
jmp 0x140487b66
jle 0x140487b79
movzx eax, word [rdx]
jmp 0x140487b74
jmp 0x140487b86
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
call qword [case.0x140441677.0]
mov ecx, 0xffff
clc
jmp 0x140487b91
cmp cx, ax
jmp 0x140487b99
je 0x140487bad
mov word [rbx + 0xa], ax
jmp 0x140487ba8
jmp 0x140487bb5
and qword [rbx], 0
bsr rcx, r13
mov byte [rbx + 8], 1
mov rax, qword [rdi]
movsx rdx, si
sub r8d, r8d
cmovb dx, bp
movzx edx, word [rbx + 0xa]
mov ch, 0x6d
mov rcx, rdi
jmp 0x140487bd6
mov rax, qword [rax + 0x70]
jmp 0x140487bdf
call qword [case.0x140441677.0]
cmp al, 0x2b
jne 0x140487ca0
mov rcx, qword [rbx]
lea r15, [rbp - 0x2f]
stc
mov byte [rbp - 0x30], al
stc
jmp 0x140487bfe
mov qword [rbp - 0x50], r15
test rcx, rcx
jmp 0x140487c0a
je 0x140487c92
mov rax, qword [rcx + 0x38]
jmp 0x140487c1a
cmp qword [rax], 0
je 0x140487c66
mov rax, qword [rcx + 0x50]
test al, r15b
cmp dword [rax], 0
jmp 0x140487c33
jle 0x140487c66
dec dword [rax]
mov dl, 0xb
mov rcx, qword [rcx + 0x38]
mov rdx, qword [rcx]
mov al, r11b
movsx ax, spl
lea rax, [rdx + 2]
jmp 0x140487c55
mov qword [rcx], rax
bswap ax
setnp al
movzx eax, word [rdx]
jmp 0x140487c78
mov rax, qword [rcx]
jmp 0x140487c6e
mov rax, qword [rax + 0x38]
call qword [case.0x140441677.0]
mov ecx, 0xffff
cmp cx, ax
jmp 0x140487c85
je 0x140487c92
xor al, al
jmp 0x140487c98
and qword [rbx], 0
mov al, 1
mov byte [rbx + 8], al
jmp 0x140487d77
cmp al, 0x2d
jmp 0x140487ca7
jne 0x140487d77
mov rcx, qword [rbx]
rol r15d, 0x13
adc r15b, 0xc2
dec r15b
lea r15, [rbp - 0x2f]
test r12b, al
mov byte [rbp - 0x30], al
cmc
mov qword [rbp - 0x50], r15
test bl, spl
test r12b, 0x63
test rcx, rcx
jmp 0x140487cd9
je 0x140487d67
mov rax, qword [rcx + 0x38]
cmp r15w, 0xffc
cmp qword [rax], 0
je 0x140487d32
mov rax, qword [rcx + 0x50]
cmp dil, 0x5e
cmp dword [rax], 0
jmp 0x140487d03
jle 0x140487d32
dec dword [rax]
mov rcx, qword [rcx + 0x38]
cdq
cqo
mov rdx, qword [rcx]
cdqe
lea rax, [rdx + 2]
jmp 0x140487d20
mov qword [rcx], rax
mov al, 0x23
movzx eax, word [rdx]
jmp 0x140487d2d
jmp 0x140487d44
mov rax, qword [rcx]
jmp 0x140487d3a
mov rax, qword [rax + 0x38]
call qword [case.0x140441677.0]
mov ecx, 0xffff
cmc
clc
cmp cx, ax
jmp 0x140487d53
je 0x140487d67
mov byte [rbx + 8], 0
jmp 0x140487d62
jmp 0x140487d77
and qword [rbx], 0
bswap dx
jmp 0x140487d73
mov byte [rbx + 8], 1
mov rdx, r12
mov rcx, rbx
call fcn.14046211e
test al, al
jne 0x140487f86
mov esi, 1
mov r15d, 0xffff
test al, r10b
stc
cmp dword [r14], r13d
jge 0x140487f74
cmp byte [rbx + 8], 0
jmp 0x140487dab
jne 0x140487e3d
mov rcx, qword [rbx]
cmp r12b, 0x2d
test rcx, rcx
jmp 0x140487dc0
je 0x140487e31
mov rax, qword [rcx + 0x38]
rcl dh, 0x30
mov rdx, qword [rax]
cmc
test rdx, rdx
jmp 0x140487dd9
je 0x140487e02
mov rax, qword [rcx + 0x50]
cmp rbp, r10
stc
cmp dword [rax], 0
jmp 0x140487def
jle 0x140487e02
movzx eax, word [rdx]
jmp 0x140487dfd
jmp 0x140487e19
mov rax, qword [rcx]
jmp 0x140487e0a
mov rax, qword [rax + 0x30]
jmp 0x140487e13
call qword [case.0x140441677.0]
cmp r15w, ax
jmp 0x140487e22
je 0x140487e31
mov word [rbx + 0xa], ax
jmp 0x140487e39
and qword [rbx], 0
xadd rdx, rcx
mov byte [rbx + 8], sil
mov rax, qword [rdi]
ror edx, cl
mov cl, r13b
sub r8d, r8d
setle ch
xchg ch, cl
cwd
movzx edx, word [rbx + 0xa]
xchg ch, ch
movsxd rcx, r15d
setns cl
mov rcx, rdi
jmp 0x140487e63
mov rax, qword [rax + 0x70]
jmp 0x140487e6c
call qword [case.0x140441677.0]
cmp al, 0x30
jmp 0x140487e79
jne 0x140487f74
add dword [r14], esi
movsx ecx, r10w
and cl, r12b
cmp cx, 0x68e3
mov rcx, qword [rbx]
jmp 0x140487e97
test rcx, rcx
je 0x140487f39
mov rax, qword [rcx + 0x38]
jmp 0x140487ea9
cmp qword [rax], 0
jmp 0x140487eb2
je 0x140487f07
mov rax, qword [rcx + 0x50]
test di, 0x7fa5
cmp dword [rax], 0
jmp 0x140487ec9
jle 0x140487f07
dec dword [rax]
lahf
rdtsc
mov rcx, qword [rcx + 0x38]
cwd
xchg dh, al
mov rdx, qword [rcx]
jmp 0x140487ee9
lea rax, [rdx + 2]
jmp 0x140487ef2
mov qword [rcx], rax
movzx rax, ax
cwde
movzx eax, word [rdx]
jmp 0x140487f02
jmp 0x140487f1e
mov rax, qword [rcx]
jmp 0x140487f0f
mov rax, qword [rax + 0x38]
jmp 0x140487f18
call qword [case.0x140441677.0]
cmp r15w, ax
jmp 0x140487f27
je 0x140487f39
sub al, al
jmp 0x140487f34
jmp 0x140487f4b
and qword [rbx], 0
movsx ecx, r9w
mov al, sil
mov ch, 0xc5
movsx rdx, r10w
mov rdx, r12
movzx rcx, r9w
mov byte [rbx + 8], al
movsx cx, sil
mov rcx, rbx
jmp 0x140487f62
call fcn.14046211e
test al, al
jmp 0x140487f6e
je 0x140487d99
mov r15, qword [rbp - 0x50]
btc si, ax
mov esi, dword [rbp - 0x60]
test r8d, 0x69295420
cmp dword [r14], 0
jle 0x140487f9e
mov byte [r15], 0x30
movzx edx, r11w
inc r15
setno dl
mov rdx, r12
setge ch
mov rcx, rbx
jmp 0x140487fac
call fcn.14046211e
test al, al
jmp 0x140487fb8
jne 0x1404881f6
lea rdi, [rbx + 0xa]
sub si, 0x5c85
bt si, 0x68
xor esi, eax
mov rsi, rdi
test cl, 0x88
cmp byte [rbx + 8], 0
jmp 0x140487fdd
jne 0x140488079
mov rcx, qword [rbx]
test rcx, rcx
jmp 0x140487fee
je 0x14048806e
mov rax, qword [rcx + 0x38]
movzx edx, r14w
sub dx, r9w
cdq
mov rdx, qword [rax]
test rdx, rdx
jmp 0x14048800c
je 0x140488031
mov rax, qword [rcx + 0x50]
jmp 0x14048801b
cmp dword [rax], 0
jmp 0x140488023
jle 0x140488031
movzx eax, word [rdx]
jmp 0x140488043
mov rax, qword [rcx]
jmp 0x140488039
mov rax, qword [rax + 0x30]
call qword [case.0x140441677.0]
mov ecx, 0xffff
test sp, 0x44cb
cmp cx, ax
je 0x14048806e
mov word [rsi], ax
mov di, 0x2d6f
movzx di, al
mov rdi, rsi
jmp 0x140488069
jmp 0x140488075
and qword [rbx], 0
movsxd rax, edi
mov byte [rbx + 8], 1
mov rcx, qword [rbp - 0x48]
sub dl, ch
rcl eax, cl
movsx dx, r15b
sub r8d, r8d
bswap dx
movzx edx, word [rdi]
movzx eax, r13w
not ax
mov rax, qword [rcx]
jmp 0x14048809e
mov rax, qword [rax + 0x70]
jmp 0x1404880a7
call qword [case.0x140441677.0]
lea ecx, [rax - 0x30]
cmp cl, 9
jmp 0x1404880b8
ja 0x1404881ed
mov ecx, dword [r14]
cmp spl, 0x8e
cmc
cmp ecx, r13d
jmp 0x1404880ce
jge 0x1404881ed
mov byte [r15], al
cbw
lea rdx, [rbp - 0x11]
bsf ax, si
test cl, 0xae
sbb al, r12b
cmp r15, rdx
lea rax, [r15 + 1]
jmp 0x1404880f3
cmovae rax, r15
test cl, r9b
mov r15, rax
lea eax, [rcx + 1]
mov dword [r14], eax
bt ecx, 0xe4
stc
shr cx, cl
mov rcx, qword [rbx]
test dil, 3
test rcx, rcx
jmp 0x14048811a
je 0x1404881b1
mov rax, qword [rcx + 0x38]
test bx, r9w
cmp qword [rax], 0
jmp 0x140488131
je 0x140488180
mov rax, qword [rcx + 0x50]
test r15, r11
cmp r13w, 0x122f
cmp dword [rax], 0
jmp 0x14048814c
jle 0x140488180
dec dword [rax]
setb dh
rdtsc
movzx rdx, r11w
mov rcx, qword [rcx + 0x38]
mov rdx, qword [rcx]
lea rax, [rdx + 2]
jmp 0x14048816d
mov qword [rcx], rax
setne ah
jmp 0x140488178
movzx eax, word [rdx]
jmp 0x140488197
mov rax, qword [rcx]
jmp 0x140488188
mov rax, qword [rax + 0x38]
jmp 0x140488191
call qword [case.0x140441677.0]
mov ecx, 0xffff
cmp cx, ax
je 0x1404881b1
sub al, al
jmp 0x1404881ac
jmp 0x1404881c1
and qword [rbx], 0
jmp 0x1404881ba
mov al, 1
cqo
cdq
cwd
mov rdx, r12
xchg cx, cx
not cx
movzx rcx, sp
mov byte [rbx + 8], al
not cl
mov rcx, rbx
jmp 0x1404881db
call fcn.14046211e
test al, al
jmp 0x1404881e7
je 0x140487fd4
mov esi, dword [rbp - 0x60]
cdq
inc dh
xor ah, 0xfb
cmp dword [r14], 0
lea rax, [rbp - 0x30]
movsx ecx, r12w
xchg r8w, r9w
lea r9, [rbp - 0x5c]
bswap rdx
movzx rdx, r15w
xchg r8b, cl
mov r8d, 0xa
jmp 0x140488224
cmovne rax, r15
lea rdx, [rbp - 0x40]
jmp 0x140488231
and dword [rbp - 0x5c], 0
movsx rcx, sp
setae cl
movzx cx, r10b
lea rcx, [rbp - 0x30]
jmp 0x14048824a
mov byte [rax], 0
call fcn.1404979cb
mov rdx, r12
mov dil, r9b
mov rcx, rbx
jmp 0x140488260
mov edi, eax
call fcn.14046211e
sub ecx, ecx
test rsp, 0x4d4b14a3
test al, al
lahf
lea eax, [rcx + 1]
jmp 0x14048827b
cmovne ecx, eax
lea rax, [rbp - 0x30]
test r11b, spl
cmp qword [rbp - 0x40], rax
jmp 0x14048828e
je 0x1404882ce
cmp dword [rbp - 0x5c], 0
jmp 0x14048829d
jne 0x1404882ce
cmp edi, dword [rbp - 0x58]
jmp 0x1404882ab
jl 0x1404882ce
cmp esi, edi
jmp 0x1404882b8
jl 0x1404882ce
mov rax, qword [rbp - 0x38]
jmp 0x1404882c7
mov dword [rax], edi
jmp 0x1404882db
or ecx, 2
ror ax, cl
shl ax, 0x91
movsx eax, sp
mov eax, ecx
or cl, ch
mov rcx, qword [rbp - 0x10]
test r8b, 0xcb
xor rcx, rsp
call fcn.1404988af
mov rbx, qword [rsp + 0xd0]
jmp 0x140488300
add rsp, 0x80
pop r15
movzx ebp, bx
pop r14
movsx rbp, bp
not sil
movsxd rsi, r8d
pop r13
bswap rdi
not di
cmova di, si
pop r12
movzx si, r14b
pop rdi
mov ebp, r9d
movsx rbp, bp
cmovbe rsi, r8
pop rsi
pop rbp
jmp 0x14048833e
ret