To clarify on the meaning of obfuscate as it applies to code. Mainly, it's to change the names of functions and variables in such a way to hide the meaning of them and confuse anyone that tries to read the code. The following is an example of obfuscated code.
Code:
local a,b=10,0;
function c(d,e)
b=b+e;
if b>=a then f(); end
end
Note the template to make this was an OnUpdate script running a function on a 10 sec timer. This is what obfuscated code is like, and when you have 1000+ lines of code that look like that, it's very difficult to figure out what the code is supposed to do. Hence the reason for Blizzard's policy.