How we developed our simple Harbour decompiler
#1
Lightbulb 
Quote:Every once in a while we get a request that leaves us scratching our heads. With these types of requests, existing tools are usually not enough and we have to create our own custom tooling to solve the “problem”. One such request dropped onto our desk at the beginning of 2018, when one of our customers – a financial institution – asked us to analyze a sample. This in itself is nothing unusual – we receive requests like that all the time. But what was unusual about this particular request was that the sample was written in ‘Harbour’. For those of you who don’t know what Harbour is (just like us), you can take a look here, or carry on reading.

Harbour is a programming language originally designed by Antonio Linares that saw its first release in 1999. It’s based on the old Clipper system and is primarily used for the creation of database programs.

Understanding Harbour’s internals

Let us take a “Hello, world” example from the Harbour repository tests – hello.prg.

t prints the “Hello, world!” message to the terminal. For that, you need to build a Harbour binary to execute the code (there are also other ways to run it without building a binary, but we chose this path because the received sample was an executable).

Compiling is as simple as calling:

hbmk2.exe hello.prg
...
Continue Reading
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)
[-]
Welcome
You have to register before you can post on our site.

Username/Email:


Password:





[-]
Recent Posts
Surfshark Antivirus Video
Surfshark Antivirus_...jasonX — 05:09
K-Lite Codec Pack 19.1.0 / 19.1.1 Update
Changes in 19.1.1 ...harlan4096 — 07:00
Manjaro Linux 25.0.6 Build 250730
Manjaro Linux 25.0...harlan4096 — 06:57
Brave 1.80.125
Release Channel 1....harlan4096 — 06:55
Vivaldi 7.5 Build 3735.58
Vivaldi 7.5 Build ...harlan4096 — 06:54

[-]
Birthdays
Today's Birthdays
No birthdays today.
Upcoming Birthdays
avatar (41)schanumget
avatar (49)apertosibBip
avatar (43)MatthewTop
avatar (47)RussellRuigh
avatar (54)isyqop
avatar (44)AntoineLer
avatar (38)prefenouff
avatar (39)emogig
avatar (47)riafootgtap
avatar (38)fixlnub
avatar (45)greencek
avatar (46)floraJoumn
avatar (41)Isabelle88Nes
avatar (41)ferpuMip
avatar (38)kinotExaro
avatar (50)HerbertPab
avatar (47)Susanskymn
avatar (41)stepaRurry
avatar (37)torieyang
avatar (44)WilsonHep
avatar (43)pironfub
avatar (38)trafgawark
avatar (46)MichaelPlaup
avatar (50)oskasGok
avatar (39)hattiepn1
avatar (39)JasonSoult
avatar (36)hyxamuc
avatar (25)Arshi1

[-]
Online Staff
There are no staff members currently online.

>