Function at 0x180057330
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2c0]
sub rsp, 0x3c0
mov r14, qword [r9]
mov rcx, rdx
movzx edi, r8w
mov rsi, rdx
call sym.VBoxVMM.dll_CPUMQueryGuestCtxPtr
xor ebx, ebx
mov r12, rax
test byte [rbp + 0x320], 1
lea r15, [rax + 0x98]
movzx eax, word [r15]
lea r13d, [rbx + 2]
je 0x180057395
mov r14, qword [r12 + 0x140]
movzx edi, ax
jmp 0x1800573a8
cmp ax, di
jne 0x18005745b
cmp di, 1
je 0x18005745b
mov rcx, rsi
call sym.VBoxVMM.dll_PGMGetGuestMode
mov esi, eax
test r15, r15
je 0x180057468
test byte [r15 + 6], 1
je 0x180057468
movzx ecx, word [r15]
cmp word [r15 + 4], cx
jne 0x180057468
mov word [rsp + 0x70], di
add eax, 0xfffffffa
mov word [rsp + 0x72], bx
mov rdx, qword [r15 + 8]
mov qword [rsp + 0x50], rdx
mov r8d, dword [r15 + 0x10]
mov qword [rsp + 0x58], r8
cmp eax, 1
jbe 0x180057426
cmp esi, 1
je 0x180057417
test dword [r12 + 0x148], 0x20000
jne 0x180057417
mov dword [rsp + 0x74], r13d
movzx r12d, r13b
jmp 0x180057431
mov eax, 1
mov dword [rsp + 0x74], eax
movzx r12d, al
jmp 0x180057431
mov dword [rsp + 0x74], 4
mov r12b, 4
mov dword [rsp + 0x60], 0xffff
mov r9d, 1
mov ecx, dword [r15 + 0x14]
and ecx, 0xe09f
or ecx, 0xf00
shl ecx, 8
and r12b, 1
jmp 0x1800575e0
mov rcx, rsi
mov r12, rbx
call sym.VBoxVMM.dll_PGMGetGuestMode
mov esi, eax
cmp di, 1
jne 0x18005751d
lea eax, [rsi - 6]
mov dword [rsp + 0x70], 1
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], 0xffffffffffffffff
cmp eax, 1
jbe 0x1800574a0
cmp esi, 1
mov eax, ebx
setne al
inc eax
mov dword [rsp + 0x74], eax
jmp 0x1800574a8
mov dword [rsp + 0x74], 4
mov rcx, qword [rbp + 0x308]
mov dword [rsp + 0x60], 0xffff
mov dword [rsp + 0x64], 0xf0000
call sym.VBoxVMM.dll_CPUMQueryGuestCtxPtr
test byte [rax + 0x9e], 1
je 0x1800574f5
movzx ecx, word [rax + 0x98]
cmp word [rax + 0x9c], cx
jne 0x1800574f5
mov eax, dword [rax + 0xac]
mov ecx, dword [rsp + 0x64]
shl eax, 8
xor eax, ecx
and eax, 0xe09f00
xor ecx, eax
jmp 0x180057505
mov ecx, dword [rsp + 0x64]
and ecx, 0xfffff8ff
or ecx, 0xc09800
mov r8, qword [rsp + 0x58]
xor r12b, r12b
mov rdx, qword [rsp + 0x50]
mov r9d, 1
jmp 0x1800575e0
test r12, r12
je 0x180057530
test dword [r12 + 0x148], 0x20000
jne 0x1800575a2
cmp esi, 1
je 0x1800575a2
mov eax, dword [rbp + 0x320]
and eax, 0x70000000
cmp eax, 0x20000000
je 0x1800575a2
mov rcx, qword [rbp + 0x308]
lea r8, [rsp + 0x50]
movzx edx, di
call sym.VBoxVMM.dll_SELMR3GetSelectorInfo
xor r12b, r12b
mov r15d, eax
test eax, eax
jns 0x18005758c
mov edx, dword [rbp + 0x330]
lea r8, str.Sel_04x_____Rrc_n
mov rcx, qword [rbp + 0x328]
movzx r9d, di
mov dword [rsp + 0x20], eax
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x180057add
mov ecx, dword [rsp + 0x64]
mov r9d, 1
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
jmp 0x1800575e4
mov r9d, 1
movzx edx, di
shl rdx, 4
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x50], rdx
mov ecx, 0x8f9800
mov word [rsp + 0x70], di
movzx r12d, r9b
mov word [rsp + 0x72], bx
mov qword [rsp + 0x58], r8
mov dword [rsp + 0x74], r9d
mov dword [rsp + 0x60], 0xffff
mov dword [rsp + 0x64], ecx
lea rax, [rdx + 1]
mov qword [rbp + 0x70], rdx
add rax, r8
mov qword [rbp + 0x80], r8
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x300]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x308]
mov qword [rbp + 0x60], rax
mov dword [rbp + 0x88], esi
mov qword [rbp + 0x98], rbx
mov qword [rbp + 0x90], rbx
mov qword [rbp + 0x68], 0xffffffffffffffff
mov byte [rbp + 0xb8], 0
cmp esi, 6
jl 0x180057643
bt ecx, 0x15
jae 0x180057643
mov r8b, 1
jmp 0x180057646
xor r8b, r8b
mov edx, dword [rbp + 0x320]
mov byte [rbp + 0xb9], r8b
and edx, 0x70000000
je 0x180057685
lea eax, [rdx - 0x10000000]
test eax, 0xefffffff
je 0x180057680
cmp edx, 0x30000000
je 0x18005769f
cmp edx, 0x40000000
jne 0x180057685
mov r13d, 3
jmp 0x18005769f
mov r13d, r9d
jmp 0x18005769f
mov r13d, ecx
mov eax, 3
shr r13d, 0x16
and r13d, 1
inc r13d
test r8b, r8b
cmovne r13d, eax
lea rax, [rbp + 0x318]
mov edx, r13d
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x80]
lea rax, [rbp - 0x80]
mov rcx, r14
lea r8, [0x180057b00]
mov qword [rsp + 0x20], rax
call sym.VBoxVMM.dll_DISInstrWithReader
mov r15d, eax
test eax, eax
js 0x180057a71
mov eax, dword [rbp + 0x318]
lea rcx, [rsp + 0x50]
mov r15d, dword [rbp + 0x320]
lea rdx, [rbp + 0xc0]
add rax, r14
mov qword [rsp + 0x28], rcx
mov qword [rbp + 0xa0], rax
lea rcx, [rbp - 0x80]
test r15b, 8
lea rax, [0x1800571a0]
mov r9d, 0x100
mov r8d, 0x200
cmovne rax, rbx
mov qword [rsp + 0x20], rax
call sym.VBoxVMM.dll_DISFormatYasmEx
mov eax, r15d
and eax, 0x20
test r15b, 0x10
je 0x180057802
mov edx, dword [rbp + 0x330]
mov rcx, qword [rbp + 0x328]
test eax, eax
je 0x180057760
lea r9, [rbp + 0xc0]
lea r8, [0x1804dcd58]
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
lea rax, [rbp + 0xc0]
test r12b, r12b
je 0x18005778c
mov qword [rsp + 0x28], rax
lea r8, str._04x:_04x___s
movzx r9d, di
mov dword [rsp + 0x20], r14d
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
cmp di, 1
jne 0x1800577c6
mov qword [rsp + 0x20], rax
cmp esi, 6
jl 0x1800577b1
mov r9, r14
lea r8, str._RGv___s
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
mov r9d, r14d
lea r8, str._08RX32___s
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
movzx r9d, di
mov qword [rsp + 0x28], rax
cmp esi, 6
jl 0x1800577eb
lea r8, str._04x:_RGv___s
mov qword [rsp + 0x20], r14
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
lea r8, str._04x:_08RX32___s
mov dword [rsp + 0x20], r14d
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
movzx ecx, byte [rbp - 0x70]
test eax, eax
je 0x180057860
cmp ecx, 8
jae 0x180057819
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
mov edx, dword [rbp + 0x330]
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x38], rax
lea r8, str._.Rhxs_s__s
lea rax, [0x18020e04a]
mov r9d, ecx
mov rcx, qword [rbp + 0x328]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x58]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
test r12b, r12b
je 0x180057880
cmp ecx, 8
jae 0x180057874
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
lea r8, str._04x:_04x__.Rhxs_s__s
jmp 0x1800579a4
cmp di, 1
jne 0x180057943
cmp esi, 6
jl 0x1800578e9
cmp ecx, 8
jae 0x18005789e
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
mov edx, dword [rbp + 0x330]
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x40], rax
lea r8, str._RGv__.Rhxs_s__s
lea rax, [0x18020e04a]
mov r9, r14
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x58]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x328]
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
cmp ecx, 8
jae 0x1800578f8
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
mov edx, dword [rbp + 0x330]
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x40], rax
lea r8, str._08RX32__.Rhxs_s__s
lea rax, [0x18020e04a]
mov r9d, r14d
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x58]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x328]
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x1800579e9
cmp esi, 6
jl 0x18005798e
cmp ecx, 8
jae 0x180057957
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x48], rax
lea r8, str._04x:_RGv__.Rhxs_s__s
lea rax, [0x18020e04a]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x58]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], r14
jmp 0x1800579d2
cmp ecx, 8
jae 0x18005799d
lea eax, [rcx + rcx*2]
mov ebx, 0x18
sub ebx, eax
lea r8, str._04x:_08RX32__.Rhxs_s__s
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x48], rax
lea rax, [0x18020e04a]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x58]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r14d
mov edx, dword [rbp + 0x330]
mov rcx, qword [rbp + 0x328]
movzx r9d, di
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
mov rcx, qword [rbp + 0x338]
movzx edx, byte [rbp - 0x70]
test rcx, rcx
je 0x1800579fb
mov dword [rcx], edx
mov rcx, qword [rbp + 0x340]
test rcx, rcx
je 0x180057a54
movups xmm0, xmmword [rbp - 0x28]
mov rax, qword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x18]
mov qword [rcx], rax
movups xmmword [rcx + 0x10], xmm0
mov dword [rcx + 8], edx
movups xmm0, xmmword [rbp - 8]
movups xmmword [rcx + 0x20], xmm1
movups xmm1, xmmword [rbp + 8]
movups xmmword [rcx + 0x30], xmm0
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [rcx + 0x40], xmm1
movups xmm1, xmmword [rbp + 0x28]
movups xmmword [rcx + 0x50], xmm0
movups xmm0, xmmword [rbp + 0x38]
movups xmmword [rcx + 0x60], xmm1
movups xmm1, xmmword [rbp + 0x48]
movups xmmword [rcx + 0x70], xmm0
movups xmmword [rcx + 0x80], xmm1
cmp byte [rbp + 0xb8], 0
je 0x180057a6d
mov rcx, qword [rbp + 0x58]
lea rdx, [rbp + 0xa8]
call sym.VBoxVMM.dll_PGMPhysReleasePageMappingLock
xor eax, eax
jmp 0x180057ae0
cmp byte [rbp + 0xb8], 0
je 0x180057a94
mov rcx, qword [rbp + 0x300]
lea rdx, [rbp + 0xa8]
call sym.VBoxVMM.dll_PGMPhysReleasePageMappingLock
mov byte [rbp + 0xb8], 0
movzx eax, byte [rbp - 0x80]
mov r9d, r15d
mov edx, dword [rbp + 0x330]
test al, al
je 0x180057ac9
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x28], rcx
lea r8, str.Disas_____Rrc___.Rhxs_n
mov rcx, qword [rbp + 0x328]
mov qword [rsp + 0x20], rax
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
jmp 0x180057add
mov rcx, qword [rbp + 0x328]
lea r8, str.Disas_____Rrc_n
call qword [sym.imp.VBoxRT.dll_RTStrPrintf]
mov eax, r15d
mov rbx, qword [rsp + 0x410]
add rsp, 0x3c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret