Function at 0x18006ff10
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov edi, r8d
mov rbx, rdx
mov rsi, rcx
rdtsc
mov r9d, dword [rcx + 4]
shl rdx, 0x20
or rax, rdx
mov r13, rax
test r9d, 0x81d00
jne 0x18006ff54
mov rcx, qword [rbx]
bt rcx, 0xa
jae 0x18007011e
mov eax, dword [rsi + 4]
bt eax, 0xc
jae 0x18006ffac
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x18006ff82
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x18006ff82
test edi, edi
cmovns edi, eax
mov rdx, rbx
mov rcx, rsi
call fcn.1800e2a10
test eax, eax
je 0x18006ff9d
test edi, edi
js 0x18006ff9d
je 0x18006ff9b
cmp eax, edi
jge 0x18006ff9d
mov edi, eax
lea eax, [rdi - 0x455]
cmp eax, 2
jbe 0x180070a43
mov eax, dword [rsi + 4]
bt eax, 0xa
jae 0x18007004c
mov rcx, rsi
call sym.VBoxVMM.dll_VMR3GetState
sub eax, 0x19
je 0x1800709a3
sub eax, 1
je 0x1800709a3
sub eax, 1
je 0x1800709a3
sub eax, 1
je 0x1800709a3
cmp eax, 2
jne 0x18007004c
rdtsc
mov rcx, qword [rbx + 0x32240]
shl rdx, 0x20
or rdx, rax
sub rdx, r13
add rcx, rdx
mov qword [rbx + 0x32240], rcx
mov rcx, qword [rbx + 0x32238]
inc rcx
mov qword [rbx + 0x32238], rcx
mov rcx, qword [rbx + 0x32248]
cmp rcx, rdx
jae 0x18007002b
mov qword [rbx + 0x32248], rdx
mov rax, qword [rbx + 0x32250]
cmp rax, rdx
jbe 0x180070999
mov qword [rbx + 0x32250], rdx
mov eax, 0x44c
jmp 0x180070a99
mov eax, dword [rsi + 4]
bt eax, 8
jb 0x18007005f
mov rax, qword [rbx]
bt rax, 0xa
jae 0x1800700a7
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x180070084
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x180070084
test edi, edi
cmovns edi, eax
mov rdx, rbx
mov rcx, rsi
call fcn.18004c470
cmp edi, 0x450
je 0x1800700a5
test eax, eax
je 0x1800700a7
test edi, edi
js 0x1800700a7
je 0x1800700a5
cmp eax, edi
jge 0x1800700a7
mov edi, eax
lock btr dword [rsi + 4], 0xb
setb al
test al, al
je 0x1800700f1
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x1800700d9
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x1800700d9
test edi, edi
cmovns edi, eax
mov rcx, rsi
call fcn.1800d9a50
test eax, eax
je 0x1800700f1
test edi, edi
js 0x1800700f1
je 0x1800700ef
cmp eax, edi
jge 0x1800700f1
mov edi, eax
mov eax, dword [rsi + 4]
bt eax, 0x13
jae 0x18007011e
mov rcx, rsi
call sym.VBoxVMM.dll_PGMR3PhysAllocateHandyPages
test eax, eax
je 0x180070112
test edi, edi
js 0x180070112
je 0x180070110
cmp eax, edi
jge 0x180070112
mov edi, eax
cmp edi, 0x45a
je 0x180070a2a
mov eax, dword [rsi + 4]
test eax, 0x1218
je 0x180070242
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070242
mov eax, dword [rsi + 4]
test al, 8
je 0x180070151
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070151
mov rcx, rsi
call sym.VBoxVMM.dll_PDMR3QueueFlushAll
mov eax, dword [rsi + 4]
test al, 0x10
je 0x180070169
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070169
mov rcx, rsi
call sym.VBoxVMM.dll_PDMR3DmaRun
mov eax, dword [rsi + 4]
bt eax, 0xc
jae 0x1800701c1
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x180070197
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x180070197
test edi, edi
cmovns edi, eax
mov rdx, rbx
mov rcx, rsi
call fcn.1800e2a10
test eax, eax
je 0x1800701b2
test edi, edi
js 0x1800701b2
je 0x1800701b0
cmp eax, edi
jge 0x1800701b2
mov edi, eax
lea eax, [rdi - 0x455]
cmp eax, 2
jbe 0x180070a43
mov eax, dword [rsi + 4]
bt eax, 9
jae 0x180070242
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070242
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x1800701f8
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x1800701f8
test edi, edi
cmovns edi, eax
mov rcx, qword [rsi + 0x18]
xor r8d, r8d
mov edx, 0xfffffff4
call fcn.1800dd8c0
mov r8d, eax
cmp eax, 0x455
je 0x180070480
cmp eax, 0x44c
je 0x180070480
test eax, eax
je 0x180070233
test edi, edi
js 0x180070233
je 0x180070230
cmp eax, edi
jge 0x180070233
mov edi, r8d
lea eax, [rdi - 0x455]
cmp eax, 2
jbe 0x180070a43
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x1800702d7
mov rax, qword [rbx]
bt rax, 9
jae 0x1800702d7
mov rax, qword [rbx]
bt rax, 9
jae 0x1800702d7
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x180070288
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x180070288
test edi, edi
cmovns edi, eax
mov edx, dword [rbx + 0x80b8]
xor r8d, r8d
mov rcx, qword [rsi + 0x18]
call fcn.1800dd8c0
mov r8d, eax
add eax, 0xfffffbb4
cmp eax, 0xb
ja 0x1800702b5
mov ecx, 0xa01
bt ecx, eax
jb 0x180070480
test r8d, r8d
je 0x1800702c8
test edi, edi
js 0x1800702c8
je 0x1800702c5
cmp r8d, edi
jge 0x1800702c8
mov edi, r8d
lea eax, [rdi - 0x455]
cmp eax, 2
jbe 0x180070a43
mov eax, dword [rsi + 4]
test eax, 0x800c1504
jne 0x1800702f7
mov rax, qword [rbx]
movabs rcx, 0xf80030d07
test rcx, rax
je 0x180070a43
mov rax, qword [rbx]
test al, 4
je 0x18007030f
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x18007030f
mov rcx, rsi
call sym.VBoxVMM.dll_TMR3TimerQueuesDo
lock btr dword [rbx], 8
setb al
test al, al
je 0x180070323
mov rcx, rbx
call sym.VBoxVMM.dll_APICUpdatePendingInterrupts
test dword [rbx + 0x19148], 0xc00000
je 0x180070363
mov rax, qword [rbx + 0x19140]
cmp qword [rbx + 0x19158], rax
jne 0x180070363
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070363
mov rcx, rbx
call sym.VBoxVMM.dll_CPUMGetGuestRIP
cmp rax, qword [rbx + 0x19158]
je 0x180070363
and dword [rbx + 0x19148], 0xff3fffff
mov rax, qword [rbx]
movabs rcx, 0x380000000
movabs rbp, 0x100000000
test rcx, rax
je 0x1800703f1
mov rax, qword [rbx]
bt rax, 0x21
jae 0x1800703a8
mov rcx, rbx
call fcn.180196350
cmp eax, 0xfc3
je 0x1800703a8
test eax, eax
je 0x1800703a8
test edi, edi
js 0x1800703a8
je 0x1800703a6
cmp eax, edi
jge 0x1800703a8
mov edi, eax
mov rax, qword [rbx]
test rbp, rax
je 0x1800703cf
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x25]
call fcn.180196290
test eax, eax
je 0x1800703cf
test edi, edi
js 0x1800703cf
je 0x1800703cd
cmp eax, edi
jge 0x1800703cf
mov edi, eax
mov rax, qword [rbx]
bt rax, 0x1f
jae 0x1800703f1
mov rcx, rbx
call fcn.180196530
test eax, eax
je 0x1800703f1
test edi, edi
js 0x1800703f1
je 0x1800703ef
cmp eax, edi
jge 0x1800703f1
mov edi, eax
mov rax, qword [rbx]
xor r12b, r12b
movabs rcx, 0xc0000080b
test rcx, rax
je 0x18007082c
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x18007082c
test edi, edi
je 0x180070427
cmp edi, 0x45c
jl 0x18007082c
test dword [rbx + 0x19148], 0xc00000
je 0x180070447
mov rax, qword [rbx + 0x19140]
cmp qword [rbx + 0x19158], rax
je 0x18007082c
mov rcx, rbx
call sym.VBoxVMM.dll_TRPMHasTrap
test al, al
jne 0x18007082c
cmp byte [rbx + 0x2a134], r12b
je 0x18007082c
mov ecx, dword [rbx + 0x2a130]
test ecx, ecx
je 0x180070512
cmp ecx, 1
jne 0x1800704dc
movzx eax, byte [rbx + 0x2a02d]
jmp 0x1800704e9
rdtsc
mov rcx, qword [rbx + 0x32240]
shl rdx, 0x20
or rdx, rax
sub rdx, r13
add rcx, rdx
mov qword [rbx + 0x32240], rcx
mov rcx, qword [rbx + 0x32238]
inc rcx
mov qword [rbx + 0x32238], rcx
mov rcx, qword [rbx + 0x32248]
cmp rcx, rdx
jae 0x1800704c1
mov qword [rbx + 0x32248], rdx
mov rax, qword [rbx + 0x32250]
cmp rax, rdx
jbe 0x1800704d4
mov qword [rbx + 0x32250], rdx
mov eax, r8d
jmp 0x180070a99
mov rax, qword [rbx + 0x1d00c]
shr rax, 0x20
and al, 1
test al, al
je 0x180070512
cmp ecx, 1
je 0x180070508
xor r14b, r14b
cmp ecx, 2
jne 0x180070515
test qword [rbx + 0x1d00c], rbp
je 0x180070515
mov bpl, 1
jmp 0x180070518
movzx r14d, byte [rbx + 0x2a02d]
jmp 0x180070515
xor r14b, r14b
xor bpl, bpl
mov rax, qword [rbx]
bt rax, 0x23
jae 0x180070535
cmp byte [rbx + 0x2a04a], r12b
jne 0x180070535
mov edx, 8
jmp 0x18007061d
mov rax, qword [rbx]
test al, 8
je 0x180070601
test byte [rbx + 0x1914b], 1
jne 0x180070601
test r14b, r14b
je 0x18007056c
mov eax, dword [rbx + 0x1d1d0]
shr eax, 3
test al, 1
je 0x18007056c
mov rcx, rbx
call fcn.1801966f0
jmp 0x180070628
test bpl, bpl
je 0x1800705a1
mov r8d, 2
lea rdx, [rbx + 0x19000]
mov rcx, rbx
call fcn.18006df00
test al, al
je 0x1800705a1
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x61]
call fcn.18018b350
jmp 0x180070628
xor r8d, r8d
mov dl, 2
mov rcx, rbx
call sym.VBoxVMM.dll_TRPMAssertTrap
mov ecx, eax
test eax, eax
jne 0x180070820
lea edx, [rax + 3]
mov rcx, rbx
call fcn.180203fdb
cmp byte [rsi + 0x119600], 0
mov r12b, 1
jne 0x18007081b
mov rcx, rbx
call fcn.1800eb720
test al, al
je 0x1800705e9
mov ecx, 0x45c
jmp 0x180070820
cmp byte [rsi + 0x50], 3
mov ecx, 0x45e
mov eax, 0x45b
cmove eax, ecx
mov ecx, eax
jmp 0x180070820
mov rax, qword [rbx]
bt rax, 0x22
jae 0x180070649
mov eax, dword [rbx + 0x19148]
shr eax, 9
test al, 1
je 0x180070649
mov edx, 7
xor r8d, r8d
mov rcx, rbx
call fcn.180196290
test eax, eax
je 0x18007082c
test edi, edi
js 0x18007082c
je 0x180070642
cmp eax, edi
jge 0x18007082c
mov edi, eax
jmp 0x18007082c
test r14b, r14b
je 0x180070669
mov rax, qword [rbx]
bt rax, 0xb
jae 0x180070669
mov eax, dword [rbx + 0x19148]
shr eax, 9
test al, 1
jne 0x18007082c
mov rax, qword [rbx]
test al, 3
je 0x180070765
mov rcx, rbx
call fcn.1800f26f0
test al, al
je 0x180070765
test r14b, r14b
je 0x1800706aa
test byte [rbx + 0x1d1d0], 1
je 0x180070701
mov r8b, 1
xor edx, edx
mov rcx, rbx
call fcn.180196410
mov ecx, eax
cmp eax, 0xfc3
je 0x180070701
jmp 0x1800706fc
test bpl, bpl
je 0x180070701
cmp dword [rbx + 0x2a130], 2
jne 0x180070701
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.1800f7870
test al, al
jne 0x1800706d7
mov rax, qword [rbx + 0x1d00c]
mov qword [rsp + 0x20], rax
jmp 0x1800706dc
mov rax, qword [rsp + 0x20]
and al, 1
je 0x180070701
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x60]
call fcn.18018b350
mov ecx, eax
test eax, eax
js 0x1800707ea
cmp ecx, 0x5f
jne 0x180070758
mov eax, dword [rbx + 0x19150]
mov edx, 0x9ffffffc
mov byte [rsp + 0x70], r12b
test rdx, rax
je 0x180070726
mov rcx, rbx
call fcn.1800f2440
test eax, eax
js 0x180070a99
lea r9, [rsp + 0x70]
mov r8d, 1
mov rdx, rbx
mov rcx, rsi
call sym.VBoxVMM.dll_TRPMR3InjectEvent
cmp byte [rsi + 0x119600], 0
mov ecx, eax
mov r12b, 1
je 0x180070758
add eax, 0xfffffba5
cmp eax, 2
jbe 0x18007081b
test ecx, ecx
je 0x18007082c
jmp 0x180070820
test bpl, bpl
je 0x18007082c
mov rax, qword [rbx]
bt rax, 0xb
jae 0x18007082c
lea rdx, [rbx + 0x19000]
mov rcx, rbx
call fcn.1800f2800
test al, al
je 0x18007082c
cmp dword [rbx + 0x2a130], 2
jne 0x1800707f1
lea rdx, [rsp + 0x28]
mov rcx, rbx
call fcn.1800f7870
test al, al
jne 0x1800707bb
mov rax, qword [rbx + 0x1d00c]
mov qword [rsp + 0x28], rax
jmp 0x1800707c0
mov rax, qword [rsp + 0x28]
shr al, 4
and al, 1
je 0x1800707f1
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x64]
call fcn.18018b350
mov ecx, eax
test eax, eax
js 0x1800707ea
cmp eax, 0x5f
je 0x1800707f1
test eax, eax
je 0x18007082c
jmp 0x180070820
mov ecx, 0x483
jmp 0x180070820
mov edx, 0xb
mov rcx, rbx
call fcn.180203fdb
lea rcx, [rbx + 0x19000]
call fcn.1800f2260
mov r8d, 1
movzx edx, al
mov rcx, rbx
call sym.VBoxVMM.dll_TRPMAssertTrap
mov ecx, 0x45e
test edi, edi
js 0x18007082c
je 0x18007082a
cmp ecx, edi
jge 0x18007082c
mov edi, ecx
mov eax, dword [rsi + 4]
bt eax, 0x12
jae 0x180070856
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x180070856
mov rcx, rsi
call sym.VBoxVMM.dll_PGMR3PhysAllocateHandyPages
test eax, eax
je 0x180070856
test edi, edi
js 0x180070856
je 0x180070854
cmp eax, edi
jge 0x180070856
mov edi, eax
mov eax, dword [rsi + 4]
bt eax, 8
jb 0x180070869
mov rax, qword [rbx]
bt rax, 0xa
jae 0x1800708b2
mov eax, dword [rsi + 4]
bt eax, 0x13
jb 0x1800708b2
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x180070897
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x180070897
test edi, edi
cmovns edi, eax
mov rdx, rbx
mov rcx, rsi
call fcn.18004c470
test eax, eax
je 0x1800708b2
test edi, edi
js 0x1800708b2
je 0x1800708b0
cmp eax, edi
jge 0x1800708b2
mov edi, eax
test r12b, r12b
jne 0x180070a01
mov eax, dword [rsi + 4]
bt eax, 0xc
jae 0x180070913
test qword [rbx + 0x19150], 0xfffffffffffffffc
je 0x1800708e9
mov rdx, 0xfffffffffffffffc
mov rcx, rbx
call fcn.1800f2440
test eax, eax
jns 0x1800708e9
test edi, edi
cmovns edi, eax
mov rdx, rbx
mov rcx, rsi
call fcn.1800e2a10
test eax, eax
je 0x180070904
test edi, edi
js 0x180070904
je 0x180070902
cmp eax, edi
jge 0x180070904
mov edi, eax
lea eax, [rdi - 0x455]
cmp eax, 2
jbe 0x180070a43
mov eax, dword [rsi + 4]
bt eax, 0xa
jae 0x180070a01
mov rcx, rsi
call sym.VBoxVMM.dll_VMR3GetState
sub eax, 0x19
je 0x1800709a3
sub eax, 1
je 0x1800709a3
sub eax, 1
je 0x1800709a3
sub eax, 1
je 0x1800709a3
cmp eax, 2
jne 0x180070a01
rdtsc
mov rcx, qword [rbx + 0x32240]
shl rdx, 0x20
or rax, rdx
sub rax, r13
add rcx, rax
mov qword [rbx + 0x32240], rcx
mov rcx, qword [rbx + 0x32238]
inc rcx
mov qword [rbx + 0x32238], rcx
mov rcx, qword [rbx + 0x32248]
cmp rcx, rax
jae 0x180070986
mov qword [rbx + 0x32248], rax
mov rcx, qword [rbx + 0x32250]
cmp rcx, rax
jbe 0x180070999
mov qword [rbx + 0x32250], rax
mov eax, 0x44c
jmp 0x180070a99
rdtsc
mov rcx, qword [rbx + 0x32240]
shl rdx, 0x20
or rdx, rax
sub rdx, r13
add rcx, rdx
mov qword [rbx + 0x32240], rcx
mov rcx, qword [rbx + 0x32238]
inc rcx
mov qword [rbx + 0x32238], rcx
mov rcx, qword [rbx + 0x32248]
cmp rcx, rdx
jae 0x1800709e4
mov qword [rbx + 0x32248], rdx
mov rax, qword [rbx + 0x32250]
cmp rax, rdx
jbe 0x1800709f7
mov qword [rbx + 0x32250], rdx
mov eax, 0x456
jmp 0x180070a99
mov eax, dword [rsi + 4]
bt eax, 0x13
jae 0x180070a31
mov rcx, rsi
call sym.VBoxVMM.dll_PGMR3PhysAllocateHandyPages
test eax, eax
je 0x180070a22
test edi, edi
js 0x180070a22
je 0x180070a20
cmp eax, edi
jge 0x180070a22
mov edi, eax
cmp edi, 0x45a
jne 0x180070a31
mov eax, 0x45a
jmp 0x180070a99
mov eax, dword [rsi + 4]
test al, 4
je 0x180070a43
mov rdx, rbx
mov rcx, rsi
call fcn.1800d3990
rdtsc
mov rcx, qword [rbx + 0x32240]
shl rdx, 0x20
or rdx, rax
sub rdx, r13
add rcx, rdx
mov qword [rbx + 0x32240], rcx
mov rcx, qword [rbx + 0x32238]
inc rcx
mov qword [rbx + 0x32238], rcx
mov rcx, qword [rbx + 0x32248]
cmp rcx, rdx
jae 0x180070a84
mov qword [rbx + 0x32248], rdx
mov rax, qword [rbx + 0x32250]
cmp rax, rdx
jbe 0x180070a97
mov qword [rbx + 0x32250], rdx
mov eax, edi
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret