Diff
checker
Text
Text
Images
Documents
Excel
Folders
Legal
Features
Desktop
Pricing
Sign in
Download Diffchecker Desktop
Compare text
Find the difference between two text files
Real-time editor
Hide unchanged lines
Layout
Split
Unified
Diff precision
Word
Character
Syntax highlighting
Choose syntax
Ignore
Transform text
Go to first change
Edit input
Diffchecker Desktop
The most secure way to run Diffchecker. Get the Diffchecker Desktop app: your diffs never leave your computer!
Get Desktop
Untitled Diff
Created
3 years ago
Diff never expires
Clear
Export
Share
Explain
69 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
195 lines
Copy
70 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
197 lines
Copy
; Method Program:IndexOfNullByte(byref):int
; Method Program:IndexOfNullByte(byref):int
G_M000_IG01: ;; offset=0000H
G_M000_IG01: ;; offset=0000H
4883EC28 sub rsp, 40
4883EC28 sub rsp, 40
C5F877 vzeroupper
C5F877 vzeroupper
G_M000_IG02: ;; offset=0007H
G_M000_IG02: ;; offset=0007H
33C0 xor eax, eax
33C0 xor eax, eax
488BD1 mov rdx, rcx
488BD1 mov rdx, rcx
83E20F and edx, 15
83E20F and edx, 15
F7DA neg edx
F7DA neg edx
83C210 add edx, 16
83C210 add edx, 16
83E20F and edx, 15
83E20F and edx, 15
4883FA08 cmp rdx, 8
4883FA08 cmp rdx, 8
Copy
Copied
Copy
Copied
7275
jb
SHORT
G_M000_IG06
0F827D000000
jb
G_M000_IG06
G_M000_IG03: ;; offset=0021H
G_M000_IG03: ;; offset=0021H
Copy
Copied
Copy
Copied
EB0A
jmp SHORT G_M000_IG05
EB12
jmp SHORT G_M000_IG05
0F1F4000
align
[4
bytes for IG09]
0F1F40000F1F840000000000
align
[12
bytes for IG09]
Copy
Copied
Copy
Copied
G_M000_IG04: ;;
offset=0027H
G_M000_IG04: ;;
offset=002FH
4883FA08 cmp rdx, 8
4883FA08 cmp rdx, 8
Copy
Copied
Copy
Copied
7265
jb SHORT G_M000_IG06
7269
jb SHORT G_M000_IG06
Copy
Copied
Copy
Copied
G_M000_IG05: ;;
offset=002DH
G_M000_IG05: ;;
offset=0035H
4883C2F8 add rdx, -8
4883C2F8 add rdx, -8
Copy
Copied
Copy
Copied
803C0100
cmp byte ptr
[rcx+rax],
0
4C8D0401 lea r8, bword ptr [rcx+rax]
0F8476010000
je G_M000_IG19
41803800
cmp byte ptr
[r8],
0
807C010100
cmp byte ptr
[rcx+rax+01H],
0
0F847A010000
je G_M000_IG19
0F846D010000
je G_M000_IG20
4180780100
cmp byte ptr
[r8+01H],
0
807C010200
cmp byte ptr
[rcx+rax+02H],
0
0F8471010000
je G_M000_IG20
0F8466010000
je G_M000_IG21
4180780200
cmp byte ptr
[r8+02H],
0
807C010300
cmp byte ptr
[rcx+rax+03H],
0
0F846A010000
je G_M000_IG21
0F8460010000
je G_M000_IG22
4180780300
cmp byte ptr
[r8+03H],
0
807C010400
cmp byte ptr
[rcx+rax+04H],
0
0F8464010000
je G_M000_IG22
0F845A010000
je G_M000_IG23
4180780400
cmp byte ptr
[r8+04H],
0
807C010500
cmp byte ptr
[rcx+rax+05H],
0
0F845E010000
je G_M000_IG23
0F8454010000
je G_M000_IG24
4180780500
cmp byte ptr
[r8+05H],
0
807C010600
cmp byte ptr
[rcx+rax+06H],
0
0F8458010000
je G_M000_IG24
0F844E010000
je G_M000_IG25
4180780600
cmp byte ptr
[r8+06H],
0
807C010700
cmp byte ptr
[rcx+rax+07H],
0
0F8452010000
je G_M000_IG25
0F8448010000
je G_M000_IG26
4180780700
cmp byte ptr
[r8+07H],
0
0F844C010000
je G_M000_IG26
4883C008 add rax, 8
4883C008 add rax, 8
4883FA08 cmp rdx, 8
4883FA08 cmp rdx, 8
Copy
Copied
Copy
Copied
739B
jae SHORT G_M000_IG05
7397
jae SHORT G_M000_IG05
Copy
Copied
Copy
Copied
G_M000_IG06: ;;
offset=0092H
G_M000_IG06: ;;
offset=009EH
4883FA04 cmp rdx, 4
4883FA04 cmp rdx, 4
Copy
Copied
Copy
Copied
7233
jb SHORT G_M000_IG08
7237
jb SHORT G_M000_IG08
Copy
Copied
Copy
Copied
G_M000_IG07: ;;
offset=0098H
G_M000_IG07: ;;
offset=00A4H
4883C2FC add rdx, -4
4883C2FC add rdx, -4
Copy
Copied
Copy
Copied
803C0100
cmp byte ptr
[rcx+rax],
0
4C8D0401 lea r8, bword ptr [rcx+rax]
41803800
cmp byte ptr
[r8],
0
0F840B010000 je G_M000_IG19
0F840B010000 je G_M000_IG19
Copy
Copied
Copy
Copied
807C010100
cmp byte ptr
[rcx+rax+01H],
0
4180780100
cmp byte ptr
[r8+01H],
0
0F8402010000 je G_M000_IG20
0F8402010000 je G_M000_IG20
Copy
Copied
Copy
Copied
807C010200
cmp byte ptr
[rcx+rax+02H],
0
4180780200
cmp byte ptr
[r8+02H],
0
0F84FB000000 je G_M000_IG21
0F84FB000000 je G_M000_IG21
Copy
Copied
Copy
Copied
807C010300
cmp byte ptr
[rcx+rax+03H],
0
4180780300
cmp byte ptr
[r8+03H],
0
0F84F5000000 je G_M000_IG22
0F84F5000000 je G_M000_IG22
4883C004 add rax, 4
4883C004 add rax, 4
Copy
Copied
Copy
Copied
G_M000_IG08: ;;
offset=00CBH
G_M000_IG08: ;;
offset=00DBH
4885D2 test rdx, rdx
4885D2 test rdx, rdx
7415 je SHORT G_M000_IG10
7415 je SHORT G_M000_IG10
Copy
Copied
Copy
Copied
G_M000_IG09: ;;
offset=00D0H
G_M000_IG09: ;;
offset=00E0H
48FFCA dec rdx
48FFCA dec rdx
803C0100 cmp byte ptr [rcx+rax], 0
803C0100 cmp byte ptr [rcx+rax], 0
0F84D4000000 je G_M000_IG19
0F84D4000000 je G_M000_IG19
48FFC0 inc rax
48FFC0 inc rax
4885D2 test rdx, rdx
4885D2 test rdx, rdx
75EB jne SHORT G_M000_IG09
75EB jne SHORT G_M000_IG09
Copy
Copied
Copy
Copied
G_M000_IG10: ;;
offset=00E5H
G_M000_IG10: ;;
offset=00F5H
483DFFFFFF7F cmp rax, 0x7FFFFFFF
483DFFFFFF7F cmp rax, 0x7FFFFFFF
0F83F2000000 jae G_M000_IG29
0F83F2000000 jae G_M000_IG29
488BD1 mov rdx, rcx
488BD1 mov rdx, rcx
8BD2 mov edx, edx
8BD2 mov edx, edx
4803D0 add rdx, rax
4803D0 add rdx, rax
F6C21F test dl, 31
F6C21F test dl, 31
7430 je SHORT G_M000_IG13
7430 je SHORT G_M000_IG13
Copy
Copied
Copy
Copied
G_M000_IG11: ;;
offset=00FEH
G_M000_IG11: ;;
offset=010EH
C4E17857C0 vxorps xmm0, xmm0, xmm0
C4E17857C0 vxorps xmm0, xmm0, xmm0
C4E179740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax]
C4E179740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax]
C4E179D7D0 vpmovmskb edx, xmm0
C4E179D7D0 vpmovmskb edx, xmm0
85D2 test edx, edx
85D2 test edx, edx
7506 jne SHORT G_M000_IG12
7506 jne SHORT G_M000_IG12
4883C010 add rax, 16
4883C010 add rax, 16
EB16 jmp SHORT G_M000_IG13
EB16 jmp SHORT G_M000_IG13
Copy
Copied
Copy
Copied
G_M000_IG12: ;;
offset=0118H
G_M000_IG12: ;;
offset=0128H
33C9 xor ecx, ecx
33C9 xor ecx, ecx
F30FBCCA tzcnt ecx, edx
F30FBCCA tzcnt ecx, edx
8BD1 mov edx, ecx
8BD1 mov edx, ecx
03C2 add eax, edx
03C2 add eax, edx
E9AC000000 jmp G_M000_IG27
E9AC000000 jmp G_M000_IG27
0F1F8000000000 align [7 bytes for IG14]
0F1F8000000000 align [7 bytes for IG14]
Copy
Copied
Copy
Copied
G_M000_IG13: ;;
offset=012EH
G_M000_IG13: ;;
offset=013EH
8BD0 mov edx, eax
8BD0 mov edx, eax
F7DA neg edx
F7DA neg edx
81C2FFFFFF7F add edx, 0x7FFFFFFF
81C2FFFFFF7F add edx, 0x7FFFFFFF
83E2E0 and edx, -32
83E2E0 and edx, -32
483BD0 cmp rdx, rax
483BD0 cmp rdx, rax
761E jbe SHORT G_M000_IG15
761E jbe SHORT G_M000_IG15
Copy
Copied
Copy
Copied
G_M000_IG14: ;;
offset=0140H
G_M000_IG14: ;;
offset=0150H
C5FC57C0 vxorps ymm0, ymm0, ymm0
C5FC57C0 vxorps ymm0, ymm0, ymm0
C5FD740401 vpcmpeqb ymm0, ymm0, ymmword ptr[rcx+rax]
C5FD740401 vpcmpeqb ymm0, ymm0, ymmword ptr[rcx+rax]
C57DD7C0 vpmovmskb r8d, ymm0
C57DD7C0 vpmovmskb r8d, ymm0
4585C0 test r8d, r8d
4585C0 test r8d, r8d
7535 jne SHORT G_M000_IG17
7535 jne SHORT G_M000_IG17
4883C020 add rax, 32
4883C020 add rax, 32
483BD0 cmp rdx, rax
483BD0 cmp rdx, rax
77E5 ja SHORT G_M000_IG14
77E5 ja SHORT G_M000_IG14
Copy
Copied
Copy
Copied
G_M000_IG15: ;;
offset=015BH
G_M000_IG15: ;;
offset=016BH
8BD0 mov edx, eax
8BD0 mov edx, eax
F7DA neg edx
F7DA neg edx
81C2FFFFFF7F add edx, 0x7FFFFFFF
81C2FFFFFF7F add edx, 0x7FFFFFFF
83E2F0 and edx, -16
83E2F0 and edx, -16
483BD0 cmp rdx, rax
483BD0 cmp rdx, rax
7627 jbe SHORT G_M000_IG18
7627 jbe SHORT G_M000_IG18
Copy
Copied
Copy
Copied
G_M000_IG16: ;;
offset=016DH
G_M000_IG16: ;;
offset=017DH
C5F857C0 vxorps xmm0, xmm0, xmm0
C5F857C0 vxorps xmm0, xmm0, xmm0
C5F9740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax]
C5F9740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax]
C5F9D7D0 vpmovmskb edx, xmm0
C5F9D7D0 vpmovmskb edx, xmm0
85D2 test edx, edx
85D2 test edx, edx
7557 jne SHORT G_M000_IG28
7557 jne SHORT G_M000_IG28
4883C010 add rax, 16
4883C010 add rax, 16
EB0D jmp SHORT G_M000_IG18
EB0D jmp SHORT G_M000_IG18
Copy
Copied
Copy
Copied
G_M000_IG17: ;;
offset=0184H
G_M000_IG17: ;;
offset=0194H
33D2 xor edx, edx
33D2 xor edx, edx
F3410FBCD0 tzcnt edx, r8d
F3410FBCD0 tzcnt edx, r8d
8BCA mov ecx, edx
8BCA mov ecx, edx
03C1 add eax, ecx
03C1 add eax, ecx
EB3C jmp SHORT G_M000_IG27
EB3C jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG18: ;;
offset=0191H
G_M000_IG18: ;;
offset=01A1H
483DFFFFFF7F cmp rax, 0x7FFFFFFF
483DFFFFFF7F cmp rax, 0x7FFFFFFF
7344 jae SHORT G_M000_IG29
7344 jae SHORT G_M000_IG29
488BD0 mov rdx, rax
488BD0 mov rdx, rax
48F7DA neg rdx
48F7DA neg rdx
4881C2FFFFFF7F add rdx, 0x7FFFFFFF
4881C2FFFFFF7F add rdx, 0x7FFFFFFF
Copy
Copied
Copy
Copied
E97CFEFFFF
jmp G_M000_IG04
E974FEFFFF
jmp G_M000_IG04
Copy
Copied
Copy
Copied
G_M000_IG19: ;;
offset=01ABH
G_M000_IG19: ;;
offset=01BBH
EB20 jmp SHORT G_M000_IG27
EB20 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG20: ;;
offset=01ADH
G_M000_IG20: ;;
offset=01BDH
FFC0 inc eax
FFC0 inc eax
EB1C jmp SHORT G_M000_IG27
EB1C jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG21: ;;
offset=01B1H
G_M000_IG21: ;;
offset=01C1H
83C002 add eax, 2
83C002 add eax, 2
EB17 jmp SHORT G_M000_IG27
EB17 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG22: ;;
offset=01B6H
G_M000_IG22: ;;
offset=01C6H
83C003 add eax, 3
83C003 add eax, 3
EB12 jmp SHORT G_M000_IG27
EB12 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG23: ;;
offset=01BBH
G_M000_IG23: ;;
offset=01CBH
83C004 add eax, 4
83C004 add eax, 4
EB0D jmp SHORT G_M000_IG27
EB0D jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG24: ;;
offset=01C0H
G_M000_IG24: ;;
offset=01D0H
83C005 add eax, 5
83C005 add eax, 5
EB08 jmp SHORT G_M000_IG27
EB08 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG25: ;;
offset=01C5H
G_M000_IG25: ;;
offset=01D5H
83C006 add eax, 6
83C006 add eax, 6
EB03 jmp SHORT G_M000_IG27
EB03 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG26: ;;
offset=01CAH
G_M000_IG26: ;;
offset=01DAH
83C007 add eax, 7
83C007 add eax, 7
Copy
Copied
Copy
Copied
G_M000_IG27: ;;
offset=01CDH
G_M000_IG27: ;;
offset=01DDH
C5F877 vzeroupper
C5F877 vzeroupper
4883C428 add rsp, 40
4883C428 add rsp, 40
C3 ret
C3 ret
Copy
Copied
Copy
Copied
G_M000_IG28: ;;
offset=01D5H
G_M000_IG28: ;;
offset=01E5H
F30FBCD2 tzcnt edx, edx
F30FBCD2 tzcnt edx, edx
03C2 add eax, edx
03C2 add eax, edx
EBF0 jmp SHORT G_M000_IG27
EBF0 jmp SHORT G_M000_IG27
Copy
Copied
Copy
Copied
G_M000_IG29: ;;
offset=01DDH
G_M000_IG29: ;;
offset=01EDH
FF15A5381300
call [Program:ThrowMustBeNullTerminatedString()]
FF1595381300
call [Program:ThrowMustBeNullTerminatedString()]
CC int3
CC int3
Copy
Copied
Copy
Copied
; Total bytes of code:
484
; Total bytes of code:
500
Saved diffs
Original text
Open file
; Method Program:IndexOfNullByte(byref):int G_M000_IG01: ;; offset=0000H 4883EC28 sub rsp, 40 C5F877 vzeroupper G_M000_IG02: ;; offset=0007H 33C0 xor eax, eax 488BD1 mov rdx, rcx 83E20F and edx, 15 F7DA neg edx 83C210 add edx, 16 83E20F and edx, 15 4883FA08 cmp rdx, 8 7275 jb SHORT G_M000_IG06 G_M000_IG03: ;; offset=0021H EB0A jmp SHORT G_M000_IG05 0F1F4000 align [4 bytes for IG09] G_M000_IG04: ;; offset=0027H 4883FA08 cmp rdx, 8 7265 jb SHORT G_M000_IG06 G_M000_IG05: ;; offset=002DH 4883C2F8 add rdx, -8 803C0100 cmp byte ptr [rcx+rax], 0 0F8476010000 je G_M000_IG19 807C010100 cmp byte ptr [rcx+rax+01H], 0 0F846D010000 je G_M000_IG20 807C010200 cmp byte ptr [rcx+rax+02H], 0 0F8466010000 je G_M000_IG21 807C010300 cmp byte ptr [rcx+rax+03H], 0 0F8460010000 je G_M000_IG22 807C010400 cmp byte ptr [rcx+rax+04H], 0 0F845A010000 je G_M000_IG23 807C010500 cmp byte ptr [rcx+rax+05H], 0 0F8454010000 je G_M000_IG24 807C010600 cmp byte ptr [rcx+rax+06H], 0 0F844E010000 je G_M000_IG25 807C010700 cmp byte ptr [rcx+rax+07H], 0 0F8448010000 je G_M000_IG26 4883C008 add rax, 8 4883FA08 cmp rdx, 8 739B jae SHORT G_M000_IG05 G_M000_IG06: ;; offset=0092H 4883FA04 cmp rdx, 4 7233 jb SHORT G_M000_IG08 G_M000_IG07: ;; offset=0098H 4883C2FC add rdx, -4 803C0100 cmp byte ptr [rcx+rax], 0 0F840B010000 je G_M000_IG19 807C010100 cmp byte ptr [rcx+rax+01H], 0 0F8402010000 je G_M000_IG20 807C010200 cmp byte ptr [rcx+rax+02H], 0 0F84FB000000 je G_M000_IG21 807C010300 cmp byte ptr [rcx+rax+03H], 0 0F84F5000000 je G_M000_IG22 4883C004 add rax, 4 G_M000_IG08: ;; offset=00CBH 4885D2 test rdx, rdx 7415 je SHORT G_M000_IG10 G_M000_IG09: ;; offset=00D0H 48FFCA dec rdx 803C0100 cmp byte ptr [rcx+rax], 0 0F84D4000000 je G_M000_IG19 48FFC0 inc rax 4885D2 test rdx, rdx 75EB jne SHORT G_M000_IG09 G_M000_IG10: ;; offset=00E5H 483DFFFFFF7F cmp rax, 0x7FFFFFFF 0F83F2000000 jae G_M000_IG29 488BD1 mov rdx, rcx 8BD2 mov edx, edx 4803D0 add rdx, rax F6C21F test dl, 31 7430 je SHORT G_M000_IG13 G_M000_IG11: ;; offset=00FEH C4E17857C0 vxorps xmm0, xmm0, xmm0 C4E179740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax] C4E179D7D0 vpmovmskb edx, xmm0 85D2 test edx, edx 7506 jne SHORT G_M000_IG12 4883C010 add rax, 16 EB16 jmp SHORT G_M000_IG13 G_M000_IG12: ;; offset=0118H 33C9 xor ecx, ecx F30FBCCA tzcnt ecx, edx 8BD1 mov edx, ecx 03C2 add eax, edx E9AC000000 jmp G_M000_IG27 0F1F8000000000 align [7 bytes for IG14] G_M000_IG13: ;; offset=012EH 8BD0 mov edx, eax F7DA neg edx 81C2FFFFFF7F add edx, 0x7FFFFFFF 83E2E0 and edx, -32 483BD0 cmp rdx, rax 761E jbe SHORT G_M000_IG15 G_M000_IG14: ;; offset=0140H C5FC57C0 vxorps ymm0, ymm0, ymm0 C5FD740401 vpcmpeqb ymm0, ymm0, ymmword ptr[rcx+rax] C57DD7C0 vpmovmskb r8d, ymm0 4585C0 test r8d, r8d 7535 jne SHORT G_M000_IG17 4883C020 add rax, 32 483BD0 cmp rdx, rax 77E5 ja SHORT G_M000_IG14 G_M000_IG15: ;; offset=015BH 8BD0 mov edx, eax F7DA neg edx 81C2FFFFFF7F add edx, 0x7FFFFFFF 83E2F0 and edx, -16 483BD0 cmp rdx, rax 7627 jbe SHORT G_M000_IG18 G_M000_IG16: ;; offset=016DH C5F857C0 vxorps xmm0, xmm0, xmm0 C5F9740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax] C5F9D7D0 vpmovmskb edx, xmm0 85D2 test edx, edx 7557 jne SHORT G_M000_IG28 4883C010 add rax, 16 EB0D jmp SHORT G_M000_IG18 G_M000_IG17: ;; offset=0184H 33D2 xor edx, edx F3410FBCD0 tzcnt edx, r8d 8BCA mov ecx, edx 03C1 add eax, ecx EB3C jmp SHORT G_M000_IG27 G_M000_IG18: ;; offset=0191H 483DFFFFFF7F cmp rax, 0x7FFFFFFF 7344 jae SHORT G_M000_IG29 488BD0 mov rdx, rax 48F7DA neg rdx 4881C2FFFFFF7F add rdx, 0x7FFFFFFF E97CFEFFFF jmp G_M000_IG04 G_M000_IG19: ;; offset=01ABH EB20 jmp SHORT G_M000_IG27 G_M000_IG20: ;; offset=01ADH FFC0 inc eax EB1C jmp SHORT G_M000_IG27 G_M000_IG21: ;; offset=01B1H 83C002 add eax, 2 EB17 jmp SHORT G_M000_IG27 G_M000_IG22: ;; offset=01B6H 83C003 add eax, 3 EB12 jmp SHORT G_M000_IG27 G_M000_IG23: ;; offset=01BBH 83C004 add eax, 4 EB0D jmp SHORT G_M000_IG27 G_M000_IG24: ;; offset=01C0H 83C005 add eax, 5 EB08 jmp SHORT G_M000_IG27 G_M000_IG25: ;; offset=01C5H 83C006 add eax, 6 EB03 jmp SHORT G_M000_IG27 G_M000_IG26: ;; offset=01CAH 83C007 add eax, 7 G_M000_IG27: ;; offset=01CDH C5F877 vzeroupper 4883C428 add rsp, 40 C3 ret G_M000_IG28: ;; offset=01D5H F30FBCD2 tzcnt edx, edx 03C2 add eax, edx EBF0 jmp SHORT G_M000_IG27 G_M000_IG29: ;; offset=01DDH FF15A5381300 call [Program:ThrowMustBeNullTerminatedString()] CC int3 ; Total bytes of code: 484
Changed text
Open file
; Method Program:IndexOfNullByte(byref):int G_M000_IG01: ;; offset=0000H 4883EC28 sub rsp, 40 C5F877 vzeroupper G_M000_IG02: ;; offset=0007H 33C0 xor eax, eax 488BD1 mov rdx, rcx 83E20F and edx, 15 F7DA neg edx 83C210 add edx, 16 83E20F and edx, 15 4883FA08 cmp rdx, 8 0F827D000000 jb G_M000_IG06 G_M000_IG03: ;; offset=0021H EB12 jmp SHORT G_M000_IG05 0F1F40000F1F840000000000 align [12 bytes for IG09] G_M000_IG04: ;; offset=002FH 4883FA08 cmp rdx, 8 7269 jb SHORT G_M000_IG06 G_M000_IG05: ;; offset=0035H 4883C2F8 add rdx, -8 4C8D0401 lea r8, bword ptr [rcx+rax] 41803800 cmp byte ptr [r8], 0 0F847A010000 je G_M000_IG19 4180780100 cmp byte ptr [r8+01H], 0 0F8471010000 je G_M000_IG20 4180780200 cmp byte ptr [r8+02H], 0 0F846A010000 je G_M000_IG21 4180780300 cmp byte ptr [r8+03H], 0 0F8464010000 je G_M000_IG22 4180780400 cmp byte ptr [r8+04H], 0 0F845E010000 je G_M000_IG23 4180780500 cmp byte ptr [r8+05H], 0 0F8458010000 je G_M000_IG24 4180780600 cmp byte ptr [r8+06H], 0 0F8452010000 je G_M000_IG25 4180780700 cmp byte ptr [r8+07H], 0 0F844C010000 je G_M000_IG26 4883C008 add rax, 8 4883FA08 cmp rdx, 8 7397 jae SHORT G_M000_IG05 G_M000_IG06: ;; offset=009EH 4883FA04 cmp rdx, 4 7237 jb SHORT G_M000_IG08 G_M000_IG07: ;; offset=00A4H 4883C2FC add rdx, -4 4C8D0401 lea r8, bword ptr [rcx+rax] 41803800 cmp byte ptr [r8], 0 0F840B010000 je G_M000_IG19 4180780100 cmp byte ptr [r8+01H], 0 0F8402010000 je G_M000_IG20 4180780200 cmp byte ptr [r8+02H], 0 0F84FB000000 je G_M000_IG21 4180780300 cmp byte ptr [r8+03H], 0 0F84F5000000 je G_M000_IG22 4883C004 add rax, 4 G_M000_IG08: ;; offset=00DBH 4885D2 test rdx, rdx 7415 je SHORT G_M000_IG10 G_M000_IG09: ;; offset=00E0H 48FFCA dec rdx 803C0100 cmp byte ptr [rcx+rax], 0 0F84D4000000 je G_M000_IG19 48FFC0 inc rax 4885D2 test rdx, rdx 75EB jne SHORT G_M000_IG09 G_M000_IG10: ;; offset=00F5H 483DFFFFFF7F cmp rax, 0x7FFFFFFF 0F83F2000000 jae G_M000_IG29 488BD1 mov rdx, rcx 8BD2 mov edx, edx 4803D0 add rdx, rax F6C21F test dl, 31 7430 je SHORT G_M000_IG13 G_M000_IG11: ;; offset=010EH C4E17857C0 vxorps xmm0, xmm0, xmm0 C4E179740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax] C4E179D7D0 vpmovmskb edx, xmm0 85D2 test edx, edx 7506 jne SHORT G_M000_IG12 4883C010 add rax, 16 EB16 jmp SHORT G_M000_IG13 G_M000_IG12: ;; offset=0128H 33C9 xor ecx, ecx F30FBCCA tzcnt ecx, edx 8BD1 mov edx, ecx 03C2 add eax, edx E9AC000000 jmp G_M000_IG27 0F1F8000000000 align [7 bytes for IG14] G_M000_IG13: ;; offset=013EH 8BD0 mov edx, eax F7DA neg edx 81C2FFFFFF7F add edx, 0x7FFFFFFF 83E2E0 and edx, -32 483BD0 cmp rdx, rax 761E jbe SHORT G_M000_IG15 G_M000_IG14: ;; offset=0150H C5FC57C0 vxorps ymm0, ymm0, ymm0 C5FD740401 vpcmpeqb ymm0, ymm0, ymmword ptr[rcx+rax] C57DD7C0 vpmovmskb r8d, ymm0 4585C0 test r8d, r8d 7535 jne SHORT G_M000_IG17 4883C020 add rax, 32 483BD0 cmp rdx, rax 77E5 ja SHORT G_M000_IG14 G_M000_IG15: ;; offset=016BH 8BD0 mov edx, eax F7DA neg edx 81C2FFFFFF7F add edx, 0x7FFFFFFF 83E2F0 and edx, -16 483BD0 cmp rdx, rax 7627 jbe SHORT G_M000_IG18 G_M000_IG16: ;; offset=017DH C5F857C0 vxorps xmm0, xmm0, xmm0 C5F9740401 vpcmpeqb xmm0, xmm0, xmmword ptr [rcx+rax] C5F9D7D0 vpmovmskb edx, xmm0 85D2 test edx, edx 7557 jne SHORT G_M000_IG28 4883C010 add rax, 16 EB0D jmp SHORT G_M000_IG18 G_M000_IG17: ;; offset=0194H 33D2 xor edx, edx F3410FBCD0 tzcnt edx, r8d 8BCA mov ecx, edx 03C1 add eax, ecx EB3C jmp SHORT G_M000_IG27 G_M000_IG18: ;; offset=01A1H 483DFFFFFF7F cmp rax, 0x7FFFFFFF 7344 jae SHORT G_M000_IG29 488BD0 mov rdx, rax 48F7DA neg rdx 4881C2FFFFFF7F add rdx, 0x7FFFFFFF E974FEFFFF jmp G_M000_IG04 G_M000_IG19: ;; offset=01BBH EB20 jmp SHORT G_M000_IG27 G_M000_IG20: ;; offset=01BDH FFC0 inc eax EB1C jmp SHORT G_M000_IG27 G_M000_IG21: ;; offset=01C1H 83C002 add eax, 2 EB17 jmp SHORT G_M000_IG27 G_M000_IG22: ;; offset=01C6H 83C003 add eax, 3 EB12 jmp SHORT G_M000_IG27 G_M000_IG23: ;; offset=01CBH 83C004 add eax, 4 EB0D jmp SHORT G_M000_IG27 G_M000_IG24: ;; offset=01D0H 83C005 add eax, 5 EB08 jmp SHORT G_M000_IG27 G_M000_IG25: ;; offset=01D5H 83C006 add eax, 6 EB03 jmp SHORT G_M000_IG27 G_M000_IG26: ;; offset=01DAH 83C007 add eax, 7 G_M000_IG27: ;; offset=01DDH C5F877 vzeroupper 4883C428 add rsp, 40 C3 ret G_M000_IG28: ;; offset=01E5H F30FBCD2 tzcnt edx, edx 03C2 add eax, edx EBF0 jmp SHORT G_M000_IG27 G_M000_IG29: ;; offset=01EDH FF1595381300 call [Program:ThrowMustBeNullTerminatedString()] CC int3 ; Total bytes of code: 500
Find difference