Skip to main content

MASM Over Explained

0 likes • Jun 29, 2021
Plaintext
Loading...
Download

More Plaintext Posts

Test Post (Public)

NovarionNoel
0 likes • Jan 31, 2023
Plaintext
I'm shy now that I know other people can automatically see this one.
But it must be done, for science (and proposal writing)

AWS EC2 Cloud-Init User Detail

AustinLeath
0 likes • Nov 18, 2022
Plaintext
#!/bin/bash
yum -y install httpd
systemctl enable httpd
systemctl start httpd
hostname > /var/www/html/index.html

default netplan

AustinLeath
0 likes • Nov 18, 2022
Plaintext
# This is the network config written by 'subiquity'
network:
ethernets:
enp0s3:
dhcp4: yes
nameservers:
addresses: [8.8.8.8,8.8.4.4]
version: 2

SCCM drive formatting

AustinLeath
0 likes • Nov 18, 2022
Plaintext
in case of SCCM error 0x800700A1 do the following:
diskpart
list disk (list all disks on system)
select disk 0 (0 being the disk to setup)
clean (wipes the disk)
create partition primary (creates windows partition)
select partition 1 (selects the first partition)
format quick fs=NTFS (sets format of primary partition)
assign letter C (assigns the drive letter to "C")
exit (exits diskpart)

Lorem Ipsum Plaintext

CodeCatch
0 likes • Oct 15, 2022
Plaintext
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

x86 MASM C Linking

ThiccDaddyLOAF
0 likes • Jun 30, 2021
Plaintext
;Main.asm
.386
.model small,c ;This bit is important, I think.
.stack 1000h
.data
hello db "Hello world!",0
.code
;includelib libucrt.lib ;All this shit is already here if you have a C object file
includelib legacy_stdio_definitions.lib ;Except for this. Basically printf, puts etc
;includelib libcmt.lib
;includelib libvcruntime.lib ;Visual Studio exception handling and type checking. Not needed otherwise
extrn printf:near ;Extern everything you are gonna use from the c obj files
extrn plusTwo:near
extrn exit:near
public plusOne ;Have to declare it public for the linker to see it. In NASM, it's .globl or global
plusOne proc ;Our int plusOne(int) function.
pop eax ;Parameters are stored on the stack.
add eax, 1
ret ;eax is whatever is returned from functions. Also why you can only return one thing.
plusOne endp
public main
main proc
push offset hello
call printf
push 1
call plusTwo
push 0
call exit
main endp
end ;End of file, not program
//bruh.c
//#include <stdio.h> Has to be included with "includelib legacy_stdio_definitions.lib" in the asm file for some reason.
//int printf(const char* format, ...);
extern int plusOne(int); //Extern everything you are gonna use from the asm obj files
int plusTwo(int num) {
return plusOne(plusOne(num)); //Plus one is defined in the assembly.
}