sub_401510 proc near ; ECX = input mov rdx, 5D7E0D1F2E0F1F84h mov rax, rcx ; input imul rax, rdx mov rdx, 388D76AEE8CB1500h mov ecx, eax and ecx, 0Fh ror rax, cl xor rax, rdx mov rdx, 0D2E9EE7E83C4285Bh mov ecx, eax and ecx, 0Fh rol rax, cl lea r8, [rax+rdx] mov rdx, 8888888888888889h mov rax, r8 mul rdx shr rdx, 5 mov rax, rdx lea rcx, [r8+rdx*4] shl rax, 6 sub rcx, rax mov rax, r8 rol rax, cl ; EAX = output retn sub_401510 endp