unsigned __int8 sub_3F00()
{
__int64 v0; // rbx
__int64 v1; // rdx
__int64 v2; // rcx
__int64 v3; // r8
__int64 v4; // r9
__int64 v5; // rdx
__int64 v6; // r9
unsigned __int8 result; // al
__int64 v8; // rbx
__int64 v9; // rdx
__int64 v10; // rcx
__int64 v11; // r8
__int64 v12; // r9
char v13; // [rsp+28h] [rbp-30h]
unsigned __int8 v14; // [rsp+60h] [rbp+8h] BYREF
char v15; // [rsp+68h] [rbp+10h] BYREF
char n4; // [rsp+70h] [rbp+18h] BYREF
v0 = (*(__int64 (__fastcall **)(void *, _QWORD, __int64 *))(qword_96A8 + 320))(&unk_9460, 0, &qword_9690); /*0x3f25*/
if ( (unsigned __int8)sub_7F8(v2, v1, v3, v4) && (unsigned __int8)sub_804(64) ) /*0x3f3a*/
sub_740(64, "[System Inventory] Locating IPMI Dxe Protocol Status - %r\n", v0); /*0x3f4f*/
if ( v0 < 0 ) /*0x3f57*/
return 0; /*0x3f59*/
n4 = 4; /*0x3f62*/
LOBYTE(v6) = -54; /*0x3f6c*/
v15 = 1; /*0x3f74*/
v13 = 1; /*0x3f86*/
LOBYTE(v5) = 50; /*0x3f90*/
v8 = (*(__int64 (__fastcall **)(__int64, __int64, _QWORD, __int64, char *, char, unsigned __int8 *, char *))(qword_9690 + 16))( /*0x3f9f*/
qword_9690,
v5,
0,
v6,
&n4,
v13,
&v14,
&v15);
if ( (unsigned __int8)sub_7F8(v10, v9, v11, v12) && (unsigned __int8)sub_804(64) ) /*0x3fae*/
sub_740(64, "Get the BMC virtual CD Device Number Status = %r, Number = %x \n", v8, v14); /*0x3fca*/
result = v14; /*0x3fcf*/
if ( v8 < 0 ) /*0x3fd7*/
return 0; /*0x3fd7*/
return result; /*0x3fda*/
}