Function at 0x14004af00
Capabilities:
Hash data using sha512

Disassembly:
sub rsp, 0x1a8
vmovups xmmword [rsp + 0x100], xmm6
vmovups xmmword [rsp + 0x110], xmm7
vmovups xmmword [rsp + 0x120], xmm8
vmovups xmmword [rsp + 0x130], xmm9
vmovups xmmword [rsp + 0x140], xmm10
vmovups xmmword [rsp + 0x150], xmm11
vmovups xmmword [rsp + 0x160], xmm12
vmovups xmmword [rsp + 0x170], xmm13
vmovups xmmword [rsp + 0x180], xmm14
vmovups xmmword [rsp + 0x190], xmm15
mov rax, rcx
movabs rcx, 0x6a09e667f3bcc908
vmovq xmm0, rcx
movabs rcx, 0xbb67ae8584caa73b
vpbroadcastq ymm0, xmm0
vmovdqu ymmword [rax + 0x200], ymm0
vmovq xmm0, rcx
movabs rcx, 0x3c6ef372fe94f82b
vpbroadcastq ymm0, xmm0
vmovdqu ymmword [rax + 0x220], ymm0
vmovq xmm0, rcx
movabs rcx, 0xa54ff53a5f1d36f1
vpbroadcastq ymm0, xmm0
vmovdqu ymmword [rax + 0x240], ymm0
vmovq xmm0, rcx
movabs rcx, 0x510e527fade682d1
vpbroadcastq ymm0, xmm0
vmovq xmm2, rcx
movabs rcx, 0x9b05688c2b3e6c1f
vmovdqu ymmword [rax + 0x260], ymm0
vmovq xmm0, rcx
movabs rcx, 0x1f83d9abfb41bd6b
vpbroadcastq ymm2, xmm2
vmovq xmm1, rcx
vpbroadcastq ymm0, xmm0
movabs rcx, 0x5be0cd19137e2179
vmovdqu ymmword [rax + 0x280], ymm2
vmovq xmm3, rcx
vpbroadcastq ymm1, xmm1
vmovdqu ymmword [rax + 0x2a0], ymm0
movabs rcx, 0x8000000000000000
vpbroadcastq ymm3, xmm3
vmovdqu ymmword [rax + 0x2c0], ymm1
vmovdqu ymmword [rax + 0x2e0], ymm3
vmovdqu ymm8, ymmword [r8]
vmovdqu ymmword [rax], ymm8
vmovdqu ymm12, ymmword [r8 + 0x20]
vmovdqu ymmword [rax + 0x20], ymm12
vmovdqu ymm11, ymmword [r8 + 0x40]
vmovdqu ymmword [rax + 0x40], ymm11
vmovdqu ymm7, ymmword [r8 + 0x60]
vmovdqu ymmword [rax + 0x60], ymm7
vmovdqu ymm6, ymmword [r8 + 0x80]
vmovdqu ymmword [rax + 0x80], ymm6
vmovdqu ymmword [rsp], ymm6
vmovdqu ymm6, ymmword [r8 + 0xa0]
vmovdqu ymmword [rax + 0xa0], ymm6
vmovdqu ymm9, ymmword [r8 + 0xc0]
vmovdqu ymmword [rax + 0xc0], ymm9
vmovdqu ymm5, ymmword [r8 + 0xe0]
vmovdqu ymmword [rax + 0xe0], ymm5
vmovdqu ymm14, ymmword [r8 + 0x100]
vmovdqu ymmword [rax + 0x100], ymm14
vmovdqu ymm4, ymmword [r8 + 0x120]
vmovdqu ymmword [rsp + 0x80], ymm14
vmovdqu ymmword [rax + 0x120], ymm4
vmovq xmm4, rcx
vpbroadcastq ymm4, xmm4
vmovdqu ymmword [rax + 0x140], ymm4
vpxor xmm4, xmm4, xmm4
vmovdqu ymmword [rax + 0x160], ymm4
vmovdqu ymmword [rax + 0x180], ymm4
vpbroadcastq ymm10, qword [0x1402774b8]
vmovdqu ymmword [rax + 0x1c0], ymm4
vpbroadcastq ymm4, qword [0x1402774c0]
vmovdqu ymmword [rax + 0x1a0], ymm10
vmovdqu ymmword [rax + 0x1e0], ymm4
movabs rax, 0x13198a2e03707344
vmovq xmm10, rax
movabs rax, 0xbb1838e7a1a34bd9
vpbroadcastq ymm10, xmm10
vmovq xmm4, rax
movabs rax, 0x452821e638d011f7
vpxor ymm8, ymm8, ymm10
vpbroadcastq ymm4, xmm4
vpaddq ymm8, ymm8, ymm4
vmovq xmm4, rax
movabs rax, 0x243f6a8885a308d3
vpbroadcastq ymm4, xmm4
vmovq xmm14, rax
movabs rax, 0x82efa98ec4e6c89
vpxor ymm4, ymm8, ymm4
vpbroadcastq ymm14, xmm14
vpshufd ymm4, ymm4, 0xb1
vpxor ymm12, ymm12, ymm14
vpaddq ymm13, ymm14, ymm4
vpaddq ymm12, ymm12, ymm8
vmovdqu xmm8, xmmword [0x140277490]
vpxor ymm2, ymm13, ymm2
vpsllq ymm15, ymm2, 0x27
vpsrlq ymm2, ymm2, 0x19
vpermq ymm8, ymm8, 0x44
vpor ymm2, ymm2, ymm15
vpaddq ymm14, ymm12, ymm2
vmovq xmm12, rax
movabs rax, 0x566d1711b009135a
vpxor ymm4, ymm14, ymm4
vpbroadcastq ymm12, xmm12
vpshufb ymm15, ymm4, ymm8
vpxor ymm11, ymm11, ymm12
vmovdqu ymmword [rsp + 0x20], ymm15
vpaddq ymm15, ymm13, ymmword [rsp + 0x20]
vpxor ymm2, ymm15, ymm2
vpsllq ymm4, ymm2, 0x35
vpsrlq ymm2, ymm2, 0xb
vpor ymm2, ymm2, ymm4
vmovdqu ymmword [rsp + 0xe0], ymm2
vmovq xmm2, rax
movabs rax, 0xbe5466cf34e90eec
vpbroadcastq ymm2, xmm2
vmovq xmm4, rax
movabs rax, 0xa4093822299f31d0
vpaddq ymm11, ymm11, ymm2
vpbroadcastq ymm4, xmm4
vpxor ymm4, ymm11, ymm4
vpshufd ymm4, ymm4, 0xb1
vpaddq ymm10, ymm10, ymm4
vpxor ymm0, ymm10, ymm0
vpsllq ymm2, ymm0, 0x27
vpsrlq ymm0, ymm0, 0x19
vpor ymm0, ymm0, ymm2
vmovq xmm2, rax
movabs rax, 0xbe5466cf34e90c6c
vpbroadcastq ymm2, xmm2
vmovq xmm13, rax
movabs rax, 0x5bf2cd1ef9d6b596
vpxor ymm7, ymm7, ymm2
vpbroadcastq ymm13, xmm13
vpxor ymm13, ymm13, ymmword [rsp]
vpaddq ymm7, ymm7, ymm11
vpaddq ymm7, ymm7, ymm0
vpxor ymm4, ymm7, ymm4
vpshufb ymm11, ymm4, ymm8
vmovdqu ymmword [rsp + 0x40], ymm11
vpaddq ymm10, ymm10, ymmword [rsp + 0x40]
vmovdqu ymmword [rsp + 0xc0], ymm10
vpxor ymm0, ymm0, ymm10
vpsllq ymm4, ymm0, 0x35
vpsrlq ymm0, ymm0, 0xb
vpor ymm0, ymm0, ymm4
vmovq xmm4, rax
movabs rax, 0xc0ac29b7c97c50dd
vpbroadcastq ymm4, xmm4
vmovq xmm11, rax
movabs rax, 0x452821e638d01377
vpaddq ymm13, ymm13, ymm4
vpbroadcastq ymm11, xmm11
vpxor ymm10, ymm13, ymm11
vpxor ymm5, ymm5, ymm11
vpshufd ymm10, ymm10, 0xb1
vpaddq ymm2, ymm2, ymm10
vpxor ymm1, ymm2, ymm1
vpsllq ymm4, ymm1, 0x27
vpsrlq ymm1, ymm1, 0x19
vpor ymm1, ymm1, ymm4
vmovq xmm4, rax
movabs rax, 0x3f84d5b5b5470917
vpbroadcastq ymm4, xmm4
vpxor ymm6, ymm6, ymm4
vpaddq ymm6, ymm6, ymm13
vpaddq ymm6, ymm6, ymm1
vpxor ymm10, ymm6, ymm10
vpshufb ymm4, ymm10, ymm8
vmovdqu ymmword [rsp + 0x60], ymm4
vpaddq ymm2, ymm2, ymmword [rsp + 0x60]
vpxor ymm1, ymm2, ymm1
vpsllq ymm10, ymm1, 0x35
vpsrlq ymm1, ymm1, 0xb
vpor ymm4, ymm1, ymm10
vmovq xmm10, rax
movabs rax, 0x130c253729b586a
vpbroadcastq ymm10, xmm10
vmovq xmm1, rax
movabs rax, 0xd1310ba698dfb5ac
vpxor ymm9, ymm9, ymm10
vpbroadcastq ymm1, xmm1
vpaddq ymm9, ymm9, ymm1
vpxor ymm10, ymm9, ymm10
vpaddq ymm5, ymm5, ymm9
vpshufd ymm10, ymm10, 0xb1
vpaddq ymm1, ymm12, ymm10
vpxor ymm3, ymm1, ymm3
vpsllq ymm12, ymm3, 0x27
vpsrlq ymm3, ymm3, 0x19
vpor ymm3, ymm3, ymm12
vpaddq ymm9, ymm5, ymm3
vpxor ymm10, ymm9, ymm10
vpshufb ymm10, ymm10, ymm8
vpaddq ymm1, ymm1, ymm10
vpxor ymm3, ymm1, ymm3
vpsllq ymm5, ymm3, 0x35
vpsrlq ymm3, ymm3, 0xb
vpor ymm3, ymm3, ymm5
vmovq xmm5, rax
movabs rax, 0x38e1afed6a267e96
vpbroadcastq ymm5, xmm5
vpxor ymm5, ymm5, ymmword [rsp + 0x80]
vpaddq ymm5, ymm5, ymm0
vpaddq ymm5, ymm5, ymm14
vmovdqu ymmword [rsp + 0xa0], ymm5
vpxor ymm10, ymm10, ymm5
vpshufd ymm13, ymm10, 0xb1
vmovdqu ymmword [rsp + 0x80], ymm13
vpaddq ymm2, ymm2, ymmword [rsp + 0x80]
vpxor ymm0, ymm2, ymm0
vpsllq ymm5, ymm0, 0x27
vpsrlq ymm0, ymm0, 0x19
vpor ymm0, ymm0, ymm5
vmovq xmm5, rax
movabs rax, 0x2ffd72dbd01adfb7
vpbroadcastq ymm5, xmm5
vmovdqu ymmword [rdx + 0xa0], ymm0
vpaddq ymm5, ymm4, ymm5
vpaddq ymm7, ymm5, ymm7
vpxor ymm5, ymm7, ymmword [rsp + 0x20]
vpshufd ymm5, ymm5, 0xb1
vpaddq ymm1, ymm1, ymm5
vpxor ymm4, ymm1, ymm4
vpsllq ymm10, ymm4, 0x27
vpsrlq ymm4, ymm4, 0x19
vpor ymm4, ymm4, ymm10
vmovq xmm10, rax
movabs rax, 0x24a19947b3916cf7
vpbroadcastq ymm10, xmm10
vpaddq ymm10, ymm4, ymm10
vpaddq ymm10, ymm10, ymm7
vmovq xmm7, rax
movabs rax, 0xba7c9045f12c7f98
vpxor ymm5, ymm10, ymm5
vpbroadcastq ymm7, xmm7
vpshufb ymm5, ymm5, ymm8
vpaddq ymm7, ymm3, ymm7
vpaddq ymm1, ymm1, ymm5
vpaddq ymm7, ymm7, ymm6
vpxor ymm4, ymm1, ymm4
vpsllq ymm14, ymm4, 0x35
vpsrlq ymm4, ymm4, 0xb
vpor ymm14, ymm14, ymm4
vpxor ymm4, ymm7, ymmword [rsp + 0x40]
vpshufd ymm4, ymm4, 0xb1
vpaddq ymm12, ymm15, ymm4
vpxor ymm3, ymm12, ymm3
vpsllq ymm6, ymm3, 0x27
vpsrlq ymm3, ymm3, 0x19
vpor ymm3, ymm6, ymm3
vmovq xmm6, rax
movabs rax, 0x636920d871574e69
vpbroadcastq ymm6, xmm6
vmovq xmm15, rax
movabs rax, 0x801f2e2858efe96
vpaddq ymm6, ymm3, ymm6
vpbroadcastq ymm15, xmm15
vpaddq ymm6, ymm6, ymm7
vmovdqu ymm7, ymmword [rsp + 0xe0]
vpxor ymm4, ymm6, ymm4
vpaddq ymm6, ymm14, ymm6
vpshufb ymm4, ymm4, ymm8
vpaddq ymm15, ymm15, ymm7
vmovdqu ymmword [rdx + 0x40], ymm6
vpaddq ymm12, ymm12, ymm4
vpaddq ymm15, ymm15, ymm9
vpxor ymm3, ymm3, ymm12
vpsllq ymm13, ymm3, 0x35
vpsrlq ymm3, ymm3, 0xb
vpor ymm13, ymm13, ymm3
vpxor ymm3, ymm15, ymmword [rsp + 0x60]
vpshufd ymm3, ymm3, 0xb1
vpaddq ymm11, ymm3, ymmword [rsp + 0xc0]
vpxor ymm9, ymm11, ymm7
vpsllq ymm7, ymm9, 0x27
vpsrlq ymm9, ymm9, 0x19
vpor ymm7, ymm7, ymm9
vmovq xmm9, rax
movabs rax, 0x9216d5d98979fb1b
vpbroadcastq ymm9, xmm9
vpaddq ymm9, ymm7, ymm9
vpaddq ymm9, ymm9, ymm15
vpxor ymm3, ymm9, ymm3
vpshufb ymm3, ymm3, ymm8
vpaddq ymm8, ymm0, ymmword [rsp + 0xa0]
vpaddq ymm11, ymm11, ymm3
vmovdqu ymmword [rdx], ymm8
vmovq xmm8, rax
vpxor ymm7, ymm7, ymm11
movabs rax, 0xc0ac29b7c97c50dc
vmovq xmm6, rax
vpsllq ymm15, ymm7, 0x35
vpbroadcastq ymm8, xmm8
vpbroadcastq ymm6, xmm6
vpsrlq ymm7, ymm7, 0xb
vpxor ymm8, ymm8, ymmword [rsp]
vpaddq ymm6, ymm13, ymm6
vpor ymm15, ymm15, ymm7
vpaddq ymm8, ymm8, ymm10
vpaddq ymm6, ymm6, ymm9
vmovdqu ymmword [rdx + 0x80], ymm15
vmovdqu ymmword [rdx + 0x20], ymm8
vmovdqu ymmword [rdx + 0x60], ymm6
vmovdqu ymmword [rdx + 0xc0], ymm14
vmovdqu ymmword [rdx + 0xe0], ymm13
vmovdqu ymm13, ymmword [rsp + 0x80]
vmovdqu ymmword [rdx + 0x100], ymm12
vmovdqu ymmword [rdx + 0x120], ymm11
vmovdqu ymmword [rdx + 0x1e0], ymm13
vmovdqu ymmword [rdx + 0x140], ymm2
vmovdqu ymmword [rdx + 0x160], ymm1
vmovdqu ymmword [rdx + 0x180], ymm5
vmovdqu ymmword [rdx + 0x1a0], ymm4
vmovdqu ymmword [rdx + 0x1c0], ymm3
vzeroupper
vmovups xmm6, xmmword [rsp + 0x100]
vmovups xmm7, xmmword [rsp + 0x110]
vmovups xmm8, xmmword [rsp + 0x120]
vmovups xmm9, xmmword [rsp + 0x130]
vmovups xmm10, xmmword [rsp + 0x140]
vmovups xmm11, xmmword [rsp + 0x150]
vmovups xmm12, xmmword [rsp + 0x160]
vmovups xmm13, xmmword [rsp + 0x170]
vmovups xmm14, xmmword [rsp + 0x180]
vmovups xmm15, xmmword [rsp + 0x190]
add rsp, 0x1a8
ret