Right... The cause of the problem is that the symbol Z007 is never defined. It is referenced in a structure ("PBST") that holds the battery state. That structure is pretty much overwritten every time the _BST-method is invoked, so I *think* you can replace Z007 with 0xFFFFFFFF (which means unknown remaining battery capacity and current). The changes are at line 3010 - 3011 on a decompiled dsdt. The new PBST declaration would look like:
Name (PBST, Package (0x04)
{
    0x00,
    0xFFFFFFFF,
    0xFFFFFFFF,
    0x2710
})
However, there were some more errors that surfaced when recompiling, and it's getting late...

Regards, Andreas