2017-12-05 39 views
0

난독 문제 루아 :난 그냥 목적을 학습 루아 스크립트 중 하나를 디 컴파일 시도, 나는 원래 코드는하지만 코드가 아래와 같이 난독 화 된있어

local L0_0, L1_1, L2_2, L3_3, L4_4, L5_5, L6_6, L7_7, L8_8, L9_9, L10_10, L11_11, L12_12, L13_13, L14_14, L15_15, L16_16, L17_17, L18_18, L19_19, L20_20, L21_21, L22_22, L23_23, L24_24, L25_25, L26_26, L27_27, L28_28, L29_29 
L0_0 = require 
L1_1 = "comm.NetworkClock" 
L0_0 = L0_0(L1_1) 
L1_1 = require 
L2_2 = "comm_ads.fullscreenAds" 
L1_1 = L1_1(L2_2) 
L2_2 = require 
L15_15 = L14_14.init 
L15_15() 
L15_15 = L4_4.log 
L16_16 = "IN main" 
L15_15(L16_16) 
function L15_15() 
    local L0_30, L1_31 
end 
print = L15_15 

는 이러한 코드를 복구 할 수있는 방법이 있습니까 원래 하나에 도달합니까?

+0

코드가 너무 많아서 오류가 발생하지 않는 경우에도 – Piglet

+0

예, 모든 파일이 아닌 코드의 스냅 샷을 추가했기 때문입니다. – MobTech

답변

2

소스로 돌아갈 수 있습니까? 아니.

소스 코드는 사람이 읽을 수 있도록 최적화되어 있으며 바이트 코드는 컴퓨터에서 읽을 수 있도록 최적화되어 있습니다. 일반적으로 컴파일하면 원본 소스를 복원하는 데 필요한 정보가 손실되는 단방향 변환이 발생합니다.

지금까지 최선의 방법은 수작업으로 단순화하는 것인데, 일단 변수 또는 기능이 실제로 무엇인지 식별하면 & 찾기가 바뀝니다.

디 컴파일 된 소스 코드를 사람이 읽을 수 있도록 단순화하는 도구를 찾거나 빌드 한 경우에도 원래 소스 코드는 실제로 재생산되지 않습니다.