Eshap said:what is going on it's 1:30 and my head hurts
what is all this ambiguous pie
Delish.Eshap said:ambiguous pie
This may be a derp question, but Im still going to ask it:Robotic Teensie said:Remember when I posted in this thread I had decompiled Rayman 2? I now have a better decompiler. It doesn't leave asm inside the code. I also decompiled the Rayman Designer Mapper, Rayman 3 and Rayman Origins with it
The compiler also has an option to decompile DOS programs, but I've had no luck so far with Rayman 1...
Origins apparently has a debugging file (.pdb) linked to it... too bad it isn't available... that would make the code so much more readable.
How about to host a FTP Server where users can Up-/Download Rayman Designer Map files ( I can do thatRobotic Teensie said:Remember when I posted in this thread I had decompiled Rayman 2? I now have a better decompiler. It doesn't leave asm inside the code. I also decompiled the Rayman Designer Mapper [..] with it![]()
00 00 8b ce e8 26 1a 02 00 6a 00 e8 70 11 00 00 83 c4 04 e8 98 13 00 00 33 c0 8a 88 c0 10 43 00 88 88 08 0d 45 00 40 84 c9 75 ef c7 05 38 a6 43 00 00 00 00 00 e8 a6 1b 00 00 6a 00 8d 4c 24 08 e8 1b 01 00 00 8d 44 24 04 8d 4c 24 04 c7 84 24 a8 00 00 00 00 00 00 00 89 46 1c e8 03 ac 01 00 8d 4c 24 60 c7 84 24 a8 00 00 00 01 00 00 00 e8 8f 11 02 00 8d 4c 24 04 c7 84 24 a8 00 00 00 ff
else
{
MessageBoxA(
0,
"Please check your DirectX version. At least version 8.1 is required.",
"Rayman 3 Setup Error",
0x10u);
}
return 0;
}
CWinApp::Enable3dControlsStatic(v1);
sub_402290(0);
sub_4024C0();
v2 = 0;
do
{
v3 = byte_4310C0[v2];
*(&FileName + v2++) = v3;
}
while ( v3 );
dword_43A638 = 0;
sub_402CF0();
sub_401270(0);
So the automatically generated code we got is impossible to understand. It really doesn't have any practical use... it would require weeks or months of analysing by someone who has the necessary expertise (and I don't have that) to make sense of it all.(...) the nature of disassembly precludes total accuracy, and a great deal of human intervention is necessarily required (...) (the) user will begin with an automatically generated disassembly listing and then convert sections from code to data and vice versa, rename, annotate, and otherwise add information to the listing, until it becomes clear what it does.
There are two kinds of while loops - the most common one is while (condition=true) {code to be executed}. But you can also check the condition after the code... {code to be executed} while (condition=true). In the latter case, the loop will always execute at least once. And that's done with a do... while loop.Shrooblord said:Well, for one, a while loop would never end in a ; before telling the program what it should be looping. That should be some indication. Strangely enough, the 'do' step with the method in enclosed brackets is before the while loop, which is usually the thing that the while loop should be doing. This makes me think that that excerpt of code you have is the wrong way around! Or at least, the while() do section is in the wrong order.
do
{
v3 = byte_4310C0[v2];
*(&FileName + v2++) = v3;
}
while ( v3 );