Email or username:

Password:

Forgot your password?
Top-level
Foone🏳️‍⚧️

I don't know why I'm saying the compiler should be more optimized. That'd make my job harder.

11 comments
Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

oh hello
00000000 and 3F800000, fancy meeting you here.

(floating point 0.0 and 1.0)

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

I may need to force quit Ghidra. that's not good.

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

hey I found a list of supported platforms in the binary! it includes: Wii, PS2, DX9, PSP, X360, and PS3.

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

if ((((bVar1) && (bVar1)) && (bVar1)) && (bVar1)) {
_aligned_free(this->field1_0x4);
}

I was gonna ask "are you okay, Ghidra?" but nope, the disassembly matches. the fuck happened here, optimizer?

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

if (filename == (String *)0x3) {

NOPE NOPE NOPE NOPE NOPE NOPE "3" IS NOT A VALID POINTER TO A STRING. EVER

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

they do a weird thing with picking puzzles: they seem to pick like 13 of them, but the game only uses 4-6.

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

they also do some very weird shit with copying them around in RAM. like, I can see them overwriting my changes.

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

I think I've figured out how codewarrior works:
every time you write a number in your code, it uses up 4 bytes in the binary.
so if you write "1.0 + 1.0 + 1.0 + 1.0", that's 16 bytes right there.

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

oh god I think this game's Quad class initializes some of the points to negative NaN

Foone🏳️‍⚧️ replied to Foone🏳️‍⚧️

amazing moments in compiler optimization:

if (param_1 != (GrQuad *)0x0) {
if (param_1 == (GrQuad *)0x0) {
return (GrQuadBase *)0x0;
}
}

Go Up