Skip to main content

Questions tagged [assembly]

A family of very low-level programming languages, just above machine code, where each statement corresponds to a single machine code instruction.

Filter by
Sorted by
Tagged with
2 votes
3 answers
155 views

Intercepting game function with C and Assembler, game unstable with minimum changes

I am reverse engeneering a really old game (Mu 97d) for the sake of adding new things to the game. What I am doing is intercepting the game with a DLL, and in the DLL do the calculations so I can add ...
Feche1320's user avatar
2 votes
1 answer
1k views

dll injection (assembly code)

I need some tip to undrestand what is the best way to execute external code from DLL or command line. I like to add the force feedback support to different games that not support it. I can write a DLL ...
user3449922's user avatar
1 vote
0 answers
2k views

Unable to start file "..\ntoskrnl.exe" in ollydbg [What can I do?]

Ollydbg isn't allowing me to open the executable ntoskrnl. I think im missing something but I don't know what it is (Windows 7, Ollydbg10.0,200)
TheStack's user avatar
2 votes
1 answer
730 views

Pe 32 Add Export function Segment by Extending with dll or Patching pe

I need to add new function inside pe32 module.dll Export Table , in dynamic way if possible ( via extending with dll ) or by patching pe32 module.dll What can u suggest to solve this ?
LighFusion's user avatar
2 votes
1 answer
138 views

What numeric properties are used in this Unsigned Integer (64bit) -> Floating Vector (128bit) conversion?

Recently I came across the following set of vector instructions: movq xmm0, rcx punpckldq xmm0, 0x4530000043300000 subpd xmm0, 0x4330000000000000 haddpd xmm0, xmm0 The only sensible ...
Kentzo's user avatar
  • 123
1 vote
1 answer
952 views

Disassemble scanf storage register

I am trying to understand scanf function a have 3 question regarding it. this is c file: #include <stdio.h> #include <stdlib.h> int main(){ int x; printf("Enter X:\n"); scanf(...
Herdsman's user avatar
  • 111
0 votes
1 answer
3k views

Extracting Assembly line code from an executable in Ghidra

I'm using Ghidra to reverse engineer an EXE file and save its assembly line code only. Does Ghidra have any function or scripts which exports the assembly line code? I don't want to manually copy the ...
Sajjad Zulphekari's user avatar
1 vote
1 answer
164 views

Issue understanding simple ARM ASM function

I'm a little stuck trying to understand this simple piece of code. It get's a number in R0. The first part seems to be a R0 = abs(R0), but then it get's more difficult. The number of leading zeros is ...
Roman's user avatar
  • 35
1 vote
1 answer
54 views

Are there some assemblers or disassemblers that allow dw/defw etc directives with specified endianness?

I've been working with reverse engineering tape image and disk image formats and the files and filesystems they contain. It struck me that sometimes there are data fields that are not in the same ...
hippietrail's user avatar
3 votes
1 answer
17k views

What does 'test al, al' mean?

I'm trying to reverse engineer a program and i found the following instruction: test al, al je label what does these two instruction do ? Can someone explain please ?
Garde Des Ombres's user avatar
2 votes
2 answers
1k views

Dealing with obfuscated PUSH PUSH RET instructions

I wanted to run an app on a VM but there are PUSH PUSH RETs stopping me from looking at their anti VM code. There is a messagebox when I run it on a VM. I set a breakpoint at MessageBoxA and it gets ...
nop's user avatar
  • 153
1 vote
1 answer
137 views

Disassembly to reassembly - 80960: Invalid Scale Factor

I'm disassembling a game which runs on an Intel i960 processor. My disassembly is at a point I would like to try to reassemble it from an IDA Pro generated ASM file. The ASM file needs slight ...
MrFreeman's user avatar
0 votes
1 answer
213 views

dereferencing structure members

I am reading a book on reversing and I am curious about one of the assembly snippet i have read in it. There is a simple disassembly of the function RtlNumberGenericTableElements and it looks like ...
geo10's user avatar
  • 145
-1 votes
1 answer
126 views

Can I traverse the entire WORD array of 4 elements with QWORD PTR?

I want to change values of all WORD array of 4 elements by one step using QWORD PTR mov ebx, OFFSET arr ; arr is WORD of 1,2,3,4 xor qword ptr [ebx], 8000800080008000h ; I get error of constant ...
RedHat's user avatar
  • 1
1 vote
1 answer
87 views

How's this code able to make use of the stack?

I am trying to reverse engineer software to extend its functionality as expected of me. So I don't have the source code with me. Anyways, I am used to seeing codes that start like the one below, and ...
Dexter's's user avatar
  • 115
-2 votes
1 answer
4k views

Debug and crack .NET executable PE

i'm trying to learn reverse engineering for penetration testing my codes and i believe i won't learn unless i can do some practical so I'm trying to crack an application that is written in C# and all ...
Ebrahim Karimi's user avatar
2 votes
1 answer
1k views

IDA Pro: How to change segment register value

For a specific Android library that I have loaded into IDA, I want to switch the THUMB/ARM mode to ARM, no matter the consequences that this is going to have to the code. Is there a way to efficiently ...
blacklister's user avatar
0 votes
1 answer
93 views

Why there are only 8 hexa memory digits while my RAM is 16G

I'm totally new to reverse engineering, when I start debugging my c program with radare2, and start showing assembly, I found that addresses are only 8 hexa digits, which means 16^8 = 4294967296 ...
zyydoosh's user avatar
  • 111
0 votes
0 answers
200 views

Force gcc to use more complex instructions

I am reverse engineering a piece of assembly. I am trying to write the equivalent code in C, however, when I compile my code, gcc prefers to use simple instructions instead of the complex ones that ...
Bat's user avatar
  • 101
0 votes
1 answer
87 views

Problem with set of instructions in dissasembly

first of all I'm new to reverse engineering so here's a noob question hahaha, I'm trying to solve a crackme and I found this set of instructions: Why would it move the content of eax into cd:...
sbluff's user avatar
  • 15
1 vote
0 answers
314 views

What to do with a text file of disassembly code and binaries?

I am fairly new to software reverse engineering and I'd like to know how proceed with analyzing a program if I have a text file of disassembly code and a bin file of binary data. I understand ...
DylanG1991's user avatar
2 votes
2 answers
742 views

How to decompile "call eax" in IDA Pro?

I know that there is a similar question but the answers didn't provide any fix for that problem. I am decompiling a .dll file, and I have found out the subroutine that I needed, but it's throwing a "...
xxd's user avatar
  • 23
1 vote
1 answer
1k views

Ghidra scripting get information from decompile window

I am using Ghidra and when clicking for example in the decompile window on a specific raw, it change the cursor in the assembly window to the exact location in the assembly. Is there any option to do ...
Logan's user avatar
  • 71
0 votes
1 answer
105 views

Need some help and advices as regards as reverse engineering IoT devices

Hi everyone, I saw this video on youtube as regards as reversing IPTV cameras and finding security vulnerabilities: Black Hat 2013 - Exploiting Network Surveillance Cameras Like a Hollywood Hacker I ...
user avatar
-1 votes
1 answer
178 views

Automatic decompilation from Assembly x86

Is there a tool to automatic decompile an assembly x86 code? What I need is a tool where I simply paste my code and it returns C code. Thanks
Andrea Olla's user avatar
2 votes
2 answers
617 views

What is the equivalent of the dollar sign from jmp $+1 in GAS syntax?

I have an asm program made with intel syntax. In this program, I am using this syntax jz $+1 from INTEL (+gcc), that means that I jump into the jz instruction (which is 2 bytes). I jump 1 byte further ...
Nark's user avatar
  • 283
2 votes
1 answer
123 views

Way to check if two assembly programs (one possibly compiled with optimizations) come from the same C source code?

Let's suppose I have two programs in assembly code. And I want to check if they both came from the same source code, but one was compiled with optimizations. Is there a tool that can do this? Or some ...
JBraha's user avatar
  • 133
0 votes
1 answer
710 views

x86 ELF - argc location on stack?

According to the System V ABI for x86, esp should be pointing at argc when entering main. However, I've seen many binaries where argc instead is retrieved from esp + 4, or esp + 8. Is this correct, or ...
Martin's user avatar
  • 103
1 vote
2 answers
271 views

increment a register which has maximal value?

I am looking at some assembly code and can't get my head around it. The code below is shown in IDA. My question revolves on what happens in the loop. Let me explain what I exactly don't understand in ...
Mr Krisey's user avatar
2 votes
1 answer
894 views

Find password in a c compiled binary file

I'm currently learning to do some basic reverse engineering of binary files using Cutter. The program i'm struggling on test if the password entered as argument is correct, if not, return an error ...
xdka's user avatar
  • 21
0 votes
1 answer
219 views

"check:" keyword in Ghidra

