Creport: Difference between revisions

No edit summary
Line 105: Line 105:
* L_e290: New func. "L_12cf0(<inparams>); return inx0;"
* L_e290: New func. "L_12cf0(<inparams>); return inx0;"
* L_12cf0: New func. Only called by L_e290.
* L_12cf0: New func. Only called by L_e290.
nnMain:
* Two input arguments are now used+required, see above.
* ...
* TID handling block was updated, see above.
* The check for <is_blacklisted> was changed from "if(val<=0)<branch>" to "if(val<1)<branch>".
* The code block at the very end of this func was updated.
** Prev code: <code>if(<loadedval> != 1)return;</code> New code: <code>if(<loadedval> != 1)<jump over the two following func calls which are the same as prev ver></code>
** Following the two funcs mentioned above, prev code: <code>if(<loadedval> == 1 && (u8 *(ptr+1) & 1) == 0)<call func>; return;</code> New code: <code>if(inarg_flag != '1' && (u8 *(ptr+1) & 1) == 0 && ((u8 *(ptr+0) ^ 0x1) & 0x1) == 0)<call func>; return;</code>
** <call func> here is throw_fatalerr(ptr+4). The above second block basically changed the conditions required for throwing fatal-error. For example, fatal-error is no longer thrown when applications(?) crash.