ejschwartz commited on
Commit
1311a82
·
1 Parent(s): 057ba08
Files changed (1) hide show
  1. app.py +17 -13
app.py CHANGED
@@ -35,9 +35,7 @@ and I reused some of their own code to do this.
35
  hf_key = os.environ["HF_TOKEN"]
36
  huggingface_hub.login(token=hf_key)
37
 
38
- tokenizer = AutoTokenizer.from_pretrained(
39
- "bigcode/starcoderbase-3b"
40
- )
41
  vardecoder_model = AutoModelForCausalLM.from_pretrained(
42
  "ejschwartz/resym-vardecoder", torch_dtype=torch.bfloat16, device_map="auto"
43
  )
@@ -62,12 +60,16 @@ return sub_411142(a1, a2, &v4);
62
  def infer(code):
63
 
64
  splitcode = code.splitlines()
65
- bodyvars = [v['name'] for v in prep_decompiled.extract_comments(splitcode) if "name" in v]
66
- argvars = [v['name'] for v in prep_decompiled.parse_signature(splitcode) if "name" in v]
 
 
 
 
67
  vars = argvars + bodyvars
68
- #comments = prep_decompiled.extract_comments(splitcode)
69
- #sig = prep_decompiled.parse_signature(splitcode)
70
- #print(f"vars {vars}")
71
 
72
  varstring = ", ".join([f"`{v}`" for v in vars])
73
 
@@ -118,11 +120,13 @@ def infer(code):
118
  demo = gr.Interface(
119
  fn=infer,
120
  inputs=[
121
- gr.Textbox(lines=10, value=example),
 
 
 
 
 
122
  ],
123
- outputs=[gr.Text(label="Var Decoder Output"),
124
- gr.Text(label="Field Decoder Output"),
125
- gr.Text(label="Generated Variable List")],
126
- description=description
127
  )
128
  demo.launch()
 
35
  hf_key = os.environ["HF_TOKEN"]
36
  huggingface_hub.login(token=hf_key)
37
 
38
+ tokenizer = AutoTokenizer.from_pretrained("bigcode/starcoderbase-3b")
 
 
39
  vardecoder_model = AutoModelForCausalLM.from_pretrained(
40
  "ejschwartz/resym-vardecoder", torch_dtype=torch.bfloat16, device_map="auto"
41
  )
 
60
  def infer(code):
61
 
62
  splitcode = code.splitlines()
63
+ bodyvars = [
64
+ v["name"] for v in prep_decompiled.extract_comments(splitcode) if "name" in v
65
+ ]
66
+ argvars = [
67
+ v["name"] for v in prep_decompiled.parse_signature(splitcode) if "name" in v
68
+ ]
69
  vars = argvars + bodyvars
70
+ # comments = prep_decompiled.extract_comments(splitcode)
71
+ # sig = prep_decompiled.parse_signature(splitcode)
72
+ # print(f"vars {vars}")
73
 
74
  varstring = ", ".join([f"`{v}`" for v in vars])
75
 
 
120
  demo = gr.Interface(
121
  fn=infer,
122
  inputs=[
123
+ gr.Textbox(lines=10, value=example, label="Hex-Rays Decompilation"),
124
+ ],
125
+ outputs=[
126
+ gr.Text(label="Var Decoder Output"),
127
+ gr.Text(label="Field Decoder Output"),
128
+ gr.Text(label="Generated Variable List"),
129
  ],
130
+ description=description,
 
 
 
131
  )
132
  demo.launch()