I have disassembled the crackme0x06 challenge (http://security.cs.rpi.edu/courses/binexp-spring2015 inside challenges.zip). It's an ELF 32bit unstripped binary. The decompiled C code using Ghidra ...
Prithi's user avatar
  • 3
2 votes
1 answer
747 views

Why is there no call to strcpy in assembly?

I try to better understand assembly and currently playing around with some compiled c snippets. I have the following snippet: #include <stdio.h> #include <string.h> int main() { char ...
joachim's user avatar
  • 21
5 votes
1 answer
3k views

Is it possible to modify a movss or xmm# in Assembly using Cheat Engine?

Im using cheat engine as a beginner to getting into Disassembly and Hacking, and I want to know how to modify an address/pointer (not really sure how to term it) thats using a movss [...],xmm#? ...
Mister SirCode's user avatar
0 votes
1 answer
236 views

xor eax,3 why does the input change the way it does?

I am new to reverse engineering and I am trying to figure out exactly what xor is doing in this little program. I know if I put any number other than 0 I get a xor eax,3 so if I put in 1 I get 2 if I ...
Parzi's user avatar
  • 111
5 votes
3 answers
12k views

GDB hangs when I try to run and debug a binary

When I type gdb a.out and then run inside the gdb itself I get stuck on the empty line: jericho-laptop:exploit.education jericho$ gdb a.out GNU gdb (GDB) 9.1 ... Reading symbols from a.out... (No ...
user3732445's user avatar
9 votes
4 answers
10k views

What is the difference between MOV and LEA in example?

Looking at an assembly code snippet I see: lea rax, [rbp-0x50] Which tells me that the rax register now points to whatever value is in rbp-hex(50). Question. Would I achieve the same result doing ...
user3732445's user avatar
2 votes
1 answer
1k views

Help understanding MOVSXD

I've tried reading the documentation but the functionality of this instruction is still cloudy to me. For an example, I would like to know what is stored in RDX after these instructions: mov edx, ...
Chase Opsahl's user avatar
2 votes
1 answer
366 views

How to calculate Opcode Length from Ollydbg

Suppose I reverse a dll, and searching for a Function, say for instance Send(), I have reversed the ws2_32.dll now How Can i calculate the number of bytes from there to know that i need 5 bytes of ...
Tom's user avatar
  • 21
1 vote
1 answer
406 views

Adding a static variable to Windows DLL

I'm trying to patch a function in a Windows x86 DLL, however it turned out that I need a static variable to store some state that wasn't correctly preserved by the original executable across calls. I ...
Hai Zhang's user avatar
  • 111
1 vote
1 answer
225 views

Shellcode not working correctly

I wrote a small program in assembly which is supposed to print "AAAA". It works fine when I run it directly, but when I run it as a shellcode in a c program, it doesn't work. Please help. Here is the ...
0xVikas's user avatar
  • 23
2 votes
1 answer
3k views

Understanding ghidra disassembly

I'm kind of new to assembly and ghidra as a tool. I have a question about the meaning of this line Mov dword PTR [ESP] => local_70 , eax I get we are moving eax into the left side but I'm not ...
Glegan's user avatar
  • 21
0 votes
1 answer
130 views

Can relative offsets in instructions like call and jmp change after recompiling the same code, or running it in another computer?

So let's say we want to use some instructions as signature for a malware, and it includes some call instructions or jmp instructions. Now, as far as I have seen, they always contain relative offsets ...
OneAndOnly's user avatar
0 votes
0 answers
54 views

Performing Buffer overflow in Linux

I have buffer overflow in a program i check(it is an array of pointers, and i can overflow the data in the first pointer), but the data i can write is not on the stack, it is on a space the system ...
Raien land's user avatar
2 votes
3 answers
465 views

High-level language decompiler on WIndows

So I have been using Binary ninja and I was wondering if there was any other tool except IDA or any binary ninja plugin that would transform assembly code into high level code, I already tried binja-...
TesterUo's user avatar
1 vote
2 answers
1k views

Byte-patch a JMP

I have an address and I want to byte-patch it because there is a JMP that I want to block. But when I NOP it, the game just crash because it corrupt the function. So, I don't know what to do for block ...
Beebey's user avatar
  • 11
12 votes
3 answers
14k views

ARMv8 (AArch64, ARM64) opcodes list

I'm sorry for such as questions where answer would seem to be easily searched in google... Some time ago I have seen table/list of ARMv8 instructions with opcodes and it was perfect, but I lost link. ...
Olvin Roght's user avatar
3 votes
1 answer
3k views

LDR specifier combination UXTW

Sorry, if this question seems stupid, but I am new in arm64 and next 2 assembly lines seriously damaged my brain: LDR W0, [X30,W0,UXTW#2] ADD X30, X30, W0,UXTW I have readed ...
Olvin Roght's user avatar
1 vote
1 answer
94 views

Is there a handy assembly to mock app conversion tool?

It might be too silly of a question, but here you go. Suppose you have some software that contains a tricky nested assembly sequence (like this one) you try to reverse engineer. brain*[pen&paper] ...
TAbdiukov's user avatar
  • 197
2 votes
2 answers
1k views

Static analysis obfuscated code

I'm reversing a code that is heavily obfuscated. It uses opaque predicates, call stack tampering, junk code and control flow flattering. Call stack tampering uses indirect branches (push register / ...
Francisco Linan's user avatar
2 votes
1 answer
397 views

Finding the correct input of an executable to print out the flag. IDA 7

I'm trying to understand the behaviour of the code below so I can determine what input will trigger the "YOU DID IT !~!" string (at the end of the program instructions): .text:00C21034 Buf= byte ptr -...
Elyasaf755's user avatar

1
3 4
5
6 7
17