assembly

Should I use Python or Assembly for a super fast copy program

As a maintenance issue I need to routinely (3-5 times per year) copy a repository that is now has over 20 million files and exceeds 1.5 terabytes in total disk space. I am currently using RICHCOPY, but have tried others. RICHCOPY seems the fastest but I do not believe I am getting close to the limits of the capabilities of my XP machin...

i386 assembly question: why do I need to meddle with the stack pointer?

Hello everyone, I decided it would be fun to learn x86 assembly during the summer break. So I started with a very simple hello world program, borrowing on free examples gcc -S could give me. I ended up with this: HELLO: .ascii "Hello, world!\12\0" .text .globl _main _main: pushl %ebp # 1. puts the base stack addre...

FASM using custom resource files

How do I include my custom resource files and be able to access them with the windows api? ...

[Assembly] jnz after xor?

After using IDA Pro to disassemble a x86 dll, I found this code (Comments added by me in pusedo-c code. I hope they're correct): test ebx, ebx ; if (ebx == false) jz short loc_6385A34B ; Jump to 0x6385a34b mov eax, [ebx+84h] ; eax = *(ebx+0x84) mov ecx, [esi+84h] ; ecx = *(esi+0x84) mov al, [eax+30h] ; al ...

Question on Addressing Modes in PDP-11 Assembler

I have small question about pdp-11(simulator), I have this command (it begins from the address 1000) add 2500, #2500 and this initial list: register/address - initial value pc 1000 sp 600 2500 3000 and I want to know how this small snippet exactly runs, in my booklet I found that: firstly...

x86 Assembly Question about outputting

My code looks like this _declspec(naked) void f(unsigned int input,unsigned int *output) { __asm{ push dword ptr[esp+4] call factorial pop ecx mov [output], eax //copy result ret } } __declspec(naked) unsigned int factorial(unsigned int n) { __asm{ push esi mov esi, dword ptr [esp+8] cmp esi, 1 jg RECURSE m...

[Assembly] dword ptr? What does that mean?

Could someone explain what this means? (Intel Syntax, x86, Windows) and dword ptr [ebp-4], 0 ...

Decoding equivalent assembly code of C code...

Hi All, Wanting to see the output of the compiler (in assembly) for some C code, I wrote a simple program in C and generated its assembly file using gcc. The code is this: #include <stdio.h> int main() { int i = 0; if ( i == 0 ) { printf("testing\n"); } return 0; } The generated assembly fo...

Need serious assembly help

I have been trying to learn assembly for a few years now. I get to do a "Hello, World" program but never further. I find it so hard. Is anyone able to point me to a place or maybe even themselves, teach me some? I have prior programming experice mainly in python. So i am not completely unfamiliar with programming. ...

High level macro not recognized - Beginner MASM

main proc finit .while ang < 91 invoke func, ang fstp res print real8$(ang), 13, 10 print real8$(res), 13, 10 fld ang fld1 fadd fstp ang .endw ret main endp What's wrong with this piece of MASM code? I get an error on .endw. I have ran some tests to ensure myself of that. Assembler tells me invalid ...

Need complete picture of virtual adress space

Hello, This image gives a good picture about Virtual Adress space. But it only says half of the story. It only gives complete picture of User Adress space ie.. lower 50% (or 75% in some cases). What about the rest 50% (or 25%) which is occupied by the kernel. I know kernel also has so many different things like kernel modules , devic...

Software Protection: Shuffeling my application?

Hi, I want to continue on my previous question: http://stackoverflow.com/questions/3007168/torrents-can-i-protect-my-software-by-sending-wrong-bytes Developer Art suggested to add a unique key to the application, to identifier the cracker. But JAB said that crackers can search where my unique key is located by checking for binary diffe...

[ebp + 6] instead of +8 in a JIT compiler

I'm implementing a simplistic JIT compiler in a VM I'm writing for fun (mostly to learn more about language design) and I'm getting some weird behavior, maybe someone can tell me why. First I define a JIT "prototype" both for C and C++: #ifdef __cplusplus typedef void* (*_JIT_METHOD) (...); #else typedef (*_JIT_METHOD) (); #en...

MACRO compilation PROBLEM

i was given a primitive task to find out (and to put in cl) how many nums in an array are bigger than the following ones, (meaning if (arr[i] > arr[i+1]) count++;) but i've problems as it has to be a macro. i am getting errors from TASM. can someone give me a pointer? SortA macro a, l LOCAL noes irp reg, <si,di,bx> push reg end...

How do I patch a Windows API at runtime so that it to returns 0 in x64?

In x86, I get the function address using GetProcAddress() and write a simple XOR EAX,EAX; RET 4; in it. Simple and effective. How do I do the same in x64? bool DisableSetUnhandledExceptionFilter() { const BYTE PatchBytes[5] = { 0x33, 0xC0, 0xC2, 0x04, 0x00 }; // XOR EAX,EAX; RET 4; // Obtain the address of SetUnhandledExceptionFilt...

Switch case assembly level code

Hi All, I am programming C on cygwin windows. After having done a bit of C programming and getting comfortable with the language, I wanted to look under the hood and see what the compiler is doing for the code that I write. So I wrote down a code block containing switch case statements and converted them into assembly using: gcc -...

How I do delay on assembler 16 bit?

_________Title___________ ...

Delay On Assembler?

Hey, I want to know how i can do delay (Timer) on assembler 16 bit on PC. Thank You for helping, Norm. OS: Windows CODE: delay: inc bx cmp bx,WORD ptr[time] je delay2 jmp delay delay2: inc dx cmp dx,WORD ptr[time2] je delay3 jmp delay mov bx,0 delay3: inc cx cmp cx,WORD ptr[tim...

8 bit music type can play in Assembler 16 bit PC?

Possible Duplicate: Building a music player with assembly If it's avilable, how i can do that? OS:Windos. Sorry on the bad English.. ...

Is it possible to access 32-bit registers in C ?

Is it possible to access 32-bit registers in C ? If it is, how ? And if not, then is there any way to embed Assembly code in C ? I`m using the MinGW compiler, by the way. Thanks in advance! ...