Loading...
More Plaintext Posts
aaaa
; Sample project from the video "Setup Visual Studio for Assembly MASM" https://www.youtube.com/watch?v=LqyVybUodXE; Basically reverses a string using the stack. It stores the result where the string was defined, modifying the string itself in memory..386;x86 instruction set. This is only nessesary in x32 MASM..model flat, stdcall;Defines the memory model, and the calling convention http://masm32.com/board/index.php?topic=6942.msg74381#msg74381.stack 4096;Sets the size of the stack. 4096 is 1024*4 which is 4 kilobytes.;option casemap:none;Make labels case sensitive, so things like ExitProcess and exitprocess and myName and myname are different.;include \masm32\include\windows.inc;include \masm32\include\kernel32.inc;includelib \masm32\lib\kernel32.lib;Some system calls or something are defined here. Not needed if you just use assembly along side c++ or c. Also can't be used if on anything other than windows.ExitProcess PROTO, dwEXITCODE:DWORD;Define the ExitProcess function prototype. ExitProcess is defined somewhere in the Windows API on the OS level..data;Starts the data section of the program, where a lot of read-write memory is neededmyName BYTE "Leif Messinger", 0;Allocates a string named myName initialized with LeifMessinger followed by a terminating null charactermyNameLength = ($ - myName) - 1;Allocates a 32 bit number which is initialized to be the current pointer ($), minus the pointer to the start of the string, minus one (because of the null terminating character).code;Starts the section of the program where your code goes. Is the same as .text, and in theory, the name doesn't even matter. The importance is that it ends the data section, which was read-write. Code should be read only.main PROC;States the start of the main procedure. This is where the program starts executing.mov ecx, myNameLength;Sets the loop counter to myNameLength. The loop counts backwards until it reaches zero, meaning that it loops myNameLength times.mov esi, 0;Sets the general purpose register esi to 0. esi was named because it's a "source index" when moving stuff. It's basically like an i variable in c.StackIt:;Flag to the start of the loop. Ahh, tss push itmovzx eax, myName[esi];movzx stands for move with zero extend. It pads the source data (myName[esi]) with enough zeros to fill 32 bits, or enough for the push and pop instructions.push eax;Pushes the character we just got out of that string (and padded with zeros) to the stackinc esi;Increments our indexloop StackIt;Decrements ecx and checks if it is equal to 0. If it isn't, jump to StackItmov ecx, myNameLength;Sets the loop counter to myNameLength. The loop counts backwards until it reaches zero, meaning that it loops myNameLength times.mov esi, 0;Sets the general purpose register esi to 0. esi was named because it's a "source index" when moving stuff. It's basically like an i variable in c.PopIt:;Flag to the start of the loop.pop eax;Pops a 32 bit number off the stack and places it in eaxmov myName[esi], al;Move the lower byte of eax (al) to the string (myName) at the index esi. This overwrites one character of the string.inc esi;Increments our indexloop PopIt;Decrements ecx and checks if it is equal to 0. If it isn't, jump to StackItINVOKE ExitProcess, 0;Exits the program with the error code of 0. The return type was declared in that prototype at the top, and defined by the operating systemmain ENDP;States the end of the main procedureEND main;Declares the end of the file. Also defines where the start of the program is, which is main.;Normally the linker looks for main as a place to start, but if you are writing pure assembly, that is need.;Saying END without a pointer to the start is also alowed for people who like to live dangerously.
;Main.asm.386.model small,c ;This bit is important, I think..stack 1000h.datahello db "Hello world!",0.code;includelib libucrt.lib ;All this shit is already here if you have a C object fileincludelib 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 otherwiseextrn printf:near ;Extern everything you are gonna use from the c obj filesextrn plusTwo:nearextrn exit:nearpublic plusOne ;Have to declare it public for the linker to see it. In NASM, it's .globl or globalplusOne proc ;Our int plusOne(int) function.pop eax ;Parameters are stored on the stack.add eax, 1ret ;eax is whatever is returned from functions. Also why you can only return one thing.plusOne endppublic mainmain procpush offset hellocall printfpush 1call plusTwopush 0call exitmain endpend ;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 filesint plusTwo(int num) {return plusOne(plusOne(num)); //Plus one is defined in the assembly.}
103 C109 C112 C115 A B D E118 B118 B121 B203 A C D E206 C209 A212 C215 D218 ?221 A B C225 B, OR A302 C D303 C305 A,B308 C311 A B314 B,D OR B,C317 C320 B322 B403 C404 A406 A C D E409 C217 NOT B 172.16.0.0/16 172.17.0.0/16 192.168.50.0/24 192.168.55.0/24 10.9.0.0/16319 NOT B The traffic selectors do not include the source address.202 C There is no route for a VPC peering (pcx-xxx) and only a local route in rtb-xxxxxx854105 C Yes, AWS VPN-2 tunnels will come UP and EC2 can reach only a subset of the 120 unique prefixes.117 A Peer A will delete the outgoing SA, while processing the Delete request from Peer B222 B 2 DX PEs are launched and 1 Distinguished Endpoint.408 C (((m1+m2)/60)*8)/1000000214 B All of the time304 MAYBE ONE OF C E - The customer has an ACL not allowing inbound traffic. / The customer has entered the wrong CGW address.108 NOT A IKE Fragmentation will fragment both IKE_SA_INIT and IKE_AUTH message.102 NOT C Sends Informational Message encrypted with the IKE SA, Informing the Peer to DELETE active Child SAs.316 A The TS does not include the source address.405 A Getafix had a single failed healthcheck to the PE.
console/log
{"bindAddress": "","bindPort": 2001,"publicAddress": "","publicPort": 2001,"a2s": {"address": "172.16.1.80","port": 17777},"rcon": {"address": "172.16.1.80","port": 19999,"password": "fobarma1234!","permission": "admin","blacklist": [],"whitelist": []},"game": {"name": "[NA1] FOB Arma | Hardcore Rostov Conflict | fobarma.com","password": "","passwordAdmin": "fobarma1234!","admins": ["76561198054239558","76561198097176793","76561198968225358","76561198073098171"],"scenarioId": "{00AFE153F5925E71}Missions/RostovConflict.conf","maxPlayers": 128,"visible": true,"crossPlatform": true,"gameProperties": {"serverMaxViewDistance": 1600,"serverMinGrassDistance": 100,"networkViewDistance": 1500,"disableThirdPerson": true,"fastValidation": true,"battlEye": true,"VONDisableUI": false,"VONDisableDirectSpeechUI": false,"VONCanTransmitCrossFaction": false},"mods": [{"modId": "606B4278950F623C","name": "ROSTOV - SCENARIOS","version": "1.0.1"},{"modId": "5E172C6CAD10FBFC","name": "ROSTOV OBLAST","version": "1.0.1"},{"modId": "5AAAC70D754245DD","name": "Server Admin Tools","version": "1.0.62"},{"modId": "595F2BF2F44836FB","name": "RHS - Status Quo","version": "0.10.4075"},{"modId": "645468B7696B4959","name": "RHStoVanillaArsenals","version": "1.0.0"},{"modId": "62E76AB6CC8DFD39","name": "RHS Extra Camo Pack","version": "1.0.8"},{"modId": "5E389BB9F58B79A6","name": "SpaceCore","version": "1.2.38"},{"modId": "5F2D346C916B6FCC","name": "BLEEDING FROM WHERE DAMNIT","version": "1.0.1"},{"modId": "5F0289EB493E9977","name": "Team Balancer","version": "1.0.0"},{"modId": "606B100247F5C709","name": "Bacon Loadout Editor","version": "1.2.26"},{"modId": "5964E0B3BB7410CE","name": "Game Master Enhanced","version": "1.3.2"},{"modId": "5994AD5A9F33BE57","name": "Game Master FX","version": "1.0.94"},{"modId": "622B1027A8796320","name": "GMFX artillery expansion","version": "1.0.3"},{"modId": "5F2944B7474F043F","name": "Disable Game Master Budgets","version": "1.0.1"},{"modId": "5C73156675E11A0F","name": "GM Persistent Loadouts","version": "1.0.18"},{"modId": "613D4634CBB276B2","name": "Disable Arma Vision","version": "2.0.0"},{"modId": "62E0B4EB51FCE050","name": "Keep Map Markers on Disconnect","version": "0.1.0"},{"name": "Player Map Markers","version": "1.1.2","modId": "5E92F5A4A1B75A75"},{"modId": "5965550F24A0C152","name": "Where Am I","version": "1.1.0"},{"modId": "6088A3044B7ECBFD","name": "Keep Gun When Uncon","version": "1.0.1"},{"modId": "62FCEB51DF8527B6","name": "Improved Blood Effect","version": "1.2.10"},{"name": "Bacon Suppressors","version": "1.2.7","modId": "5AB301290317994A"},{"name": "RIS Laser Attachments","version": "1.0.79","modId": "5ABD0CB57F7E9EB1"},{"modId": "60EF191B900214C5","name": "Single Slot for primary weapon","version": "1.0.1"},{"modId": "60DCBC196B6C9667","name": "More Damage","version": "1.0.3"},{"modId": "6445046A364DE86D","name": "War Tapes 3.0 Everon Clashes","version": "1.0.1"},{"modId": "614627BACB991914","name": "Prefab Optimizations - Core","version": "0.3.1"},{"modId": "611773E9DBCA20AC","name": "Prefab Optimizations","version": "1.0.1"},{"modId": "6148E5A6D60AA2BA","name": "Prefab Optimizations - Glass","version": "0.2.6"},{"modId": "5D071A427403AB2C","name": "Chat Message Roles","version": "1.0.11"},{"modId": "61B503ED3E717226","name": "SpawnLoadout_NoArsenal","version": "0.1.0"},{"modId": "61AAD18DFE866001","name": "Supply Truck Radio","version": "1.0.3"},{"modId": "5C9758250C8C56F1","name": "Bon Action Animations","version": "0.0.36"},{"modId": "64674443E6874E2F","name": "SH sound config","version": "1.0.7"},{"name": "Change Teams","version": "1.0.1","modId": "5E2B79A65B0B6362"},{"modId": "646E249764095363","name": "T.A.O RHS COMPATIBILITY","version": "1.0.1"},{"modId": "61ECB5EFAA346151","name": "TacticalAnimationOverhaul TEST","version": "2.0.57"},{"modId": "62B0CDBBC9E0D43B","name": "Fog of War","version": "1.0.0"},{"modId": "613B4DD4A91CA144","name": "LM SUPPRESSION","version": "1.2.2"},{"modId": "5B0D1E4380971EBD","name": "COALITION Squad Interface","version": "1.6.13"},{"modId": "5F0913BAAC69ABF5","name": "Garbage Collector Patch","version": "1.1.2"},{"modId": "620A15433CA8D688","name": "WeakerWalls","version": "1.0.0"},{"modId": "62113AA293414DB9","name": "Bandage Patch","version": "1.0.4"},{"modId": "64715AAA95B1297B","name": "Enhanced Ammo","version": "1.0.2"},{"modId": "60C4CE4888FF4621","name": "ACE Core","version": "1.2.1"},{"modId": "60C4C12DAE90727B","name": "ACE Medical","version": "1.2.0"},{"modId": "611CB1D409001EB0","name": "ACE Magazine Repack","version": "1.2.0"},{"modId": "5DBD560C5148E1DA","name": "ACE Carrying","version": "1.2.0"},{"modId": "6214CEA5DA92BFF3","name": "ACE Medical Prototypes","version": "0.1.10"},{"modId": "64677CE8B68C9599","name": "ACE Medical Quick Slots","version": "0.0.10"},{"modId": "60C53A9372ED3964","name": "ACE Compass","version": "1.2.0"},{"modId": "648B595F6C72B4CB","name": "WCS_Settings","version": "1.0.11"},{"modId": "631C3C1AEE9C90BC","name": "WCS_Sounds","version": "1.0.15"},{"modId": "613A878AD341C163","name": "WCS Script Optimizations","version": "2.0.36"},{"modId": "63294BA2D9F0339B","name": "WCS_ZU-23-2","version": "1.0.0"},{"modId": "61C74A8B647617DA","name": "WCS_Attachments","version": "1.0.12"},{"modId": "615806DC6C57AF02","name": "WCS_NATO","version": "1.0.39"},{"modId": "62A668F513428630","name": "WCS_Scopes","version": "1.0.6"},{"modId": "61BA4EB5C886D396","name": "WCS_VehicleLock","version": "1.0.11"},{"modId": "629B2BA37EFFD577","name": "WCS_Armament","version": "1.0.80"},{"modId": "64610AFB74AA9842","name": "WCS_Core","version": "1.0.1"},{"modId": "614D1A3874A23AD9","name": "WCS_Interface","version": "1.0.21"},{"modId": "628933A0D3A0D700","name": "WCS_Mi-24V","version": "1.0.43"},{"modId": "615818DA7C0343FD","name": "WCS_RU","version": "2.0.16"},{"modId": "612F512CD4CB21D5","name": "WCS_Earplugs","version": "1.0.9"},{"modId": "62CCD69DD17E4F2F","name": "AKI CORE","version": "1.0.3"},{"modId": "5B383D4CB27E0D54","name": "BMP-3 IFV","version": "1.0.36"},{"modId": "5D0551624969C92E","name": "Zeliks Character","version": "1.1.14"},{"modId": "6273146ADFE8241D","name": "AH6M","version": "1.1.14"},{"modId": "628F720BC527C143","name": "RAYZIs OPTICS","version": "1.1.10"},{"modId": "6319242B050D1483","name": "NSW-D WEAPON PACK","version": "1.0.17"},{"modId": "5CF0C3158AB2337E","name": "TASK FORCE MATTOCK UNIFORMS","version": "1.0.4"},{"modId": "63132835C7B48A57","name": "STRIKEWORKS RU SMALL ARMS PACK","version": "1.0.43"},{"modId": "618C2492CC62D0D5","name": "Gs BTR-90","version": "3.0.3"},{"modId": "62DED82740D3DDDB","name": "Custom Attachments Slots","version": "1.0.1"},{"modId": "62BE25F97D19ED65","name": "Mines Remixed","version": "0.9.4"},{"modId": "63326E0476294082","name": "Body Color Tape","version": "0.0.29"},{"modId": "621D3771875C1D3D","name": "Car Radio 4 All","version": "1.0.2"},{"modId": "5E0AB16BEB16D6A4","name": "T-72 Main Battle Tank","version": "1.2.10"},{"modId": "60A84677938AF7D8","name": "Better Supply Trucks","version": "1.0.2"},{"modId": "5E524E4FEECCA92B","name": "BMP-1 IFV","version": "1.0.16"},{"modId": "5D1880C4AD410C14","name": "M1 Abrams","version": "2.0.16"},{"modId": "63120AE07E6C0966","name": "M2 Bradley Fighting Vehicle","version": "1.0.22"},{"name": "ArmaTerrainCore","version": "1.1.0","modId": "60B524F7A5AE96A8"},{"modId": "60ED3CC6E7E40221","name": "Sikorsky MH60 DAP Project","version": "0.6.28"},{"modId": "62D15D0025AE021B","name": "ZSU-23-4 Shilka","version": "1.0.6"},{"modId": "6447378A6C7CB747","name": "PKP-B","version": "0.0.38"},{"modId": "60620915CACA0ED1","name": "MCX LT_ MCX LVAW _ .300BLK","version": "1.0.11"}]},"operating": {"lobbyPlayerSynchronise": true,"joinQueue": {"maxSize": 50}}}