Function at 0x14006bc00
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
mov rax, qword [0x14028b7c8]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov rax, qword [rcx + 8]
xor ebp, ebp
mov rbx, rcx
mov r15, qword [rax + 0x40]
mov r14d, ebp
cmp r15, rbp
je 0x14006c323
mov edi, 0x10000
mov rcx, rdi
call fcn.14013f170
mov r9d, edi
xor edx, edx
mov r8d, 0xf0000
mov rcx, r15
mov r13, rax
mov qword [rsp + 0x20], rax
call fcn.14001643c
cmp eax, ebp
je 0x14006c0e2
lea rdx, [r13 + 0xfff5]
lea rcx, [rbx + 0x100]
lea r8d, [rbp + 8]
call fcn.140159620
lea esi, [rbp + 0xe]
lea rdx, str.Award_Software
lea rcx, [r13 + 0xe030]
mov r8, rsi
mov byte [rbx + 0x108], bpl
call fcn.140159a90
lea r12d, [rbp + 0x40]
cmp eax, ebp
jne 0x14006bd69
lea rcx, [rbx + 0xa0]
lea r8, str.Award_Software_International__Inc.
mov rdx, r12
call fcn.140044464
lea rcx, [r13 + 0xece0]
call fcn.140159970
lea rsi, [rbx + 0xe0]
cmp eax, 0x20
mov rcx, rsi
jge 0x14006bcff
lea r8, [r13 + 0xece0]
lea edx, [rbp + 0x20]
call fcn.140044464
jmp 0x14006bd18
lea rdx, [r13 + 0xece0]
mov r8d, 0x1f
call fcn.140159620
mov byte [rbx + 0xff], bpl
lea rcx, [r13 + 0xec71]
call fcn.140159970
lea rdi, [rbx + 0x20]
cmp eax, r12d
mov rcx, rdi
jge 0x14006bd43
lea r8, [r13 + 0xec71]
mov edx, 0x80
call fcn.140044464
jmp 0x14006bd56
lea rdx, [r13 + 0xec71]
mov r8, r12
call fcn.140159620
mov byte [rbx + 0x60], bpl
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.14006b688
jmp 0x14006bfa3
lea rcx, [r13 + 0xe020]
lea rdx, str.Phoenix_NuBIOS
mov r8, rsi
call fcn.140159a90
cmp eax, ebp
je 0x14006bf8d
lea rdx, str.Phoenix_Techno
lea rcx, [r13 + 0xe030]
mov r8, rsi
call fcn.140159a90
cmp eax, ebp
je 0x14006bf8d
lea rcx, [r13 + 0xe038]
lea rdx, str.Phoenix_Techno
mov r8, rsi
call fcn.140159a90
cmp eax, ebp
je 0x14006bf8d
mov edi, 7
lea rcx, [r13 + 0xf400]
lea rdx, str.AMIBIOS
mov r8, rdi
call fcn.140159a90
cmp eax, ebp
jne 0x14006be22
lea rcx, [rbx + 0xa0]
lea r8, str.American_Megatrends_Inc.
mov rdx, r12
call fcn.140044464
lea rcx, [r13 + 0xf478]
call fcn.140159970
lea rdi, [rbx + 0x20]
cmp eax, r12d
mov rcx, rdi
jge 0x14006be19
lea r8, [r13 + 0xf478]
jmp 0x14006be74
lea rdx, [r13 + 0xf478]
jmp 0x14006be87
lea rcx, [r13 + 0x8000]
lea rdx, str._AAMMIIBBIIOOSS_
mov r8d, 0x10
call fcn.140159a90
cmp eax, ebp
jne 0x14006beaa
lea rcx, [rbx + 0xa0]
lea r8, str.American_Megatrends_Inc.
mov rdx, r12
call fcn.140044464
lea rcx, [r13 + 0x8078]
call fcn.140159970
lea rdi, [rbx + 0x20]
cmp eax, r12d
mov rcx, rdi
jge 0x14006be80
lea r8, [r13 + 0x8078]
mov edx, 0x80
call fcn.140044464
jmp 0x14006be93
lea rdx, [r13 + 0x8078]
mov r8, r12
call fcn.140159620
mov byte [rbx + 0x5f], bpl
lea rdx, [rbx + 0xe0]
mov r8, rdi
mov rcx, rbx
call fcn.14006b884
jmp 0x14006bfa3
lea rcx, [r13 + 0xe035]
lea rdx, [0x1401dacd8]
mov r8, rdi
call fcn.140159a90
cmp eax, ebp
je 0x14006bf84
lea rcx, [r13 + 0xe034]
lea rdx, [0x1401d6298]
mov r8d, 6
call fcn.140159a90
cmp eax, ebp
je 0x14006bf84
lea rcx, [r13 + 0xe029]
lea rdx, str.INTEL
mov r8d, 5
call fcn.140159a90
cmp eax, ebp
jne 0x14006bf12
lea r8, str.Intel
jmp 0x14006bf94
lea rcx, [r13 + 0xe05e]
lea rdx, str.Dell
mov r8d, 5
call fcn.140159a90
cmp eax, ebp
jne 0x14006bf38
lea r8, [0x1401dacbc]
jmp 0x14006bf94
lea rdx, str.IBM
lea rcx, [r13 + 0xe000]
mov r8d, 4
call fcn.140159a90
cmp eax, ebp
jne 0x14006bf5e
lea r8, [0x1401cbf14]
jmp 0x14006bf94
lea rdx, str.TOSHIBA
lea rcx, [r13 + 0xe000]
mov r8d, 8
call fcn.140159a90
cmp eax, ebp
jne 0x14006bfa3
lea r8, [0x1401cc358]
jmp 0x14006bf94
lea r8, [0x1401d6298]
jmp 0x14006bf94
lea r8, str.Phoenix_Technologies__LTD
lea rcx, [rbx + 0xa0]
mov rdx, r12
call fcn.140044464
mov edi, 0x10000
lea r9, str.IFE_
mov rdx, r13
mov r8d, edi
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
je 0x14006bfcc
mov dword [rbx + 0x210], 1
mov eax, dword [rbx + 0x18]
and eax, 0xff000000
cmp eax, 0x2000000
jne 0x14006c0e2
lea r9, str.__AGESA
mov r8d, edi
mov rdx, r13
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
je 0x14006c01b
lea rdx, [rax + 8]
lea rcx, [rbx + 0x1d0]
mov r8d, 8
call fcn.140159620
mov byte [rbx + 0x1d8], bpl
jmp 0x14006c09e
lea r9, str.AMD_GESA
mov r8d, edi
mov rdx, r13
mov rcx, rbx
call fcn.14007d63c
mov r11, rax
cmp rax, rbp
je 0x14006c067
movzx r8d, byte [r11 + 9]
movzx eax, byte [rax + 8]
movzx r9d, byte [r11 + 0xa]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
lea rcx, [rbx + 0x1d0]
lea r8, str.V_u._u._u
mov rdx, r12
call fcn.1401586fc
jmp 0x14006c09e
lea r9, str.AGESA_V9
mov r8d, edi
mov rdx, r13
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
je 0x14006c0a6
lea rdx, [rax + 9]
lea rcx, [rbx + 0x1d0]
mov r8d, 0x12
call fcn.140159620
mov byte [rbx + 0x1e2], bpl
mov r14d, 1
jmp 0x14006c0e2
call fcn.140045fd8
cmp qword [rax + 0xa8], rbp
je 0x14006c0e2
call fcn.140045fd8
mov rcx, qword [rax + 0xa8]
mov rsi, qword [rcx + 0x20]
cmp rsi, rbp
je 0x14006c0e2
mov rsi, qword [rsi + 8]
cmp rsi, rbp
jne 0x14006c28d
mov rdi, rbp
cmp rdi, rbp
jne 0x14006c1f8
mov rcx, r13
call fcn.14013f178
cmp dword [rbx + 0x210], ebp
jne 0x14006c18f
mov edi, DllRegisterServer
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8, rdi
call fcn.140158a90
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], edi
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp eax, ebp
je 0x14006c183
cmp dword [rsp + 0x34], 5
ja 0x14006c12d
jne 0x14006c183
cmp dword [rsp + 0x38], 1
jb 0x14006c183
lea rcx, [0x1401ce318]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp rax, rbp
je 0x14006c183
lea rdx, str.GetFirmwareEnvironmentVariableA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp rax, rbp
je 0x14006c183
lea rdx, str.00000000_0000_0000_0000_000000000000
lea rcx, [0x1401cb3a2]
xor r9d, r9d
xor r8d, r8d
call rax
cmp eax, ebp
jne 0x14006c183
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 1
je 0x14006c183
mov dword [rbx + 0x210], 1
cmp dword [rbx + 0x210], ebp
je 0x14006c2f3
cmp r14d, ebp
jne 0x14006c2f3
mov eax, dword [rbx + 0x18]
and eax, 0xff000000
cmp eax, 0x2000000
jne 0x14006c2f3
mov esi, 0x400000
mov rcx, rsi
call fcn.14013f170
mov r8d, esi
mov rcx, r15
mov rdx, rax
mov rdi, rax
call fcn.140016998
cmp eax, ebp
je 0x14006c2eb
lea r9, str.__AGESA
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
je 0x14006c296
lea rdx, [rax + 8]
jmp 0x14006c2d2
cmp dword [rdi + 8], 0x28
jne 0x14006c277
cmp dword [rdi + 0x18], ebp
mov r12d, ebp
jle 0x14006c277
mov rcx, qword [rdi + 0x20]
cmp qword [rcx + rbp], 0
je 0x14006c268
mov rcx, qword [rcx + rbp]
lea rdx, str.AGESA_V9
call fcn.140158078
test rax, rax
mov rax, qword [rdi + 0x20]
je 0x14006c234
mov r8, qword [rax + rbp]
add r8, 9
jmp 0x14006c251
mov rcx, qword [rax + rbp]
lea rdx, str.AGESA
call fcn.140158078
test rax, rax
je 0x14006c268
mov r8, qword [rdi + 0x20]
mov r8, qword [r8 + rbp]
lea rcx, [rbx + 0x1d0]
mov edx, 0x40
int3
inc r12d
add rbp, 8
cmp r12d, dword [rdi + 0x18]
jl 0x14006c206
xor ebp, ebp
cmp rsi, rbp
je 0x14006c0d6
mov rsi, qword [rsi + 0x10]
cmp rsi, rbp
je 0x14006c0e2
mov rdi, qword [rsi + 8]
jmp 0x14006c0d9
lea r9, str.___AGESA
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
jne 0x14006c1ef
lea r9, str.AGESA_V9
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
call fcn.14007d63c
cmp rax, rbp
je 0x14006c2eb
lea rdx, [rax + 9]
lea rcx, [rbx + 0x1d0]
mov r8d, 0x20
call fcn.140159620
mov byte [rbx + 0x1f0], bpl
mov rcx, rdi
call fcn.14013f178
mov edi, 0x8000
mov rcx, rdi
call fcn.14013f170
mov r9d, edi
xor edx, edx
mov r8d, 0xc0000
mov rcx, r15
mov rbx, rax
mov qword [rsp + 0x20], rax
call fcn.14001643c
mov rcx, rbx
call fcn.14013f178
mov eax, 1
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140156fd0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret