Diff
checker
Texto
Texto
Imágenes
Documentos
Excel
Carpetas
Legal
Enterprise
Aplicación de escritorio
Precios
Iniciar sesión
Descargar Diffchecker Desktop
Comparar texto
Encuentra la diferencia entre dos archivos de texto
Herramientas
Historial
Editor live
Ocultar sin cambios
Sin ajuste de línea
Vista
Dividido
Unificado
Nivel de detalle
Inteligente
Palabra
Letra
Resaltado de sintaxis
Elegir sintaxis
Ignorar
Transformar texto
Ir al primer cambio
Editar entrada
Diffchecker Desktop
La forma más segura de usar Diffchecker. ¡Obtén la app de Diffchecker Desktop: tus diffs nunca salen de tu computadora!
Obtener Desktop
15658.mc
Creado
hace 2 años
El diff nunca expira
Borrar
Exportar
Compartir
Explicar
58 eliminaciones
Líneas
Total
Eliminado
Caracteres
Total
Eliminado
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
92 líneas
Copiar todo
98 adiciones
Líneas
Total
Añadido
Caracteres
Total
Añadido
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
126 líneas
Copiar todo
; Assembly listing for method System.Security.Cryptography.CryptographicOperations:FixedTimeEquals(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte]):ubyte (MinOpts)
; Assembly listing for method System.Security.Cryptography.CryptographicOperations:FixedTimeEquals(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte]):ubyte (MinOpts)
; Emitting BLENDED_CODE for generic ARM64 - Windows
; Emitting BLENDED_CODE for generic ARM64 - Windows
; MinOpts code
; MinOpts code
; fp based frame
; fp based frame
; partially interruptible
; partially interruptible
G_M000_IG01:
G_M000_IG01:
Copiar
Copiado
Copiar
Copiado
stp fp, lr, [sp, #-0x
5
0]!
stp fp, lr, [sp, #-0x
6
0]!
mov fp, sp
mov fp, sp
Copiar
Copiado
Copiar
Copiado
str x0, [fp, #0x
4
0] //
str x0, [fp, #0x
5
0] //
str x1, [fp, #0x
4
8] //
str x1, [fp, #0x
5
8] //
str x2, [fp, #0x
3
0] //
str x2, [fp, #0x
4
0] //
str x3, [fp, #0x
3
8] //
str x3, [fp, #0x
4
8] //
G_M000_IG02:
G_M000_IG02:
Copiar
Copiado
Copiar
Copiado
add x0, fp, #80 //
str x0, [fp, #0x1C] //
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
str x0, [fp, #0x14] //
ldr x0, [fp, #0x1C] //
ldr x1, [fp, #0x14] //
blr x1
str w0, [fp, #0x30] //
add x0, fp, #64 //
add x0, fp, #64 //
Copiar
Copiado
Copiar
Copiado
movz
x1
, #0xD1FFAB1E
str x0, [fp, #0x14] //
movk
x1
, #0xD1FFAB1E LSL #16
movz
x0
, #0xD1FFAB1E
movk
x1
, #0xD1FFAB1E LSL #32
movk
x0
, #0xD1FFAB1E LSL #16
ldr
x1
, [
x1]
movk
x0
, #0xD1FFAB1E LSL #32
blr x1
ldr
x0
, [
x0]
str
w0
, [fp, #
0x20
] //
str
x0
, [fp, #
0x1C
] //
add
x0,
fp, #
48
//
ldr
x0,
[
fp, #
0x14]
//
movz x1, #0xD1FFAB1E
ldr x1, [
fp, #0x1C] //
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [
x1]
blr x1
blr x1
Copiar
Copiado
Copiar
Copiado
ldr w1, [fp, #0x2
0
] //
str w0, [fp, #0x28] //
ldr w0, [fp, #0x30] //
str w0, [fp, #0x24] //
ldr w0, [fp, #0x28] //
ldr w1, [fp, #0x2
4
] //
cmp w0, w1
cmp w0, w1
beq G_M000_IG04
beq G_M000_IG04
mov w0, wzr
mov w0, wzr
G_M000_IG03:
G_M000_IG03:
Copiar
Copiado
Copiar
Copiado
ldp fp, lr, [sp], #0x
5
0
ldp fp, lr, [sp], #0x
6
0
ret lr
ret lr
G_M000_IG04:
G_M000_IG04:
Copiar
Copiado
Copiar
Copiado
add x0, fp, #
64
//
add x0, fp, #
80 //
movz
x1
, #0xD1FFAB1E
str x0, [fp, #0x1C]
//
movk
x1
, #0xD1FFAB1E LSL #16
movz
x0
, #0xD1FFAB1E
movk
x1
, #0xD1FFAB1E LSL #32
movk
x0
, #0xD1FFAB1E LSL #16
ldr x1, [
x1]
movk
x0
, #0xD1FFAB1E LSL #32
ldr x0, [x0]
str x0, [fp, #0x14] //
ldr x0, [fp, #0x1C] //
ldr x1, [
fp, #0x14] //
blr x1
blr x1
Copiar
Copiado
Copiar
Copiado
str w0, [fp, #0x
2
C] //
str w0, [fp, #0x
3
C] //
str wzr, [fp, #0x
2
8] //
str wzr, [fp, #0x
3
8] //
str wzr, [fp, #0x
2
4] //
str wzr, [fp, #0x
3
4] //
b G_M000_IG06
b G_M000_IG06
G_M000_IG05:
G_M000_IG05:
Copiar
Copiado
Copiar
Copiado
add x0, fp, #
64
//
add x0, fp, #
80 //
ldr w1, [fp, #0x
2
4] //
str x0, [fp, #0x14]
//
movz
x2
, #0xD1FFAB1E
ldr w1, [fp, #0x
3
4] //
movk
x2
, #0xD1FFAB1E LSL #16
movz
x0
, #0xD1FFAB1E
movk
x2
, #0xD1FFAB1E LSL #32
movk
x0
, #0xD1FFAB1E LSL #16
ldr
x2, [x2]
movk
x0
, #0xD1FFAB1E LSL #32
ldr
x0, [x0]
str x0, [fp, #0x1C] //
ldr x0, [fp, #0x14] //
ldr x2, [fp, #0x1C] //
blr x2
blr x2
ldrb w0, [x0]
ldrb w0, [x0]
Copiar
Copiado
Copiar
Copiado
str w0, [fp, #0x
1
C] //
str w0, [fp, #0x
2
C] //
add x0, fp, #
48
//
add x0, fp, #
64 //
ldr w1, [fp, #0x
2
4] //
str x0, [fp, #0x1C]
//
movz
x2
, #0xD1FFAB1E
ldr w1, [fp, #0x
3
4] //
movk
x2
, #0xD1FFAB1E LSL #16
movz
x0
, #0xD1FFAB1E
movk
x2
, #0xD1FFAB1E LSL #32
movk
x0
, #0xD1FFAB1E LSL #16
ldr
x2, [x2]
movk
x0
, #0xD1FFAB1E LSL #32
ldr
x0, [x0]
str x0, [fp, #0x14] //
ldr x0, [fp, #0x1C] //
ldr x2, [fp, #0x14] //
blr x2
blr x2
ldrb w0, [x0]
ldrb w0, [x0]
Copiar
Copiado
Copiar
Copiado
ldr
w1
, [fp, #0x
1
C] //
str w0, [fp, #0x24] //
sub w0,
w1, w0
ldr
w0
, [fp, #0x
2
C] //
ldr
w1
, [fp, #0x2
8
] //
ldrb w1, [fp, #0x24] //
orr
w0,
w0, w1
sub w0,
w0, w1
str
w0
, [fp, #0x2
4
] //
ldr
w0,
[fp, #0x38] //
str w0, [fp, #0x28] //
str w0, [fp, #0x28] //
ldr w0, [fp, #0x24] //
ldr w0, [fp, #0x24] //
Copiar
Copiado
Copiar
Copiado
ldr w1, [fp, #0x28] //
orr w0, w0, w1
str w0, [fp, #0x38] //
ldr w0, [fp, #0x34] //
add w0, w0, #1
add w0, w0, #1
Copiar
Copiado
Copiar
Copiado
str w0, [fp, #0x
2
4] //
str w0, [fp, #0x
3
4] //
G_M000_IG06:
G_M000_IG06:
Copiar
Copiado
Copiar
Copiado
ldr w0, [fp,
#0x24] //
ldr w0, [fp,
#0x34] //
ldr
w1
, [fp, #0x2
C
] //
str w0, [fp, #0x28] //
ldr w0, [fp, #0x3C] //
str w0, [fp,
#0x24] //
ldr
w0, [fp, #0x28] //
ldr w1
, [fp, #0x2
4
] //
cmp w0, w1
cmp w0, w1
blt G_M000_IG05
blt G_M000_IG05
Copiar
Copiado
Copiar
Copiado
ldr w0, [fp, #0x
2
8] //
ldr w0, [fp, #0x
3
8] //
cmp w0, #0
cmp w0, #0
cset x0, eq
cset x0, eq
G_M000_IG07:
G_M000_IG07:
Copiar
Copiado
Copiar
Copiado
ldp fp, lr, [sp], #0x
5
0
ldp fp, lr, [sp], #0x
6
0
ret lr
ret lr
Copiar
Copiado
Copiar
Copiado
; Total bytes of code
276
; Total bytes of code
412
Diferencias guardadas
Texto original
Abrir archivo
; Assembly listing for method System.Security.Cryptography.CryptographicOperations:FixedTimeEquals(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte]):ubyte (MinOpts) ; Emitting BLENDED_CODE for generic ARM64 - Windows ; MinOpts code ; fp based frame ; partially interruptible G_M000_IG01: stp fp, lr, [sp, #-0x50]! mov fp, sp str x0, [fp, #0x40] // str x1, [fp, #0x48] // str x2, [fp, #0x30] // str x3, [fp, #0x38] // G_M000_IG02: add x0, fp, #64 // movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 str w0, [fp, #0x20] // add x0, fp, #48 // movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 ldr w1, [fp, #0x20] // cmp w0, w1 beq G_M000_IG04 mov w0, wzr G_M000_IG03: ldp fp, lr, [sp], #0x50 ret lr G_M000_IG04: add x0, fp, #64 // movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 str w0, [fp, #0x2C] // str wzr, [fp, #0x28] // str wzr, [fp, #0x24] // b G_M000_IG06 G_M000_IG05: add x0, fp, #64 // ldr w1, [fp, #0x24] // movz x2, #0xD1FFAB1E movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 ldrb w0, [x0] str w0, [fp, #0x1C] // add x0, fp, #48 // ldr w1, [fp, #0x24] // movz x2, #0xD1FFAB1E movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 ldrb w0, [x0] ldr w1, [fp, #0x1C] // sub w0, w1, w0 ldr w1, [fp, #0x28] // orr w0, w0, w1 str w0, [fp, #0x28] // ldr w0, [fp, #0x24] // add w0, w0, #1 str w0, [fp, #0x24] // G_M000_IG06: ldr w0, [fp, #0x24] // ldr w1, [fp, #0x2C] // cmp w0, w1 blt G_M000_IG05 ldr w0, [fp, #0x28] // cmp w0, #0 cset x0, eq G_M000_IG07: ldp fp, lr, [sp], #0x50 ret lr ; Total bytes of code 276
Texto modificado
Abrir archivo
; Assembly listing for method System.Security.Cryptography.CryptographicOperations:FixedTimeEquals(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte]):ubyte (MinOpts) ; Emitting BLENDED_CODE for generic ARM64 - Windows ; MinOpts code ; fp based frame ; partially interruptible G_M000_IG01: stp fp, lr, [sp, #-0x60]! mov fp, sp str x0, [fp, #0x50] // str x1, [fp, #0x58] // str x2, [fp, #0x40] // str x3, [fp, #0x48] // G_M000_IG02: add x0, fp, #80 // str x0, [fp, #0x1C] // movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] str x0, [fp, #0x14] // ldr x0, [fp, #0x1C] // ldr x1, [fp, #0x14] // blr x1 str w0, [fp, #0x30] // add x0, fp, #64 // str x0, [fp, #0x14] // movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] str x0, [fp, #0x1C] // ldr x0, [fp, #0x14] // ldr x1, [fp, #0x1C] // blr x1 str w0, [fp, #0x28] // ldr w0, [fp, #0x30] // str w0, [fp, #0x24] // ldr w0, [fp, #0x28] // ldr w1, [fp, #0x24] // cmp w0, w1 beq G_M000_IG04 mov w0, wzr G_M000_IG03: ldp fp, lr, [sp], #0x60 ret lr G_M000_IG04: add x0, fp, #80 // str x0, [fp, #0x1C] // movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] str x0, [fp, #0x14] // ldr x0, [fp, #0x1C] // ldr x1, [fp, #0x14] // blr x1 str w0, [fp, #0x3C] // str wzr, [fp, #0x38] // str wzr, [fp, #0x34] // b G_M000_IG06 G_M000_IG05: add x0, fp, #80 // str x0, [fp, #0x14] // ldr w1, [fp, #0x34] // movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] str x0, [fp, #0x1C] // ldr x0, [fp, #0x14] // ldr x2, [fp, #0x1C] // blr x2 ldrb w0, [x0] str w0, [fp, #0x2C] // add x0, fp, #64 // str x0, [fp, #0x1C] // ldr w1, [fp, #0x34] // movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] str x0, [fp, #0x14] // ldr x0, [fp, #0x1C] // ldr x2, [fp, #0x14] // blr x2 ldrb w0, [x0] str w0, [fp, #0x24] // ldr w0, [fp, #0x2C] // ldrb w1, [fp, #0x24] // sub w0, w0, w1 str w0, [fp, #0x24] // ldr w0, [fp, #0x38] // str w0, [fp, #0x28] // ldr w0, [fp, #0x24] // ldr w1, [fp, #0x28] // orr w0, w0, w1 str w0, [fp, #0x38] // ldr w0, [fp, #0x34] // add w0, w0, #1 str w0, [fp, #0x34] // G_M000_IG06: ldr w0, [fp, #0x34] // str w0, [fp, #0x28] // ldr w0, [fp, #0x3C] // str w0, [fp, #0x24] // ldr w0, [fp, #0x28] // ldr w1, [fp, #0x24] // cmp w0, w1 blt G_M000_IG05 ldr w0, [fp, #0x38] // cmp w0, #0 cset x0, eq G_M000_IG07: ldp fp, lr, [sp], #0x60 ret lr ; Total bytes of code 412
Encontrar la diferencia