C++与x64汇编混合编程——WX逆向学习(五)

逆向分析 · 2024-01-15

寄存器区别

32位:

eax ebx ecx edx esi edi esp ebp
eip
eflags

64位:

rax rbx rcx rdx rsi rdi rsp rbp r8 r9 r10 r11 r12 r13 r14 r15
rip
rflags

寄存器位数从32位变成64位,新增了几个寄存器

函数调用约定

_cdecl
_stdcall
_thiscall
_fastcall

在64位下,大部分情况下使用_fastcall

返回值

rax eax ax al
64 32 16 8
QWORD
DWORD
WORD
BYTE

返回值放到rax里

参数传递

快速调用约定:
32位:使用2个寄存器
64位:使用4个寄存器,如果有更多参数,则使用堆栈,且顺序固定为:rcx > rdx > r8 > r9 > 堆栈

使用printf("%d %d %d",a,b,c)四个参数演示:
32位:
push c
push b
push a
push "%d %d %d"
call printf
add esp,16

64位:
sub rsp,28h
mov r9,c
mov r8,b
mov rdx,a
lea rcx,"%d %d %d"
call printf
add rsp,28h

C++混合编程

  • 32位,使用关键字:__asm{}
  • 64位,有2种方式

    1. 使用Intel编译器
    2. 写一个独立asm文件,然后进行调用
wx逆向 学习笔记
  1. Jamespossy 06-07

    https://pharmexpress24.shop/# Motilium

  2. Jamespossy 06-07

    http://pharmexpress24.com/# warfarin pharmacy protocol

  3. AaronColla 06-07

    viagra generic pharmacy: rx pharmacy india - people’s pharmacy prozac

  4. AaronColla 06-07

    Indinavir (Cipla Ltd): Pharm Express 24 - european pharmacy viagra

  5. AaronColla 06-07

    online pharmacy hong kong: Pharm Express 24 - asda pharmacy mefloquine

  6. Быстрые результаты в SEO, используя.
    Прогон сайта GSA https://www.kwork.ru/links/41629912/seo-pushka-dlya-sayta-mnogourovnevaya-piramida-ssylok-pod-klyuch/ .

  7. Приветствую вас!
    Хочу обсудить проблему генитальных бородавок и их лечение.
    Многие люди сталкиваются с генитальными бородавками, но мало говорят о методах профилактики и лечения.
    Мне посоветовали несколько подходов: от лекарственных препаратов до аппаратных процедур.
    Слышал, что криодеструкция может быть болезненной. Это правда?
    Мне кажется, что лазерное удаление — наиболее перспективный вариант, но я ещё не решил.
    Есть ли риск заражения партнера после лечения?
    Заранее благодарю всех, кто поделится опытом.
    генитальные бородавки на половых губах http://genitalnyeborodavki.ru/ .

  8. Avtoservis_neSl 2024-12-02

    Эксперты по ремонту автомобилей в столице, где качество и надежность гарантированы.
    Автосервисы в москве на карте http://crabcar.ru/ .

  9. latlkwbvia 2024-12-01

    《很高兴遇见你》爱情片高清在线免费观看:https://www.jgz518.com/xingkong/11095.html

  10. XRArilk 2024-11-27

    Hello!

    Good cheer to all on this beautiful day!!!!!

    Good luck :)

  11. mqwvhusrwo 2024-11-27

    《狂暴》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/80793.html