Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
15658.mc
作成日
2 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
58 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
92 行
すべてコピー
98 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
126 行
すべてコピー
; 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:
コピー
コピー済み
コピー
コピー済み
stp fp, lr, [sp, #-0x
5
0]!
stp fp, lr, [sp, #-0x
6
0]!
mov fp, sp
mov fp, sp
コピー
コピー済み
コピー
コピー済み
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:
コピー
コピー済み
コピー
コピー済み
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 //
コピー
コピー済み
コピー
コピー済み
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
コピー
コピー済み
コピー
コピー済み
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:
コピー
コピー済み
コピー
コピー済み
ldp fp, lr, [sp], #0x
5
0
ldp fp, lr, [sp], #0x
6
0
ret lr
ret lr
G_M000_IG04:
G_M000_IG04:
コピー
コピー済み
コピー
コピー済み
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
コピー
コピー済み
コピー
コピー済み
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:
コピー
コピー済み
コピー
コピー済み
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]
コピー
コピー済み
コピー
コピー済み
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]
コピー
コピー済み
コピー
コピー済み
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] //
コピー
コピー済み
コピー
コピー済み
ldr w1, [fp, #0x28] //
orr w0, w0, w1
str w0, [fp, #0x38] //
ldr w0, [fp, #0x34] //
add w0, w0, #1
add w0, w0, #1
コピー
コピー済み
コピー
コピー済み
str w0, [fp, #0x
2
4] //
str w0, [fp, #0x
3
4] //
G_M000_IG06:
G_M000_IG06:
コピー
コピー済み
コピー
コピー済み
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
コピー
コピー済み
コピー
コピー済み
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:
コピー
コピー済み
コピー
コピー済み
ldp fp, lr, [sp], #0x
5
0
ldp fp, lr, [sp], #0x
6
0
ret lr
ret lr
コピー
コピー済み
コピー
コピー済み
; Total bytes of code
276
; Total bytes of code
412
保存された差分
原文
ファイルを開く
; 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
変更されたテキスト
ファイルを開く
; 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
違いを見つける