Welcome guest, is this your first visit? Click the "Create Account" button now to join.
Results 1 to 10 of 29

Hybrid View

  1. #1
    Master LUNA: A new step into the unknown of scriptsLUNA: A new step into the unknown of scripts
    Join Date
    Nov 2017
    Location
    europa
    Posts
    81
    Rep Power
    161

    Default

    the result of the decryption I provided is quite correct and similar to what jigolua offers

    get_country_and_state_text is a function which theoretically returns an L"" string
    MODEL.address.search.get_country_and_state_text[CALL](string,wstring OUT) - input=string ; output=widestring

    in programming 1 or 0 are also equivalent to true or false
    we can just as well consider that a null string can be assimilated to false and true otherwise, so the form of the assignment string to boolean does not surprise me, on the other hand in clear text the interpretation can be distorted , all you have to do is correct the expression to perform a transcription

    MODEL.lua.AddressSearchStreetsInState = MODEL.address.search.support_streetsearch_in_state(EAddressSearch.Result.selectedCountry) is found in different locations: address.luad , vr_ovde.luad , vr_ovde_search.luad ; et MODEL.lua.AddressSearchStreetsInState is only used inside asc.luad as

    if not MODEL.lua.AddressCityIsSelected() and not MODEL.lua.AddressSearchStreetsInState() then

    perhaps to solve it would be enough to write
    MODEL.lua.AddressSearchStreetsInState = MODEL.address.search.support_streetsearch_in_state(EAddressSearch.Result.selectedCountry) and true or false

    if so, it should influence many other similar forms elsewhere

    in general when an instruction line is incorrectly formed, the downstream lines of code are ignored or cause the program to crash.
    having made a test of this form

    MODEL.SET.lua.test = BOOL_MODEL(true)
    do
    MODEL.lua.test = false
    MODEL.lua.test = L"LUA"
    sc_InfoMessageBox(tostring(MODEL.lua.test()),1)
    end

    the dialog box is displayed with the value false and the execution of the line MODEL.lua.test = L"LUA" is ignored

    MODEL.lua.AddressSearchStreetsInState = MODEL.address.search.support_streetsearch_in_state(EAddressSearch.Result.selectedCountry) should therefore not require modification

    ------------------------------------------------------------------------------------------------------------

    function sc_ShowSearchAddress(mode) does not exist in this form in the 153810 but has evolved in the following versions. on the other hand I have not found a location in the ui with a button or in the lua of a call to this function
    it may therefore be that the apk could have been modified before compilation to use a parameter (mode) while the function in the lua was not updated

    it must be taken into account that the scripts in 9.35.2.xxxxxxx show marked differences between them, the teams which develop them are not always the same, it is necessary to look in the corresponding ui to find the info like owners: gkaracsonyi experts: dflajsz

    you have to be careful when trying to transcribe elements from one version to another as skinners who take functions from nextgen must do to transpose them into luna, it works but there are limits, that's why I looked at the sources to be as close as possible to the good names of variables and functions.

    what can pose a problem is a bad interpretation in the decoding, but from there to miss the complete structure of a function, it is not technically possible, unless you have the wrong source file in the meantime
    Last edited by lunapark; 6th July 2021 at 06:36 PM.

  2.    Advertissements


  3. #2
    Member
    Join Date
    Apr 2016
    Location
    Brussels
    Posts
    15
    Rep Power
    0

    Default

    Thanks for the quick reply and your efforts to look into my questions.

    1. function sc_ShowSearchAddress()
    You are 100% correct, the code is correctly decompiled. I have figured out where the problem is: the defect is elsewhere but it caused sc_ShowSearchAddress to fail.
    Sorry for not finding it earlier and comparing with later versions this module.

    2. MODEL.lua.AddressSearchStreetsInState = MODEL.address.search.support_streetsearch_in_state(EAddressSearch.Result.selectedCountry)
    I agree with you that it's not a decompilation issue. I concluded this too rapidly because I tested just one single change from the original deployed APK version (with same version): replace compiled address.lua with the decompiled one in data.zip. But in the meantime, I have seen 2 instances where the correctly disassembled file fails due to defects in the code itself. It seems that when compiled, the defect does not show or it shows elsewhere.

    You are right that this function appears multiple times but it also "crashed" at every single invocation. I should have been more clear that this line does not generate a true application crash. It is as you say: the function is aborted, the "print" statement I added at the beginning of the function is shown, but not the one right after this particular line. The result however is that the app does not function correctly. I will add the extra tests you suggested. Maybe there is some corruption, since there is one other MODEL.address.search function that crashes as well (City search). The EAddressSearch.Result.selectedCountry parameter is verified to be correct.

    3. The other question in post #5
    The modified code works, so only if you have time to spare. Here I found the "problem" by comparing with an an older (nextgen) version that JiGoLUA 2.2.2 decompiled.
    This was the only difference that seemed not related to code changes, and when changed to the nextgen version, resulted in correct execution, hence my suspicion...

    I have now validated and modified over 20 (large and complex) files and have become very convinced that the disassembly you posted is very robust and don't expect to find any more potential disassembly issues. Unfortunately, correctly disassembled does not always imply "working as per the original".

 

 

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •