Retrieve locations of Exception handlers (from "catch" instruction) in a given PE file


I need a C/C++ function that returns the address of the Windows Exception handlers inside a specific memory range in a compiled PE file (32-bit, 64-bit).

Suppose the following code:


int x = 5;



if (x == 0) throw(1ULL);

else if (x % 2) throw("x must be even");

x *= 4;


catch (unsigned long long e)


std::cerr << e;


catch (const char *e)


std::cerr << e;



As you can see there are 2 exception handlers. Now the source code is compiled as an EXE/DLL.

Suppose that the above code starts at RVA = 0x401000 and ends at 0x401100. I will pass to your function something like:

GetNExceptionsInfoInBlock(filename, 0x401000, 0x401100, std::vector &info);

Your function will fill the vector with exception RVAs found in the given block of code.

This can be done by inspecting the MAGIC number where the exception handling is generated by Visual Studio. Please, refer to:

[url removed, login to view]

[url removed, login to view]

Attached you have a test example that you can compile and the expected output about handlers found inside a block (file "[url removed, login to view]")

If you need further information, let me know please.

NOTE: Your code should be implemented in C or C++ and compilable with Visual Studio.


Habilidades: Programação C, x86/x64 Assembler

Veja mais: been tasked to design & develop the website for the club they have given you he following information to guide you on this web p, source code digital signature details given file, write program calculates crc given file, create linked list given txt file java, obfuscate pe file, catch swf file net, move file using java given path table, vb6 read instruction file, sql 2005 query ldf file locations, catch form csv file php, assembler instruction open file output mode, freeaspupload updateform catch file name, download file given authentication, check given file password protected cnet, create dll file given source code, select file handlers unix

Acerca do Empregador:
( 62 comentários ) Jerez de la Frontera, Spain

ID do Projeto: #12023163

10 freelancers estão ofertando em média $197 para esse trabalho


I am very proficient in c and c++. I have 16 years c++ developing experience now, and have worked for more than 6 years. My work is online game developing, and mainly focus on client side, using c++ under windows envir Mais

$150 USD in 3 dias
(70 Comentários)

Dear client, how are you? I am a C++ programmer and mathematician. Your meaning is clear for me. Seems task is VERY VERY APPROPRIATE for me. Please check my "Profile & Work List" and consider hiring me if my skill Mais

$300 USD in 3 dias
(19 Comentários)

I've mastered software reverse engineering/C/C++/C#/Java/Win API/Assembly programming and helped many customers. Especially, I've rich experiences of unpacking Themida/WinLicense, VmProtect, and other packing modules Mais

$210 USD in 2 dias
(19 Comentários)
$188 USD in 3 dias
(27 Comentários)

A little about me. I am a reverse engineer with 6+ years of experience. I'm also a c programmer with 7+ years under my belt I have made many application to modify assembly code (I've also made something to list out Mais

$144 USD in 5 dias
(3 Comentários)
$277 USD in 3 dias
(3 Comentários)

Hi I have got your job posting and I am very interested in this project I have many experiences of c++ programming over 10 years. And I have an experience of reverse-engineering over 5 years. If you select me, I wi Mais

$222 USD in 2 dias
(1 Comentário)

Dear Prospect Hiring Manager. Thank you for giving me a chance to bid on your project. I am a serious bidder here and i have already worked on a similar project before and can deliver as u have mentioned I have c Mais

$155 USD in 3 dias
(0 Comentários)

Hello, I have read all the requirements of this project and my team can provide high quality professional results at a low cost. Our team consists of 4 programmers/designers with over 6 years experience and a v Mais

$222 USD in 5 dias
(0 Comentários)
$155 USD in 10 dias
(0 Comentários)
$133 USD em 1 dia
(0 Comentários)