Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- lea eax, [r11+2]
- lea r14d, [r11+1]
- mov DWORD PTR [rsp-4], eax
- lea eax, [r11+5]
- lea r8d, [r11+3]
- mov DWORD PTR [rsp-28], eax
- lea eax, [r11+6]
- lea r15d, [r11+4]
- movsx r11, r11d
- mov DWORD PTR [rsp-44], eax
- movsx rax, r14d
- mov DWORD PTR [rsp-8], r8d
- movsx r8, r8d
- mov QWORD PTR [rsp-16], rax
- movsx rax, DWORD PTR [rsp-4]
- mov QWORD PTR [rsp-40], r8
- movsx r8, r15d
- mov QWORD PTR [rsp-24], rax
- movsx rax, DWORD PTR [rsp-44]
- mov QWORD PTR [rsp-56], r8
- movsx r8, DWORD PTR [rsp-28]
- mov DWORD PTR [rsp-32], r15d
- mov QWORD PTR [rsp-64], r8
- mov QWORD PTR [rsp-72], rax
- .L7:
- cmp edi, esi
- jge .L8
- mov r8d, DWORD PTR b[0+rdx*4]
- cmp r12d, 6
- jbe .L9
- mov r15, r9
- vmovd xmm3, r8d
- vpxor xmm1, xmm1, xmm1
- mov rax, r10
- sub r15, r10
- vpbroadcastd ymm3, xmm3
- sub r15, 32
- shr r15, 5
- add r15, 1
- and r15d, 7
- je .L5
- cmp r15, 1
- je .L33
- cmp r15, 2
- je .L34
- cmp r15, 3
- je .L35
- cmp r15, 4
- je .L36
- cmp r15, 5
- je .L37
- cmp r15, 6
- je .L38
- vmovdqu xmm0, XMMWORD PTR [r10]
- vinserti128 ymm0, ymm0, XMMWORD PTR [r10+16], 0x1
- lea rax, [r10+32]
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L38:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L37:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L36:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L35:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L34:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- .L33:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 32
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- cmp rax, r9
- je .L47
- .L5:
- vmovdqu xmm0, XMMWORD PTR [rax]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax+16], 0x1
- add rax, 256
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-224]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-208], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-192]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-176], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-160]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-144], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-128]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-112], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-96]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-80], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-64]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-48], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- vmovdqu xmm0, XMMWORD PTR [rax-32]
- vinserti128 ymm0, ymm0, XMMWORD PTR [rax-16], 0x1
- vpminsd ymm2, ymm3, ymm0
- vpcmpeqd ymm0, ymm0, ymm2
- vpsubd ymm1, ymm1, ymm0
- cmp rax, r9
- jne .L5
- .L47:
- vmovdqa xmm0, xmm1
- vextracti128 xmm1, ymm1, 0x1
- vpaddd xmm1, xmm0, xmm1
- vpsrldq xmm0, xmm1, 8
- vpaddd xmm1, xmm1, xmm0
- vpsrldq xmm0, xmm1, 4
- vpaddd xmm1, xmm1, xmm0
- vmovd eax, xmm1
- cmp ebx, r13d
- je .L3
- .L4:
- xor r15d, r15d
- cmp DWORD PTR a[0+r11*4], r8d
- setle r15b
- add eax, r15d
- cmp esi, r14d
- jle .L3
- mov r15, QWORD PTR [rsp-16]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r15b
- movzx r15d, r15b
- add eax, r15d
- cmp esi, DWORD PTR [rsp-4]
- jle .L3
- mov r15, QWORD PTR [rsp-24]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r15b
- movzx r15d, r15b
- add eax, r15d
- cmp esi, DWORD PTR [rsp-8]
- jle .L3
- mov r15, QWORD PTR [rsp-40]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r15b
- movzx r15d, r15b
- add eax, r15d
- cmp esi, DWORD PTR [rsp-32]
- jle .L3
- mov r15, QWORD PTR [rsp-56]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r15b
- movzx r15d, r15b
- add eax, r15d
- cmp esi, DWORD PTR [rsp-28]
- jle .L3
- mov r15, QWORD PTR [rsp-64]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r15b
- movzx r15d, r15b
- add eax, r15d
- cmp esi, DWORD PTR [rsp-44]
- jle .L3
- mov r15, QWORD PTR [rsp-72]
- cmp r8d, DWORD PTR a[0+r15*4]
- setge r8b
- movzx r8d, r8b
- add eax, r8d
Add Comment
Please, Sign In to add comment