Function at 0x1801d5930
Capabilities:
Execute anti-debugging instructions

Disassembly:
push rbx
push rbp
push rdi
sub rsp, 0x70
mov rbp, r8
mov rbx, rdx
mov rdi, rcx
test rdx, rdx
je 0x1801d5c1a
mov rcx, qword [rdx + 0x8080]
call sym.VBoxVMM.dll_VMMGetCpu
cmp rbx, rax
jne 0x1801d5c1a
cmp byte [rdi + 0x50], 3
jne 0x1801d5c0d
cmp dword [rdi + 0x3c], 1
mov qword [rsp + 0xa8], r15
jbe 0x1801d597d
call qword [sym.imp.VBoxRT.dll_RTThreadYield]
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0xa0], r14
mov dword [rsp + 0x98], 0x2000
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], rbp
rdtsc
mov rcx, qword [rdi + 0x119718]
lea r8, [rsp + 0x98]
shl rdx, 0x20
mov r9d, 1
or rax, rdx
xor edx, edx
mov r15, rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rax, qword [0x1805985d8]
call qword [case.0x180097796.0]
mov ebx, eax
test eax, eax
js 0x1801d5b49
mov ebx, 1
cmp dword [rdi + 0x3c], ebx
jbe 0x1801d5a54
nop dword [rax]
nop dword [rax + rax]
rdtsc
shl rdx, 0x20
lea r8, [rsp + 0x98]
or rax, rdx
mov r9d, 1
mov rsi, rax
mov edx, ebx
lea rax, [rsp + 0x60]
sub rsi, r15
mov qword [rsp + 0x20], rax
mov rax, qword [0x1805985d8]
lea rcx, [rsi + rbp]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rdi + 0x119718]
call qword [case.0x180097796.0]
mov r14d, eax
test eax, eax
js 0x1801d5a76
inc ebx
cmp ebx, dword [rdi + 0x3c]
jb 0x1801d5a00
xor eax, eax
mov r14, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x90]
mov r15, qword [rsp + 0xa8]
add rsp, 0x70
pop rdi
pop rbp
pop rbx
ret
mov ecx, 0x1550010
call qword [sym.imp.VBoxRT.dll_RTLogRelGetDefaultInstanceEx]
test rax, rax
je 0x1801d5acd
lea rcx, str.SUCCEEDED_hrc_
mov edx, 0x10
mov qword [rsp + 0x38], rcx
lea r9, str.AssertLogRel__s__d___s:__s_n
lea rcx, str.int___cdecl_NEMHCResumeCpuTickOnAll_struct_VM__struct_VMCPU__unsigned___int64_
mov r8d, 0x155
mov qword [rsp + 0x30], rcx
lea rcx, str.C:DevelAntidetect4PersonalVirtualBox_srcVBoxVMMVMMR3.._VMMAll_NEMAllNativeTemplate_win.cpp.h
mov dword [rsp + 0x28], 0x470
mov qword [rsp + 0x20], rcx
mov rcx, rax
call qword [sym.imp.VBoxRT.dll_RTLogLoggerEx]
mov ecx, 0x1550010
call qword [sym.imp.VBoxRT.dll_RTLogRelGetDefaultInstanceEx]
test rax, rax
je 0x1801d5c03
mov rcx, qword gs:[0x30]
mov edx, 0x10
mov r9, qword gs:[0x30]
mov r8d, 0x155
mov ecx, dword [rcx + 0x68]
mov dword [rsp + 0x50], ecx
mov ecx, dword [r9 + 0x1250]
lea r9, str.WHvSetVirtualProcessorRegisters__p__0_tsc_2__RX64___RX64______Rhrc__Last_x__u__n
mov dword [rsp + 0x48], ecx
mov rcx, qword [rdi + 0x119718]
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rcx
mov rcx, rax
call qword [sym.imp.VBoxRT.dll_RTLogLoggerEx]
mov eax, 0xffffe565
jmp 0x1801d5a56
mov ecx, 0x1550010
call qword [sym.imp.VBoxRT.dll_RTLogRelGetDefaultInstanceEx]
test rax, rax
je 0x1801d5ba0
lea rcx, str.SUCCEEDED_hrc_
mov edx, 0x10
mov qword [rsp + 0x38], rcx
lea r9, str.AssertLogRel__s__d___s:__s_n
lea rcx, str.int___cdecl_NEMHCResumeCpuTickOnAll_struct_VM__struct_VMCPU__unsigned___int64_
mov r8d, 0x155
mov qword [rsp + 0x30], rcx
lea rcx, str.C:DevelAntidetect4PersonalVirtualBox_srcVBoxVMMVMMR3.._VMMAll_NEMAllNativeTemplate_win.cpp.h
mov dword [rsp + 0x28], 0x463
mov qword [rsp + 0x20], rcx
mov rcx, rax
call qword [sym.imp.VBoxRT.dll_RTLogLoggerEx]
mov ecx, 0x1550010
call qword [sym.imp.VBoxRT.dll_RTLogRelGetDefaultInstanceEx]
test rax, rax
je 0x1801d5c03
mov rcx, qword gs:[0x30]
lea r9, str.WHvSetVirtualProcessorRegisters__p__0_tsc_2__RX64______Rhrc__Last_x__u__n
mov rdx, qword gs:[0x30]
mov r8d, 0x155
mov ecx, dword [rcx + 0x68]
mov dword [rsp + 0x40], ecx
mov ecx, dword [rdx + 0x1250]
mov edx, 0x10
mov dword [rsp + 0x38], ecx
mov rcx, qword [rdi + 0x119718]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rcx
mov rcx, rax
call qword [sym.imp.VBoxRT.dll_RTLogLoggerEx]
mov eax, 0xffffe565
jmp 0x1801d5a56
mov eax, 0xffffe50d
add rsp, 0x70
pop rdi
pop rbp
pop rbx
ret
mov eax, 0xfffff88e
add rsp, 0x70
pop rdi
pop rbp
pop rbx
ret