Function at 0x1402fe1a0
Capabilities:
Execute anti-debugging instructions
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xcf8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xc70], 0xfffffffffffffffe
mov qword [rbp + 0xc68], 0
cmp rcx, 0x1fefa
je 0x1402fe208
mov rsi, rdx
mov r13, rcx
call fcn.1402fed20
rdtsc
mov r15, rax
mov r12, rdx
shl r12, 0x20
test rsi, rsi
je 0x1402fe25a
mov rax, qword [rsi]
cmp rax, 7
jb 0x1402fe24a
inc qword [0x1404d3560]
jmp 0x1402fe286
cmp qword [0x1404d35cc], 0x33c0
jne 0x1402fecb5
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0xa70a6ac1
xor ecx, ecx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140300bf0
add rax, 0x33c0
mov qword [0x1404d35cc], rax
jmp 0x1402fecb5
cmp rax, qword [0x1404d3558]
jbe 0x1402fe25a
mov qword [0x1404d3558], rax
test r13, r13
je 0x1402fe286
mov qword [rbp + 0xc20], rsi
mov ebx, 2
nop dword [rax + rax]
lea esi, [rbx - 2]
movzx eax, byte [r13 + rsi]
test eax, eax
je 0x1402fe290
cmp eax, 0x2e
je 0x1402fe290
inc ebx
jmp 0x1402fe270
xor edi, edi
xor r14d, r14d
jmp 0x1402febb1
xor edi, edi
cmp byte [r13 + rsi], 0x2e
mov r14d, 0
jne 0x1402febb1
mov qword [rbp + 0xc58], 0
mov r8d, 0x400
sub r8, rsi
mov r14, r13
xor r13d, r13d
cmp esi, 0x400
cmovae r8, r13
lea rcx, [rsi + rbp]
add rcx, 0x7d0
xor edx, edx
call fcn.14039e9a0
lea rdi, [rbp + 0x7d0]
mov rcx, rdi
mov qword [rbp + 0xc30], r14
mov rdx, r14
mov r8, rsi
call fcn.14039e2f0
xor ecx, ecx
xor edx, edx
mov r8, rdi
mov r9d, 0x14416bce
call fcn.1403008e0
mov qword [rbp + 0xc58], rax
test rax, rax
jne 0x1402fe403
xor r13d, r13d
lea rcx, [rbp + 0x7d0]
xor edx, edx
call fcn.1402fd970
xor ecx, ecx
test rax, rax
sete cl
lea rdi, [0x1404d34b0]
inc qword [rdi + rcx*8 + 0x58]
mov qword [rbp + 0xc58], rax
test rax, rax
jne 0x1402fe403
xor r13d, r13d
mov r14d, 1
mov ecx, 1
xor edx, edx
xor r8d, r8d
mov r9d, 0x14416bce
call fcn.1403008e0
test rax, rax
je 0x1402fe403
mov qword [rbp + 0xbe8], 0
lea rcx, [rbp - 0x30]
mov qword [rbp + 0xbf0], rcx
xor ecx, ecx
nop dword [rax]
mov edx, r13d
mov r8d, r13d
movsx r9d, byte [rbp + r8 + 0x7d0]
xor r13d, r13d
test r9w, r9w
setne r13b
mov word [rbp + r8*2 - 0x30], r9w
movzx ecx, cl
cmove ecx, r14d
add r13d, edx
test cl, 1
je 0x1402fe390
lea ecx, [r13 + r13]
mov word [rbp + 0xbe8], cx
lea ecx, [r13 + r13 + 2]
mov word [rbp + 0xbea], cx
lea r8, [rbp + 0xbe8]
lea r9, [rbp + 0xc58]
xor ecx, ecx
xor edx, edx
call qword [case.0x14014757d.0]
mov r13, qword [rbp + 0xc58]
xor eax, eax
test r13, r13
sete al
inc qword [rdi + rax*8 + 0x20]
lea rcx, [rbp + 0x7d0]
xor edx, edx
mov r8, rsi
call fcn.14039e9a0
lea eax, [rbx - 1]
mov rcx, qword [0x1404d3600]
movsxd r8, dword [rcx]
add r8, rcx
nop word cs:[rax + rax]
mov r9d, dword [0x1403e3a50]
mov ecx, dword [0x1404f1b5c]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
je 0x1402fe450
mov ecx, dword [0x1403e3a50]
jmp 0x1402fe430
mov dword [rbp + 0xc1c], r9d
mov qword [rbp + 0xbd0], r8
mov rcx, qword [rbp + 0xc30]
movzx r14d, byte [rcx + rax]
xor esi, esi
mov ecx, 0
cmp r14b, 0x23
jne 0x1402fe490
mov ecx, ebx
add rcx, qword [rbp + 0xc30]
mov edx, 0xea944db6
call fcn.14027c960
mov esi, eax
mov cl, 1
mov eax, ebx
mov qword [rbp + 0xbf8], rcx
mov rcx, qword [rbp + 0xc20]
test rcx, rcx
je 0x1402fe4b5
cmp qword [rcx], 7
jb 0x1402fe4b5
inc qword [0x1404d3560]
jmp 0x1402feb62
mov rdi, qword [rbp + 0xc58]
test rdi, rdi
je 0x1402feb62
movsxd rdx, dword [rdi + 0x3c]
mov ecx, dword [rdi + rdx + 0x88]
test rcx, rcx
je 0x1402feb62
mov r8d, dword [rdi + rdx + 0x8c]
test r8, r8
je 0x1402feb62
cmp dword [rdi + rdx + 0x8c], 0x28
jb 0x1402feb62
lea r9, [rdi + rcx]
add r8, r9
mov qword [rbp + 0xc10], r8
mov edx, dword [r9 + 0x1c]
add rdx, rdi
mov qword [rbp + 0xc08], rdx
mov edx, dword [r9 + 0x14]
cmp r14b, 0x23
jne 0x1402fe5bc
mov r8d, dword [r9 + 0x10]
inc qword [0x1404d34e0]
test edx, edx
je 0x1402feb62
mov r14b, 1
mov eax, esi
sub eax, r8d
jb 0x1402feb65
cmp eax, edx
jae 0x1402feb65
mov edx, eax
mov eax, dword [0x1404ee6f4]
mov r8, qword [rbp + 0xc08]
add eax, dword [r8 + rdx*4]
je 0x1402feb62
mov ebx, eax
add rbx, rdi
cmp eax, ecx
jb 0x1402fea40
cmp rbx, qword [rbp + 0xc10]
ja 0x1402fea40
mov rcx, rbx
mov rdx, qword [rbp + 0xc30]
call fcn.1402fd820
test al, al
je 0x1402fea4c
mov rcx, rbx
mov rdx, rdi
call fcn.1402fd970
test rax, rax
je 0x1402fea93
mov qword [rbp + 0xc58], rax
lea rax, [0x1404d3508]
jmp 0x1402fea9a
mov r8d, dword [r9 + 0x20]
mov ecx, dword [r9 + 0x24]
mov r10d, dword [r9 + 0x18]
inc qword [0x1404d34e8]
xor r14d, r14d
test edx, edx
je 0x1402feb65
add r8, rdi
add rcx, rdi
test r10d, r10d
je 0x1402feb65
mov qword [rbp + 0xbd8], rcx
mov qword [rbp + 0xbe0], r9
je 0x1402feb65
mov eax, eax
add rax, qword [rbp + 0xc30]
mov qword [rbp + 0xc28], rax
xor eax, eax
mov qword [rbp + 0xc40], r15
mov qword [rbp + 0xc48], r12
mov qword [rbp + 0xc50], r13
mov qword [rbp + 0xc38], r8
mov dword [rbp + 0xc64], r10d
jmp 0x1402fe677
mov qword [rbp + 0xc68], 0
mov rax, qword [rbp + 0xc00]
inc eax
xor r14d, r14d
mov r10d, dword [rbp + 0xc64]
cmp eax, r10d
mov r15, qword [rbp + 0xc40]
mov r12, qword [rbp + 0xc48]
mov r13, qword [rbp + 0xc50]
mov r8, qword [rbp + 0xc38]
jae 0x1402feb65
mov qword [rbp + 0xc00], rax
mov eax, eax
mov edx, dword [r8 + rax*4]
test rdx, rdx
je 0x1402fe63f
mov rsi, qword [rbp + 0xc58]
mov rbx, qword [rbp + 0xbd0]
mov r14d, dword [rbp + 0xc1c]
mov r8d, dword [0x1404d3590]
lea ecx, [r8 + 1]
mov dword [0x1404d3590], ecx
mov r9d, r8d
not r9d
xor r8d, ecx
not ecx
and ecx, r9d
or ecx, r8d
xor ecx, 0xffffffff
je 0x1402fe6d0
xor r8d, r8d
jmp 0x1402fe751
mov r8d, dword [0x1404f1b5c]
lea r9d, [r8 - 1]
imul r9d, r8d
test r9b, 1
jne 0x1402fe6d0
xor r9d, r9d
mov r8d, 0
test r14d, r14d
jle 0x1402fe751
xor r8d, r8d
nop word cs:[rax + rax]
movsxd r10, r9d
mov r11d, dword [0x1404f1b60]
nop word [rax + rax]
mov r11d, dword [0x1404f1b60]
cmp r11d, 0x46
jg 0x1402fe710
add r10, rbx
movzx r10d, word [r10]
mov r11d, dword [0x1404f1b60]
nop dword [rax + rax]
mov r11d, dword [0x1404f1b5c]
lea edi, [r11 - 1]
imul edi, r11d
test dil, 1
jne 0x1402fe730
xor r8d, r10d
add r9d, 2
cmp r9d, r14d
jl 0x1402fe700
add rdx, rsi
xor r9d, r9d
mov r14, qword [rbp + 0xc28]
nop
movzx r10d, byte [rdx + r9]
movzx r11d, byte [r14 + r9]
cmp r10b, r11b
sete bl
test r10b, r10b
sete dil
cmp bl, dil
je 0x1402fe784
inc r9
cmp r10b, r11b
je 0x1402fe760
cmp r10b, r11b
jne 0x1402fe63f
mov rdx, qword [rbp + 0xbd8]
movzx eax, word [rdx + rax*2]
mov rdx, qword [rbp + 0xc08]
mov edi, dword [rdx + rax*4]
test rdi, rdi
je 0x1402fe63f
add rdi, rsi
movzx eax, word [0x1403e34e0]
cmp ecx, 1
mov ecx, 0
sbb ecx, ecx
sub eax, r8d
mov rdx, qword [rbp + 0xc30]
nop dword [rax]
mov r9d, dword [0x1404f1b5c]
lea r8d, [r9 - 1]
imul r8d, r9d
test r8b, 1
je 0x1402fe7f2
mov r8d, dword [0x1404f1b60]
cmp r8d, 0x60
jge 0x1402fe7d0
mov r8d, eax
not r8d
movsx ecx, cx
xor eax, ecx
not ecx
and ecx, r8d
or ecx, eax
not ecx
add word [0x1404f1b68], cx
cmp rdi, qword [rbp + 0xbe0]
mov rax, qword [rbp + 0xc10]
jb 0x1402fe8b9
cmp rdi, rax
ja 0x1402fe8b9
mov rcx, rdi
call fcn.1402fd820
test al, al
je 0x1402fe898
mov rcx, rdi
mov rdx, rsi
call fcn.1402fd970
test rax, rax
je 0x1402fe906
mov qword [rbp + 0xc58], rax
mov rcx, qword [0x1404d3508]
mov rdx, rcx
xor rdx, 1
and ecx, 1
lea rcx, [rdx + rcx*2]
mov qword [0x1404d3508], rcx
mov rcx, rax
mov rdx, qword [rbp + 0xc28]
call fcn.1402fefa0
mov qword [rbp + 0xc68], rax
inc qword [0x1404d34b8]
test rax, rax
je 0x1402fe91f
jmp 0x1402fea76
inc qword [0x1404d34b0]
mov rdx, qword [rbp + 0xc20]
test rdx, rdx
je 0x1402fe8ae
inc qword [rdx]
mov rcx, rdi
call fcn.1402fe1a0
mov rdi, rax
mov qword [rbp + 0xc68], rdi
mov r15, qword [rbp + 0xc40]
mov r12, qword [rbp + 0xc48]
mov r13, qword [rbp + 0xc50]
mov r8, qword [rbp + 0xc38]
mov r10d, dword [rbp + 0xc64]
xor r14d, r14d
test rdi, rdi
jne 0x1402feb65
mov rax, qword [rbp + 0xc00]
inc eax
cmp eax, r10d
jb 0x1402fe677
jmp 0x1402feb65
inc qword [0x1404d3510]
mov qword [rbp + 0xc68], 0
inc qword [0x1404d34b8]
call fcn.14030a9c0
test rax, rax
je 0x1402fe634
mov qword [rbp - 0x30], 0
xor ecx, ecx
xor edx, edx
mov r9, qword [rbp + 0xc28]
mov r10d, 1
mov r8, rcx
xor ecx, ecx
cmp byte [r9 + r8], 0
setne cl
movzx edx, dl
cmove edx, r10d
add rcx, r8
test dl, 1
je 0x1402fe946
add cx, word [0x1404f1b68]
mov word [rbp - 0x30], cx
inc ecx
mov word [rbp - 0x2e], cx
mov qword [rbp - 0x28], r9
mov rcx, qword [rbp + 0xc58]
lea rdx, [rbp - 0x30]
xor r8d, r8d
lea r9, [rbp + 0xc68]
call qword [case.0x14014757d.0]
cmp eax, 0xc0000142
je 0x1402fe9a0
cmp eax, 0xc0000138
jne 0x1402fe9ec
mov qword [rbp + 0xc68], 0
inc qword [0x1404d3518]
mov r15, qword [rbp + 0xc40]
mov r12, qword [rbp + 0xc48]
mov r13, qword [rbp + 0xc50]
mov r8, qword [rbp + 0xc38]
mov r10d, dword [rbp + 0xc64]
inc qword [0x1404d3550]
lea rax, [0x1404d3520]
lea rcx, [0x1404d3530]
jmp 0x1402fea2e
inc qword [0x1404d3518]
cmp qword [rbp + 0xc68], 0
lea rax, [0x1404d3538]
lea rcx, [0x1404d3548]
mov r15, qword [rbp + 0xc40]
mov r12, qword [rbp + 0xc48]
mov r13, qword [rbp + 0xc50]
mov r8, qword [rbp + 0xc38]
mov r10d, dword [rbp + 0xc64]
je 0x1402fe9d5
inc qword [rax]
inc qword [rcx]
mov rdi, qword [rbp + 0xc68]
jmp 0x1402fe8e3
mov qword [rbp + 0xc68], rbx
jmp 0x1402feb62
inc qword [0x1404d34b0]
mov rdx, qword [rbp + 0xc20]
test rdx, rdx
je 0x1402fea62
inc qword [rdx]
mov rcx, rbx
call fcn.1402fe1a0
mov qword [rbp + 0xc68], rax
jmp 0x1402feb62
xor r14d, r14d
mov r15, qword [rbp + 0xc40]
mov r12, qword [rbp + 0xc48]
mov r13, qword [rbp + 0xc50]
jmp 0x1402feb65
lea rax, [0x1404d3510]
inc qword [rax]
mov qword [rbp + 0xc68], 0
inc qword [0x1404d34b8]
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0xb9607c76
xor ecx, ecx
mov edx, 1
xor r8d, r8d
xor r9d, r9d
call fcn.140300db0
test rax, rax
je 0x1402feb0a
inc qword [0x1404d3518]
mov rcx, qword [rbp + 0xc58]
lea r9, [rbp + 0xc68]
xor edx, edx
mov r8d, esi
call qword [case.0x14014757d.0]
cmp eax, 0xc0000138
jne 0x1402feb17
mov qword [rbp + 0xc68], 0
jmp 0x1402feb4d
mov qword [rbp + 0xc68], 0
jmp 0x1402feb62
cmp qword [rbp + 0xc68], 0
je 0x1402feb4d
inc qword [0x1404d3550]
inc qword [0x1404d3538]
mov rax, qword [0x1404d3540]
mov rcx, rax
xor rcx, 1
and eax, 1
lea rax, [rcx + rax*2]
mov qword [0x1404d3540], rax
jmp 0x1402feb62
inc qword [0x1404d3550]
inc qword [0x1404d3520]
inc qword [0x1404d3528]
xor r14d, r14d
mov rax, qword [rbp + 0xc68]
test rax, rax
jne 0x1402fecd0
test r13, r13
mov rdi, qword [rbp + 0xbf8]
je 0x1402febb8
mov dword [rsp + 0x28], 0x8e6a4c0c
mov dword [rsp + 0x20], 1
mov ecx, 1
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140300db0
test rax, rax
je 0x1402febb1
mov rcx, r13
call qword [case.0x14014757d.0]
mov rax, qword [rbp + 0xc68]
or r15, r12
test rax, rax
je 0x1402febc9
lea rax, [0x1404d34c0]
jmp 0x1402febe7
lea rax, [0x1404d34b0]
inc qword [0x1404d34c8]
xor ecx, ecx
test dil, dil
sete cl
lea rax, [rax + rcx*8]
add rax, 0x40
inc qword [rax]
rdtsc
shl rdx, 0x20
or rdx, rax
sub rdx, r15
cmp qword [0x1404d3580], 0
je 0x1402fec0c
mov rax, qword [0x1404d3580]
cmp rax, rdx
jae 0x1402fec13
mov qword [0x1404d3580], rdx
cmp qword [rbp + 0xc68], 0
je 0x1402fec3b
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xfa42d69f
xor ecx, ecx
xor edx, edx
xor r8d, r8d
jmp 0x1402fecad
lea eax, [rdi - 2]
test al, dil
sete cl
xor r14b, 1
xorps xmm0, xmm0
or r14b, cl
jne 0x1402fec6e
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xfa42d69f
xor ecx, ecx
xor edx, edx
mov r8d, 0x4750412d
jmp 0x1402fecad
test al, dil
je 0x1402fec91
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xfa42d69f
xor ecx, ecx
xor edx, edx
mov r8d, 0xc0000138
jmp 0x1402fecad
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xfa42d69f
xor ecx, ecx
xor edx, edx
mov r8d, 0xc0000139
xor r9d, r9d
call fcn.140300b30
mov rax, qword [rbp + 0xc68]
add rsp, 0xcf8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rdi, qword [rbp + 0xbf8]
jmp 0x1402febb8