qilingframework / qilingframework/qiling

access to resources

Open
#1,333 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
6.1k
Forks
798
Avg merge
1d 1h
Merged PRs (30d)
9

Description

Is your feature request related to a problem? Please describe.
At the moment I try to access resources of a binary via qiling and to implement a FindResouceExW.
Has qiling an api interface for that?
At the moment i have to use lief, but it doesn't seem to be the right way.
How do i do the mapping from resource object to where it lies in ql memory?

Example Code

def hook_FindResourceExW(ql: Qiling, address: int, params):
    binary = lief.parse(ql.path)
    if binary.has_resources:
        root = binary.resources
        if isinstance(params['lpType'], str):
            a_1 = 'name'
        elif isinstance(params['lpType'], int):
            a_1 = 'id'
        if isinstance(params['lpName'], str):
            a_2 = 'name'
        elif isinstance(params['lpName'], int):
            a_2 = 'id' 
        for e in root.childs:
            if getattr(e, a_1).casefold() == params['lpType'].casefold():
                for d in e.childs:
                    if getattr(d, a_2).casefold() == params['lpName'].casefold():
                        for c in d.childs:
                            if c.id == params['wLanguage']:
                                print(c)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by checking Qiling's Windows API emulation and resource-handling entry points, then compare the example's LIEF-based traversal with the existing memory mapping behavior. The issue is complete when a supported resource-access interface and a clear mapping from the resource object to its location in Qiling memory are established.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
reverse-engineering
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.