Compiler optimization strips the initialization of passwd within initializeLogin. Consequently, searching for it in the heap is futile. Below is the disassembled method from the included .ipa:

Tagging the variable volatile wasn't enough, but returning the pointer sufficed to throw the compiler off.
-(NSString *)initializeLogin {
//DO random stuff
NSString *passwd = @"MYw0r1d1821";
//Finish doing random stuff
return passwd;
}

