53 if (func1 == func2)
return true;
55 std::string prefix1 = func1.substr(0, 2);
56 std::string prefix2 = func2.substr(0, 2);
58 if ((prefix1 ==
"Zw" || prefix1 ==
"Nt") && (prefix2 ==
"Zw" || prefix2 ==
"Nt")) {
59 std::string body1 = func1.substr(2);
60 std::string body2 = func2.substr(2);
64 if (body1.length() == body2.length()) {
68 std::string* smaller_ptr = body1.length() < body2.length() ? &body1 : &body2;
69 size_t smaller_size = smaller_ptr->length();
70 if (body1.substr(0, smaller_size) == body2.substr(0, smaller_size)) {
71 std::string* bigger_ptr = body1.length() > body2.length() ? &body1 : &body2;
72 std::string suffix = bigger_ptr->substr(smaller_size);