where-simd-helps/benchmark/objdump/refnv0768.txt

4612 lines
228 KiB
Plaintext

test_speed768: file format elf64-x86-64
Disassembly of section .init:
0000000000001000 <_init>:
1000: f3 0f 1e fa endbr64
1004: 48 83 ec 08 sub $0x8,%rsp
1008: 48 8b 05 c1 7f 00 00 mov 0x7fc1(%rip),%rax # 8fd0 <__gmon_start__@Base>
100f: 48 85 c0 test %rax,%rax
1012: 74 02 je 1016 <_init+0x16>
1014: ff d0 call *%rax
1016: 48 83 c4 08 add $0x8,%rsp
101a: c3 ret
Disassembly of section .plt:
0000000000001020 <putchar@plt-0x10>:
1020: ff 35 ca 7f 00 00 push 0x7fca(%rip) # 8ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
1026: ff 25 cc 7f 00 00 jmp *0x7fcc(%rip) # 8ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
102c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000001030 <putchar@plt>:
1030: ff 25 ca 7f 00 00 jmp *0x7fca(%rip) # 9000 <putchar@GLIBC_2.2.5>
1036: 68 00 00 00 00 push $0x0
103b: e9 e0 ff ff ff jmp 1020 <_init+0x20>
0000000000001040 <abort@plt>:
1040: ff 25 c2 7f 00 00 jmp *0x7fc2(%rip) # 9008 <abort@GLIBC_2.2.5>
1046: 68 01 00 00 00 push $0x1
104b: e9 d0 ff ff ff jmp 1020 <_init+0x20>
0000000000001050 <__errno_location@plt>:
1050: ff 25 ba 7f 00 00 jmp *0x7fba(%rip) # 9010 <__errno_location@GLIBC_2.2.5>
1056: 68 02 00 00 00 push $0x2
105b: e9 c0 ff ff ff jmp 1020 <_init+0x20>
0000000000001060 <puts@plt>:
1060: ff 25 b2 7f 00 00 jmp *0x7fb2(%rip) # 9018 <puts@GLIBC_2.2.5>
1066: 68 03 00 00 00 push $0x3
106b: e9 b0 ff ff ff jmp 1020 <_init+0x20>
0000000000001070 <qsort@plt>:
1070: ff 25 aa 7f 00 00 jmp *0x7faa(%rip) # 9020 <qsort@GLIBC_2.2.5>
1076: 68 04 00 00 00 push $0x4
107b: e9 a0 ff ff ff jmp 1020 <_init+0x20>
0000000000001080 <__stack_chk_fail@plt>:
1080: ff 25 a2 7f 00 00 jmp *0x7fa2(%rip) # 9028 <__stack_chk_fail@GLIBC_2.4>
1086: 68 05 00 00 00 push $0x5
108b: e9 90 ff ff ff jmp 1020 <_init+0x20>
0000000000001090 <printf@plt>:
1090: ff 25 9a 7f 00 00 jmp *0x7f9a(%rip) # 9030 <printf@GLIBC_2.2.5>
1096: 68 06 00 00 00 push $0x6
109b: e9 80 ff ff ff jmp 1020 <_init+0x20>
00000000000010a0 <syscall@plt>:
10a0: ff 25 92 7f 00 00 jmp *0x7f92(%rip) # 9038 <syscall@GLIBC_2.2.5>
10a6: 68 07 00 00 00 push $0x7
10ab: e9 70 ff ff ff jmp 1020 <_init+0x20>
00000000000010b0 <fwrite@plt>:
10b0: ff 25 8a 7f 00 00 jmp *0x7f8a(%rip) # 9040 <fwrite@GLIBC_2.2.5>
10b6: 68 08 00 00 00 push $0x8
10bb: e9 60 ff ff ff jmp 1020 <_init+0x20>
Disassembly of section .text:
00000000000010c0 <randombytes.cold>:
10c0: e8 7b ff ff ff call 1040 <abort@plt>
10c5: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
10cc: 00 00 00
10cf: 90 nop
00000000000010d0 <main>:
10d0: 41 57 push %r15
10d2: be 20 00 00 00 mov $0x20,%esi
10d7: 4c 8d 3d c2 7f 00 00 lea 0x7fc2(%rip),%r15 # 90a0 <t>
10de: 41 56 push %r14
10e0: 41 55 push %r13
10e2: 41 54 push %r12
10e4: 55 push %rbp
10e5: 4c 89 fd mov %r15,%rbp
10e8: 53 push %rbx
10e9: 49 8d 9f 40 1f 00 00 lea 0x1f40(%r15),%rbx
10f0: 48 81 ec f8 26 00 00 sub $0x26f8,%rsp
10f7: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
10fe: 00 00
1100: 48 89 84 24 e8 26 00 mov %rax,0x26e8(%rsp)
1107: 00
1108: 48 8d 84 24 40 14 00 lea 0x1440(%rsp),%rax
110f: 00
1110: 4c 8d ac 24 20 02 00 lea 0x220(%rsp),%r13
1117: 00
1118: 48 89 c7 mov %rax,%rdi
111b: 48 89 04 24 mov %rax,(%rsp)
111f: e8 5c 3d 00 00 call 4e80 <randombytes>
1124: 48 8d 84 24 60 14 00 lea 0x1460(%rsp),%rax
112b: 00
112c: be 40 00 00 00 mov $0x40,%esi
1131: 48 89 c7 mov %rax,%rdi
1134: 48 89 44 24 10 mov %rax,0x10(%rsp)
1139: e8 42 3d 00 00 call 4e80 <randombytes>
113e: 4c 89 7c 24 18 mov %r15,0x18(%rsp)
1143: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
114a: 00 00 00 00
114e: 66 90 xchg %ax,%ax
1150: 0f 31 rdtsc
1152: 48 c1 e2 20 shl $0x20,%rdx
1156: 48 09 d0 or %rdx,%rax
1159: 48 89 45 00 mov %rax,0x0(%rbp)
115d: 31 d2 xor %edx,%edx
115f: 48 8d 35 1a 7f 00 00 lea 0x7f1a(%rip),%rsi # 9080 <seed>
1166: 4c 89 ef mov %r13,%rdi
1169: 48 83 c5 08 add $0x8,%rbp
116d: e8 7e 0b 00 00 call 1cf0 <pqcrystals_kyber768_ref_gen_matrix>
1172: 48 39 dd cmp %rbx,%rbp
1175: 75 d9 jne 1150 <main+0x80>
1177: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
117c: ba e8 03 00 00 mov $0x3e8,%edx
1181: 4c 8d 64 24 20 lea 0x20(%rsp),%r12
1186: 48 8d 3d d3 50 00 00 lea 0x50d3(%rip),%rdi # 6260 <KeccakF_RoundConstants+0x140>
118d: e8 ce 3d 00 00 call 4f60 <print_results>
1192: 48 8d 05 07 7f 00 00 lea 0x7f07(%rip),%rax # 90a0 <t>
1199: 48 89 44 24 18 mov %rax,0x18(%rsp)
119e: 48 89 c5 mov %rax,%rbp
11a1: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
11a8: 00 00 00 00
11ac: 0f 1f 40 00 nopl 0x0(%rax)
11b0: 0f 31 rdtsc
11b2: 48 c1 e2 20 shl $0x20,%rdx
11b6: 48 09 d0 or %rdx,%rax
11b9: 48 89 45 00 mov %rax,0x0(%rbp)
11bd: 31 d2 xor %edx,%edx
11bf: 48 8d 35 ba 7e 00 00 lea 0x7eba(%rip),%rsi # 9080 <seed>
11c6: 4c 89 e7 mov %r12,%rdi
11c9: 48 83 c5 08 add $0x8,%rbp
11cd: e8 2e 1b 00 00 call 2d00 <pqcrystals_kyber768_ref_poly_getnoise_eta1>
11d2: 48 39 dd cmp %rbx,%rbp
11d5: 75 d9 jne 11b0 <main+0xe0>
11d7: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
11dc: ba e8 03 00 00 mov $0x3e8,%edx
11e1: 48 8d 3d 80 50 00 00 lea 0x5080(%rip),%rdi # 6268 <KeccakF_RoundConstants+0x148>
11e8: e8 73 3d 00 00 call 4f60 <print_results>
11ed: 48 8d 05 ac 7e 00 00 lea 0x7eac(%rip),%rax # 90a0 <t>
11f4: 48 89 44 24 18 mov %rax,0x18(%rsp)
11f9: 48 89 c5 mov %rax,%rbp
11fc: 0f 1f 40 00 nopl 0x0(%rax)
1200: 0f 31 rdtsc
1202: 48 c1 e2 20 shl $0x20,%rdx
1206: 48 09 d0 or %rdx,%rax
1209: 48 89 45 00 mov %rax,0x0(%rbp)
120d: 31 d2 xor %edx,%edx
120f: 48 8d 35 6a 7e 00 00 lea 0x7e6a(%rip),%rsi # 9080 <seed>
1216: 4c 89 e7 mov %r12,%rdi
1219: 48 83 c5 08 add $0x8,%rbp
121d: e8 3e 1b 00 00 call 2d60 <pqcrystals_kyber768_ref_poly_getnoise_eta2>
1222: 48 39 dd cmp %rbx,%rbp
1225: 75 d9 jne 1200 <main+0x130>
1227: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
122c: ba e8 03 00 00 mov $0x3e8,%edx
1231: 48 8d 3d 45 50 00 00 lea 0x5045(%rip),%rdi # 627d <KeccakF_RoundConstants+0x15d>
1238: e8 23 3d 00 00 call 4f60 <print_results>
123d: 48 8d 05 5c 7e 00 00 lea 0x7e5c(%rip),%rax # 90a0 <t>
1244: 48 89 44 24 18 mov %rax,0x18(%rsp)
1249: 48 89 c5 mov %rax,%rbp
124c: 0f 1f 40 00 nopl 0x0(%rax)
1250: 0f 31 rdtsc
1252: 48 c1 e2 20 shl $0x20,%rdx
1256: 48 09 d0 or %rdx,%rax
1259: 48 89 45 00 mov %rax,0x0(%rbp)
125d: 4c 89 e7 mov %r12,%rdi
1260: 48 83 c5 08 add $0x8,%rbp
1264: e8 57 1b 00 00 call 2dc0 <pqcrystals_kyber768_ref_poly_ntt>
1269: 48 39 dd cmp %rbx,%rbp
126c: 75 e2 jne 1250 <main+0x180>
126e: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1273: ba e8 03 00 00 mov $0x3e8,%edx
1278: 48 8d 3d 16 50 00 00 lea 0x5016(%rip),%rdi # 6295 <KeccakF_RoundConstants+0x175>
127f: e8 dc 3c 00 00 call 4f60 <print_results>
1284: 48 8d 05 15 7e 00 00 lea 0x7e15(%rip),%rax # 90a0 <t>
128b: 48 89 44 24 18 mov %rax,0x18(%rsp)
1290: 48 89 c5 mov %rax,%rbp
1293: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
129a: 00 00 00 00
129e: 66 90 xchg %ax,%ax
12a0: 0f 31 rdtsc
12a2: 48 c1 e2 20 shl $0x20,%rdx
12a6: 48 09 d0 or %rdx,%rax
12a9: 48 89 45 00 mov %rax,0x0(%rbp)
12ad: 4c 89 e7 mov %r12,%rdi
12b0: 48 83 c5 08 add $0x8,%rbp
12b4: e8 47 1b 00 00 call 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
12b9: 48 39 dd cmp %rbx,%rbp
12bc: 75 e2 jne 12a0 <main+0x1d0>
12be: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
12c3: ba e8 03 00 00 mov $0x3e8,%edx
12c8: 48 8d 3d c3 4f 00 00 lea 0x4fc3(%rip),%rdi # 6292 <KeccakF_RoundConstants+0x172>
12cf: 48 8d ac 24 20 08 00 lea 0x820(%rsp),%rbp
12d6: 00
12d7: e8 84 3c 00 00 call 4f60 <print_results>
12dc: 48 8d 05 bd 7d 00 00 lea 0x7dbd(%rip),%rax # 90a0 <t>
12e3: 48 89 44 24 18 mov %rax,0x18(%rsp)
12e8: 49 89 c6 mov %rax,%r14
12eb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
12f0: 0f 31 rdtsc
12f2: 48 c1 e2 20 shl $0x20,%rdx
12f6: 48 09 d0 or %rdx,%rax
12f9: 49 89 06 mov %rax,(%r14)
12fc: 48 89 ea mov %rbp,%rdx
12ff: 4c 89 ee mov %r13,%rsi
1302: 4c 89 e7 mov %r12,%rdi
1305: 49 83 c6 08 add $0x8,%r14
1309: e8 62 14 00 00 call 2770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>
130e: 49 39 de cmp %rbx,%r14
1311: 75 dd jne 12f0 <main+0x220>
1313: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1318: ba e8 03 00 00 mov $0x3e8,%edx
131d: 48 8d 3d e4 4e 00 00 lea 0x4ee4(%rip),%rdi # 6208 <KeccakF_RoundConstants+0xe8>
1324: 48 8d ac 24 a0 14 00 lea 0x14a0(%rsp),%rbp
132b: 00
132c: e8 2f 3c 00 00 call 4f60 <print_results>
1331: 48 8d 05 68 7d 00 00 lea 0x7d68(%rip),%rax # 90a0 <t>
1338: 48 89 44 24 18 mov %rax,0x18(%rsp)
133d: 49 89 c6 mov %rax,%r14
1340: 0f 31 rdtsc
1342: 48 c1 e2 20 shl $0x20,%rdx
1346: 48 09 d0 or %rdx,%rax
1349: 49 89 06 mov %rax,(%r14)
134c: 4c 89 e6 mov %r12,%rsi
134f: 48 89 ef mov %rbp,%rdi
1352: 49 83 c6 08 add $0x8,%r14
1356: e8 95 18 00 00 call 2bf0 <pqcrystals_kyber768_ref_poly_tomsg>
135b: 49 39 de cmp %rbx,%r14
135e: 75 e0 jne 1340 <main+0x270>
1360: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1365: ba e8 03 00 00 mov $0x3e8,%edx
136a: 48 8d 3d 2a 4f 00 00 lea 0x4f2a(%rip),%rdi # 629b <KeccakF_RoundConstants+0x17b>
1371: e8 ea 3b 00 00 call 4f60 <print_results>
1376: 48 8d 05 23 7d 00 00 lea 0x7d23(%rip),%rax # 90a0 <t>
137d: 48 89 44 24 18 mov %rax,0x18(%rsp)
1382: 49 89 c6 mov %rax,%r14
1385: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
138c: 00 00 00 00
1390: 0f 31 rdtsc
1392: 48 c1 e2 20 shl $0x20,%rdx
1396: 48 09 d0 or %rdx,%rax
1399: 49 89 06 mov %rax,(%r14)
139c: 48 89 ee mov %rbp,%rsi
139f: 4c 89 e7 mov %r12,%rdi
13a2: 49 83 c6 08 add $0x8,%r14
13a6: e8 d5 17 00 00 call 2b80 <pqcrystals_kyber768_ref_poly_frommsg>
13ab: 49 39 de cmp %rbx,%r14
13ae: 75 e0 jne 1390 <main+0x2c0>
13b0: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
13b5: ba e8 03 00 00 mov $0x3e8,%edx
13ba: 48 8d 3d e7 4e 00 00 lea 0x4ee7(%rip),%rdi # 62a8 <KeccakF_RoundConstants+0x188>
13c1: e8 9a 3b 00 00 call 4f60 <print_results>
13c6: 48 8d 05 d3 7c 00 00 lea 0x7cd3(%rip),%rax # 90a0 <t>
13cd: 48 89 44 24 18 mov %rax,0x18(%rsp)
13d2: 49 89 c6 mov %rax,%r14
13d5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
13dc: 00 00 00 00
13e0: 0f 31 rdtsc
13e2: 48 c1 e2 20 shl $0x20,%rdx
13e6: 48 09 d0 or %rdx,%rax
13e9: 49 89 06 mov %rax,(%r14)
13ec: 4c 89 e6 mov %r12,%rsi
13ef: 48 89 ef mov %rbp,%rdi
13f2: 49 83 c6 08 add $0x8,%r14
13f6: e8 c5 14 00 00 call 28c0 <pqcrystals_kyber768_ref_poly_compress>
13fb: 49 39 de cmp %rbx,%r14
13fe: 75 e0 jne 13e0 <main+0x310>
1400: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1405: ba e8 03 00 00 mov $0x3e8,%edx
140a: 48 8d 3d a6 4e 00 00 lea 0x4ea6(%rip),%rdi # 62b7 <KeccakF_RoundConstants+0x197>
1411: e8 4a 3b 00 00 call 4f60 <print_results>
1416: 48 8d 05 83 7c 00 00 lea 0x7c83(%rip),%rax # 90a0 <t>
141d: 48 89 44 24 18 mov %rax,0x18(%rsp)
1422: 49 89 c6 mov %rax,%r14
1425: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
142c: 00 00 00 00
1430: 0f 31 rdtsc
1432: 48 c1 e2 20 shl $0x20,%rdx
1436: 48 09 d0 or %rdx,%rax
1439: 49 89 06 mov %rax,(%r14)
143c: 48 89 ee mov %rbp,%rsi
143f: 4c 89 e7 mov %r12,%rdi
1442: 49 83 c6 08 add $0x8,%r14
1446: e8 25 16 00 00 call 2a70 <pqcrystals_kyber768_ref_poly_decompress>
144b: 49 39 de cmp %rbx,%r14
144e: 75 e0 jne 1430 <main+0x360>
1450: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1455: ba e8 03 00 00 mov $0x3e8,%edx
145a: 48 8d 3d 66 4e 00 00 lea 0x4e66(%rip),%rdi # 62c7 <KeccakF_RoundConstants+0x1a7>
1461: e8 fa 3a 00 00 call 4f60 <print_results>
1466: 48 8d 05 33 7c 00 00 lea 0x7c33(%rip),%rax # 90a0 <t>
146d: 48 89 44 24 18 mov %rax,0x18(%rsp)
1472: 49 89 c4 mov %rax,%r12
1475: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
147c: 00 00 00 00
1480: 0f 31 rdtsc
1482: 48 c1 e2 20 shl $0x20,%rdx
1486: 48 09 d0 or %rdx,%rax
1489: 49 89 04 24 mov %rax,(%r12)
148d: 4c 89 ee mov %r13,%rsi
1490: 48 89 ef mov %rbp,%rdi
1493: 49 83 c4 08 add $0x8,%r12
1497: e8 84 0f 00 00 call 2420 <pqcrystals_kyber768_ref_polyvec_compress>
149c: 49 39 dc cmp %rbx,%r12
149f: 75 df jne 1480 <main+0x3b0>
14a1: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
14a6: ba e8 03 00 00 mov $0x3e8,%edx
14ab: 48 8d 3d 27 4e 00 00 lea 0x4e27(%rip),%rdi # 62d9 <KeccakF_RoundConstants+0x1b9>
14b2: e8 a9 3a 00 00 call 4f60 <print_results>
14b7: 48 8d 05 e2 7b 00 00 lea 0x7be2(%rip),%rax # 90a0 <t>
14be: 48 89 44 24 18 mov %rax,0x18(%rsp)
14c3: 49 89 c4 mov %rax,%r12
14c6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
14cd: 00 00 00
14d0: 0f 31 rdtsc
14d2: 48 c1 e2 20 shl $0x20,%rdx
14d6: 48 09 d0 or %rdx,%rax
14d9: 49 89 04 24 mov %rax,(%r12)
14dd: 48 89 ee mov %rbp,%rsi
14e0: 4c 89 ef mov %r13,%rdi
14e3: 49 83 c4 08 add $0x8,%r12
14e7: e8 a4 10 00 00 call 2590 <pqcrystals_kyber768_ref_polyvec_decompress>
14ec: 49 39 dc cmp %rbx,%r12
14ef: 75 df jne 14d0 <main+0x400>
14f1: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
14f6: ba e8 03 00 00 mov $0x3e8,%edx
14fb: 48 8d 3d ea 4d 00 00 lea 0x4dea(%rip),%rdi # 62ec <KeccakF_RoundConstants+0x1cc>
1502: 4c 8d ac 24 80 1d 00 lea 0x1d80(%rsp),%r13
1509: 00
150a: 4c 8d a4 24 e0 18 00 lea 0x18e0(%rsp),%r12
1511: 00
1512: e8 49 3a 00 00 call 4f60 <print_results>
1517: 48 8d 05 82 7b 00 00 lea 0x7b82(%rip),%rax # 90a0 <t>
151e: 48 89 44 24 18 mov %rax,0x18(%rsp)
1523: 49 89 c6 mov %rax,%r14
1526: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
152d: 00 00 00
1530: 0f 31 rdtsc
1532: 48 c1 e2 20 shl $0x20,%rdx
1536: 48 09 d0 or %rdx,%rax
1539: 49 89 06 mov %rax,(%r14)
153c: 48 8b 14 24 mov (%rsp),%rdx
1540: 4c 89 ee mov %r13,%rsi
1543: 4c 89 e7 mov %r12,%rdi
1546: 49 83 c6 08 add $0x8,%r14
154a: e8 01 0a 00 00 call 1f50 <pqcrystals_kyber768_ref_indcpa_keypair_derand>
154f: 49 39 de cmp %rbx,%r14
1552: 75 dc jne 1530 <main+0x460>
1554: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1559: ba e8 03 00 00 mov $0x3e8,%edx
155e: 48 8d 3d 9c 4d 00 00 lea 0x4d9c(%rip),%rdi # 6301 <KeccakF_RoundConstants+0x1e1>
1565: 4c 8d b4 24 20 14 00 lea 0x1420(%rsp),%r14
156c: 00
156d: e8 ee 39 00 00 call 4f60 <print_results>
1572: 48 8d 05 27 7b 00 00 lea 0x7b27(%rip),%rax # 90a0 <t>
1579: 48 89 44 24 18 mov %rax,0x18(%rsp)
157e: 49 89 c0 mov %rax,%r8
1581: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
1588: 00 00 00 00
158c: 0f 1f 40 00 nopl 0x0(%rax)
1590: 0f 31 rdtsc
1592: 48 c1 e2 20 shl $0x20,%rdx
1596: 48 09 d0 or %rdx,%rax
1599: 49 89 00 mov %rax,(%r8)
159c: 48 8d 0d dd 7a 00 00 lea 0x7add(%rip),%rcx # 9080 <seed>
15a3: 4c 89 e2 mov %r12,%rdx
15a6: 4c 89 f6 mov %r14,%rsi
15a9: 48 89 ef mov %rbp,%rdi
15ac: 4c 89 44 24 08 mov %r8,0x8(%rsp)
15b1: e8 5a 0b 00 00 call 2110 <pqcrystals_kyber768_ref_indcpa_enc>
15b6: 4c 8b 44 24 08 mov 0x8(%rsp),%r8
15bb: 49 83 c0 08 add $0x8,%r8
15bf: 49 39 d8 cmp %rbx,%r8
15c2: 75 cc jne 1590 <main+0x4c0>
15c4: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
15c9: ba e8 03 00 00 mov $0x3e8,%edx
15ce: 48 8d 3d 3d 4d 00 00 lea 0x4d3d(%rip),%rdi # 6312 <KeccakF_RoundConstants+0x1f2>
15d5: e8 86 39 00 00 call 4f60 <print_results>
15da: 48 8d 05 bf 7a 00 00 lea 0x7abf(%rip),%rax # 90a0 <t>
15e1: 48 89 44 24 18 mov %rax,0x18(%rsp)
15e6: 48 89 c1 mov %rax,%rcx
15e9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
15f0: 0f 31 rdtsc
15f2: 48 c1 e2 20 shl $0x20,%rdx
15f6: 48 09 d0 or %rdx,%rax
15f9: 48 89 01 mov %rax,(%rcx)
15fc: 4c 89 ea mov %r13,%rdx
15ff: 48 89 ee mov %rbp,%rsi
1602: 4c 89 f7 mov %r14,%rdi
1605: 48 89 4c 24 08 mov %rcx,0x8(%rsp)
160a: e8 21 0d 00 00 call 2330 <pqcrystals_kyber768_ref_indcpa_dec>
160f: 48 8b 4c 24 08 mov 0x8(%rsp),%rcx
1614: 48 83 c1 08 add $0x8,%rcx
1618: 48 39 d9 cmp %rbx,%rcx
161b: 75 d3 jne 15f0 <main+0x520>
161d: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1622: ba e8 03 00 00 mov $0x3e8,%edx
1627: 48 8d 3d f1 4c 00 00 lea 0x4cf1(%rip),%rdi # 631f <KeccakF_RoundConstants+0x1ff>
162e: e8 2d 39 00 00 call 4f60 <print_results>
1633: 48 8d 05 66 7a 00 00 lea 0x7a66(%rip),%rax # 90a0 <t>
163a: 48 89 44 24 18 mov %rax,0x18(%rsp)
163f: 48 89 c1 mov %rax,%rcx
1642: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
1649: 00 00 00 00
164d: 0f 1f 00 nopl (%rax)
1650: 0f 31 rdtsc
1652: 48 c1 e2 20 shl $0x20,%rdx
1656: 48 09 d0 or %rdx,%rax
1659: 48 89 01 mov %rax,(%rcx)
165c: 48 8b 54 24 10 mov 0x10(%rsp),%rdx
1661: 4c 89 ee mov %r13,%rsi
1664: 4c 89 e7 mov %r12,%rdi
1667: 48 89 4c 24 08 mov %rcx,0x8(%rsp)
166c: e8 af 02 00 00 call 1920 <pqcrystals_kyber768_ref_keypair_derand>
1671: 48 8b 4c 24 08 mov 0x8(%rsp),%rcx
1676: 48 83 c1 08 add $0x8,%rcx
167a: 48 39 d9 cmp %rbx,%rcx
167d: 75 d1 jne 1650 <main+0x580>
167f: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1684: ba e8 03 00 00 mov $0x3e8,%edx
1689: 48 8d 3d 9c 4c 00 00 lea 0x4c9c(%rip),%rdi # 632c <KeccakF_RoundConstants+0x20c>
1690: e8 cb 38 00 00 call 4f60 <print_results>
1695: 48 8d 05 04 7a 00 00 lea 0x7a04(%rip),%rax # 90a0 <t>
169c: 48 89 44 24 18 mov %rax,0x18(%rsp)
16a1: 48 89 c1 mov %rax,%rcx
16a4: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
16ab: 00 00 00 00
16af: 90 nop
16b0: 0f 31 rdtsc
16b2: 48 c1 e2 20 shl $0x20,%rdx
16b6: 48 09 d0 or %rdx,%rax
16b9: 48 89 01 mov %rax,(%rcx)
16bc: 4c 89 ee mov %r13,%rsi
16bf: 4c 89 e7 mov %r12,%rdi
16c2: 48 89 4c 24 08 mov %rcx,0x8(%rsp)
16c7: e8 e4 02 00 00 call 19b0 <pqcrystals_kyber768_ref_keypair>
16cc: 48 8b 4c 24 08 mov 0x8(%rsp),%rcx
16d1: 48 83 c1 08 add $0x8,%rcx
16d5: 48 39 d9 cmp %rbx,%rcx
16d8: 75 d6 jne 16b0 <main+0x5e0>
16da: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
16df: ba e8 03 00 00 mov $0x3e8,%edx
16e4: 48 8d 3d 58 4c 00 00 lea 0x4c58(%rip),%rdi # 6343 <KeccakF_RoundConstants+0x223>
16eb: e8 70 38 00 00 call 4f60 <print_results>
16f0: 48 8d 05 a9 79 00 00 lea 0x79a9(%rip),%rax # 90a0 <t>
16f7: 48 89 44 24 18 mov %rax,0x18(%rsp)
16fc: 49 89 c0 mov %rax,%r8
16ff: 90 nop
1700: 0f 31 rdtsc
1702: 48 c1 e2 20 shl $0x20,%rdx
1706: 48 09 d0 or %rdx,%rax
1709: 49 89 00 mov %rax,(%r8)
170c: 48 8b 0c 24 mov (%rsp),%rcx
1710: 4c 89 e2 mov %r12,%rdx
1713: 4c 89 f6 mov %r14,%rsi
1716: 48 89 ef mov %rbp,%rdi
1719: 4c 89 44 24 08 mov %r8,0x8(%rsp)
171e: e8 5d 03 00 00 call 1a80 <pqcrystals_kyber768_ref_enc_derand>
1723: 4c 8b 44 24 08 mov 0x8(%rsp),%r8
1728: 49 83 c0 08 add $0x8,%r8
172c: 49 39 d8 cmp %rbx,%r8
172f: 75 cf jne 1700 <main+0x630>
1731: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1736: ba e8 03 00 00 mov $0x3e8,%edx
173b: 48 8d 3d 11 4c 00 00 lea 0x4c11(%rip),%rdi # 6353 <KeccakF_RoundConstants+0x233>
1742: e8 19 38 00 00 call 4f60 <print_results>
1747: 48 8d 05 52 79 00 00 lea 0x7952(%rip),%rax # 90a0 <t>
174e: 48 89 44 24 18 mov %rax,0x18(%rsp)
1753: 48 89 c1 mov %rax,%rcx
1756: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
175d: 00 00 00
1760: 0f 31 rdtsc
1762: 48 c1 e2 20 shl $0x20,%rdx
1766: 48 09 d0 or %rdx,%rax
1769: 48 89 01 mov %rax,(%rcx)
176c: 4c 89 e2 mov %r12,%rdx
176f: 4c 89 f6 mov %r14,%rsi
1772: 48 89 ef mov %rbp,%rdi
1775: 48 89 0c 24 mov %rcx,(%rsp)
1779: e8 b2 03 00 00 call 1b30 <pqcrystals_kyber768_ref_enc>
177e: 48 8b 0c 24 mov (%rsp),%rcx
1782: 48 83 c1 08 add $0x8,%rcx
1786: 48 39 d9 cmp %rbx,%rcx
1789: 75 d5 jne 1760 <main+0x690>
178b: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1790: ba e8 03 00 00 mov $0x3e8,%edx
1795: 48 8d 3d cd 4b 00 00 lea 0x4bcd(%rip),%rdi # 6369 <KeccakF_RoundConstants+0x249>
179c: e8 bf 37 00 00 call 4f60 <print_results>
17a1: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
17a8: 00 00 00 00
17ac: 0f 1f 40 00 nopl 0x0(%rax)
17b0: 0f 31 rdtsc
17b2: 48 c1 e2 20 shl $0x20,%rdx
17b6: 48 09 d0 or %rdx,%rax
17b9: 49 89 07 mov %rax,(%r15)
17bc: 4c 89 ea mov %r13,%rdx
17bf: 48 89 ee mov %rbp,%rsi
17c2: 4c 89 f7 mov %r14,%rdi
17c5: 49 83 c7 08 add $0x8,%r15
17c9: e8 32 04 00 00 call 1c00 <pqcrystals_kyber768_ref_dec>
17ce: 49 39 df cmp %rbx,%r15
17d1: 75 dd jne 17b0 <main+0x6e0>
17d3: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
17d8: ba e8 03 00 00 mov $0x3e8,%edx
17dd: 48 8d 3d 94 4b 00 00 lea 0x4b94(%rip),%rdi # 6378 <KeccakF_RoundConstants+0x258>
17e4: e8 77 37 00 00 call 4f60 <print_results>
17e9: 48 8b 84 24 e8 26 00 mov 0x26e8(%rsp),%rax
17f0: 00
17f1: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
17f8: 00 00
17fa: 75 14 jne 1810 <main+0x740>
17fc: 48 81 c4 f8 26 00 00 add $0x26f8,%rsp
1803: 31 c0 xor %eax,%eax
1805: 5b pop %rbx
1806: 5d pop %rbp
1807: 41 5c pop %r12
1809: 41 5d pop %r13
180b: 41 5e pop %r14
180d: 41 5f pop %r15
180f: c3 ret
1810: e8 6b f8 ff ff call 1080 <__stack_chk_fail@plt>
1815: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
181c: 00 00 00
181f: 90 nop
0000000000001820 <_start>:
1820: f3 0f 1e fa endbr64
1824: 31 ed xor %ebp,%ebp
1826: 49 89 d1 mov %rdx,%r9
1829: 5e pop %rsi
182a: 48 89 e2 mov %rsp,%rdx
182d: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp
1831: 50 push %rax
1832: 54 push %rsp
1833: 45 31 c0 xor %r8d,%r8d
1836: 31 c9 xor %ecx,%ecx
1838: 48 8d 3d 91 f8 ff ff lea -0x76f(%rip),%rdi # 10d0 <main>
183f: ff 15 7b 77 00 00 call *0x777b(%rip) # 8fc0 <__libc_start_main@GLIBC_2.34>
1845: f4 hlt
1846: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
184d: 00 00 00
1850: 48 8d 3d 09 78 00 00 lea 0x7809(%rip),%rdi # 9060 <stderr@GLIBC_2.2.5>
1857: 48 8d 05 02 78 00 00 lea 0x7802(%rip),%rax # 9060 <stderr@GLIBC_2.2.5>
185e: 48 39 f8 cmp %rdi,%rax
1861: 74 15 je 1878 <_start+0x58>
1863: 48 8b 05 5e 77 00 00 mov 0x775e(%rip),%rax # 8fc8 <_ITM_deregisterTMCloneTable@Base>
186a: 48 85 c0 test %rax,%rax
186d: 74 09 je 1878 <_start+0x58>
186f: ff e0 jmp *%rax
1871: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
1878: c3 ret
1879: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
1880: 48 8d 3d d9 77 00 00 lea 0x77d9(%rip),%rdi # 9060 <stderr@GLIBC_2.2.5>
1887: 48 8d 35 d2 77 00 00 lea 0x77d2(%rip),%rsi # 9060 <stderr@GLIBC_2.2.5>
188e: 48 29 fe sub %rdi,%rsi
1891: 48 89 f0 mov %rsi,%rax
1894: 48 c1 ee 3f shr $0x3f,%rsi
1898: 48 c1 f8 03 sar $0x3,%rax
189c: 48 01 c6 add %rax,%rsi
189f: 48 d1 fe sar $1,%rsi
18a2: 74 14 je 18b8 <_start+0x98>
18a4: 48 8b 05 2d 77 00 00 mov 0x772d(%rip),%rax # 8fd8 <_ITM_registerTMCloneTable@Base>
18ab: 48 85 c0 test %rax,%rax
18ae: 74 08 je 18b8 <_start+0x98>
18b0: ff e0 jmp *%rax
18b2: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
18b8: c3 ret
18b9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
18c0: f3 0f 1e fa endbr64
18c4: 80 3d 9d 77 00 00 00 cmpb $0x0,0x779d(%rip) # 9068 <stderr@GLIBC_2.2.5+0x8>
18cb: 75 33 jne 1900 <_start+0xe0>
18cd: 55 push %rbp
18ce: 48 83 3d 0a 77 00 00 cmpq $0x0,0x770a(%rip) # 8fe0 <__cxa_finalize@GLIBC_2.2.5>
18d5: 00
18d6: 48 89 e5 mov %rsp,%rbp
18d9: 74 0d je 18e8 <_start+0xc8>
18db: 48 8b 3d 6e 77 00 00 mov 0x776e(%rip),%rdi # 9050 <__dso_handle>
18e2: ff 15 f8 76 00 00 call *0x76f8(%rip) # 8fe0 <__cxa_finalize@GLIBC_2.2.5>
18e8: e8 63 ff ff ff call 1850 <_start+0x30>
18ed: c6 05 74 77 00 00 01 movb $0x1,0x7774(%rip) # 9068 <stderr@GLIBC_2.2.5+0x8>
18f4: 5d pop %rbp
18f5: c3 ret
18f6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
18fd: 00 00 00
1900: c3 ret
1901: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
1908: 00 00 00 00
190c: 0f 1f 40 00 nopl 0x0(%rax)
1910: f3 0f 1e fa endbr64
1914: e9 67 ff ff ff jmp 1880 <_start+0x60>
1919: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000001920 <pqcrystals_kyber768_ref_keypair_derand>:
1920: 41 54 push %r12
1922: 49 89 d4 mov %rdx,%r12
1925: 55 push %rbp
1926: 48 89 fd mov %rdi,%rbp
1929: 53 push %rbx
192a: 48 89 f3 mov %rsi,%rbx
192d: e8 1e 06 00 00 call 1f50 <pqcrystals_kyber768_ref_indcpa_keypair_derand>
1932: 48 8b 45 00 mov 0x0(%rbp),%rax
1936: 48 8d bb 88 04 00 00 lea 0x488(%rbx),%rdi
193d: 48 89 ee mov %rbp,%rsi
1940: 48 8d 8b 80 04 00 00 lea 0x480(%rbx),%rcx
1947: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
194b: 48 89 83 80 04 00 00 mov %rax,0x480(%rbx)
1952: 48 29 f9 sub %rdi,%rcx
1955: 48 8b 95 98 04 00 00 mov 0x498(%rbp),%rdx
195c: 48 29 ce sub %rcx,%rsi
195f: 81 c1 a0 04 00 00 add $0x4a0,%ecx
1965: 48 89 93 18 09 00 00 mov %rdx,0x918(%rbx)
196c: c1 e9 03 shr $0x3,%ecx
196f: ba a0 04 00 00 mov $0x4a0,%edx
1974: f3 48 a5 rep movsq %ds:(%rsi),%es:(%rdi)
1977: 48 89 ee mov %rbp,%rsi
197a: 48 8d bb 20 09 00 00 lea 0x920(%rbx),%rdi
1981: e8 3a 31 00 00 call 4ac0 <pqcrystals_kyber_fips202_ref_sha3_256>
1986: f3 41 0f 6f 44 24 20 movdqu 0x20(%r12),%xmm0
198d: 31 c0 xor %eax,%eax
198f: 0f 11 83 40 09 00 00 movups %xmm0,0x940(%rbx)
1996: f3 41 0f 6f 44 24 30 movdqu 0x30(%r12),%xmm0
199d: 0f 11 83 50 09 00 00 movups %xmm0,0x950(%rbx)
19a4: 5b pop %rbx
19a5: 5d pop %rbp
19a6: 41 5c pop %r12
19a8: c3 ret
19a9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
00000000000019b0 <pqcrystals_kyber768_ref_keypair>:
19b0: 41 54 push %r12
19b2: 55 push %rbp
19b3: 48 89 fd mov %rdi,%rbp
19b6: 53 push %rbx
19b7: 48 83 ec 50 sub $0x50,%rsp
19bb: 64 48 8b 1c 25 28 00 mov %fs:0x28,%rbx
19c2: 00 00
19c4: 48 89 5c 24 48 mov %rbx,0x48(%rsp)
19c9: 48 89 f3 mov %rsi,%rbx
19cc: 48 89 e7 mov %rsp,%rdi
19cf: be 40 00 00 00 mov $0x40,%esi
19d4: e8 a7 34 00 00 call 4e80 <randombytes>
19d9: 48 89 e2 mov %rsp,%rdx
19dc: 48 89 ef mov %rbp,%rdi
19df: 48 89 de mov %rbx,%rsi
19e2: e8 69 05 00 00 call 1f50 <pqcrystals_kyber768_ref_indcpa_keypair_derand>
19e7: 48 8b 45 00 mov 0x0(%rbp),%rax
19eb: 48 8d bb 88 04 00 00 lea 0x488(%rbx),%rdi
19f2: 48 89 ee mov %rbp,%rsi
19f5: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
19f9: 48 8d 8b 80 04 00 00 lea 0x480(%rbx),%rcx
1a00: 48 89 83 80 04 00 00 mov %rax,0x480(%rbx)
1a07: 48 29 f9 sub %rdi,%rcx
1a0a: 48 8b 95 98 04 00 00 mov 0x498(%rbp),%rdx
1a11: 48 29 ce sub %rcx,%rsi
1a14: 81 c1 a0 04 00 00 add $0x4a0,%ecx
1a1a: 48 89 93 18 09 00 00 mov %rdx,0x918(%rbx)
1a21: c1 e9 03 shr $0x3,%ecx
1a24: ba a0 04 00 00 mov $0x4a0,%edx
1a29: f3 48 a5 rep movsq %ds:(%rsi),%es:(%rdi)
1a2c: 48 89 ee mov %rbp,%rsi
1a2f: 48 8d bb 20 09 00 00 lea 0x920(%rbx),%rdi
1a36: e8 85 30 00 00 call 4ac0 <pqcrystals_kyber_fips202_ref_sha3_256>
1a3b: 66 0f 6f 44 24 20 movdqa 0x20(%rsp),%xmm0
1a41: 0f 11 83 40 09 00 00 movups %xmm0,0x940(%rbx)
1a48: 66 0f 6f 44 24 30 movdqa 0x30(%rsp),%xmm0
1a4e: 0f 11 83 50 09 00 00 movups %xmm0,0x950(%rbx)
1a55: 48 8b 44 24 48 mov 0x48(%rsp),%rax
1a5a: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
1a61: 00 00
1a63: 75 0b jne 1a70 <pqcrystals_kyber768_ref_keypair+0xc0>
1a65: 48 83 c4 50 add $0x50,%rsp
1a69: 31 c0 xor %eax,%eax
1a6b: 5b pop %rbx
1a6c: 5d pop %rbp
1a6d: 41 5c pop %r12
1a6f: c3 ret
1a70: e8 0b f6 ff ff call 1080 <__stack_chk_fail@plt>
1a75: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
1a7c: 00 00 00 00
0000000000001a80 <pqcrystals_kyber768_ref_enc_derand>:
1a80: 41 55 push %r13
1a82: 49 89 fd mov %rdi,%r13
1a85: 41 54 push %r12
1a87: 55 push %rbp
1a88: 53 push %rbx
1a89: 48 89 f3 mov %rsi,%rbx
1a8c: 48 81 ec 98 00 00 00 sub $0x98,%rsp
1a93: f3 0f 6f 01 movdqu (%rcx),%xmm0
1a97: 64 4c 8b 24 25 28 00 mov %fs:0x28,%r12
1a9e: 00 00
1aa0: 4c 89 a4 24 88 00 00 mov %r12,0x88(%rsp)
1aa7: 00
1aa8: 49 89 d4 mov %rdx,%r12
1aab: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
1ab0: ba a0 04 00 00 mov $0x4a0,%edx
1ab5: 0f 29 04 24 movaps %xmm0,(%rsp)
1ab9: f3 0f 6f 41 10 movdqu 0x10(%rcx),%xmm0
1abe: 0f 29 44 24 10 movaps %xmm0,0x10(%rsp)
1ac3: 4c 89 e6 mov %r12,%rsi
1ac6: e8 f5 2f 00 00 call 4ac0 <pqcrystals_kyber_fips202_ref_sha3_256>
1acb: 48 8d 7c 24 40 lea 0x40(%rsp),%rdi
1ad0: ba 40 00 00 00 mov $0x40,%edx
1ad5: 48 89 e6 mov %rsp,%rsi
1ad8: e8 63 30 00 00 call 4b40 <pqcrystals_kyber_fips202_ref_sha3_512>
1add: 48 8d 4c 24 60 lea 0x60(%rsp),%rcx
1ae2: 4c 89 e2 mov %r12,%rdx
1ae5: 48 89 e6 mov %rsp,%rsi
1ae8: 4c 89 ef mov %r13,%rdi
1aeb: e8 20 06 00 00 call 2110 <pqcrystals_kyber768_ref_indcpa_enc>
1af0: 66 0f 6f 44 24 40 movdqa 0x40(%rsp),%xmm0
1af6: 0f 11 03 movups %xmm0,(%rbx)
1af9: 66 0f 6f 44 24 50 movdqa 0x50(%rsp),%xmm0
1aff: 0f 11 43 10 movups %xmm0,0x10(%rbx)
1b03: 48 8b 84 24 88 00 00 mov 0x88(%rsp),%rax
1b0a: 00
1b0b: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
1b12: 00 00
1b14: 75 10 jne 1b26 <pqcrystals_kyber768_ref_enc_derand+0xa6>
1b16: 48 81 c4 98 00 00 00 add $0x98,%rsp
1b1d: 31 c0 xor %eax,%eax
1b1f: 5b pop %rbx
1b20: 5d pop %rbp
1b21: 41 5c pop %r12
1b23: 41 5d pop %r13
1b25: c3 ret
1b26: e8 55 f5 ff ff call 1080 <__stack_chk_fail@plt>
1b2b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
0000000000001b30 <pqcrystals_kyber768_ref_enc>:
1b30: 41 55 push %r13
1b32: 49 89 fd mov %rdi,%r13
1b35: 41 54 push %r12
1b37: 55 push %rbp
1b38: 53 push %rbx
1b39: 48 89 f3 mov %rsi,%rbx
1b3c: be 20 00 00 00 mov $0x20,%esi
1b41: 48 81 ec b8 00 00 00 sub $0xb8,%rsp
1b48: 64 4c 8b 24 25 28 00 mov %fs:0x28,%r12
1b4f: 00 00
1b51: 4c 89 a4 24 a8 00 00 mov %r12,0xa8(%rsp)
1b58: 00
1b59: 49 89 d4 mov %rdx,%r12
1b5c: 48 89 e7 mov %rsp,%rdi
1b5f: 48 8d 6c 24 20 lea 0x20(%rsp),%rbp
1b64: e8 17 33 00 00 call 4e80 <randombytes>
1b69: 66 0f 6f 04 24 movdqa (%rsp),%xmm0
1b6e: 48 8d 7c 24 40 lea 0x40(%rsp),%rdi
1b73: ba a0 04 00 00 mov $0x4a0,%edx
1b78: 0f 29 44 24 20 movaps %xmm0,0x20(%rsp)
1b7d: 66 0f 6f 44 24 10 movdqa 0x10(%rsp),%xmm0
1b83: 0f 29 44 24 30 movaps %xmm0,0x30(%rsp)
1b88: 4c 89 e6 mov %r12,%rsi
1b8b: e8 30 2f 00 00 call 4ac0 <pqcrystals_kyber_fips202_ref_sha3_256>
1b90: 48 8d 7c 24 60 lea 0x60(%rsp),%rdi
1b95: ba 40 00 00 00 mov $0x40,%edx
1b9a: 48 89 ee mov %rbp,%rsi
1b9d: e8 9e 2f 00 00 call 4b40 <pqcrystals_kyber_fips202_ref_sha3_512>
1ba2: 4c 89 e2 mov %r12,%rdx
1ba5: 48 89 ee mov %rbp,%rsi
1ba8: 4c 89 ef mov %r13,%rdi
1bab: 48 8d 8c 24 80 00 00 lea 0x80(%rsp),%rcx
1bb2: 00
1bb3: e8 58 05 00 00 call 2110 <pqcrystals_kyber768_ref_indcpa_enc>
1bb8: 66 0f 6f 44 24 60 movdqa 0x60(%rsp),%xmm0
1bbe: 0f 11 03 movups %xmm0,(%rbx)
1bc1: 66 0f 6f 44 24 70 movdqa 0x70(%rsp),%xmm0
1bc7: 0f 11 43 10 movups %xmm0,0x10(%rbx)
1bcb: 48 8b 84 24 a8 00 00 mov 0xa8(%rsp),%rax
1bd2: 00
1bd3: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
1bda: 00 00
1bdc: 75 10 jne 1bee <pqcrystals_kyber768_ref_enc+0xbe>
1bde: 48 81 c4 b8 00 00 00 add $0xb8,%rsp
1be5: 31 c0 xor %eax,%eax
1be7: 5b pop %rbx
1be8: 5d pop %rbp
1be9: 41 5c pop %r12
1beb: 41 5d pop %r13
1bed: c3 ret
1bee: e8 8d f4 ff ff call 1080 <__stack_chk_fail@plt>
1bf3: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
1bfa: 00 00 00 00
1bfe: 66 90 xchg %ax,%ax
0000000000001c00 <pqcrystals_kyber768_ref_dec>:
1c00: 41 57 push %r15
1c02: 41 56 push %r14
1c04: 41 55 push %r13
1c06: 49 89 fd mov %rdi,%r13
1c09: 41 54 push %r12
1c0b: 55 push %rbp
1c0c: 48 89 f5 mov %rsi,%rbp
1c0f: 53 push %rbx
1c10: 48 81 ec d8 04 00 00 sub $0x4d8,%rsp
1c17: 64 48 8b 1c 25 28 00 mov %fs:0x28,%rbx
1c1e: 00 00
1c20: 48 89 9c 24 c8 04 00 mov %rbx,0x4c8(%rsp)
1c27: 00
1c28: 48 89 d3 mov %rdx,%rbx
1c2b: 48 89 e7 mov %rsp,%rdi
1c2e: e8 fd 06 00 00 call 2330 <pqcrystals_kyber768_ref_indcpa_dec>
1c33: ba 40 00 00 00 mov $0x40,%edx
1c38: 48 89 e6 mov %rsp,%rsi
1c3b: 48 8d 7c 24 40 lea 0x40(%rsp),%rdi
1c40: f3 0f 6f 83 20 09 00 movdqu 0x920(%rbx),%xmm0
1c47: 00
1c48: 0f 29 44 24 20 movaps %xmm0,0x20(%rsp)
1c4d: f3 0f 6f 83 30 09 00 movdqu 0x930(%rbx),%xmm0
1c54: 00
1c55: 0f 29 44 24 30 movaps %xmm0,0x30(%rsp)
1c5a: e8 e1 2e 00 00 call 4b40 <pqcrystals_kyber_fips202_ref_sha3_512>
1c5f: 48 8d 4c 24 60 lea 0x60(%rsp),%rcx
1c64: 48 89 e6 mov %rsp,%rsi
1c67: 48 8d 93 80 04 00 00 lea 0x480(%rbx),%rdx
1c6e: 48 8d bc 24 80 00 00 lea 0x80(%rsp),%rdi
1c75: 00
1c76: e8 95 04 00 00 call 2110 <pqcrystals_kyber768_ref_indcpa_enc>
1c7b: ba 40 04 00 00 mov $0x440,%edx
1c80: 48 8d b4 24 80 00 00 lea 0x80(%rsp),%rsi
1c87: 00
1c88: 48 89 ef mov %rbp,%rdi
1c8b: e8 50 17 00 00 call 33e0 <pqcrystals_kyber768_ref_verify>
1c90: 48 8d b3 40 09 00 00 lea 0x940(%rbx),%rsi
1c97: 48 89 ea mov %rbp,%rdx
1c9a: 4c 89 ef mov %r13,%rdi
1c9d: 41 89 c4 mov %eax,%r12d
1ca0: e8 3b 31 00 00 call 4de0 <pqcrystals_kyber768_ref_kyber_shake256_rkprf>
1ca5: 31 c9 xor %ecx,%ecx
1ca7: 45 85 e4 test %r12d,%r12d
1caa: ba 20 00 00 00 mov $0x20,%edx
1caf: 0f 94 c1 sete %cl
1cb2: 48 8d 74 24 40 lea 0x40(%rsp),%rsi
1cb7: 4c 89 ef mov %r13,%rdi
1cba: e8 71 17 00 00 call 3430 <pqcrystals_kyber768_ref_cmov>
1cbf: 48 8b 84 24 c8 04 00 mov 0x4c8(%rsp),%rax
1cc6: 00
1cc7: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
1cce: 00 00
1cd0: 75 14 jne 1ce6 <pqcrystals_kyber768_ref_dec+0xe6>
1cd2: 48 81 c4 d8 04 00 00 add $0x4d8,%rsp
1cd9: 31 c0 xor %eax,%eax
1cdb: 5b pop %rbx
1cdc: 5d pop %rbp
1cdd: 41 5c pop %r12
1cdf: 41 5d pop %r13
1ce1: 41 5e pop %r14
1ce3: 41 5f pop %r15
1ce5: c3 ret
1ce6: e8 95 f3 ff ff call 1080 <__stack_chk_fail@plt>
1ceb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
0000000000001cf0 <pqcrystals_kyber768_ref_gen_matrix>:
1cf0: 41 57 push %r15
1cf2: b8 03 00 00 00 mov $0x3,%eax
1cf7: 41 56 push %r14
1cf9: 41 55 push %r13
1cfb: 41 54 push %r12
1cfd: 55 push %rbp
1cfe: 53 push %rbx
1cff: 48 81 ec 08 03 00 00 sub $0x308,%rsp
1d06: 48 89 74 24 18 mov %rsi,0x18(%rsp)
1d0b: 4c 8d 94 24 f8 02 00 lea 0x2f8(%rsp),%r10
1d12: 00
1d13: 89 54 24 28 mov %edx,0x28(%rsp)
1d17: 64 48 8b 2c 25 28 00 mov %fs:0x28,%rbp
1d1e: 00 00
1d20: 48 89 ac 24 f8 02 00 mov %rbp,0x2f8(%rsp)
1d27: 00
1d28: 48 8d 6c 24 30 lea 0x30(%rsp),%rbp
1d2d: 4c 89 54 24 10 mov %r10,0x10(%rsp)
1d32: be 03 00 00 00 mov $0x3,%esi
1d37: c7 44 24 08 00 00 00 movl $0x0,0x8(%rsp)
1d3e: 00
1d3f: 49 89 fe mov %rdi,%r14
1d42: 29 c6 sub %eax,%esi
1d44: 48 89 7c 24 20 mov %rdi,0x20(%rsp)
1d49: 89 74 24 0c mov %esi,0xc(%rsp)
1d4d: 89 44 24 2c mov %eax,0x2c(%rsp)
1d51: 8b 44 24 28 mov 0x28(%rsp),%eax
1d55: 85 c0 test %eax,%eax
1d57: 0f 84 1c 01 00 00 je 1e79 <pqcrystals_kyber768_ref_gen_matrix+0x189>
1d5d: 8b 4c 24 08 mov 0x8(%rsp),%ecx
1d61: 8b 54 24 0c mov 0xc(%rsp),%edx
1d65: 48 89 ef mov %rbp,%rdi
1d68: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1d6d: e8 ae 2f 00 00 call 4d20 <pqcrystals_kyber768_ref_kyber_shake128_absorb>
1d72: 48 89 ea mov %rbp,%rdx
1d75: be 03 00 00 00 mov $0x3,%esi
1d7a: 48 8d bc 24 00 01 00 lea 0x100(%rsp),%rdi
1d81: 00
1d82: 45 31 ff xor %r15d,%r15d
1d85: e8 86 25 00 00 call 4310 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks>
1d8a: 4c 8b 44 24 10 mov 0x10(%rsp),%r8
1d8f: 48 8d 8c 24 00 01 00 lea 0x100(%rsp),%rcx
1d96: 00
1d97: eb 41 jmp 1dda <pqcrystals_kyber768_ref_gen_matrix+0xea>
1d99: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
1da0: 44 89 ff mov %r15d,%edi
1da3: 41 8d 77 01 lea 0x1(%r15),%esi
1da7: 66 41 89 14 7e mov %dx,(%r14,%rdi,2)
1dac: 41 81 ff ff 00 00 00 cmp $0xff,%r15d
1db3: 74 5b je 1e10 <pqcrystals_kyber768_ref_gen_matrix+0x120>
1db5: 66 3d 00 0d cmp $0xd00,%ax
1db9: 7f 55 jg 1e10 <pqcrystals_kyber768_ref_gen_matrix+0x120>
1dbb: 44 8d 7e 01 lea 0x1(%rsi),%r15d
1dbf: 66 41 89 04 76 mov %ax,(%r14,%rsi,2)
1dc4: 41 81 ff 00 01 00 00 cmp $0x100,%r15d
1dcb: 74 53 je 1e20 <pqcrystals_kyber768_ref_gen_matrix+0x130>
1dcd: 48 83 c1 03 add $0x3,%rcx
1dd1: 49 39 c8 cmp %rcx,%r8
1dd4: 0f 84 b9 00 00 00 je 1e93 <pqcrystals_kyber768_ref_gen_matrix+0x1a3>
1dda: 0f b6 41 01 movzbl 0x1(%rcx),%eax
1dde: 0f b6 11 movzbl (%rcx),%edx
1de1: 89 c6 mov %eax,%esi
1de3: c0 e8 04 shr $0x4,%al
1de6: c1 e6 08 shl $0x8,%esi
1de9: 0f b6 c0 movzbl %al,%eax
1dec: 09 f2 or %esi,%edx
1dee: 0f b6 71 02 movzbl 0x2(%rcx),%esi
1df2: 66 81 e2 ff 0f and $0xfff,%dx
1df7: c1 e6 04 shl $0x4,%esi
1dfa: 09 f0 or %esi,%eax
1dfc: 66 81 fa 00 0d cmp $0xd00,%dx
1e01: 7e 9d jle 1da0 <pqcrystals_kyber768_ref_gen_matrix+0xb0>
1e03: 66 3d 00 0d cmp $0xd00,%ax
1e07: 7f c4 jg 1dcd <pqcrystals_kyber768_ref_gen_matrix+0xdd>
1e09: 44 89 fe mov %r15d,%esi
1e0c: eb ad jmp 1dbb <pqcrystals_kyber768_ref_gen_matrix+0xcb>
1e0e: 66 90 xchg %ax,%ax
1e10: 41 89 f7 mov %esi,%r15d
1e13: 41 81 ff 00 01 00 00 cmp $0x100,%r15d
1e1a: 75 b1 jne 1dcd <pqcrystals_kyber768_ref_gen_matrix+0xdd>
1e1c: 0f 1f 40 00 nopl 0x0(%rax)
1e20: 83 44 24 08 01 addl $0x1,0x8(%rsp)
1e25: 49 81 c6 00 02 00 00 add $0x200,%r14
1e2c: 83 7c 24 08 03 cmpl $0x3,0x8(%rsp)
1e31: 0f 85 1a ff ff ff jne 1d51 <pqcrystals_kyber768_ref_gen_matrix+0x61>
1e37: 48 8b 7c 24 20 mov 0x20(%rsp),%rdi
1e3c: 8b 44 24 2c mov 0x2c(%rsp),%eax
1e40: 48 81 c7 00 06 00 00 add $0x600,%rdi
1e47: 83 e8 01 sub $0x1,%eax
1e4a: 0f 85 e2 fe ff ff jne 1d32 <pqcrystals_kyber768_ref_gen_matrix+0x42>
1e50: 48 8b 84 24 f8 02 00 mov 0x2f8(%rsp),%rax
1e57: 00
1e58: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
1e5f: 00 00
1e61: 0f 85 dc 00 00 00 jne 1f43 <pqcrystals_kyber768_ref_gen_matrix+0x253>
1e67: 48 81 c4 08 03 00 00 add $0x308,%rsp
1e6e: 5b pop %rbx
1e6f: 5d pop %rbp
1e70: 41 5c pop %r12
1e72: 41 5d pop %r13
1e74: 41 5e pop %r14
1e76: 41 5f pop %r15
1e78: c3 ret
1e79: 8b 4c 24 0c mov 0xc(%rsp),%ecx
1e7d: 8b 54 24 08 mov 0x8(%rsp),%edx
1e81: 48 89 ef mov %rbp,%rdi
1e84: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
1e89: e8 92 2e 00 00 call 4d20 <pqcrystals_kyber768_ref_kyber_shake128_absorb>
1e8e: e9 df fe ff ff jmp 1d72 <pqcrystals_kyber768_ref_gen_matrix+0x82>
1e93: 45 89 fd mov %r15d,%r13d
1e96: 4c 8d bc 24 a8 01 00 lea 0x1a8(%rsp),%r15
1e9d: 00
1e9e: 66 90 xchg %ax,%ax
1ea0: be 01 00 00 00 mov $0x1,%esi
1ea5: 48 8d bc 24 00 01 00 lea 0x100(%rsp),%rdi
1eac: 00
1ead: 48 89 ea mov %rbp,%rdx
1eb0: e8 5b 24 00 00 call 4310 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks>
1eb5: 41 b9 00 01 00 00 mov $0x100,%r9d
1ebb: 44 89 e8 mov %r13d,%eax
1ebe: 31 ff xor %edi,%edi
1ec0: 45 29 e9 sub %r13d,%r9d
1ec3: 4d 8d 14 46 lea (%r14,%rax,2),%r10
1ec7: 48 8d b4 24 00 01 00 lea 0x100(%rsp),%rsi
1ece: 00
1ecf: eb 25 jmp 1ef6 <pqcrystals_kyber768_ref_gen_matrix+0x206>
1ed1: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
1ed8: 66 3d 00 0d cmp $0xd00,%ax
1edc: 7f 0a jg 1ee8 <pqcrystals_kyber768_ref_gen_matrix+0x1f8>
1ede: 89 fa mov %edi,%edx
1ee0: 83 c7 01 add $0x1,%edi
1ee3: 66 41 89 04 52 mov %ax,(%r10,%rdx,2)
1ee8: 44 39 cf cmp %r9d,%edi
1eeb: 73 41 jae 1f2e <pqcrystals_kyber768_ref_gen_matrix+0x23e>
1eed: 48 83 c6 03 add $0x3,%rsi
1ef1: 49 39 f7 cmp %rsi,%r15
1ef4: 74 38 je 1f2e <pqcrystals_kyber768_ref_gen_matrix+0x23e>
1ef6: 0f b6 46 01 movzbl 0x1(%rsi),%eax
1efa: 0f b6 16 movzbl (%rsi),%edx
1efd: 89 c1 mov %eax,%ecx
1eff: c0 e8 04 shr $0x4,%al
1f02: c1 e1 08 shl $0x8,%ecx
1f05: 0f b6 c0 movzbl %al,%eax
1f08: 09 ca or %ecx,%edx
1f0a: 0f b6 4e 02 movzbl 0x2(%rsi),%ecx
1f0e: 66 81 e2 ff 0f and $0xfff,%dx
1f13: c1 e1 04 shl $0x4,%ecx
1f16: 09 c8 or %ecx,%eax
1f18: 66 81 fa 00 0d cmp $0xd00,%dx
1f1d: 7f 0a jg 1f29 <pqcrystals_kyber768_ref_gen_matrix+0x239>
1f1f: 89 f9 mov %edi,%ecx
1f21: 83 c7 01 add $0x1,%edi
1f24: 66 41 89 14 4a mov %dx,(%r10,%rcx,2)
1f29: 44 39 cf cmp %r9d,%edi
1f2c: 72 aa jb 1ed8 <pqcrystals_kyber768_ref_gen_matrix+0x1e8>
1f2e: 41 01 fd add %edi,%r13d
1f31: 41 81 fd ff 00 00 00 cmp $0xff,%r13d
1f38: 0f 86 62 ff ff ff jbe 1ea0 <pqcrystals_kyber768_ref_gen_matrix+0x1b0>
1f3e: e9 dd fe ff ff jmp 1e20 <pqcrystals_kyber768_ref_gen_matrix+0x130>
1f43: e8 38 f1 ff ff call 1080 <__stack_chk_fail@plt>
1f48: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
1f4f: 00
0000000000001f50 <pqcrystals_kyber768_ref_indcpa_keypair_derand>:
1f50: 41 57 push %r15
1f52: 41 56 push %r14
1f54: 49 89 fe mov %rdi,%r14
1f57: 41 55 push %r13
1f59: 45 31 ed xor %r13d,%r13d
1f5c: 41 54 push %r12
1f5e: 55 push %rbp
1f5f: 53 push %rbx
1f60: 48 81 ec 78 24 00 00 sub $0x2478,%rsp
1f67: f3 0f 6f 02 movdqu (%rdx),%xmm0
1f6b: 48 89 74 24 18 mov %rsi,0x18(%rsp)
1f70: 48 8d ac 24 20 0c 00 lea 0xc20(%rsp),%rbp
1f77: 00
1f78: 48 8d 9c 24 40 24 00 lea 0x2440(%rsp),%rbx
1f7f: 00
1f80: 49 89 ef mov %rbp,%r15
1f83: 64 4c 8b 24 25 28 00 mov %fs:0x28,%r12
1f8a: 00 00
1f8c: 4c 89 a4 24 68 24 00 mov %r12,0x2468(%rsp)
1f93: 00
1f94: 4c 8d a4 24 20 24 00 lea 0x2420(%rsp),%r12
1f9b: 00
1f9c: 0f 29 84 24 20 24 00 movaps %xmm0,0x2420(%rsp)
1fa3: 00
1fa4: f3 0f 6f 42 10 movdqu 0x10(%rdx),%xmm0
1fa9: ba 21 00 00 00 mov $0x21,%edx
1fae: c6 84 24 40 24 00 00 movb $0x3,0x2440(%rsp)
1fb5: 03
1fb6: 0f 29 84 24 30 24 00 movaps %xmm0,0x2430(%rsp)
1fbd: 00
1fbe: 4c 89 e6 mov %r12,%rsi
1fc1: 4c 89 e7 mov %r12,%rdi
1fc4: e8 77 2b 00 00 call 4b40 <pqcrystals_kyber_fips202_ref_sha3_512>
1fc9: 48 8d 84 24 20 12 00 lea 0x1220(%rsp),%rax
1fd0: 00
1fd1: 31 d2 xor %edx,%edx
1fd3: 4c 89 e6 mov %r12,%rsi
1fd6: 48 89 c7 mov %rax,%rdi
1fd9: 48 89 44 24 10 mov %rax,0x10(%rsp)
1fde: e8 0d fd ff ff call 1cf0 <pqcrystals_kyber768_ref_gen_matrix>
1fe3: 44 89 ea mov %r13d,%edx
1fe6: 4c 89 ff mov %r15,%rdi
1fe9: 48 89 de mov %rbx,%rsi
1fec: 41 83 c5 01 add $0x1,%r13d
1ff0: e8 0b 0d 00 00 call 2d00 <pqcrystals_kyber768_ref_poly_getnoise_eta1>
1ff5: 49 81 c7 00 02 00 00 add $0x200,%r15
1ffc: 41 83 fd 03 cmp $0x3,%r13d
2000: 75 e1 jne 1fe3 <pqcrystals_kyber768_ref_indcpa_keypair_derand+0x93>
2002: 4c 8d 7c 24 20 lea 0x20(%rsp),%r15
2007: 4c 89 7c 24 08 mov %r15,0x8(%rsp)
200c: 44 89 ea mov %r13d,%edx
200f: 4c 89 ff mov %r15,%rdi
2012: 48 89 de mov %rbx,%rsi
2015: 41 83 c5 01 add $0x1,%r13d
2019: e8 e2 0c 00 00 call 2d00 <pqcrystals_kyber768_ref_poly_getnoise_eta1>
201e: 49 81 c7 00 02 00 00 add $0x200,%r15
2025: 41 83 fd 06 cmp $0x6,%r13d
2029: 75 e1 jne 200c <pqcrystals_kyber768_ref_indcpa_keypair_derand+0xbc>
202b: 48 89 ef mov %rbp,%rdi
202e: 48 8d 9c 24 20 06 00 lea 0x620(%rsp),%rbx
2035: 00
2036: e8 d5 06 00 00 call 2710 <pqcrystals_kyber768_ref_polyvec_ntt>
203b: 48 8b 7c 24 08 mov 0x8(%rsp),%rdi
2040: e8 cb 06 00 00 call 2710 <pqcrystals_kyber768_ref_polyvec_ntt>
2045: 4c 8b 7c 24 10 mov 0x10(%rsp),%r15
204a: 4c 89 fe mov %r15,%rsi
204d: 48 89 df mov %rbx,%rdi
2050: 48 89 ea mov %rbp,%rdx
2053: 49 81 c7 00 06 00 00 add $0x600,%r15
205a: e8 11 07 00 00 call 2770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>
205f: 48 89 df mov %rbx,%rdi
2062: 48 81 c3 00 02 00 00 add $0x200,%rbx
2069: e8 22 0e 00 00 call 2e90 <pqcrystals_kyber768_ref_poly_tomont>
206e: 4d 39 fc cmp %r15,%r12
2071: 75 d7 jne 204a <pqcrystals_kyber768_ref_indcpa_keypair_derand+0xfa>
2073: 48 8b 54 24 08 mov 0x8(%rsp),%rdx
2078: 48 8d b4 24 20 06 00 lea 0x620(%rsp),%rsi
207f: 00
2080: 48 8d bc 24 20 06 00 lea 0x620(%rsp),%rdi
2087: 00
2088: e8 c3 07 00 00 call 2850 <pqcrystals_kyber768_ref_polyvec_add>
208d: 48 8d bc 24 20 06 00 lea 0x620(%rsp),%rdi
2094: 00
2095: e8 86 07 00 00 call 2820 <pqcrystals_kyber768_ref_polyvec_reduce>
209a: 48 8b 7c 24 18 mov 0x18(%rsp),%rdi
209f: 48 89 ee mov %rbp,%rsi
20a2: e8 e9 05 00 00 call 2690 <pqcrystals_kyber768_ref_polyvec_tobytes>
20a7: 48 8d b4 24 20 06 00 lea 0x620(%rsp),%rsi
20ae: 00
20af: 4c 89 f7 mov %r14,%rdi
20b2: e8 d9 05 00 00 call 2690 <pqcrystals_kyber768_ref_polyvec_tobytes>
20b7: 66 0f 6f 84 24 20 24 movdqa 0x2420(%rsp),%xmm0
20be: 00 00
20c0: 41 0f 11 86 80 04 00 movups %xmm0,0x480(%r14)
20c7: 00
20c8: 66 0f 6f 84 24 30 24 movdqa 0x2430(%rsp),%xmm0
20cf: 00 00
20d1: 41 0f 11 86 90 04 00 movups %xmm0,0x490(%r14)
20d8: 00
20d9: 48 8b 84 24 68 24 00 mov 0x2468(%rsp),%rax
20e0: 00
20e1: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
20e8: 00 00
20ea: 75 12 jne 20fe <pqcrystals_kyber768_ref_indcpa_keypair_derand+0x1ae>
20ec: 48 81 c4 78 24 00 00 add $0x2478,%rsp
20f3: 5b pop %rbx
20f4: 5d pop %rbp
20f5: 41 5c pop %r12
20f7: 41 5d pop %r13
20f9: 41 5e pop %r14
20fb: 41 5f pop %r15
20fd: c3 ret
20fe: e8 7d ef ff ff call 1080 <__stack_chk_fail@plt>
2103: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
210a: 00 00 00 00
210e: 66 90 xchg %ax,%ax
0000000000002110 <pqcrystals_kyber768_ref_indcpa_enc>:
2110: 41 57 push %r15
2112: 41 56 push %r14
2114: 41 55 push %r13
2116: 45 31 ed xor %r13d,%r13d
2119: 41 54 push %r12
211b: 55 push %rbp
211c: 48 89 f5 mov %rsi,%rbp
211f: 48 89 d6 mov %rdx,%rsi
2122: 53 push %rbx
2123: 48 89 d3 mov %rdx,%rbx
2126: 48 81 ec 58 30 00 00 sub $0x3058,%rsp
212d: 48 89 7c 24 18 mov %rdi,0x18(%rsp)
2132: 48 8d 84 24 20 0c 00 lea 0xc20(%rsp),%rax
2139: 00
213a: 4c 8d b4 24 20 30 00 lea 0x3020(%rsp),%r14
2141: 00
2142: 48 89 c7 mov %rax,%rdi
2145: 64 4c 8b 24 25 28 00 mov %fs:0x28,%r12
214c: 00 00
214e: 4c 89 a4 24 48 30 00 mov %r12,0x3048(%rsp)
2155: 00
2156: 49 89 cc mov %rcx,%r12
2159: 48 89 04 24 mov %rax,(%rsp)
215d: e8 6e 05 00 00 call 26d0 <pqcrystals_kyber768_ref_polyvec_frombytes>
2162: f3 0f 6f 83 80 04 00 movdqu 0x480(%rbx),%xmm0
2169: 00
216a: 48 8d 84 24 20 02 00 lea 0x220(%rsp),%rax
2171: 00
2172: 48 89 ee mov %rbp,%rsi
2175: 48 89 c7 mov %rax,%rdi
2178: 48 89 44 24 08 mov %rax,0x8(%rsp)
217d: 48 8d ac 24 20 06 00 lea 0x620(%rsp),%rbp
2184: 00
2185: 0f 29 84 24 20 30 00 movaps %xmm0,0x3020(%rsp)
218c: 00
218d: f3 0f 6f 83 90 04 00 movdqu 0x490(%rbx),%xmm0
2194: 00
2195: 48 8d 9c 24 20 1e 00 lea 0x1e20(%rsp),%rbx
219c: 00
219d: 0f 29 84 24 30 30 00 movaps %xmm0,0x3030(%rsp)
21a4: 00
21a5: e8 d6 09 00 00 call 2b80 <pqcrystals_kyber768_ref_poly_frommsg>
21aa: ba 01 00 00 00 mov $0x1,%edx
21af: 4c 89 f6 mov %r14,%rsi
21b2: 48 89 df mov %rbx,%rdi
21b5: e8 36 fb ff ff call 1cf0 <pqcrystals_kyber768_ref_gen_matrix>
21ba: 4c 89 ef mov %r13,%rdi
21bd: 44 89 ea mov %r13d,%edx
21c0: 4c 89 e6 mov %r12,%rsi
21c3: 49 83 c5 01 add $0x1,%r13
21c7: 48 c1 e7 09 shl $0x9,%rdi
21cb: 48 01 ef add %rbp,%rdi
21ce: e8 2d 0b 00 00 call 2d00 <pqcrystals_kyber768_ref_poly_getnoise_eta1>
21d3: 49 83 fd 03 cmp $0x3,%r13
21d7: 75 e1 jne 21ba <pqcrystals_kyber768_ref_indcpa_enc+0xaa>
21d9: 45 31 ff xor %r15d,%r15d
21dc: 4c 8d ac 24 20 12 00 lea 0x1220(%rsp),%r13
21e3: 00
21e4: 4c 89 ff mov %r15,%rdi
21e7: 41 8d 57 03 lea 0x3(%r15),%edx
21eb: 4c 89 e6 mov %r12,%rsi
21ee: 49 83 c7 01 add $0x1,%r15
21f2: 48 c1 e7 09 shl $0x9,%rdi
21f6: 4c 01 ef add %r13,%rdi
21f9: e8 62 0b 00 00 call 2d60 <pqcrystals_kyber768_ref_poly_getnoise_eta2>
21fe: 49 83 ff 03 cmp $0x3,%r15
2202: 75 e0 jne 21e4 <pqcrystals_kyber768_ref_indcpa_enc+0xd4>
2204: 48 8d 84 24 20 04 00 lea 0x420(%rsp),%rax
220b: 00
220c: ba 06 00 00 00 mov $0x6,%edx
2211: 4c 89 e6 mov %r12,%rsi
2214: 48 89 c7 mov %rax,%rdi
2217: 48 89 44 24 10 mov %rax,0x10(%rsp)
221c: 4c 8d bc 24 20 18 00 lea 0x1820(%rsp),%r15
2223: 00
2224: e8 37 0b 00 00 call 2d60 <pqcrystals_kyber768_ref_poly_getnoise_eta2>
2229: 48 89 ef mov %rbp,%rdi
222c: e8 df 04 00 00 call 2710 <pqcrystals_kyber768_ref_polyvec_ntt>
2231: 48 89 de mov %rbx,%rsi
2234: 4c 89 ff mov %r15,%rdi
2237: 48 89 ea mov %rbp,%rdx
223a: 48 81 c3 00 06 00 00 add $0x600,%rbx
2241: e8 2a 05 00 00 call 2770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>
2246: 49 81 c7 00 02 00 00 add $0x200,%r15
224d: 49 39 de cmp %rbx,%r14
2250: 75 df jne 2231 <pqcrystals_kyber768_ref_indcpa_enc+0x121>
2252: 48 8b 34 24 mov (%rsp),%rsi
2256: 48 89 ea mov %rbp,%rdx
2259: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
225e: e8 0d 05 00 00 call 2770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>
2263: 48 8d bc 24 20 18 00 lea 0x1820(%rsp),%rdi
226a: 00
226b: e8 d0 04 00 00 call 2740 <pqcrystals_kyber768_ref_polyvec_invntt_tomont>
2270: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
2275: e8 86 0b 00 00 call 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
227a: 4c 89 ea mov %r13,%rdx
227d: 48 8d b4 24 20 18 00 lea 0x1820(%rsp),%rsi
2284: 00
2285: 48 8d bc 24 20 18 00 lea 0x1820(%rsp),%rdi
228c: 00
228d: e8 be 05 00 00 call 2850 <pqcrystals_kyber768_ref_polyvec_add>
2292: 48 8b 54 24 10 mov 0x10(%rsp),%rdx
2297: 48 8d 74 24 20 lea 0x20(%rsp),%rsi
229c: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
22a1: e8 5a 0c 00 00 call 2f00 <pqcrystals_kyber768_ref_poly_add>
22a6: 48 8b 54 24 08 mov 0x8(%rsp),%rdx
22ab: 48 8d 74 24 20 lea 0x20(%rsp),%rsi
22b0: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
22b5: e8 46 0c 00 00 call 2f00 <pqcrystals_kyber768_ref_poly_add>
22ba: 48 8d bc 24 20 18 00 lea 0x1820(%rsp),%rdi
22c1: 00
22c2: e8 59 05 00 00 call 2820 <pqcrystals_kyber768_ref_polyvec_reduce>
22c7: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
22cc: e8 ff 0b 00 00 call 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
22d1: 4c 8b 74 24 18 mov 0x18(%rsp),%r14
22d6: 48 8d b4 24 20 18 00 lea 0x1820(%rsp),%rsi
22dd: 00
22de: 4c 89 f7 mov %r14,%rdi
22e1: e8 3a 01 00 00 call 2420 <pqcrystals_kyber768_ref_polyvec_compress>
22e6: 49 8d be c0 03 00 00 lea 0x3c0(%r14),%rdi
22ed: 48 8d 74 24 20 lea 0x20(%rsp),%rsi
22f2: e8 c9 05 00 00 call 28c0 <pqcrystals_kyber768_ref_poly_compress>
22f7: 48 8b 84 24 48 30 00 mov 0x3048(%rsp),%rax
22fe: 00
22ff: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
2306: 00 00
2308: 75 12 jne 231c <pqcrystals_kyber768_ref_indcpa_enc+0x20c>
230a: 48 81 c4 58 30 00 00 add $0x3058,%rsp
2311: 5b pop %rbx
2312: 5d pop %rbp
2313: 41 5c pop %r12
2315: 41 5d pop %r13
2317: 41 5e pop %r14
2319: 41 5f pop %r15
231b: c3 ret
231c: e8 5f ed ff ff call 1080 <__stack_chk_fail@plt>
2321: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2328: 00 00 00 00
232c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000002330 <pqcrystals_kyber768_ref_indcpa_dec>:
2330: 41 57 push %r15
2332: 41 56 push %r14
2334: 41 55 push %r13
2336: 49 89 fd mov %rdi,%r13
2339: 41 54 push %r12
233b: 55 push %rbp
233c: 53 push %rbx
233d: 48 89 f3 mov %rsi,%rbx
2340: 48 81 ec 18 10 00 00 sub $0x1018,%rsp
2347: 64 4c 8b 34 25 28 00 mov %fs:0x28,%r14
234e: 00 00
2350: 4c 89 b4 24 08 10 00 mov %r14,0x1008(%rsp)
2357: 00
2358: 49 89 d6 mov %rdx,%r14
235b: 48 8d ac 24 00 04 00 lea 0x400(%rsp),%rbp
2362: 00
2363: 48 89 ef mov %rbp,%rdi
2366: e8 25 02 00 00 call 2590 <pqcrystals_kyber768_ref_polyvec_decompress>
236b: 48 8d b3 c0 03 00 00 lea 0x3c0(%rbx),%rsi
2372: 48 89 e7 mov %rsp,%rdi
2375: e8 f6 06 00 00 call 2a70 <pqcrystals_kyber768_ref_poly_decompress>
237a: 48 8d bc 24 00 0a 00 lea 0xa00(%rsp),%rdi
2381: 00
2382: 4c 89 f6 mov %r14,%rsi
2385: e8 46 03 00 00 call 26d0 <pqcrystals_kyber768_ref_polyvec_frombytes>
238a: 48 89 ef mov %rbp,%rdi
238d: e8 7e 03 00 00 call 2710 <pqcrystals_kyber768_ref_polyvec_ntt>
2392: 48 89 ea mov %rbp,%rdx
2395: 48 8d b4 24 00 0a 00 lea 0xa00(%rsp),%rsi
239c: 00
239d: 48 8d bc 24 00 02 00 lea 0x200(%rsp),%rdi
23a4: 00
23a5: e8 c6 03 00 00 call 2770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>
23aa: 48 8d bc 24 00 02 00 lea 0x200(%rsp),%rdi
23b1: 00
23b2: e8 49 0a 00 00 call 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
23b7: 48 89 e6 mov %rsp,%rsi
23ba: 48 8d 94 24 00 02 00 lea 0x200(%rsp),%rdx
23c1: 00
23c2: 48 8d bc 24 00 02 00 lea 0x200(%rsp),%rdi
23c9: 00
23ca: e8 71 0b 00 00 call 2f40 <pqcrystals_kyber768_ref_poly_sub>
23cf: 48 8d bc 24 00 02 00 lea 0x200(%rsp),%rdi
23d6: 00
23d7: e8 f4 0a 00 00 call 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
23dc: 48 8d b4 24 00 02 00 lea 0x200(%rsp),%rsi
23e3: 00
23e4: 4c 89 ef mov %r13,%rdi
23e7: e8 04 08 00 00 call 2bf0 <pqcrystals_kyber768_ref_poly_tomsg>
23ec: 48 8b 84 24 08 10 00 mov 0x1008(%rsp),%rax
23f3: 00
23f4: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
23fb: 00 00
23fd: 75 12 jne 2411 <pqcrystals_kyber768_ref_indcpa_dec+0xe1>
23ff: 48 81 c4 18 10 00 00 add $0x1018,%rsp
2406: 5b pop %rbx
2407: 5d pop %rbp
2408: 41 5c pop %r12
240a: 41 5d pop %r13
240c: 41 5e pop %r14
240e: 41 5f pop %r15
2410: c3 ret
2411: e8 6a ec ff ff call 1080 <__stack_chk_fail@plt>
2416: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
241d: 00 00 00
0000000000002420 <pqcrystals_kyber768_ref_polyvec_compress>:
2420: 41 56 push %r14
2422: 48 81 c7 40 01 00 00 add $0x140,%rdi
2429: 49 89 f0 mov %rsi,%r8
242c: 4c 8d 8e 00 06 00 00 lea 0x600(%rsi),%r9
2433: 41 54 push %r12
2435: 55 push %rbp
2436: 53 push %rbx
2437: 48 8d 8f c0 fe ff ff lea -0x140(%rdi),%rcx
243e: 4c 89 c6 mov %r8,%rsi
2441: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2448: 00 00 00 00
244c: 0f 1f 40 00 nopl 0x0(%rax)
2450: 0f b7 16 movzwl (%rsi),%edx
2453: 89 d0 mov %edx,%eax
2455: 66 c1 f8 0f sar $0xf,%ax
2459: 66 25 01 0d and $0xd01,%ax
245d: 01 d0 add %edx,%eax
245f: 0f b7 c0 movzwl %ax,%eax
2462: 48 c1 e0 0a shl $0xa,%rax
2466: 48 05 81 06 00 00 add $0x681,%rax
246c: 48 69 c0 b7 af 13 00 imul $0x13afb7,%rax,%rax
2473: 48 c1 e8 20 shr $0x20,%rax
2477: 89 c3 mov %eax,%ebx
2479: 0f b7 46 02 movzwl 0x2(%rsi),%eax
247d: 66 81 e3 ff 03 and $0x3ff,%bx
2482: 41 89 c3 mov %eax,%r11d
2485: 66 41 c1 fb 0f sar $0xf,%r11w
248a: 66 41 81 e3 01 0d and $0xd01,%r11w
2490: 41 01 c3 add %eax,%r11d
2493: 0f b7 46 04 movzwl 0x4(%rsi),%eax
2497: 45 0f b7 db movzwl %r11w,%r11d
249b: 41 89 c2 mov %eax,%r10d
249e: 49 c1 e3 0a shl $0xa,%r11
24a2: 66 41 c1 fa 0f sar $0xf,%r10w
24a7: 49 81 c3 81 06 00 00 add $0x681,%r11
24ae: 66 41 81 e2 01 0d and $0xd01,%r10w
24b4: 4d 69 db b7 af 13 00 imul $0x13afb7,%r11,%r11
24bb: 41 01 c2 add %eax,%r10d
24be: 0f b7 46 06 movzwl 0x6(%rsi),%eax
24c2: 88 19 mov %bl,(%rcx)
24c4: 45 0f b7 d2 movzwl %r10w,%r10d
24c8: 49 c1 e2 0a shl $0xa,%r10
24cc: 89 c2 mov %eax,%edx
24ce: 49 c1 eb 20 shr $0x20,%r11
24d2: 66 c1 fa 0f sar $0xf,%dx
24d6: 49 81 c2 81 06 00 00 add $0x681,%r10
24dd: 45 89 dc mov %r11d,%r12d
24e0: 66 81 e2 01 0d and $0xd01,%dx
24e5: 4d 69 d2 b7 af 13 00 imul $0x13afb7,%r10,%r10
24ec: 66 41 81 e4 ff 03 and $0x3ff,%r12w
24f2: 01 c2 add %eax,%edx
24f4: 0f b7 d2 movzwl %dx,%edx
24f7: 48 c1 e2 0a shl $0xa,%rdx
24fb: 49 c1 ea 20 shr $0x20,%r10
24ff: 48 81 c2 81 06 00 00 add $0x681,%rdx
2506: 44 89 d5 mov %r10d,%ebp
2509: 48 69 c2 b7 af 13 00 imul $0x13afb7,%rdx,%rax
2510: 66 81 e5 ff 03 and $0x3ff,%bp
2515: 48 c1 e8 20 shr $0x20,%rax
2519: 89 c2 mov %eax,%edx
251b: 66 81 e2 ff 03 and $0x3ff,%dx
2520: 41 89 d6 mov %edx,%r14d
2523: 42 8d 14 9d 00 00 00 lea 0x0(,%r11,4),%edx
252a: 00
252b: 08 fa or %bh,%dl
252d: 66 41 c1 ec 06 shr $0x6,%r12w
2532: 48 83 c1 05 add $0x5,%rcx
2536: 48 83 c6 08 add $0x8,%rsi
253a: 88 51 fc mov %dl,-0x4(%rcx)
253d: 41 c1 e2 04 shl $0x4,%r10d
2541: 66 c1 ed 04 shr $0x4,%bp
2545: 44 89 f2 mov %r14d,%edx
2548: c1 e0 06 shl $0x6,%eax
254b: 45 09 e2 or %r12d,%r10d
254e: 66 c1 ea 02 shr $0x2,%dx
2552: 09 e8 or %ebp,%eax
2554: 44 88 51 fd mov %r10b,-0x3(%rcx)
2558: 88 41 fe mov %al,-0x2(%rcx)
255b: 88 51 ff mov %dl,-0x1(%rcx)
255e: 48 39 f9 cmp %rdi,%rcx
2561: 0f 85 e9 fe ff ff jne 2450 <pqcrystals_kyber768_ref_polyvec_compress+0x30>
2567: 49 81 c0 00 02 00 00 add $0x200,%r8
256e: 48 8d b9 40 01 00 00 lea 0x140(%rcx),%rdi
2575: 4d 39 c1 cmp %r8,%r9
2578: 0f 85 b9 fe ff ff jne 2437 <pqcrystals_kyber768_ref_polyvec_compress+0x17>
257e: 5b pop %rbx
257f: 5d pop %rbp
2580: 41 5c pop %r12
2582: 41 5e pop %r14
2584: c3 ret
2585: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
258c: 00 00 00 00
0000000000002590 <pqcrystals_kyber768_ref_polyvec_decompress>:
2590: 55 push %rbp
2591: 48 81 c6 40 01 00 00 add $0x140,%rsi
2598: 4c 8d 87 00 06 00 00 lea 0x600(%rdi),%r8
259f: 53 push %rbx
25a0: 48 8d 96 c0 fe ff ff lea -0x140(%rsi),%rdx
25a7: 48 89 f9 mov %rdi,%rcx
25aa: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
25b0: 44 0f b6 52 02 movzbl 0x2(%rdx),%r10d
25b5: 0f b7 1a movzwl (%rdx),%ebx
25b8: 48 83 c2 05 add $0x5,%rdx
25bc: 48 83 c1 08 add $0x8,%rcx
25c0: 44 0f b6 5a fe movzbl -0x2(%rdx),%r11d
25c5: 44 0f b6 4a fc movzbl -0x4(%rdx),%r9d
25ca: 44 89 d0 mov %r10d,%eax
25cd: 41 c1 e2 06 shl $0x6,%r10d
25d1: 81 e3 ff 03 00 00 and $0x3ff,%ebx
25d7: c0 e8 04 shr $0x4,%al
25da: 41 c0 e9 02 shr $0x2,%r9b
25de: 69 db 01 0d 00 00 imul $0xd01,%ebx,%ebx
25e4: 44 89 dd mov %r11d,%ebp
25e7: 41 c1 e3 04 shl $0x4,%r11d
25eb: 0f b6 c0 movzbl %al,%eax
25ee: 45 0f b6 c9 movzbl %r9b,%r9d
25f2: 40 c0 ed 06 shr $0x6,%bpl
25f6: 44 09 d8 or %r11d,%eax
25f9: 45 09 d1 or %r10d,%r9d
25fc: 44 0f b6 52 ff movzbl -0x1(%rdx),%r10d
2601: 40 0f b6 ed movzbl %bpl,%ebp
2605: 25 ff 03 00 00 and $0x3ff,%eax
260a: 41 81 e1 ff 03 00 00 and $0x3ff,%r9d
2611: 81 c3 00 02 00 00 add $0x200,%ebx
2617: 69 c0 01 0d 00 00 imul $0xd01,%eax,%eax
261d: 41 c1 e2 02 shl $0x2,%r10d
2621: c1 eb 0a shr $0xa,%ebx
2624: 41 09 ea or %ebp,%r10d
2627: 45 69 c9 01 0d 00 00 imul $0xd01,%r9d,%r9d
262e: 66 89 59 f8 mov %bx,-0x8(%rcx)
2632: 05 00 02 00 00 add $0x200,%eax
2637: c1 e8 0a shr $0xa,%eax
263a: 41 81 c1 00 02 00 00 add $0x200,%r9d
2641: 66 89 41 fc mov %ax,-0x4(%rcx)
2645: 41 0f bf c2 movswl %r10w,%eax
2649: 41 c1 e9 0a shr $0xa,%r9d
264d: 69 c0 01 0d 00 00 imul $0xd01,%eax,%eax
2653: 66 44 89 49 fa mov %r9w,-0x6(%rcx)
2658: 05 00 02 00 00 add $0x200,%eax
265d: c1 e8 0a shr $0xa,%eax
2660: 66 89 41 fe mov %ax,-0x2(%rcx)
2664: 48 39 f2 cmp %rsi,%rdx
2667: 0f 85 43 ff ff ff jne 25b0 <pqcrystals_kyber768_ref_polyvec_decompress+0x20>
266d: 48 81 c7 00 02 00 00 add $0x200,%rdi
2674: 48 8d b2 40 01 00 00 lea 0x140(%rdx),%rsi
267b: 49 39 f8 cmp %rdi,%r8
267e: 0f 85 1c ff ff ff jne 25a0 <pqcrystals_kyber768_ref_polyvec_decompress+0x10>
2684: 5b pop %rbx
2685: 5d pop %rbp
2686: c3 ret
2687: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
268e: 00 00
0000000000002690 <pqcrystals_kyber768_ref_polyvec_tobytes>:
2690: 41 54 push %r12
2692: 4c 8d a7 80 04 00 00 lea 0x480(%rdi),%r12
2699: 55 push %rbp
269a: 48 89 f5 mov %rsi,%rbp
269d: 53 push %rbx
269e: 48 89 fb mov %rdi,%rbx
26a1: 48 89 ee mov %rbp,%rsi
26a4: 48 89 df mov %rbx,%rdi
26a7: 48 81 c3 80 01 00 00 add $0x180,%rbx
26ae: 48 81 c5 00 02 00 00 add $0x200,%rbp
26b5: e8 06 04 00 00 call 2ac0 <pqcrystals_kyber768_ref_poly_tobytes>
26ba: 4c 39 e3 cmp %r12,%rbx
26bd: 75 e2 jne 26a1 <pqcrystals_kyber768_ref_polyvec_tobytes+0x11>
26bf: 5b pop %rbx
26c0: 5d pop %rbp
26c1: 41 5c pop %r12
26c3: c3 ret
26c4: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
26cb: 00 00 00 00
26cf: 90 nop
00000000000026d0 <pqcrystals_kyber768_ref_polyvec_frombytes>:
26d0: 41 54 push %r12
26d2: 4c 8d a6 80 04 00 00 lea 0x480(%rsi),%r12
26d9: 55 push %rbp
26da: 48 89 fd mov %rdi,%rbp
26dd: 53 push %rbx
26de: 48 89 f3 mov %rsi,%rbx
26e1: 48 89 de mov %rbx,%rsi
26e4: 48 89 ef mov %rbp,%rdi
26e7: 48 81 c3 80 01 00 00 add $0x180,%rbx
26ee: 48 81 c5 00 02 00 00 add $0x200,%rbp
26f5: e8 26 04 00 00 call 2b20 <pqcrystals_kyber768_ref_poly_frombytes>
26fa: 4c 39 e3 cmp %r12,%rbx
26fd: 75 e2 jne 26e1 <pqcrystals_kyber768_ref_polyvec_frombytes+0x11>
26ff: 5b pop %rbx
2700: 5d pop %rbp
2701: 41 5c pop %r12
2703: c3 ret
2704: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
270b: 00 00 00 00
270f: 90 nop
0000000000002710 <pqcrystals_kyber768_ref_polyvec_ntt>:
2710: 53 push %rbx
2711: 48 89 fb mov %rdi,%rbx
2714: e8 a7 06 00 00 call 2dc0 <pqcrystals_kyber768_ref_poly_ntt>
2719: 48 8d bb 00 02 00 00 lea 0x200(%rbx),%rdi
2720: e8 9b 06 00 00 call 2dc0 <pqcrystals_kyber768_ref_poly_ntt>
2725: 48 8d bb 00 04 00 00 lea 0x400(%rbx),%rdi
272c: 5b pop %rbx
272d: e9 8e 06 00 00 jmp 2dc0 <pqcrystals_kyber768_ref_poly_ntt>
2732: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2739: 00 00 00 00
273d: 0f 1f 00 nopl (%rax)
0000000000002740 <pqcrystals_kyber768_ref_polyvec_invntt_tomont>:
2740: 53 push %rbx
2741: 48 89 fb mov %rdi,%rbx
2744: e8 b7 06 00 00 call 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
2749: 48 8d bb 00 02 00 00 lea 0x200(%rbx),%rdi
2750: e8 ab 06 00 00 call 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
2755: 48 8d bb 00 04 00 00 lea 0x400(%rbx),%rdi
275c: 5b pop %rbx
275d: e9 9e 06 00 00 jmp 2e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>
2762: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2769: 00 00 00 00
276d: 0f 1f 00 nopl (%rax)
0000000000002770 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery>:
2770: 41 56 push %r14
2772: 41 55 push %r13
2774: 49 89 f5 mov %rsi,%r13
2777: 41 54 push %r12
2779: 49 89 fc mov %rdi,%r12
277c: 55 push %rbp
277d: 49 8d ad 00 02 00 00 lea 0x200(%r13),%rbp
2784: 49 81 c5 00 06 00 00 add $0x600,%r13
278b: 53 push %rbx
278c: 48 81 ec 10 02 00 00 sub $0x210,%rsp
2793: 64 48 8b 1c 25 28 00 mov %fs:0x28,%rbx
279a: 00 00
279c: 48 89 9c 24 08 02 00 mov %rbx,0x208(%rsp)
27a3: 00
27a4: 48 89 d3 mov %rdx,%rbx
27a7: 48 89 da mov %rbx,%rdx
27aa: 48 81 c3 00 02 00 00 add $0x200,%rbx
27b1: e8 5a 06 00 00 call 2e10 <pqcrystals_kyber768_ref_poly_basemul_montgomery>
27b6: 48 89 da mov %rbx,%rdx
27b9: 48 89 ee mov %rbp,%rsi
27bc: 48 89 e7 mov %rsp,%rdi
27bf: 48 81 c5 00 02 00 00 add $0x200,%rbp
27c6: e8 45 06 00 00 call 2e10 <pqcrystals_kyber768_ref_poly_basemul_montgomery>
27cb: 48 89 e2 mov %rsp,%rdx
27ce: 4c 89 e6 mov %r12,%rsi
27d1: 4c 89 e7 mov %r12,%rdi
27d4: e8 27 07 00 00 call 2f00 <pqcrystals_kyber768_ref_poly_add>
27d9: 48 81 c3 00 02 00 00 add $0x200,%rbx
27e0: 4c 39 ed cmp %r13,%rbp
27e3: 75 d1 jne 27b6 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery+0x46>
27e5: 4c 89 e7 mov %r12,%rdi
27e8: e8 e3 06 00 00 call 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
27ed: 48 8b 84 24 08 02 00 mov 0x208(%rsp),%rax
27f4: 00
27f5: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
27fc: 00 00
27fe: 75 10 jne 2810 <pqcrystals_kyber768_ref_polyvec_basemul_acc_montgomery+0xa0>
2800: 48 81 c4 10 02 00 00 add $0x210,%rsp
2807: 5b pop %rbx
2808: 5d pop %rbp
2809: 41 5c pop %r12
280b: 41 5d pop %r13
280d: 41 5e pop %r14
280f: c3 ret
2810: e8 6b e8 ff ff call 1080 <__stack_chk_fail@plt>
2815: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
281c: 00 00 00 00
0000000000002820 <pqcrystals_kyber768_ref_polyvec_reduce>:
2820: 53 push %rbx
2821: 48 89 fb mov %rdi,%rbx
2824: e8 a7 06 00 00 call 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
2829: 48 8d bb 00 02 00 00 lea 0x200(%rbx),%rdi
2830: e8 9b 06 00 00 call 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
2835: 48 8d bb 00 04 00 00 lea 0x400(%rbx),%rdi
283c: 5b pop %rbx
283d: e9 8e 06 00 00 jmp 2ed0 <pqcrystals_kyber768_ref_poly_reduce>
2842: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2849: 00 00 00 00
284d: 0f 1f 00 nopl (%rax)
0000000000002850 <pqcrystals_kyber768_ref_polyvec_add>:
2850: 41 55 push %r13
2852: 49 89 fd mov %rdi,%r13
2855: 41 54 push %r12
2857: 49 89 f4 mov %rsi,%r12
285a: 55 push %rbp
285b: 48 89 d5 mov %rdx,%rbp
285e: 53 push %rbx
285f: 31 db xor %ebx,%ebx
2861: 48 83 ec 08 sub $0x8,%rsp
2865: 48 8d 54 1d 00 lea 0x0(%rbp,%rbx,1),%rdx
286a: 49 8d 34 1c lea (%r12,%rbx,1),%rsi
286e: 49 8d 7c 1d 00 lea 0x0(%r13,%rbx,1),%rdi
2873: 48 81 c3 00 02 00 00 add $0x200,%rbx
287a: e8 81 06 00 00 call 2f00 <pqcrystals_kyber768_ref_poly_add>
287f: 48 81 fb 00 06 00 00 cmp $0x600,%rbx
2886: 75 dd jne 2865 <pqcrystals_kyber768_ref_polyvec_add+0x15>
2888: 48 83 c4 08 add $0x8,%rsp
288c: 5b pop %rbx
288d: 5d pop %rbp
288e: 41 5c pop %r12
2890: 41 5d pop %r13
2892: c3 ret
2893: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
289a: 00 00 00
289d: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
28a4: 00 00 00
28a7: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
28ae: 00 00 00
28b1: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
28b8: 00 00 00
28bb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
00000000000028c0 <pqcrystals_kyber768_ref_poly_compress>:
28c0: 41 54 push %r12
28c2: 49 89 f3 mov %rsi,%r11
28c5: 55 push %rbp
28c6: 48 8d af 80 00 00 00 lea 0x80(%rdi),%rbp
28cd: 53 push %rbx
28ce: 48 89 fb mov %rdi,%rbx
28d1: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
28d8: 00 00 00 00
28dc: 0f 1f 40 00 nopl 0x0(%rax)
28e0: 41 0f b7 03 movzwl (%r11),%eax
28e4: 45 0f b7 63 0e movzwl 0xe(%r11),%r12d
28e9: 41 89 c2 mov %eax,%r10d
28ec: 66 41 c1 fa 0f sar $0xf,%r10w
28f1: 66 41 81 e2 01 0d and $0xd01,%r10w
28f7: 41 01 c2 add %eax,%r10d
28fa: 41 0f b7 43 02 movzwl 0x2(%r11),%eax
28ff: 45 0f bf d2 movswl %r10w,%r10d
2903: 89 c6 mov %eax,%esi
2905: 41 c1 e2 04 shl $0x4,%r10d
2909: 66 c1 fe 0f sar $0xf,%si
290d: 41 81 c2 81 06 00 00 add $0x681,%r10d
2914: 66 81 e6 01 0d and $0xd01,%si
2919: 45 69 d2 fb 3a 01 00 imul $0x13afb,%r10d,%r10d
2920: 01 c6 add %eax,%esi
2922: 41 0f b7 43 04 movzwl 0x4(%r11),%eax
2927: 0f bf f6 movswl %si,%esi
292a: 41 89 c1 mov %eax,%r9d
292d: c1 e6 04 shl $0x4,%esi
2930: 66 41 c1 f9 0f sar $0xf,%r9w
2935: 81 c6 81 06 00 00 add $0x681,%esi
293b: 66 41 81 e1 01 0d and $0xd01,%r9w
2941: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2947: 41 01 c1 add %eax,%r9d
294a: 41 0f b7 43 06 movzwl 0x6(%r11),%eax
294f: 45 0f bf c9 movswl %r9w,%r9d
2953: 89 c1 mov %eax,%ecx
2955: 41 c1 e1 04 shl $0x4,%r9d
2959: 66 c1 f9 0f sar $0xf,%cx
295d: 41 81 c1 81 06 00 00 add $0x681,%r9d
2964: 66 81 e1 01 0d and $0xd01,%cx
2969: 45 69 c9 fb 3a 01 00 imul $0x13afb,%r9d,%r9d
2970: 01 c1 add %eax,%ecx
2972: 41 0f b7 43 08 movzwl 0x8(%r11),%eax
2977: 0f bf c9 movswl %cx,%ecx
297a: 41 89 c0 mov %eax,%r8d
297d: c1 e1 04 shl $0x4,%ecx
2980: 66 41 c1 f8 0f sar $0xf,%r8w
2985: 81 c1 81 06 00 00 add $0x681,%ecx
298b: 66 41 81 e0 01 0d and $0xd01,%r8w
2991: 69 c9 fb 3a 01 00 imul $0x13afb,%ecx,%ecx
2997: 41 01 c0 add %eax,%r8d
299a: 41 0f b7 43 0a movzwl 0xa(%r11),%eax
299f: 45 0f bf c0 movswl %r8w,%r8d
29a3: 89 c2 mov %eax,%edx
29a5: 41 c1 e0 04 shl $0x4,%r8d
29a9: 66 c1 fa 0f sar $0xf,%dx
29ad: 41 81 c0 81 06 00 00 add $0x681,%r8d
29b4: 66 81 e2 01 0d and $0xd01,%dx
29b9: 45 69 c0 fb 3a 01 00 imul $0x13afb,%r8d,%r8d
29c0: 01 c2 add %eax,%edx
29c2: 41 0f b7 43 0c movzwl 0xc(%r11),%eax
29c7: c1 ee 1c shr $0x1c,%esi
29ca: c1 e9 1c shr $0x1c,%ecx
29cd: 0f bf d2 movswl %dx,%edx
29d0: c1 e6 04 shl $0x4,%esi
29d3: c1 e2 04 shl $0x4,%edx
29d6: 89 c7 mov %eax,%edi
29d8: 41 c1 ea 1c shr $0x1c,%r10d
29dc: 66 c1 ff 0f sar $0xf,%di
29e0: 81 c2 81 06 00 00 add $0x681,%edx
29e6: c1 e1 04 shl $0x4,%ecx
29e9: 41 09 f2 or %esi,%r10d
29ec: 41 c1 e9 1c shr $0x1c,%r9d
29f0: 66 81 e7 01 0d and $0xd01,%di
29f5: 41 c1 e8 1c shr $0x1c,%r8d
29f9: 44 88 13 mov %r10b,(%rbx)
29fc: 01 c7 add %eax,%edi
29fe: 69 d2 fb 3a 01 00 imul $0x13afb,%edx,%edx
2a04: 44 89 e0 mov %r12d,%eax
2a07: 41 09 c9 or %ecx,%r9d
2a0a: 66 c1 f8 0f sar $0xf,%ax
2a0e: 0f bf ff movswl %di,%edi
2a11: 44 88 4b 01 mov %r9b,0x1(%rbx)
2a15: 66 25 01 0d and $0xd01,%ax
2a19: c1 e7 04 shl $0x4,%edi
2a1c: 44 01 e0 add %r12d,%eax
2a1f: 81 c7 81 06 00 00 add $0x681,%edi
2a25: c1 ea 1c shr $0x1c,%edx
2a28: 98 cwtl
2a29: 69 ff fb 3a 01 00 imul $0x13afb,%edi,%edi
2a2f: c1 e2 04 shl $0x4,%edx
2a32: c1 e0 04 shl $0x4,%eax
2a35: 41 09 d0 or %edx,%r8d
2a38: 05 81 06 00 00 add $0x681,%eax
2a3d: 44 88 43 02 mov %r8b,0x2(%rbx)
2a41: 69 c0 fb 3a 01 00 imul $0x13afb,%eax,%eax
2a47: c1 ef 1c shr $0x1c,%edi
2a4a: c1 e8 1c shr $0x1c,%eax
2a4d: c1 e0 04 shl $0x4,%eax
2a50: 09 c7 or %eax,%edi
2a52: 48 83 c3 04 add $0x4,%rbx
2a56: 40 88 7b ff mov %dil,-0x1(%rbx)
2a5a: 49 83 c3 10 add $0x10,%r11
2a5e: 48 39 eb cmp %rbp,%rbx
2a61: 0f 85 79 fe ff ff jne 28e0 <pqcrystals_kyber768_ref_poly_compress+0x20>
2a67: 5b pop %rbx
2a68: 5d pop %rbp
2a69: 41 5c pop %r12
2a6b: c3 ret
2a6c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000002a70 <pqcrystals_kyber768_ref_poly_decompress>:
2a70: 31 d2 xor %edx,%edx
2a72: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2a79: 00 00 00 00
2a7d: 0f 1f 00 nopl (%rax)
2a80: 0f b6 04 16 movzbl (%rsi,%rdx,1),%eax
2a84: 83 e0 0f and $0xf,%eax
2a87: 69 c0 01 0d 00 00 imul $0xd01,%eax,%eax
2a8d: 83 c0 08 add $0x8,%eax
2a90: c1 f8 04 sar $0x4,%eax
2a93: 66 89 04 97 mov %ax,(%rdi,%rdx,4)
2a97: 0f b6 04 16 movzbl (%rsi,%rdx,1),%eax
2a9b: c0 e8 04 shr $0x4,%al
2a9e: 0f b6 c0 movzbl %al,%eax
2aa1: 69 c0 01 0d 00 00 imul $0xd01,%eax,%eax
2aa7: 83 c0 08 add $0x8,%eax
2aaa: c1 f8 04 sar $0x4,%eax
2aad: 66 89 44 97 02 mov %ax,0x2(%rdi,%rdx,4)
2ab2: 48 83 c2 01 add $0x1,%rdx
2ab6: 48 81 fa 80 00 00 00 cmp $0x80,%rdx
2abd: 75 c1 jne 2a80 <pqcrystals_kyber768_ref_poly_decompress+0x10>
2abf: c3 ret
0000000000002ac0 <pqcrystals_kyber768_ref_poly_tobytes>:
2ac0: 4c 8d 87 80 01 00 00 lea 0x180(%rdi),%r8
2ac7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
2ace: 00 00
2ad0: 0f b7 06 movzwl (%rsi),%eax
2ad3: 0f b7 4e 02 movzwl 0x2(%rsi),%ecx
2ad7: 48 83 c7 03 add $0x3,%rdi
2adb: 48 83 c6 04 add $0x4,%rsi
2adf: 89 c2 mov %eax,%edx
2ae1: 66 c1 fa 0f sar $0xf,%dx
2ae5: 66 81 e2 01 0d and $0xd01,%dx
2aea: 01 c2 add %eax,%edx
2aec: 89 c8 mov %ecx,%eax
2aee: 66 c1 f8 0f sar $0xf,%ax
2af2: 88 57 fd mov %dl,-0x3(%rdi)
2af5: 66 25 01 0d and $0xd01,%ax
2af9: 01 c8 add %ecx,%eax
2afb: 89 c1 mov %eax,%ecx
2afd: 66 c1 e8 04 shr $0x4,%ax
2b01: c1 e1 04 shl $0x4,%ecx
2b04: 88 47 ff mov %al,-0x1(%rdi)
2b07: 08 f1 or %dh,%cl
2b09: 88 4f fe mov %cl,-0x2(%rdi)
2b0c: 49 39 f8 cmp %rdi,%r8
2b0f: 75 bf jne 2ad0 <pqcrystals_kyber768_ref_poly_tobytes+0x10>
2b11: c3 ret
2b12: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2b19: 00 00 00 00
2b1d: 0f 1f 00 nopl (%rax)
0000000000002b20 <pqcrystals_kyber768_ref_poly_frombytes>:
2b20: 48 8d 8e 80 01 00 00 lea 0x180(%rsi),%rcx
2b27: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2b2e: 00 00 00 00
2b32: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2b39: 00 00 00 00
2b3d: 0f 1f 00 nopl (%rax)
2b40: 0f b6 46 01 movzbl 0x1(%rsi),%eax
2b44: 0f b6 16 movzbl (%rsi),%edx
2b47: 48 83 c6 03 add $0x3,%rsi
2b4b: 48 83 c7 04 add $0x4,%rdi
2b4f: c1 e0 08 shl $0x8,%eax
2b52: 09 d0 or %edx,%eax
2b54: 66 25 ff 0f and $0xfff,%ax
2b58: 66 89 47 fc mov %ax,-0x4(%rdi)
2b5c: 0f b6 46 fe movzbl -0x2(%rsi),%eax
2b60: 0f b6 56 ff movzbl -0x1(%rsi),%edx
2b64: c0 e8 04 shr $0x4,%al
2b67: 0f b6 c0 movzbl %al,%eax
2b6a: c1 e2 04 shl $0x4,%edx
2b6d: 09 d0 or %edx,%eax
2b6f: 66 89 47 fe mov %ax,-0x2(%rdi)
2b73: 48 39 f1 cmp %rsi,%rcx
2b76: 75 c8 jne 2b40 <pqcrystals_kyber768_ref_poly_frombytes+0x20>
2b78: c3 ret
2b79: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000002b80 <pqcrystals_kyber768_ref_poly_frommsg>:
2b80: 41 56 push %r14
2b82: 41 55 push %r13
2b84: 41 54 push %r12
2b86: 49 89 fc mov %rdi,%r12
2b89: 55 push %rbp
2b8a: 48 89 f5 mov %rsi,%rbp
2b8d: 53 push %rbx
2b8e: 31 db xor %ebx,%ebx
2b90: 4d 8d 34 5c lea (%r12,%rbx,2),%r14
2b94: 45 31 ed xor %r13d,%r13d
2b97: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
2b9e: 00 00
2ba0: 41 8d 44 1d 00 lea 0x0(%r13,%rbx,1),%eax
2ba5: 31 d2 xor %edx,%edx
2ba7: 44 89 e9 mov %r13d,%ecx
2baa: 4c 89 f7 mov %r14,%rdi
2bad: 66 41 89 14 44 mov %dx,(%r12,%rax,2)
2bb2: 0f b6 55 00 movzbl 0x0(%rbp),%edx
2bb6: 41 83 c5 01 add $0x1,%r13d
2bba: 49 83 c6 02 add $0x2,%r14
2bbe: be 81 06 00 00 mov $0x681,%esi
2bc3: d3 fa sar %cl,%edx
2bc5: 83 e2 01 and $0x1,%edx
2bc8: e8 93 08 00 00 call 3460 <pqcrystals_kyber768_ref_cmov_int16>
2bcd: 41 83 fd 08 cmp $0x8,%r13d
2bd1: 75 cd jne 2ba0 <pqcrystals_kyber768_ref_poly_frommsg+0x20>
2bd3: 48 83 c3 08 add $0x8,%rbx
2bd7: 48 83 c5 01 add $0x1,%rbp
2bdb: 48 81 fb 00 01 00 00 cmp $0x100,%rbx
2be2: 75 ac jne 2b90 <pqcrystals_kyber768_ref_poly_frommsg+0x10>
2be4: 5b pop %rbx
2be5: 5d pop %rbp
2be6: 41 5c pop %r12
2be8: 41 5d pop %r13
2bea: 41 5e pop %r14
2bec: c3 ret
2bed: 0f 1f 00 nopl (%rax)
0000000000002bf0 <pqcrystals_kyber768_ref_poly_tomsg>:
2bf0: 48 89 f9 mov %rdi,%rcx
2bf3: 48 89 f2 mov %rsi,%rdx
2bf6: 48 8d be 00 02 00 00 lea 0x200(%rsi),%rdi
2bfd: 0f 1f 00 nopl (%rax)
2c00: c6 01 00 movb $0x0,(%rcx)
2c03: 0f bf 02 movswl (%rdx),%eax
2c06: 48 83 c1 01 add $0x1,%rcx
2c0a: 8d 84 00 81 06 00 00 lea 0x681(%rax,%rax,1),%eax
2c11: 69 c0 fb 3a 01 00 imul $0x13afb,%eax,%eax
2c17: c1 e8 1c shr $0x1c,%eax
2c1a: 83 e0 01 and $0x1,%eax
2c1d: 88 41 ff mov %al,-0x1(%rcx)
2c20: 0f bf 72 02 movswl 0x2(%rdx),%esi
2c24: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2c2b: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2c31: c1 ee 1b shr $0x1b,%esi
2c34: 83 e6 02 and $0x2,%esi
2c37: 09 f0 or %esi,%eax
2c39: 88 41 ff mov %al,-0x1(%rcx)
2c3c: 0f bf 72 04 movswl 0x4(%rdx),%esi
2c40: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2c47: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2c4d: c1 ee 1a shr $0x1a,%esi
2c50: 83 e6 04 and $0x4,%esi
2c53: 09 f0 or %esi,%eax
2c55: 88 41 ff mov %al,-0x1(%rcx)
2c58: 0f bf 72 06 movswl 0x6(%rdx),%esi
2c5c: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2c63: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2c69: c1 ee 19 shr $0x19,%esi
2c6c: 83 e6 08 and $0x8,%esi
2c6f: 09 f0 or %esi,%eax
2c71: 88 41 ff mov %al,-0x1(%rcx)
2c74: 0f bf 72 08 movswl 0x8(%rdx),%esi
2c78: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2c7f: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2c85: c1 ee 18 shr $0x18,%esi
2c88: 83 e6 10 and $0x10,%esi
2c8b: 09 f0 or %esi,%eax
2c8d: 88 41 ff mov %al,-0x1(%rcx)
2c90: 0f bf 72 0a movswl 0xa(%rdx),%esi
2c94: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2c9b: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2ca1: c1 ee 17 shr $0x17,%esi
2ca4: 83 e6 20 and $0x20,%esi
2ca7: 09 f0 or %esi,%eax
2ca9: 88 41 ff mov %al,-0x1(%rcx)
2cac: 0f bf 72 0c movswl 0xc(%rdx),%esi
2cb0: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2cb7: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2cbd: c1 ee 16 shr $0x16,%esi
2cc0: 83 e6 40 and $0x40,%esi
2cc3: 09 f0 or %esi,%eax
2cc5: 88 41 ff mov %al,-0x1(%rcx)
2cc8: 0f bf 72 0e movswl 0xe(%rdx),%esi
2ccc: 8d b4 36 81 06 00 00 lea 0x681(%rsi,%rsi,1),%esi
2cd3: 69 f6 fb 3a 01 00 imul $0x13afb,%esi,%esi
2cd9: c1 ee 1c shr $0x1c,%esi
2cdc: c1 e6 07 shl $0x7,%esi
2cdf: 09 f0 or %esi,%eax
2ce1: 88 41 ff mov %al,-0x1(%rcx)
2ce4: 48 83 c2 10 add $0x10,%rdx
2ce8: 48 39 d7 cmp %rdx,%rdi
2ceb: 0f 85 0f ff ff ff jne 2c00 <pqcrystals_kyber768_ref_poly_tomsg+0x10>
2cf1: c3 ret
2cf2: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2cf9: 00 00 00 00
2cfd: 0f 1f 00 nopl (%rax)
0000000000002d00 <pqcrystals_kyber768_ref_poly_getnoise_eta1>:
2d00: 55 push %rbp
2d01: 0f b6 ca movzbl %dl,%ecx
2d04: 48 89 f2 mov %rsi,%rdx
2d07: be 80 00 00 00 mov $0x80,%esi
2d0c: 53 push %rbx
2d0d: 48 81 ec 98 00 00 00 sub $0x98,%rsp
2d14: 64 48 8b 2c 25 28 00 mov %fs:0x28,%rbp
2d1b: 00 00
2d1d: 48 89 ac 24 88 00 00 mov %rbp,0x88(%rsp)
2d24: 00
2d25: 48 89 fd mov %rdi,%rbp
2d28: 48 89 e7 mov %rsp,%rdi
2d2b: e8 50 20 00 00 call 4d80 <pqcrystals_kyber768_ref_kyber_shake256_prf>
2d30: 48 89 e6 mov %rsp,%rsi
2d33: 48 89 ef mov %rbp,%rdi
2d36: e8 35 06 00 00 call 3370 <pqcrystals_kyber768_ref_poly_cbd_eta1>
2d3b: 48 8b 84 24 88 00 00 mov 0x88(%rsp),%rax
2d42: 00
2d43: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
2d4a: 00 00
2d4c: 75 0a jne 2d58 <pqcrystals_kyber768_ref_poly_getnoise_eta1+0x58>
2d4e: 48 81 c4 98 00 00 00 add $0x98,%rsp
2d55: 5b pop %rbx
2d56: 5d pop %rbp
2d57: c3 ret
2d58: e8 23 e3 ff ff call 1080 <__stack_chk_fail@plt>
2d5d: 0f 1f 00 nopl (%rax)
0000000000002d60 <pqcrystals_kyber768_ref_poly_getnoise_eta2>:
2d60: 55 push %rbp
2d61: 0f b6 ca movzbl %dl,%ecx
2d64: 48 89 f2 mov %rsi,%rdx
2d67: be 80 00 00 00 mov $0x80,%esi
2d6c: 53 push %rbx
2d6d: 48 81 ec 98 00 00 00 sub $0x98,%rsp
2d74: 64 48 8b 2c 25 28 00 mov %fs:0x28,%rbp
2d7b: 00 00
2d7d: 48 89 ac 24 88 00 00 mov %rbp,0x88(%rsp)
2d84: 00
2d85: 48 89 fd mov %rdi,%rbp
2d88: 48 89 e7 mov %rsp,%rdi
2d8b: e8 f0 1f 00 00 call 4d80 <pqcrystals_kyber768_ref_kyber_shake256_prf>
2d90: 48 89 e6 mov %rsp,%rsi
2d93: 48 89 ef mov %rbp,%rdi
2d96: e8 e5 05 00 00 call 3380 <pqcrystals_kyber768_ref_poly_cbd_eta2>
2d9b: 48 8b 84 24 88 00 00 mov 0x88(%rsp),%rax
2da2: 00
2da3: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
2daa: 00 00
2dac: 75 0a jne 2db8 <pqcrystals_kyber768_ref_poly_getnoise_eta2+0x58>
2dae: 48 81 c4 98 00 00 00 add $0x98,%rsp
2db5: 5b pop %rbx
2db6: 5d pop %rbp
2db7: c3 ret
2db8: e8 c3 e2 ff ff call 1080 <__stack_chk_fail@plt>
2dbd: 0f 1f 00 nopl (%rax)
0000000000002dc0 <pqcrystals_kyber768_ref_poly_ntt>:
2dc0: 55 push %rbp
2dc1: 53 push %rbx
2dc2: 48 89 fb mov %rdi,%rbx
2dc5: 48 8d ab 00 02 00 00 lea 0x200(%rbx),%rbp
2dcc: 48 83 ec 08 sub $0x8,%rsp
2dd0: e8 ab 01 00 00 call 2f80 <pqcrystals_kyber768_ref_ntt>
2dd5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2ddc: 00 00 00 00
2de0: 0f bf 3b movswl (%rbx),%edi
2de3: 48 83 c3 02 add $0x2,%rbx
2de7: e8 c4 05 00 00 call 33b0 <pqcrystals_kyber768_ref_barrett_reduce>
2dec: 66 89 43 fe mov %ax,-0x2(%rbx)
2df0: 48 39 eb cmp %rbp,%rbx
2df3: 75 eb jne 2de0 <pqcrystals_kyber768_ref_poly_ntt+0x20>
2df5: 48 83 c4 08 add $0x8,%rsp
2df9: 5b pop %rbx
2dfa: 5d pop %rbp
2dfb: c3 ret
2dfc: 0f 1f 40 00 nopl 0x0(%rax)
0000000000002e00 <pqcrystals_kyber768_ref_poly_invntt_tomont>:
2e00: e9 7b 02 00 00 jmp 3080 <pqcrystals_kyber768_ref_invntt>
2e05: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2e0c: 00 00 00 00
0000000000002e10 <pqcrystals_kyber768_ref_poly_basemul_montgomery>:
2e10: 41 57 push %r15
2e12: 4c 8d 3d 87 32 00 00 lea 0x3287(%rip),%r15 # 60a0 <pqcrystals_kyber768_ref_zetas+0x80>
2e19: 41 56 push %r14
2e1b: 4d 8d b7 80 00 00 00 lea 0x80(%r15),%r14
2e22: 41 55 push %r13
2e24: 49 89 f5 mov %rsi,%r13
2e27: 41 54 push %r12
2e29: 49 89 d4 mov %rdx,%r12
2e2c: 55 push %rbp
2e2d: 48 8d 6f 04 lea 0x4(%rdi),%rbp
2e31: 53 push %rbx
2e32: 48 83 ec 08 sub $0x8,%rsp
2e36: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
2e3d: 00 00 00
2e40: 41 0f bf 0f movswl (%r15),%ecx
2e44: 48 8d 7d fc lea -0x4(%rbp),%rdi
2e48: 4c 89 e2 mov %r12,%rdx
2e4b: 4c 89 ee mov %r13,%rsi
2e4e: 49 83 c7 02 add $0x2,%r15
2e52: 89 cb mov %ecx,%ebx
2e54: e8 87 03 00 00 call 31e0 <pqcrystals_kyber768_ref_basemul>
2e59: f7 db neg %ebx
2e5b: 49 8d 54 24 04 lea 0x4(%r12),%rdx
2e60: 49 8d 75 04 lea 0x4(%r13),%rsi
2e64: 48 89 ef mov %rbp,%rdi
2e67: 0f bf cb movswl %bx,%ecx
2e6a: 49 83 c5 08 add $0x8,%r13
2e6e: 49 83 c4 08 add $0x8,%r12
2e72: e8 69 03 00 00 call 31e0 <pqcrystals_kyber768_ref_basemul>
2e77: 48 83 c5 08 add $0x8,%rbp
2e7b: 4d 39 fe cmp %r15,%r14
2e7e: 75 c0 jne 2e40 <pqcrystals_kyber768_ref_poly_basemul_montgomery+0x30>
2e80: 48 83 c4 08 add $0x8,%rsp
2e84: 5b pop %rbx
2e85: 5d pop %rbp
2e86: 41 5c pop %r12
2e88: 41 5d pop %r13
2e8a: 41 5e pop %r14
2e8c: 41 5f pop %r15
2e8e: c3 ret
2e8f: 90 nop
0000000000002e90 <pqcrystals_kyber768_ref_poly_tomont>:
2e90: 55 push %rbp
2e91: 48 8d af 00 02 00 00 lea 0x200(%rdi),%rbp
2e98: 53 push %rbx
2e99: 48 89 fb mov %rdi,%rbx
2e9c: 48 83 ec 08 sub $0x8,%rsp
2ea0: 0f bf 3b movswl (%rbx),%edi
2ea3: 48 83 c3 02 add $0x2,%rbx
2ea7: 69 ff 49 05 00 00 imul $0x549,%edi,%edi
2ead: e8 de 04 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
2eb2: 66 89 43 fe mov %ax,-0x2(%rbx)
2eb6: 48 39 eb cmp %rbp,%rbx
2eb9: 75 e5 jne 2ea0 <pqcrystals_kyber768_ref_poly_tomont+0x10>
2ebb: 48 83 c4 08 add $0x8,%rsp
2ebf: 5b pop %rbx
2ec0: 5d pop %rbp
2ec1: c3 ret
2ec2: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2ec9: 00 00 00 00
2ecd: 0f 1f 00 nopl (%rax)
0000000000002ed0 <pqcrystals_kyber768_ref_poly_reduce>:
2ed0: 55 push %rbp
2ed1: 48 8d af 00 02 00 00 lea 0x200(%rdi),%rbp
2ed8: 53 push %rbx
2ed9: 48 89 fb mov %rdi,%rbx
2edc: 48 83 ec 08 sub $0x8,%rsp
2ee0: 0f bf 3b movswl (%rbx),%edi
2ee3: 48 83 c3 02 add $0x2,%rbx
2ee7: e8 c4 04 00 00 call 33b0 <pqcrystals_kyber768_ref_barrett_reduce>
2eec: 66 89 43 fe mov %ax,-0x2(%rbx)
2ef0: 48 39 eb cmp %rbp,%rbx
2ef3: 75 eb jne 2ee0 <pqcrystals_kyber768_ref_poly_reduce+0x10>
2ef5: 48 83 c4 08 add $0x8,%rsp
2ef9: 5b pop %rbx
2efa: 5d pop %rbp
2efb: c3 ret
2efc: 0f 1f 40 00 nopl 0x0(%rax)
0000000000002f00 <pqcrystals_kyber768_ref_poly_add>:
2f00: 48 89 d1 mov %rdx,%rcx
2f03: 31 c0 xor %eax,%eax
2f05: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2f0c: 00 00 00 00
2f10: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2f17: 00 00 00 00
2f1b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
2f20: 0f b7 14 01 movzwl (%rcx,%rax,1),%edx
2f24: 66 03 14 06 add (%rsi,%rax,1),%dx
2f28: 66 89 14 07 mov %dx,(%rdi,%rax,1)
2f2c: 48 83 c0 02 add $0x2,%rax
2f30: 48 3d 00 02 00 00 cmp $0x200,%rax
2f36: 75 e8 jne 2f20 <pqcrystals_kyber768_ref_poly_add+0x20>
2f38: c3 ret
2f39: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000002f40 <pqcrystals_kyber768_ref_poly_sub>:
2f40: 48 89 d1 mov %rdx,%rcx
2f43: 31 c0 xor %eax,%eax
2f45: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2f4c: 00 00 00 00
2f50: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2f57: 00 00 00 00
2f5b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
2f60: 0f b7 14 06 movzwl (%rsi,%rax,1),%edx
2f64: 66 2b 14 01 sub (%rcx,%rax,1),%dx
2f68: 66 89 14 07 mov %dx,(%rdi,%rax,1)
2f6c: 48 83 c0 02 add $0x2,%rax
2f70: 48 3d 00 02 00 00 cmp $0x200,%rax
2f76: 75 e8 jne 2f60 <pqcrystals_kyber768_ref_poly_sub+0x20>
2f78: c3 ret
2f79: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000002f80 <pqcrystals_kyber768_ref_ntt>:
2f80: 41 57 push %r15
2f82: 49 89 ff mov %rdi,%r15
2f85: 41 56 push %r14
2f87: 41 55 push %r13
2f89: 41 54 push %r12
2f8b: 55 push %rbp
2f8c: bd 0a fd ff ff mov $0xfffffd0a,%ebp
2f91: 53 push %rbx
2f92: 48 83 ec 28 sub $0x28,%rsp
2f96: c7 44 24 1c 07 00 00 movl $0x7,0x1c(%rsp)
2f9d: 00
2f9e: c7 44 24 0c 01 00 00 movl $0x1,0xc(%rsp)
2fa5: 00
2fa6: c7 44 24 10 80 00 00 movl $0x80,0x10(%rsp)
2fad: 00
2fae: 66 90 xchg %ax,%ax
2fb0: 8b 44 24 10 mov 0x10(%rsp),%eax
2fb4: 45 31 e4 xor %r12d,%r12d
2fb7: 8d 48 ff lea -0x1(%rax),%ecx
2fba: 83 c0 01 add $0x1,%eax
2fbd: 89 4c 24 14 mov %ecx,0x14(%rsp)
2fc1: 89 44 24 18 mov %eax,0x18(%rsp)
2fc5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
2fcc: 00 00 00 00
2fd0: 8b 44 24 10 mov 0x10(%rsp),%eax
2fd4: 83 44 24 0c 01 addl $0x1,0xc(%rsp)
2fd9: 45 89 e5 mov %r12d,%r13d
2fdc: 44 01 e0 add %r12d,%eax
2fdf: 89 c0 mov %eax,%eax
2fe1: 48 89 c3 mov %rax,%rbx
2fe4: 4c 29 e8 sub %r13,%rax
2fe7: 4d 8d 34 47 lea (%r15,%rax,2),%r14
2feb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
2ff0: 43 0f bf 3c 6e movswl (%r14,%r13,2),%edi
2ff5: 0f af fd imul %ebp,%edi
2ff8: e8 93 03 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
2ffd: 89 c6 mov %eax,%esi
2fff: 43 0f b7 04 6f movzwl (%r15,%r13,2),%eax
3004: 29 f0 sub %esi,%eax
3006: 66 43 89 04 6e mov %ax,(%r14,%r13,2)
300b: 66 43 01 34 6f add %si,(%r15,%r13,2)
3010: 49 83 c5 01 add $0x1,%r13
3014: 41 39 dd cmp %ebx,%r13d
3017: 72 d7 jb 2ff0 <pqcrystals_kyber768_ref_ntt+0x70>
3019: 41 8d 44 24 01 lea 0x1(%r12),%eax
301e: 39 c3 cmp %eax,%ebx
3020: b8 00 00 00 00 mov $0x0,%eax
3025: 0f 43 44 24 14 cmovae 0x14(%rsp),%eax
302a: 44 03 64 24 18 add 0x18(%rsp),%r12d
302f: 41 01 c4 add %eax,%r12d
3032: 41 81 fc ff 00 00 00 cmp $0xff,%r12d
3039: 77 15 ja 3050 <pqcrystals_kyber768_ref_ntt+0xd0>
303b: 8b 44 24 0c mov 0xc(%rsp),%eax
303f: 48 8d 15 da 2f 00 00 lea 0x2fda(%rip),%rdx # 6020 <pqcrystals_kyber768_ref_zetas>
3046: 0f bf 2c 42 movswl (%rdx,%rax,2),%ebp
304a: eb 84 jmp 2fd0 <pqcrystals_kyber768_ref_ntt+0x50>
304c: 0f 1f 40 00 nopl 0x0(%rax)
3050: 83 6c 24 1c 01 subl $0x1,0x1c(%rsp)
3055: 74 18 je 306f <pqcrystals_kyber768_ref_ntt+0xef>
3057: 8b 44 24 0c mov 0xc(%rsp),%eax
305b: 48 8d 0d be 2f 00 00 lea 0x2fbe(%rip),%rcx # 6020 <pqcrystals_kyber768_ref_zetas>
3062: d1 6c 24 10 shrl $1,0x10(%rsp)
3066: 0f bf 2c 41 movswl (%rcx,%rax,2),%ebp
306a: e9 41 ff ff ff jmp 2fb0 <pqcrystals_kyber768_ref_ntt+0x30>
306f: 48 83 c4 28 add $0x28,%rsp
3073: 5b pop %rbx
3074: 5d pop %rbp
3075: 41 5c pop %r12
3077: 41 5d pop %r13
3079: 41 5e pop %r14
307b: 41 5f pop %r15
307d: c3 ret
307e: 66 90 xchg %ax,%ax
0000000000003080 <pqcrystals_kyber768_ref_invntt>:
3080: 41 57 push %r15
3082: 48 8d 47 02 lea 0x2(%rdi),%rax
3086: 41 56 push %r14
3088: 41 55 push %r13
308a: 41 54 push %r12
308c: 55 push %rbp
308d: 53 push %rbx
308e: bb 5c 06 00 00 mov $0x65c,%ebx
3093: 48 83 ec 38 sub $0x38,%rsp
3097: 48 89 7c 24 18 mov %rdi,0x18(%rsp)
309c: c7 44 24 2c 07 00 00 movl $0x7,0x2c(%rsp)
30a3: 00
30a4: c7 44 24 14 7f 00 00 movl $0x7f,0x14(%rsp)
30ab: 00
30ac: c7 44 24 0c 02 00 00 movl $0x2,0xc(%rsp)
30b3: 00
30b4: 48 89 44 24 20 mov %rax,0x20(%rsp)
30b9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
30c0: 8b 54 24 0c mov 0xc(%rsp),%edx
30c4: 31 c0 xor %eax,%eax
30c6: 83 ea 01 sub $0x1,%edx
30c9: 89 54 24 28 mov %edx,0x28(%rsp)
30cd: 0f 1f 00 nopl (%rax)
30d0: 8b 54 24 0c mov 0xc(%rsp),%edx
30d4: 83 6c 24 14 01 subl $0x1,0x14(%rsp)
30d9: 8d 0c 10 lea (%rax,%rdx,1),%ecx
30dc: 89 4c 24 10 mov %ecx,0x10(%rsp)
30e0: 39 c8 cmp %ecx,%eax
30e2: 0f 83 b8 00 00 00 jae 31a0 <pqcrystals_kyber768_ref_invntt+0x120>
30e8: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
30ed: 89 ca mov %ecx,%edx
30ef: 4c 8d 2c 46 lea (%rsi,%rax,2),%r13
30f3: 4c 8d 3c 56 lea (%rsi,%rdx,2),%r15
30f7: 48 89 f5 mov %rsi,%rbp
30fa: 8b 74 24 28 mov 0x28(%rsp),%esi
30fe: 48 8b 54 24 20 mov 0x20(%rsp),%rdx
3103: 48 01 f0 add %rsi,%rax
3106: 4c 8d 24 42 lea (%rdx,%rax,2),%r12
310a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
3110: 45 0f b7 75 00 movzwl 0x0(%r13),%r14d
3115: 41 0f b7 3f movzwl (%r15),%edi
3119: 49 83 c5 02 add $0x2,%r13
311d: 49 83 c7 02 add $0x2,%r15
3121: 44 01 f7 add %r14d,%edi
3124: 0f bf ff movswl %di,%edi
3127: e8 84 02 00 00 call 33b0 <pqcrystals_kyber768_ref_barrett_reduce>
312c: 66 41 89 45 fe mov %ax,-0x2(%r13)
3131: 41 0f b7 7f fe movzwl -0x2(%r15),%edi
3136: 44 29 f7 sub %r14d,%edi
3139: 66 41 89 7f fe mov %di,-0x2(%r15)
313e: 0f bf ff movswl %di,%edi
3141: 0f af fb imul %ebx,%edi
3144: e8 47 02 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
3149: 66 41 89 47 fe mov %ax,-0x2(%r15)
314e: 4d 39 ec cmp %r13,%r12
3151: 75 bd jne 3110 <pqcrystals_kyber768_ref_invntt+0x90>
3153: 8b 44 24 10 mov 0x10(%rsp),%eax
3157: 03 44 24 0c add 0xc(%rsp),%eax
315b: 3d ff 00 00 00 cmp $0xff,%eax
3160: 77 1e ja 3180 <pqcrystals_kyber768_ref_invntt+0x100>
3162: 8b 54 24 14 mov 0x14(%rsp),%edx
3166: 48 8d 0d b3 2e 00 00 lea 0x2eb3(%rip),%rcx # 6020 <pqcrystals_kyber768_ref_zetas>
316d: 0f bf 1c 51 movswl (%rcx,%rdx,2),%ebx
3171: e9 5a ff ff ff jmp 30d0 <pqcrystals_kyber768_ref_invntt+0x50>
3176: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
317d: 00 00 00
3180: 83 6c 24 2c 01 subl $0x1,0x2c(%rsp)
3185: 74 1d je 31a4 <pqcrystals_kyber768_ref_invntt+0x124>
3187: 8b 44 24 14 mov 0x14(%rsp),%eax
318b: 48 8d 35 8e 2e 00 00 lea 0x2e8e(%rip),%rsi # 6020 <pqcrystals_kyber768_ref_zetas>
3192: d1 64 24 0c shll $1,0xc(%rsp)
3196: 0f bf 1c 46 movswl (%rsi,%rax,2),%ebx
319a: e9 21 ff ff ff jmp 30c0 <pqcrystals_kyber768_ref_invntt+0x40>
319f: 90 nop
31a0: 89 c8 mov %ecx,%eax
31a2: eb be jmp 3162 <pqcrystals_kyber768_ref_invntt+0xe2>
31a4: 4c 8b 6c 24 18 mov 0x18(%rsp),%r13
31a9: 49 81 c5 00 02 00 00 add $0x200,%r13
31b0: 0f bf 7d 00 movswl 0x0(%rbp),%edi
31b4: 48 83 c5 02 add $0x2,%rbp
31b8: 69 ff a1 05 00 00 imul $0x5a1,%edi,%edi
31be: e8 cd 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
31c3: 66 89 45 fe mov %ax,-0x2(%rbp)
31c7: 49 39 ed cmp %rbp,%r13
31ca: 75 e4 jne 31b0 <pqcrystals_kyber768_ref_invntt+0x130>
31cc: 48 83 c4 38 add $0x38,%rsp
31d0: 5b pop %rbx
31d1: 5d pop %rbp
31d2: 41 5c pop %r12
31d4: 41 5d pop %r13
31d6: 41 5e pop %r14
31d8: 41 5f pop %r15
31da: c3 ret
31db: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
00000000000031e0 <pqcrystals_kyber768_ref_basemul>:
31e0: 41 55 push %r13
31e2: 44 0f bf e9 movswl %cx,%r13d
31e6: 41 54 push %r12
31e8: 49 89 f4 mov %rsi,%r12
31eb: 55 push %rbp
31ec: 48 89 d5 mov %rdx,%rbp
31ef: 53 push %rbx
31f0: 48 89 fb mov %rdi,%rbx
31f3: 48 83 ec 08 sub $0x8,%rsp
31f7: 0f bf 7e 02 movswl 0x2(%rsi),%edi
31fb: 0f bf 42 02 movswl 0x2(%rdx),%eax
31ff: 0f af f8 imul %eax,%edi
3202: e8 89 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
3207: 0f bf f8 movswl %ax,%edi
320a: 66 89 03 mov %ax,(%rbx)
320d: 41 0f af fd imul %r13d,%edi
3211: e8 7a 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
3216: 66 89 03 mov %ax,(%rbx)
3219: 41 0f bf 3c 24 movswl (%r12),%edi
321e: 0f bf 45 00 movswl 0x0(%rbp),%eax
3222: 0f af f8 imul %eax,%edi
3225: e8 66 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
322a: 66 01 03 add %ax,(%rbx)
322d: 41 0f bf 3c 24 movswl (%r12),%edi
3232: 0f bf 45 02 movswl 0x2(%rbp),%eax
3236: 0f af f8 imul %eax,%edi
3239: e8 52 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
323e: 66 89 43 02 mov %ax,0x2(%rbx)
3242: 41 0f bf 7c 24 02 movswl 0x2(%r12),%edi
3248: 0f bf 45 00 movswl 0x0(%rbp),%eax
324c: 0f af f8 imul %eax,%edi
324f: e8 3c 01 00 00 call 3390 <pqcrystals_kyber768_ref_montgomery_reduce>
3254: 66 01 43 02 add %ax,0x2(%rbx)
3258: 48 83 c4 08 add $0x8,%rsp
325c: 5b pop %rbx
325d: 5d pop %rbp
325e: 41 5c pop %r12
3260: 41 5d pop %r13
3262: c3 ret
3263: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
326a: 00 00 00
326d: 0f 1f 00 nopl (%rax)
0000000000003270 <cbd2>:
3270: 48 89 fa mov %rdi,%rdx
3273: 48 8d bf 00 02 00 00 lea 0x200(%rdi),%rdi
327a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
3280: 8b 06 mov (%rsi),%eax
3282: 89 c1 mov %eax,%ecx
3284: d1 e8 shr $1,%eax
3286: 81 e1 55 55 55 55 and $0x55555555,%ecx
328c: 25 55 55 55 55 and $0x55555555,%eax
3291: 01 c8 add %ecx,%eax
3293: 41 89 c0 mov %eax,%r8d
3296: 89 c1 mov %eax,%ecx
3298: 41 c1 e8 02 shr $0x2,%r8d
329c: 83 e1 03 and $0x3,%ecx
329f: 41 83 e0 03 and $0x3,%r8d
32a3: 44 29 c1 sub %r8d,%ecx
32a6: 41 89 c0 mov %eax,%r8d
32a9: 66 89 0a mov %cx,(%rdx)
32ac: 89 c1 mov %eax,%ecx
32ae: 41 c1 e8 06 shr $0x6,%r8d
32b2: c1 e9 04 shr $0x4,%ecx
32b5: 41 83 e0 03 and $0x3,%r8d
32b9: 83 e1 03 and $0x3,%ecx
32bc: 44 29 c1 sub %r8d,%ecx
32bf: 41 89 c0 mov %eax,%r8d
32c2: 66 89 4a 02 mov %cx,0x2(%rdx)
32c6: 89 c1 mov %eax,%ecx
32c8: 41 c1 e8 0a shr $0xa,%r8d
32cc: c1 e9 08 shr $0x8,%ecx
32cf: 41 83 e0 03 and $0x3,%r8d
32d3: 83 e1 03 and $0x3,%ecx
32d6: 44 29 c1 sub %r8d,%ecx
32d9: 41 89 c0 mov %eax,%r8d
32dc: 66 89 4a 04 mov %cx,0x4(%rdx)
32e0: 89 c1 mov %eax,%ecx
32e2: 66 41 c1 e8 0e shr $0xe,%r8w
32e7: c1 e9 0c shr $0xc,%ecx
32ea: 83 e1 03 and $0x3,%ecx
32ed: 44 29 c1 sub %r8d,%ecx
32f0: 41 89 c0 mov %eax,%r8d
32f3: 66 89 4a 06 mov %cx,0x6(%rdx)
32f7: 89 c1 mov %eax,%ecx
32f9: 41 c1 e8 12 shr $0x12,%r8d
32fd: c1 e9 10 shr $0x10,%ecx
3300: 41 83 e0 03 and $0x3,%r8d
3304: 83 e1 03 and $0x3,%ecx
3307: 44 29 c1 sub %r8d,%ecx
330a: 41 89 c0 mov %eax,%r8d
330d: 66 89 4a 08 mov %cx,0x8(%rdx)
3311: 89 c1 mov %eax,%ecx
3313: 41 c1 e8 16 shr $0x16,%r8d
3317: c1 e9 14 shr $0x14,%ecx
331a: 41 83 e0 03 and $0x3,%r8d
331e: 83 e1 03 and $0x3,%ecx
3321: 44 29 c1 sub %r8d,%ecx
3324: 41 89 c0 mov %eax,%r8d
3327: 66 89 4a 0a mov %cx,0xa(%rdx)
332b: 89 c1 mov %eax,%ecx
332d: c1 e9 18 shr $0x18,%ecx
3330: 41 c1 e8 1a shr $0x1a,%r8d
3334: 48 83 c2 10 add $0x10,%rdx
3338: 48 83 c6 04 add $0x4,%rsi
333c: 83 e1 03 and $0x3,%ecx
333f: 41 83 e0 03 and $0x3,%r8d
3343: 44 29 c1 sub %r8d,%ecx
3346: 66 89 4a fc mov %cx,-0x4(%rdx)
334a: 89 c1 mov %eax,%ecx
334c: c1 e8 1e shr $0x1e,%eax
334f: c1 e9 1c shr $0x1c,%ecx
3352: 83 e1 03 and $0x3,%ecx
3355: 29 c1 sub %eax,%ecx
3357: 66 89 4a fe mov %cx,-0x2(%rdx)
335b: 48 39 fa cmp %rdi,%rdx
335e: 0f 85 1c ff ff ff jne 3280 <cbd2+0x10>
3364: c3 ret
3365: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
336c: 00 00 00 00
0000000000003370 <pqcrystals_kyber768_ref_poly_cbd_eta1>:
3370: e9 fb fe ff ff jmp 3270 <cbd2>
3375: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
337c: 00 00 00 00
0000000000003380 <pqcrystals_kyber768_ref_poly_cbd_eta2>:
3380: e9 eb fe ff ff jmp 3270 <cbd2>
3385: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
338c: 00 00 00
338f: 90 nop
0000000000003390 <pqcrystals_kyber768_ref_montgomery_reduce>:
3390: 66 69 c7 01 f3 imul $0xf301,%di,%ax
3395: 98 cwtl
3396: 69 c0 ff f2 ff ff imul $0xfffff2ff,%eax,%eax
339c: 01 f8 add %edi,%eax
339e: c1 e8 10 shr $0x10,%eax
33a1: c3 ret
33a2: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
33a9: 00 00 00 00
33ad: 0f 1f 00 nopl (%rax)
00000000000033b0 <pqcrystals_kyber768_ref_barrett_reduce>:
33b0: 0f bf d7 movswl %di,%edx
33b3: 89 f8 mov %edi,%eax
33b5: 69 d2 bf 4e 00 00 imul $0x4ebf,%edx,%edx
33bb: 81 c2 00 00 00 02 add $0x2000000,%edx
33c1: c1 fa 1a sar $0x1a,%edx
33c4: 66 69 d2 01 0d imul $0xd01,%dx,%dx
33c9: 29 d0 sub %edx,%eax
33cb: c3 ret
33cc: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
33d3: 00 00 00
33d6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
33dd: 00 00 00
00000000000033e0 <pqcrystals_kyber768_ref_verify>:
33e0: 49 89 f0 mov %rsi,%r8
33e3: 48 89 d6 mov %rdx,%rsi
33e6: 48 85 d2 test %rdx,%rdx
33e9: 74 35 je 3420 <pqcrystals_kyber768_ref_verify+0x40>
33eb: 31 c9 xor %ecx,%ecx
33ed: 31 c0 xor %eax,%eax
33ef: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
33f6: 00 00 00 00
33fa: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
3400: 0f b6 14 07 movzbl (%rdi,%rax,1),%edx
3404: 41 32 14 00 xor (%r8,%rax,1),%dl
3408: 48 83 c0 01 add $0x1,%rax
340c: 09 d1 or %edx,%ecx
340e: 48 39 c6 cmp %rax,%rsi
3411: 75 ed jne 3400 <pqcrystals_kyber768_ref_verify+0x20>
3413: 0f b6 c1 movzbl %cl,%eax
3416: 48 f7 d8 neg %rax
3419: 48 c1 e8 3f shr $0x3f,%rax
341d: c3 ret
341e: 66 90 xchg %ax,%ax
3420: 31 c0 xor %eax,%eax
3422: c3 ret
3423: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
342a: 00 00 00 00
342e: 66 90 xchg %ax,%ax
0000000000003430 <pqcrystals_kyber768_ref_cmov>:
3430: 49 89 f1 mov %rsi,%r9
3433: 49 89 d0 mov %rdx,%r8
3436: 48 85 d2 test %rdx,%rdx
3439: 74 20 je 345b <pqcrystals_kyber768_ref_cmov+0x2b>
343b: f7 d9 neg %ecx
343d: 31 c0 xor %eax,%eax
343f: 90 nop
3440: 0f b6 34 07 movzbl (%rdi,%rax,1),%esi
3444: 41 0f b6 14 01 movzbl (%r9,%rax,1),%edx
3449: 31 f2 xor %esi,%edx
344b: 21 ca and %ecx,%edx
344d: 31 f2 xor %esi,%edx
344f: 88 14 07 mov %dl,(%rdi,%rax,1)
3452: 48 83 c0 01 add $0x1,%rax
3456: 49 39 c0 cmp %rax,%r8
3459: 75 e5 jne 3440 <pqcrystals_kyber768_ref_cmov+0x10>
345b: c3 ret
345c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000003460 <pqcrystals_kyber768_ref_cmov_int16>:
3460: 66 33 37 xor (%rdi),%si
3463: f7 da neg %edx
3465: 21 d6 and %edx,%esi
3467: 66 33 37 xor (%rdi),%si
346a: 66 89 37 mov %si,(%rdi)
346d: c3 ret
346e: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3475: 00 00 00
3478: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
347f: 00
0000000000003480 <KeccakF1600_StatePermute>:
3480: 41 57 push %r15
3482: 41 b9 01 00 00 00 mov $0x1,%r9d
3488: 41 56 push %r14
348a: 41 55 push %r13
348c: 41 54 push %r12
348e: 55 push %rbp
348f: 53 push %rbx
3490: 48 83 ec 68 sub $0x68,%rsp
3494: 48 8b 07 mov (%rdi),%rax
3497: 4c 8b 77 18 mov 0x18(%rdi),%r14
349b: 48 89 44 24 88 mov %rax,-0x78(%rsp)
34a0: 48 8b 47 08 mov 0x8(%rdi),%rax
34a4: 48 89 44 24 90 mov %rax,-0x70(%rsp)
34a9: 48 8b 47 10 mov 0x10(%rdi),%rax
34ad: 48 89 44 24 98 mov %rax,-0x68(%rsp)
34b2: 48 8b 47 20 mov 0x20(%rdi),%rax
34b6: 48 89 44 24 a0 mov %rax,-0x60(%rsp)
34bb: 48 8b 47 28 mov 0x28(%rdi),%rax
34bf: 48 89 44 24 a8 mov %rax,-0x58(%rsp)
34c4: 48 8b 47 30 mov 0x30(%rdi),%rax
34c8: 48 89 44 24 b0 mov %rax,-0x50(%rsp)
34cd: 48 8b 47 38 mov 0x38(%rdi),%rax
34d1: 48 89 44 24 b8 mov %rax,-0x48(%rsp)
34d6: 48 8b 47 40 mov 0x40(%rdi),%rax
34da: 48 89 44 24 c0 mov %rax,-0x40(%rsp)
34df: 48 8b 47 48 mov 0x48(%rdi),%rax
34e3: 48 89 44 24 c8 mov %rax,-0x38(%rsp)
34e8: 48 8b 47 50 mov 0x50(%rdi),%rax
34ec: 4c 8b 67 60 mov 0x60(%rdi),%r12
34f0: 4c 8b af 80 00 00 00 mov 0x80(%rdi),%r13
34f7: 4c 89 74 24 18 mov %r14,0x18(%rsp)
34fc: 48 89 44 24 d0 mov %rax,-0x30(%rsp)
3501: 48 8b 47 58 mov 0x58(%rdi),%rax
3505: 48 c7 44 24 50 82 80 movq $0x8082,0x50(%rsp)
350c: 00 00
350e: 4c 8b 9f 90 00 00 00 mov 0x90(%rdi),%r11
3515: 48 89 44 24 d8 mov %rax,-0x28(%rsp)
351a: 48 8b 47 68 mov 0x68(%rdi),%rax
351e: 48 89 7c 24 60 mov %rdi,0x60(%rsp)
3523: 4c 8b bf a0 00 00 00 mov 0xa0(%rdi),%r15
352a: 48 89 44 24 e0 mov %rax,-0x20(%rsp)
352f: 48 8b 47 70 mov 0x70(%rdi),%rax
3533: 4c 8b 87 b0 00 00 00 mov 0xb0(%rdi),%r8
353a: 48 8b 9f c0 00 00 00 mov 0xc0(%rdi),%rbx
3541: 48 89 44 24 e8 mov %rax,-0x18(%rsp)
3546: 48 8b 47 78 mov 0x78(%rdi),%rax
354a: 48 89 44 24 f0 mov %rax,-0x10(%rsp)
354f: 48 8b 87 88 00 00 00 mov 0x88(%rdi),%rax
3556: 48 89 44 24 f8 mov %rax,-0x8(%rsp)
355b: 48 8b 87 98 00 00 00 mov 0x98(%rdi),%rax
3562: 48 89 04 24 mov %rax,(%rsp)
3566: 48 8b 87 a8 00 00 00 mov 0xa8(%rdi),%rax
356d: 48 89 44 24 08 mov %rax,0x8(%rsp)
3572: 48 8b 87 b8 00 00 00 mov 0xb8(%rdi),%rax
3579: 48 89 44 24 10 mov %rax,0x10(%rsp)
357e: 48 8d 05 ab 2b 00 00 lea 0x2bab(%rip),%rax # 6130 <KeccakF_RoundConstants+0x10>
3585: 48 89 44 24 58 mov %rax,0x58(%rsp)
358a: eb 19 jmp 35a5 <KeccakF1600_StatePermute+0x125>
358c: 0f 1f 40 00 nopl 0x0(%rax)
3590: 48 8b 48 08 mov 0x8(%rax),%rcx
3594: 4c 8b 08 mov (%rax),%r9
3597: 48 83 c0 10 add $0x10,%rax
359b: 48 89 44 24 58 mov %rax,0x58(%rsp)
35a0: 48 89 4c 24 50 mov %rcx,0x50(%rsp)
35a5: 48 8b 6c 24 d8 mov -0x28(%rsp),%rbp
35aa: 4c 8b 74 24 90 mov -0x70(%rsp),%r14
35af: 48 8b 44 24 98 mov -0x68(%rsp),%rax
35b4: 4c 33 74 24 b0 xor -0x50(%rsp),%r14
35b9: 48 33 44 24 b8 xor -0x48(%rsp),%rax
35be: 49 31 ee xor %rbp,%r14
35c1: 48 8b 6c 24 c0 mov -0x40(%rsp),%rbp
35c6: 49 89 c2 mov %rax,%r10
35c9: 48 8b 44 24 18 mov 0x18(%rsp),%rax
35ce: 4d 31 ee xor %r13,%r14
35d1: 4c 33 74 24 08 xor 0x8(%rsp),%r14
35d6: 4d 31 e2 xor %r12,%r10
35d9: 4c 33 54 24 f8 xor -0x8(%rsp),%r10
35de: 48 8b 74 24 88 mov -0x78(%rsp),%rsi
35e3: 48 31 e8 xor %rbp,%rax
35e6: 48 8b 6c 24 e0 mov -0x20(%rsp),%rbp
35eb: 4d 31 c2 xor %r8,%r10
35ee: 48 33 74 24 a8 xor -0x58(%rsp),%rsi
35f3: 48 89 c1 mov %rax,%rcx
35f6: 48 8b 44 24 a0 mov -0x60(%rsp),%rax
35fb: 48 33 44 24 c8 xor -0x38(%rsp),%rax
3600: 4c 89 d7 mov %r10,%rdi
3603: 48 31 e9 xor %rbp,%rcx
3606: 48 8b 2c 24 mov (%rsp),%rbp
360a: 48 33 44 24 e8 xor -0x18(%rsp),%rax
360f: 48 d1 c7 rol $1,%rdi
3612: 48 33 74 24 d0 xor -0x30(%rsp),%rsi
3617: 48 33 74 24 f0 xor -0x10(%rsp),%rsi
361c: 4c 31 d9 xor %r11,%rcx
361f: 48 31 e8 xor %rbp,%rax
3622: 4c 89 f5 mov %r14,%rbp
3625: 4c 31 fe xor %r15,%rsi
3628: 48 33 4c 24 10 xor 0x10(%rsp),%rcx
362d: 48 31 d8 xor %rbx,%rax
3630: 48 d1 c5 rol $1,%rbp
3633: 48 31 f7 xor %rsi,%rdi
3636: 48 89 ca mov %rcx,%rdx
3639: 48 d1 c6 rol $1,%rsi
363c: 48 31 c5 xor %rax,%rbp
363f: 48 d1 c0 rol $1,%rax
3642: 4c 31 d0 xor %r10,%rax
3645: 4c 8b 54 24 b0 mov -0x50(%rsp),%r10
364a: 48 31 ce xor %rcx,%rsi
364d: 48 8b 4c 24 88 mov -0x78(%rsp),%rcx
3652: 48 d1 c2 rol $1,%rdx
3655: 49 31 fa xor %rdi,%r10
3658: 4c 31 f2 xor %r14,%rdx
365b: 48 31 e9 xor %rbp,%rcx
365e: 49 c1 ca 14 ror $0x14,%r10
3662: 49 31 d4 xor %rdx,%r12
3665: 49 31 c3 xor %rax,%r11
3668: 48 31 f3 xor %rsi,%rbx
366b: 4d 89 d6 mov %r10,%r14
366e: 49 c1 cc 15 ror $0x15,%r12
3672: 49 31 fd xor %rdi,%r13
3675: 49 31 d0 xor %rdx,%r8
3678: 49 c1 c3 15 rol $0x15,%r11
367c: 49 f7 d6 not %r14
367f: 48 c1 c3 0e rol $0xe,%rbx
3683: 49 c1 cd 13 ror $0x13,%r13
3687: 4d 21 e6 and %r12,%r14
368a: 49 c1 c8 03 ror $0x3,%r8
368e: 49 31 ce xor %rcx,%r14
3691: 4d 31 ce xor %r9,%r14
3694: 4d 89 e1 mov %r12,%r9
3697: 49 f7 d1 not %r9
369a: 4d 21 d9 and %r11,%r9
369d: 4d 31 d1 xor %r10,%r9
36a0: 4c 89 4c 24 20 mov %r9,0x20(%rsp)
36a5: 4d 89 d9 mov %r11,%r9
36a8: 49 f7 d1 not %r9
36ab: 49 21 d9 and %rbx,%r9
36ae: 4d 31 e1 xor %r12,%r9
36b1: 49 89 dc mov %rbx,%r12
36b4: 49 f7 d4 not %r12
36b7: 4c 89 4c 24 28 mov %r9,0x28(%rsp)
36bc: 4d 89 e1 mov %r12,%r9
36bf: 49 21 c9 and %rcx,%r9
36c2: 48 f7 d1 not %rcx
36c5: 4d 89 cc mov %r9,%r12
36c8: 4c 21 d1 and %r10,%rcx
36cb: 4c 8b 54 24 d0 mov -0x30(%rsp),%r10
36d0: 4d 31 dc xor %r11,%r12
36d3: 4c 8b 5c 24 c8 mov -0x38(%rsp),%r11
36d8: 48 31 d9 xor %rbx,%rcx
36db: 48 89 4c 24 30 mov %rcx,0x30(%rsp)
36e0: 48 8b 4c 24 18 mov 0x18(%rsp),%rcx
36e5: 49 31 ea xor %rbp,%r10
36e8: 49 31 f3 xor %rsi,%r11
36eb: 49 c1 c2 03 rol $0x3,%r10
36ef: 4c 89 64 24 b0 mov %r12,-0x50(%rsp)
36f4: 4d 89 d9 mov %r11,%r9
36f7: 48 31 c1 xor %rax,%rcx
36fa: 49 c1 c1 14 rol $0x14,%r9
36fe: 48 c1 c1 1c rol $0x1c,%rcx
3702: 4d 89 cb mov %r9,%r11
3705: 49 f7 d3 not %r11
3708: 4d 21 d3 and %r10,%r11
370b: 49 31 cb xor %rcx,%r11
370e: 4c 89 5c 24 38 mov %r11,0x38(%rsp)
3713: 4d 89 d3 mov %r10,%r11
3716: 49 f7 d3 not %r11
3719: 4d 21 eb and %r13,%r11
371c: 4d 31 cb xor %r9,%r11
371f: 4c 89 5c 24 18 mov %r11,0x18(%rsp)
3724: 4d 89 eb mov %r13,%r11
3727: 49 f7 d3 not %r11
372a: 4d 21 c3 and %r8,%r11
372d: 49 31 ef xor %rbp,%r15
3730: 4d 31 d3 xor %r10,%r11
3733: 4d 89 c2 mov %r8,%r10
3736: 49 c1 c7 12 rol $0x12,%r15
373a: 49 f7 d2 not %r10
373d: 4c 89 5c 24 d0 mov %r11,-0x30(%rsp)
3742: 49 21 ca and %rcx,%r10
3745: 48 f7 d1 not %rcx
3748: 4c 21 c9 and %r9,%rcx
374b: 4d 31 ea xor %r13,%r10
374e: 4c 31 c1 xor %r8,%rcx
3751: 4c 89 54 24 40 mov %r10,0x40(%rsp)
3756: 48 89 4c 24 c8 mov %rcx,-0x38(%rsp)
375b: 4c 8b 44 24 b8 mov -0x48(%rsp),%r8
3760: 4c 8b 2c 24 mov (%rsp),%r13
3764: 4c 8b 54 24 e0 mov -0x20(%rsp),%r10
3769: 4c 89 74 24 88 mov %r14,-0x78(%rsp)
376e: 49 31 d0 xor %rdx,%r8
3771: 48 8b 5c 24 90 mov -0x70(%rsp),%rbx
3776: 49 c1 c0 06 rol $0x6,%r8
377a: 49 31 f5 xor %rsi,%r13
377d: 49 31 c2 xor %rax,%r10
3780: 4d 89 e9 mov %r13,%r9
3783: 4d 89 c5 mov %r8,%r13
3786: 49 c1 c2 19 rol $0x19,%r10
378a: 48 31 fb xor %rdi,%rbx
378d: 49 f7 d5 not %r13
3790: 48 89 d9 mov %rbx,%rcx
3793: 4c 89 d3 mov %r10,%rbx
3796: 49 c1 c1 08 rol $0x8,%r9
379a: 4d 89 eb mov %r13,%r11
379d: 48 d1 c1 rol $1,%rcx
37a0: 48 f7 d3 not %rbx
37a3: 4d 21 d3 and %r10,%r11
37a6: 4d 89 dd mov %r11,%r13
37a9: 49 89 db mov %rbx,%r11
37ac: 49 31 cd xor %rcx,%r13
37af: 4d 21 cb and %r9,%r11
37b2: 4c 89 6c 24 b8 mov %r13,-0x48(%rsp)
37b7: 4d 89 cd mov %r9,%r13
37ba: 4c 89 db mov %r11,%rbx
37bd: 49 f7 d5 not %r13
37c0: 4c 31 c3 xor %r8,%rbx
37c3: 4d 89 eb mov %r13,%r11
37c6: 48 89 1c 24 mov %rbx,(%rsp)
37ca: 48 8b 5c 24 a0 mov -0x60(%rsp),%rbx
37cf: 4d 21 fb and %r15,%r11
37d2: 4d 31 d3 xor %r10,%r11
37d5: 4d 89 fa mov %r15,%r10
37d8: 48 31 f3 xor %rsi,%rbx
37db: 49 f7 d2 not %r10
37de: 49 21 ca and %rcx,%r10
37e1: 48 f7 d1 not %rcx
37e4: 4c 21 c1 and %r8,%rcx
37e7: 4d 31 ca xor %r9,%r10
37ea: 49 89 c8 mov %rcx,%r8
37ed: 4c 89 54 24 e0 mov %r10,-0x20(%rsp)
37f2: 4c 8b 54 24 d8 mov -0x28(%rsp),%r10
37f7: 48 89 d9 mov %rbx,%rcx
37fa: 4d 31 f8 xor %r15,%r8
37fd: 4c 8b 7c 24 a8 mov -0x58(%rsp),%r15
3802: 48 c1 c1 1b rol $0x1b,%rcx
3806: 49 31 fa xor %rdi,%r10
3809: 4c 89 44 24 48 mov %r8,0x48(%rsp)
380e: 49 31 ef xor %rbp,%r15
3811: 49 c1 c2 0a rol $0xa,%r10
3815: 4c 89 fb mov %r15,%rbx
3818: 4c 8b 7c 24 f8 mov -0x8(%rsp),%r15
381d: 48 c1 cb 1c ror $0x1c,%rbx
3821: 49 31 d7 xor %rdx,%r15
3824: 48 33 74 24 e8 xor -0x18(%rsp),%rsi
3829: 48 33 7c 24 08 xor 0x8(%rsp),%rdi
382e: 48 c1 ce 19 ror $0x19,%rsi
3832: 4d 89 fc mov %r15,%r12
3835: 4c 8b 7c 24 10 mov 0x10(%rsp),%r15
383a: 48 c1 c7 02 rol $0x2,%rdi
383e: 49 c1 c4 0f rol $0xf,%r12
3842: 48 33 6c 24 f0 xor -0x10(%rsp),%rbp
3847: 48 33 54 24 98 xor -0x68(%rsp),%rdx
384c: 48 c1 cd 17 ror $0x17,%rbp
3850: 49 31 c7 xor %rax,%r15
3853: 4d 89 e5 mov %r12,%r13
3856: 48 33 44 24 c0 xor -0x40(%rsp),%rax
385b: 48 c1 c8 09 ror $0x9,%rax
385f: 4d 89 f8 mov %r15,%r8
3862: 49 89 df mov %rbx,%r15
3865: 49 f7 d5 not %r13
3868: 49 c1 c8 08 ror $0x8,%r8
386c: 49 f7 d7 not %r15
386f: 48 c1 ca 02 ror $0x2,%rdx
3873: 4d 89 f9 mov %r15,%r9
3876: 4d 21 c5 and %r8,%r13
3879: 4d 21 d1 and %r10,%r9
387c: 4d 31 d5 xor %r10,%r13
387f: 4d 89 cf mov %r9,%r15
3882: 4d 89 d1 mov %r10,%r9
3885: 4d 89 c2 mov %r8,%r10
3888: 4c 89 6c 24 f8 mov %r13,-0x8(%rsp)
388d: 49 f7 d1 not %r9
3890: 49 f7 d2 not %r10
3893: 49 31 cf xor %rcx,%r15
3896: 4c 8b 6c 24 28 mov 0x28(%rsp),%r13
389b: 4d 21 e1 and %r12,%r9
389e: 49 21 ca and %rcx,%r10
38a1: 48 f7 d1 not %rcx
38a4: 4c 89 7c 24 08 mov %r15,0x8(%rsp)
38a9: 49 31 d9 xor %rbx,%r9
38ac: 48 21 d9 and %rbx,%rcx
38af: 48 89 f3 mov %rsi,%rbx
38b2: 4d 31 e2 xor %r12,%r10
38b5: 4c 31 c1 xor %r8,%rcx
38b8: 49 89 f8 mov %rdi,%r8
38bb: 48 89 df mov %rbx,%rdi
38be: 48 89 c6 mov %rax,%rsi
38c1: 48 f7 d7 not %rdi
38c4: 48 f7 d6 not %rsi
38c7: 48 21 ef and %rbp,%rdi
38ca: 48 21 de and %rbx,%rsi
38cd: 48 31 c7 xor %rax,%rdi
38d0: 48 31 d6 xor %rdx,%rsi
38d3: 49 89 fc mov %rdi,%r12
38d6: 48 89 ef mov %rbp,%rdi
38d9: 48 89 74 24 d8 mov %rsi,-0x28(%rsp)
38de: 48 f7 d7 not %rdi
38e1: 4c 89 64 24 10 mov %r12,0x10(%rsp)
38e6: 4c 21 c7 and %r8,%rdi
38e9: 48 31 df xor %rbx,%rdi
38ec: 4c 89 c3 mov %r8,%rbx
38ef: 48 f7 d3 not %rbx
38f2: 48 21 d3 and %rdx,%rbx
38f5: 48 f7 d2 not %rdx
38f8: 48 31 eb xor %rbp,%rbx
38fb: 48 21 c2 and %rax,%rdx
38fe: 48 8b 6c 24 38 mov 0x38(%rsp),%rbp
3903: 4c 33 6c 24 d0 xor -0x30(%rsp),%r13
3908: 4c 31 c2 xor %r8,%rdx
390b: 4d 89 f0 mov %r14,%r8
390e: 4d 31 dd xor %r11,%r13
3911: 48 89 5c 24 f0 mov %rbx,-0x10(%rsp)
3916: 49 31 e8 xor %rbp,%r8
3919: 4c 33 44 24 b8 xor -0x48(%rsp),%r8
391e: 4c 33 6c 24 f8 xor -0x8(%rsp),%r13
3923: 4d 31 f8 xor %r15,%r8
3926: 4c 8b 7c 24 20 mov 0x20(%rsp),%r15
392b: 49 31 fd xor %rdi,%r13
392e: 49 31 f0 xor %rsi,%r8
3931: 48 8b 74 24 18 mov 0x18(%rsp),%rsi
3936: 49 31 f7 xor %rsi,%r15
3939: 4c 33 3c 24 xor (%rsp),%r15
393d: 4d 31 cf xor %r9,%r15
3940: 4d 31 e7 xor %r12,%r15
3943: 4c 8b 64 24 b0 mov -0x50(%rsp),%r12
3948: 48 8b 6c 24 40 mov 0x40(%rsp),%rbp
394d: 48 8b 44 24 c8 mov -0x38(%rsp),%rax
3952: 4d 89 fe mov %r15,%r14
3955: 49 31 ec xor %rbp,%r12
3958: 48 8b 6c 24 f0 mov -0x10(%rsp),%rbp
395d: 4c 33 64 24 e0 xor -0x20(%rsp),%r12
3962: 49 d1 c6 rol $1,%r14
3965: 4d 31 d4 xor %r10,%r12
3968: 49 31 ec xor %rbp,%r12
396b: 48 8b 6c 24 48 mov 0x48(%rsp),%rbp
3970: 4c 89 e3 mov %r12,%rbx
3973: 48 31 e8 xor %rbp,%rax
3976: 48 33 44 24 30 xor 0x30(%rsp),%rax
397b: 4c 89 ed mov %r13,%rbp
397e: 48 d1 c3 rol $1,%rbx
3981: 48 31 c8 xor %rcx,%rax
3984: 48 d1 c5 rol $1,%rbp
3987: 4c 31 fb xor %r15,%rbx
398a: 49 89 f7 mov %rsi,%r15
398d: 48 31 d0 xor %rdx,%rax
3990: 4c 31 c5 xor %r8,%rbp
3993: 49 d1 c0 rol $1,%r8
3996: 48 8b 74 24 50 mov 0x50(%rsp),%rsi
399b: 49 31 c6 xor %rax,%r14
399e: 48 d1 c0 rol $1,%rax
39a1: 4d 31 e0 xor %r12,%r8
39a4: 4c 31 e8 xor %r13,%rax
39a7: 4c 8b 6c 24 88 mov -0x78(%rsp),%r13
39ac: 4d 31 f5 xor %r14,%r13
39af: 49 31 ef xor %rbp,%r15
39b2: 49 31 db xor %rbx,%r11
39b5: 49 31 c2 xor %rax,%r10
39b8: 4d 89 fc mov %r15,%r12
39bb: 49 c1 cb 15 ror $0x15,%r11
39bf: 4c 31 c2 xor %r8,%rdx
39c2: 49 31 e9 xor %rbp,%r9
39c5: 49 c1 cc 14 ror $0x14,%r12
39c9: 49 c1 c2 15 rol $0x15,%r10
39cd: 48 31 df xor %rbx,%rdi
39d0: 48 c1 c2 0e rol $0xe,%rdx
39d4: 4d 89 e7 mov %r12,%r15
39d7: 49 c1 c9 13 ror $0x13,%r9
39db: 49 f7 d7 not %r15
39de: 48 c1 cf 03 ror $0x3,%rdi
39e2: 4d 21 df and %r11,%r15
39e5: 4d 31 ef xor %r13,%r15
39e8: 4c 31 fe xor %r15,%rsi
39eb: 48 89 74 24 88 mov %rsi,-0x78(%rsp)
39f0: 4c 89 de mov %r11,%rsi
39f3: 48 f7 d6 not %rsi
39f6: 49 89 f7 mov %rsi,%r15
39f9: 4d 21 d7 and %r10,%r15
39fc: 4c 89 fe mov %r15,%rsi
39ff: 4c 31 e6 xor %r12,%rsi
3a02: 48 89 74 24 90 mov %rsi,-0x70(%rsp)
3a07: 4c 89 d6 mov %r10,%rsi
3a0a: 48 f7 d6 not %rsi
3a0d: 49 89 f7 mov %rsi,%r15
3a10: 49 21 d7 and %rdx,%r15
3a13: 4c 89 fe mov %r15,%rsi
3a16: 4c 31 de xor %r11,%rsi
3a19: 49 89 d3 mov %rdx,%r11
3a1c: 49 f7 d3 not %r11
3a1f: 48 89 74 24 98 mov %rsi,-0x68(%rsp)
3a24: 48 8b 74 24 d8 mov -0x28(%rsp),%rsi
3a29: 4d 21 eb and %r13,%r11
3a2c: 49 f7 d5 not %r13
3a2f: 4d 31 d3 xor %r10,%r11
3a32: 4d 21 e5 and %r12,%r13
3a35: 4c 8b 54 24 c8 mov -0x38(%rsp),%r10
3a3a: 4c 8b 64 24 b0 mov -0x50(%rsp),%r12
3a3f: 4c 89 5c 24 18 mov %r11,0x18(%rsp)
3a44: 4d 89 eb mov %r13,%r11
3a47: 49 31 d3 xor %rdx,%r11
3a4a: 4d 31 c2 xor %r8,%r10
3a4d: 49 31 c4 xor %rax,%r12
3a50: 4c 89 5c 24 a0 mov %r11,-0x60(%rsp)
3a55: 4c 8b 5c 24 b8 mov -0x48(%rsp),%r11
3a5a: 49 c1 c2 14 rol $0x14,%r10
3a5e: 4c 89 e2 mov %r12,%rdx
3a61: 4d 89 d4 mov %r10,%r12
3a64: 48 c1 c2 1c rol $0x1c,%rdx
3a68: 4d 31 f3 xor %r14,%r11
3a6b: 49 f7 d4 not %r12
3a6e: 49 c1 c3 03 rol $0x3,%r11
3a72: 4d 21 dc and %r11,%r12
3a75: 49 31 d4 xor %rdx,%r12
3a78: 4c 89 64 24 a8 mov %r12,-0x58(%rsp)
3a7d: 4d 89 dc mov %r11,%r12
3a80: 49 f7 d4 not %r12
3a83: 4d 21 cc and %r9,%r12
3a86: 4c 31 c1 xor %r8,%rcx
3a89: 4c 31 f6 xor %r14,%rsi
3a8c: 48 c1 c1 08 rol $0x8,%rcx
3a90: 4d 31 d4 xor %r10,%r12
3a93: 48 c1 c6 12 rol $0x12,%rsi
3a97: 4c 89 64 24 b0 mov %r12,-0x50(%rsp)
3a9c: 4d 89 cc mov %r9,%r12
3a9f: 49 f7 d4 not %r12
3aa2: 49 21 fc and %rdi,%r12
3aa5: 4d 31 dc xor %r11,%r12
3aa8: 49 89 fb mov %rdi,%r11
3aab: 49 f7 d3 not %r11
3aae: 4c 89 64 24 b8 mov %r12,-0x48(%rsp)
3ab3: 49 21 d3 and %rdx,%r11
3ab6: 48 f7 d2 not %rdx
3ab9: 4d 31 cb xor %r9,%r11
3abc: 4c 21 d2 and %r10,%rdx
3abf: 4c 8b 4c 24 e0 mov -0x20(%rsp),%r9
3ac4: 4c 89 5c 24 c0 mov %r11,-0x40(%rsp)
3ac9: 49 89 d3 mov %rdx,%r11
3acc: 48 8b 54 24 20 mov 0x20(%rsp),%rdx
3ad1: 49 31 fb xor %rdi,%r11
3ad4: 48 8b 7c 24 d0 mov -0x30(%rsp),%rdi
3ad9: 49 31 c1 xor %rax,%r9
3adc: 4c 89 5c 24 c8 mov %r11,-0x38(%rsp)
3ae1: 49 c1 c1 19 rol $0x19,%r9
3ae5: 48 31 ea xor %rbp,%rdx
3ae8: 48 31 df xor %rbx,%rdi
3aeb: 48 d1 c2 rol $1,%rdx
3aee: 48 c1 c7 06 rol $0x6,%rdi
3af2: 49 89 fb mov %rdi,%r11
3af5: 49 f7 d3 not %r11
3af8: 4d 89 da mov %r11,%r10
3afb: 4d 21 ca and %r9,%r10
3afe: 4d 89 d3 mov %r10,%r11
3b01: 49 31 d3 xor %rdx,%r11
3b04: 4c 89 5c 24 d0 mov %r11,-0x30(%rsp)
3b09: 4d 89 cb mov %r9,%r11
3b0c: 49 f7 d3 not %r11
3b0f: 4d 89 da mov %r11,%r10
3b12: 49 21 ca and %rcx,%r10
3b15: 4d 89 d3 mov %r10,%r11
3b18: 49 31 fb xor %rdi,%r11
3b1b: 4c 89 5c 24 d8 mov %r11,-0x28(%rsp)
3b20: 49 89 cb mov %rcx,%r11
3b23: 49 f7 d3 not %r11
3b26: 4d 89 dc mov %r11,%r12
3b29: 49 21 f4 and %rsi,%r12
3b2c: 4d 31 cc xor %r9,%r12
3b2f: 49 89 f1 mov %rsi,%r9
3b32: 49 f7 d1 not %r9
3b35: 49 21 d1 and %rdx,%r9
3b38: 48 f7 d2 not %rdx
3b3b: 48 21 fa and %rdi,%rdx
3b3e: 48 8b 7c 24 30 mov 0x30(%rsp),%rdi
3b43: 49 31 c9 xor %rcx,%r9
3b46: 48 31 f2 xor %rsi,%rdx
3b49: 48 8b 74 24 38 mov 0x38(%rsp),%rsi
3b4e: 4c 89 4c 24 e0 mov %r9,-0x20(%rsp)
3b53: 4c 31 c7 xor %r8,%rdi
3b56: 48 89 54 24 e8 mov %rdx,-0x18(%rsp)
3b5b: 4c 31 f6 xor %r14,%rsi
3b5e: 48 89 fa mov %rdi,%rdx
3b61: 48 8b 3c 24 mov (%rsp),%rdi
3b65: 4c 8b 4c 24 f8 mov -0x8(%rsp),%r9
3b6a: 48 c1 ce 1c ror $0x1c,%rsi
3b6e: 48 c1 c2 1b rol $0x1b,%rdx
3b72: 48 8b 4c 24 f0 mov -0x10(%rsp),%rcx
3b77: 49 89 f3 mov %rsi,%r11
3b7a: 48 31 ef xor %rbp,%rdi
3b7d: 49 31 d9 xor %rbx,%r9
3b80: 48 c1 c7 0a rol $0xa,%rdi
3b84: 49 f7 d3 not %r11
3b87: 49 c1 c1 0f rol $0xf,%r9
3b8b: 48 31 c1 xor %rax,%rcx
3b8e: 4d 89 da mov %r11,%r10
3b91: 48 c1 c9 08 ror $0x8,%rcx
3b95: 48 33 44 24 40 xor 0x40(%rsp),%rax
3b9a: 49 21 fa and %rdi,%r10
3b9d: 48 c1 c8 09 ror $0x9,%rax
3ba1: 4d 89 d3 mov %r10,%r11
3ba4: 49 89 c7 mov %rax,%r15
3ba7: 49 31 d3 xor %rdx,%r11
3baa: 49 f7 d7 not %r15
3bad: 4c 89 5c 24 f0 mov %r11,-0x10(%rsp)
3bb2: 49 89 fb mov %rdi,%r11
3bb5: 49 f7 d3 not %r11
3bb8: 4d 89 dd mov %r11,%r13
3bbb: 4d 89 cb mov %r9,%r11
3bbe: 49 f7 d3 not %r11
3bc1: 4d 21 cd and %r9,%r13
3bc4: 4d 89 da mov %r11,%r10
3bc7: 49 31 f5 xor %rsi,%r13
3bca: 49 21 ca and %rcx,%r10
3bcd: 4d 89 d3 mov %r10,%r11
3bd0: 49 31 fb xor %rdi,%r11
3bd3: 4c 89 5c 24 f8 mov %r11,-0x8(%rsp)
3bd8: 49 89 cb mov %rcx,%r11
3bdb: 49 f7 d3 not %r11
3bde: 49 21 d3 and %rdx,%r11
3be1: 48 f7 d2 not %rdx
3be4: 48 21 f2 and %rsi,%rdx
3be7: 48 8b 74 24 48 mov 0x48(%rsp),%rsi
3bec: 4d 31 cb xor %r9,%r11
3bef: 48 89 d7 mov %rdx,%rdi
3bf2: 48 8b 54 24 28 mov 0x28(%rsp),%rdx
3bf7: 48 31 cf xor %rcx,%rdi
3bfa: 48 8b 4c 24 08 mov 0x8(%rsp),%rcx
3bff: 4c 31 c6 xor %r8,%rsi
3c02: 48 31 da xor %rbx,%rdx
3c05: 48 8b 5c 24 10 mov 0x10(%rsp),%rbx
3c0a: 48 c1 ce 19 ror $0x19,%rsi
3c0e: 48 89 3c 24 mov %rdi,(%rsp)
3c12: 4c 31 f1 xor %r14,%rcx
3c15: 48 89 f7 mov %rsi,%rdi
3c18: 49 21 f7 and %rsi,%r15
3c1b: 48 c1 ca 02 ror $0x2,%rdx
3c1f: 48 c1 c9 17 ror $0x17,%rcx
3c23: 48 31 eb xor %rbp,%rbx
3c26: 48 f7 d7 not %rdi
3c29: 49 31 d7 xor %rdx,%r15
3c2c: 49 89 c8 mov %rcx,%r8
3c2f: 48 c1 c3 02 rol $0x2,%rbx
3c33: 48 21 cf and %rcx,%rdi
3c36: 49 f7 d0 not %r8
3c39: 48 31 c7 xor %rax,%rdi
3c3c: 49 21 d8 and %rbx,%r8
3c3f: 48 89 7c 24 08 mov %rdi,0x8(%rsp)
3c44: 49 31 f0 xor %rsi,%r8
3c47: 48 89 de mov %rbx,%rsi
3c4a: 48 f7 d6 not %rsi
3c4d: 48 21 d6 and %rdx,%rsi
3c50: 48 f7 d2 not %rdx
3c53: 48 31 ce xor %rcx,%rsi
3c56: 48 21 c2 and %rax,%rdx
3c59: 48 8b 44 24 58 mov 0x58(%rsp),%rax
3c5e: 48 89 74 24 10 mov %rsi,0x10(%rsp)
3c63: 48 8d 35 76 25 00 00 lea 0x2576(%rip),%rsi # 61e0 <KeccakF_RoundConstants+0xc0>
3c6a: 48 31 d3 xor %rdx,%rbx
3c6d: 48 39 c6 cmp %rax,%rsi
3c70: 0f 85 1a f9 ff ff jne 3590 <KeccakF1600_StatePermute+0x110>
3c76: 48 8b 7c 24 60 mov 0x60(%rsp),%rdi
3c7b: 48 8b 44 24 88 mov -0x78(%rsp),%rax
3c80: 4c 8b 74 24 18 mov 0x18(%rsp),%r14
3c85: 48 89 07 mov %rax,(%rdi)
3c88: 48 8b 44 24 90 mov -0x70(%rsp),%rax
3c8d: 4c 89 77 18 mov %r14,0x18(%rdi)
3c91: 48 89 47 08 mov %rax,0x8(%rdi)
3c95: 48 8b 44 24 98 mov -0x68(%rsp),%rax
3c9a: 4c 89 67 60 mov %r12,0x60(%rdi)
3c9e: 48 89 47 10 mov %rax,0x10(%rdi)
3ca2: 48 8b 44 24 a0 mov -0x60(%rsp),%rax
3ca7: 48 89 47 20 mov %rax,0x20(%rdi)
3cab: 48 8b 44 24 a8 mov -0x58(%rsp),%rax
3cb0: 48 89 47 28 mov %rax,0x28(%rdi)
3cb4: 48 8b 44 24 b0 mov -0x50(%rsp),%rax
3cb9: 48 89 47 30 mov %rax,0x30(%rdi)
3cbd: 48 8b 44 24 b8 mov -0x48(%rsp),%rax
3cc2: 48 89 47 38 mov %rax,0x38(%rdi)
3cc6: 48 8b 44 24 c0 mov -0x40(%rsp),%rax
3ccb: 48 89 47 40 mov %rax,0x40(%rdi)
3ccf: 48 8b 44 24 c8 mov -0x38(%rsp),%rax
3cd4: 48 89 47 48 mov %rax,0x48(%rdi)
3cd8: 48 8b 44 24 d0 mov -0x30(%rsp),%rax
3cdd: 48 89 47 50 mov %rax,0x50(%rdi)
3ce1: 48 8b 44 24 d8 mov -0x28(%rsp),%rax
3ce6: 48 89 47 58 mov %rax,0x58(%rdi)
3cea: 48 8b 44 24 e0 mov -0x20(%rsp),%rax
3cef: 48 89 47 68 mov %rax,0x68(%rdi)
3cf3: 48 8b 44 24 e8 mov -0x18(%rsp),%rax
3cf8: 48 89 47 70 mov %rax,0x70(%rdi)
3cfc: 48 8b 44 24 f0 mov -0x10(%rsp),%rax
3d01: 48 89 47 78 mov %rax,0x78(%rdi)
3d05: 4c 89 af 80 00 00 00 mov %r13,0x80(%rdi)
3d0c: 48 8b 44 24 f8 mov -0x8(%rsp),%rax
3d11: 4c 89 9f 90 00 00 00 mov %r11,0x90(%rdi)
3d18: 48 89 87 88 00 00 00 mov %rax,0x88(%rdi)
3d1f: 48 8b 04 24 mov (%rsp),%rax
3d23: 4c 89 bf a0 00 00 00 mov %r15,0xa0(%rdi)
3d2a: 48 89 87 98 00 00 00 mov %rax,0x98(%rdi)
3d31: 48 8b 44 24 08 mov 0x8(%rsp),%rax
3d36: 4c 89 87 b0 00 00 00 mov %r8,0xb0(%rdi)
3d3d: 48 89 87 a8 00 00 00 mov %rax,0xa8(%rdi)
3d44: 48 8b 44 24 10 mov 0x10(%rsp),%rax
3d49: 48 89 9f c0 00 00 00 mov %rbx,0xc0(%rdi)
3d50: 48 89 87 b8 00 00 00 mov %rax,0xb8(%rdi)
3d57: 48 83 c4 68 add $0x68,%rsp
3d5b: 5b pop %rbx
3d5c: 5d pop %rbp
3d5d: 41 5c pop %r12
3d5f: 41 5d pop %r13
3d61: 41 5e pop %r14
3d63: 41 5f pop %r15
3d65: c3 ret
3d66: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3d6d: 00 00 00
0000000000003d70 <keccak_absorb_once.constprop.1>:
3d70: 41 57 push %r15
3d72: 31 c0 xor %eax,%eax
3d74: 49 89 f7 mov %rsi,%r15
3d77: 41 56 push %r14
3d79: 41 55 push %r13
3d7b: 41 54 push %r12
3d7d: 49 89 d4 mov %rdx,%r12
3d80: 55 push %rbp
3d81: 48 89 fd mov %rdi,%rbp
3d84: 48 83 c7 08 add $0x8,%rdi
3d88: 53 push %rbx
3d89: 89 cb mov %ecx,%ebx
3d8b: 48 89 e9 mov %rbp,%rcx
3d8e: 48 c7 47 f8 00 00 00 movq $0x0,-0x8(%rdi)
3d95: 00
3d96: 48 c7 87 b8 00 00 00 movq $0x0,0xb8(%rdi)
3d9d: 00 00 00 00
3da1: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
3da5: 48 29 f9 sub %rdi,%rcx
3da8: 81 c1 c8 00 00 00 add $0xc8,%ecx
3dae: c1 e9 03 shr $0x3,%ecx
3db1: f3 48 ab rep stos %rax,%es:(%rdi)
3db4: 48 81 fa 87 00 00 00 cmp $0x87,%rdx
3dbb: 0f 86 ae 00 00 00 jbe 3e6f <keccak_absorb_once.constprop.1+0xff>
3dc1: 4c 8d b6 88 00 00 00 lea 0x88(%rsi),%r14
3dc8: 4d 89 f5 mov %r14,%r13
3dcb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
3dd0: 4c 89 f8 mov %r15,%rax
3dd3: 48 89 ee mov %rbp,%rsi
3dd6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3ddd: 00 00 00
3de0: 0f b6 50 01 movzbl 0x1(%rax),%edx
3de4: 0f b6 48 02 movzbl 0x2(%rax),%ecx
3de8: 48 83 c0 08 add $0x8,%rax
3dec: 48 c1 e1 10 shl $0x10,%rcx
3df0: 48 c1 e2 08 shl $0x8,%rdx
3df4: 48 09 ca or %rcx,%rdx
3df7: 0f b6 48 f8 movzbl -0x8(%rax),%ecx
3dfb: 48 09 ca or %rcx,%rdx
3dfe: 0f b6 48 fb movzbl -0x5(%rax),%ecx
3e02: 48 c1 e1 18 shl $0x18,%rcx
3e06: 48 09 ca or %rcx,%rdx
3e09: 0f b6 48 fc movzbl -0x4(%rax),%ecx
3e0d: 48 c1 e1 20 shl $0x20,%rcx
3e11: 48 09 d1 or %rdx,%rcx
3e14: 0f b6 50 fd movzbl -0x3(%rax),%edx
3e18: 48 c1 e2 28 shl $0x28,%rdx
3e1c: 48 09 ca or %rcx,%rdx
3e1f: 0f b6 48 fe movzbl -0x2(%rax),%ecx
3e23: 48 c1 e1 30 shl $0x30,%rcx
3e27: 48 09 d1 or %rdx,%rcx
3e2a: 0f b6 50 ff movzbl -0x1(%rax),%edx
3e2e: 48 c1 e2 38 shl $0x38,%rdx
3e32: 48 09 ca or %rcx,%rdx
3e35: 48 31 16 xor %rdx,(%rsi)
3e38: 48 83 c6 08 add $0x8,%rsi
3e3c: 4c 39 e8 cmp %r13,%rax
3e3f: 75 9f jne 3de0 <keccak_absorb_once.constprop.1+0x70>
3e41: 48 89 ef mov %rbp,%rdi
3e44: 49 81 ec 88 00 00 00 sub $0x88,%r12
3e4b: 4d 89 f7 mov %r14,%r15
3e4e: 49 81 c5 88 00 00 00 add $0x88,%r13
3e55: e8 26 f6 ff ff call 3480 <KeccakF1600_StatePermute>
3e5a: 49 81 fc 87 00 00 00 cmp $0x87,%r12
3e61: 76 0c jbe 3e6f <keccak_absorb_once.constprop.1+0xff>
3e63: 49 81 c6 88 00 00 00 add $0x88,%r14
3e6a: e9 61 ff ff ff jmp 3dd0 <keccak_absorb_once.constprop.1+0x60>
3e6f: 4d 85 e4 test %r12,%r12
3e72: 74 6c je 3ee0 <keccak_absorb_once.constprop.1+0x170>
3e74: 31 c0 xor %eax,%eax
3e76: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3e7d: 00 00 00
3e80: 89 c2 mov %eax,%edx
3e82: 89 c1 mov %eax,%ecx
3e84: c1 ea 03 shr $0x3,%edx
3e87: 83 e1 07 and $0x7,%ecx
3e8a: 8d 34 d5 00 00 00 00 lea 0x0(,%rdx,8),%esi
3e91: 41 0f b6 14 07 movzbl (%r15,%rax,1),%edx
3e96: c1 e1 03 shl $0x3,%ecx
3e99: 48 83 c0 01 add $0x1,%rax
3e9d: 48 d3 e2 shl %cl,%rdx
3ea0: 48 31 54 35 00 xor %rdx,0x0(%rbp,%rsi,1)
3ea5: 49 39 c4 cmp %rax,%r12
3ea8: 75 d6 jne 3e80 <keccak_absorb_once.constprop.1+0x110>
3eaa: 44 89 e0 mov %r12d,%eax
3ead: 44 89 e1 mov %r12d,%ecx
3eb0: c1 e8 03 shr $0x3,%eax
3eb3: 83 e1 07 and $0x7,%ecx
3eb6: 8d 04 c5 00 00 00 00 lea 0x0(,%rax,8),%eax
3ebd: c1 e1 03 shl $0x3,%ecx
3ec0: 48 01 e8 add %rbp,%rax
3ec3: 0f b6 db movzbl %bl,%ebx
3ec6: 48 d3 e3 shl %cl,%rbx
3ec9: 48 31 18 xor %rbx,(%rax)
3ecc: 48 0f ba bd 80 00 00 btcq $0x3f,0x80(%rbp)
3ed3: 00 3f
3ed5: 5b pop %rbx
3ed6: 5d pop %rbp
3ed7: 41 5c pop %r12
3ed9: 41 5d pop %r13
3edb: 41 5e pop %r14
3edd: 41 5f pop %r15
3edf: c3 ret
3ee0: 48 89 e8 mov %rbp,%rax
3ee3: 31 c9 xor %ecx,%ecx
3ee5: eb dc jmp 3ec3 <keccak_absorb_once.constprop.1+0x153>
3ee7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
3eee: 00 00
0000000000003ef0 <keccak_absorb_once.constprop.2>:
3ef0: 41 56 push %r14
3ef2: 31 c0 xor %eax,%eax
3ef4: 49 89 f6 mov %rsi,%r14
3ef7: 41 55 push %r13
3ef9: 41 54 push %r12
3efb: 55 push %rbp
3efc: 48 89 d5 mov %rdx,%rbp
3eff: 53 push %rbx
3f00: 48 89 fb mov %rdi,%rbx
3f03: 48 83 c7 08 add $0x8,%rdi
3f07: 48 c7 47 f8 00 00 00 movq $0x0,-0x8(%rdi)
3f0e: 00
3f0f: 48 89 d9 mov %rbx,%rcx
3f12: 48 c7 87 b8 00 00 00 movq $0x0,0xb8(%rdi)
3f19: 00 00 00 00
3f1d: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
3f21: 48 29 f9 sub %rdi,%rcx
3f24: 81 c1 c8 00 00 00 add $0xc8,%ecx
3f2a: c1 e9 03 shr $0x3,%ecx
3f2d: f3 48 ab rep stos %rax,%es:(%rdi)
3f30: 48 81 fa a7 00 00 00 cmp $0xa7,%rdx
3f37: 0f 86 b2 00 00 00 jbe 3fef <keccak_absorb_once.constprop.2+0xff>
3f3d: 4c 8d ae a8 00 00 00 lea 0xa8(%rsi),%r13
3f44: 4d 89 ec mov %r13,%r12
3f47: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
3f4e: 00 00
3f50: 4c 89 f0 mov %r14,%rax
3f53: 48 89 de mov %rbx,%rsi
3f56: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3f5d: 00 00 00
3f60: 0f b6 50 01 movzbl 0x1(%rax),%edx
3f64: 0f b6 48 02 movzbl 0x2(%rax),%ecx
3f68: 48 83 c0 08 add $0x8,%rax
3f6c: 48 c1 e1 10 shl $0x10,%rcx
3f70: 48 c1 e2 08 shl $0x8,%rdx
3f74: 48 09 ca or %rcx,%rdx
3f77: 0f b6 48 f8 movzbl -0x8(%rax),%ecx
3f7b: 48 09 ca or %rcx,%rdx
3f7e: 0f b6 48 fb movzbl -0x5(%rax),%ecx
3f82: 48 c1 e1 18 shl $0x18,%rcx
3f86: 48 09 ca or %rcx,%rdx
3f89: 0f b6 48 fc movzbl -0x4(%rax),%ecx
3f8d: 48 c1 e1 20 shl $0x20,%rcx
3f91: 48 09 d1 or %rdx,%rcx
3f94: 0f b6 50 fd movzbl -0x3(%rax),%edx
3f98: 48 c1 e2 28 shl $0x28,%rdx
3f9c: 48 09 ca or %rcx,%rdx
3f9f: 0f b6 48 fe movzbl -0x2(%rax),%ecx
3fa3: 48 c1 e1 30 shl $0x30,%rcx
3fa7: 48 09 d1 or %rdx,%rcx
3faa: 0f b6 50 ff movzbl -0x1(%rax),%edx
3fae: 48 c1 e2 38 shl $0x38,%rdx
3fb2: 48 09 ca or %rcx,%rdx
3fb5: 48 31 16 xor %rdx,(%rsi)
3fb8: 48 83 c6 08 add $0x8,%rsi
3fbc: 4c 39 e0 cmp %r12,%rax
3fbf: 75 9f jne 3f60 <keccak_absorb_once.constprop.2+0x70>
3fc1: 48 89 df mov %rbx,%rdi
3fc4: 48 81 ed a8 00 00 00 sub $0xa8,%rbp
3fcb: 4d 89 ee mov %r13,%r14
3fce: 49 81 c4 a8 00 00 00 add $0xa8,%r12
3fd5: e8 a6 f4 ff ff call 3480 <KeccakF1600_StatePermute>
3fda: 48 81 fd a7 00 00 00 cmp $0xa7,%rbp
3fe1: 76 0c jbe 3fef <keccak_absorb_once.constprop.2+0xff>
3fe3: 49 81 c5 a8 00 00 00 add $0xa8,%r13
3fea: e9 61 ff ff ff jmp 3f50 <keccak_absorb_once.constprop.2+0x60>
3fef: 48 85 ed test %rbp,%rbp
3ff2: 74 69 je 405d <keccak_absorb_once.constprop.2+0x16d>
3ff4: 31 c0 xor %eax,%eax
3ff6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
3ffd: 00 00 00
4000: 89 c2 mov %eax,%edx
4002: 89 c1 mov %eax,%ecx
4004: c1 ea 03 shr $0x3,%edx
4007: 83 e1 07 and $0x7,%ecx
400a: 8d 34 d5 00 00 00 00 lea 0x0(,%rdx,8),%esi
4011: 41 0f b6 14 06 movzbl (%r14,%rax,1),%edx
4016: c1 e1 03 shl $0x3,%ecx
4019: 48 83 c0 01 add $0x1,%rax
401d: 48 d3 e2 shl %cl,%rdx
4020: 48 31 14 33 xor %rdx,(%rbx,%rsi,1)
4024: 48 39 c5 cmp %rax,%rbp
4027: 75 d7 jne 4000 <keccak_absorb_once.constprop.2+0x110>
4029: 89 e8 mov %ebp,%eax
402b: 89 e9 mov %ebp,%ecx
402d: ba 1f 00 00 00 mov $0x1f,%edx
4032: c1 e8 03 shr $0x3,%eax
4035: 83 e1 07 and $0x7,%ecx
4038: 8d 04 c5 00 00 00 00 lea 0x0(,%rax,8),%eax
403f: c1 e1 03 shl $0x3,%ecx
4042: 48 01 d8 add %rbx,%rax
4045: 48 d3 e2 shl %cl,%rdx
4048: 48 31 10 xor %rdx,(%rax)
404b: 48 0f ba bb a0 00 00 btcq $0x3f,0xa0(%rbx)
4052: 00 3f
4054: 5b pop %rbx
4055: 5d pop %rbp
4056: 41 5c pop %r12
4058: 41 5d pop %r13
405a: 41 5e pop %r14
405c: c3 ret
405d: 48 89 d8 mov %rbx,%rax
4060: ba 1f 00 00 00 mov $0x1f,%edx
4065: eb e1 jmp 4048 <keccak_absorb_once.constprop.2+0x158>
4067: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
406e: 00 00
0000000000004070 <pqcrystals_kyber_fips202_ref_shake128_init>:
4070: 48 c7 07 00 00 00 00 movq $0x0,(%rdi)
4077: 48 89 fa mov %rdi,%rdx
407a: 48 8d 7f 08 lea 0x8(%rdi),%rdi
407e: 31 c0 xor %eax,%eax
4080: 48 c7 87 b8 00 00 00 movq $0x0,0xb8(%rdi)
4087: 00 00 00 00
408b: 48 89 d1 mov %rdx,%rcx
408e: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
4092: 48 29 f9 sub %rdi,%rcx
4095: 81 c1 c8 00 00 00 add $0xc8,%ecx
409b: c1 e9 03 shr $0x3,%ecx
409e: f3 48 ab rep stos %rax,%es:(%rdi)
40a1: c7 82 c8 00 00 00 00 movl $0x0,0xc8(%rdx)
40a8: 00 00 00
40ab: c3 ret
40ac: 0f 1f 40 00 nopl 0x0(%rax)
00000000000040b0 <pqcrystals_kyber_fips202_ref_shake128_absorb>:
40b0: 41 54 push %r12
40b2: 49 89 d4 mov %rdx,%r12
40b5: 55 push %rbp
40b6: 48 89 f5 mov %rsi,%rbp
40b9: 53 push %rbx
40ba: 8b 87 c8 00 00 00 mov 0xc8(%rdi),%eax
40c0: 48 89 fb mov %rdi,%rbx
40c3: 48 01 c2 add %rax,%rdx
40c6: 49 89 c0 mov %rax,%r8
40c9: 48 81 fa a7 00 00 00 cmp $0xa7,%rdx
40d0: 0f 86 a9 00 00 00 jbe 417f <pqcrystals_kyber_fips202_ref_shake128_absorb+0xcf>
40d6: 3d a7 00 00 00 cmp $0xa7,%eax
40db: 76 28 jbe 4105 <pqcrystals_kyber_fips202_ref_shake128_absorb+0x55>
40dd: 0f 1f 00 nopl (%rax)
40e0: b8 a8 00 00 00 mov $0xa8,%eax
40e5: 48 89 df mov %rbx,%rdi
40e8: 44 29 c0 sub %r8d,%eax
40eb: 49 29 c4 sub %rax,%r12
40ee: e8 8d f3 ff ff call 3480 <KeccakF1600_StatePermute>
40f3: 45 31 c0 xor %r8d,%r8d
40f6: 31 c0 xor %eax,%eax
40f8: 49 81 fc a7 00 00 00 cmp $0xa7,%r12
40ff: 0f 86 8b 00 00 00 jbe 4190 <pqcrystals_kyber_fips202_ref_shake128_absorb+0xe0>
4105: 44 89 c0 mov %r8d,%eax
4108: 48 89 ee mov %rbp,%rsi
410b: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4112: 00 00 00 00
4116: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
411d: 00 00 00 00
4121: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4128: 00 00 00 00
412c: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4133: 00 00 00 00
4137: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
413e: 00 00
4140: 89 c2 mov %eax,%edx
4142: 89 c1 mov %eax,%ecx
4144: 48 83 c6 01 add $0x1,%rsi
4148: 83 c0 01 add $0x1,%eax
414b: c1 ea 03 shr $0x3,%edx
414e: 83 e1 07 and $0x7,%ecx
4151: 8d 3c d5 00 00 00 00 lea 0x0(,%rdx,8),%edi
4158: 0f b6 56 ff movzbl -0x1(%rsi),%edx
415c: c1 e1 03 shl $0x3,%ecx
415f: 48 d3 e2 shl %cl,%rdx
4162: 48 31 14 3b xor %rdx,(%rbx,%rdi,1)
4166: 3d a8 00 00 00 cmp $0xa8,%eax
416b: 75 d3 jne 4140 <pqcrystals_kyber_fips202_ref_shake128_absorb+0x90>
416d: b8 a7 00 00 00 mov $0xa7,%eax
4172: 44 29 c0 sub %r8d,%eax
4175: 48 8d 6c 05 01 lea 0x1(%rbp,%rax,1),%rbp
417a: e9 61 ff ff ff jmp 40e0 <pqcrystals_kyber_fips202_ref_shake128_absorb+0x30>
417f: 49 89 d4 mov %rdx,%r12
4182: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4189: 00 00 00 00
418d: 0f 1f 00 nopl (%rax)
4190: 4c 39 e0 cmp %r12,%rax
4193: 44 89 c0 mov %r8d,%eax
4196: 73 5a jae 41f2 <pqcrystals_kyber_fips202_ref_shake128_absorb+0x142>
4198: 48 89 ea mov %rbp,%rdx
419b: 45 8d 40 01 lea 0x1(%r8),%r8d
419f: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
41a6: 00 00 00 00
41aa: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
41b1: 00 00 00 00
41b5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
41bc: 00 00 00 00
41c0: 89 c1 mov %eax,%ecx
41c2: 0f b6 32 movzbl (%rdx),%esi
41c5: 48 83 c2 01 add $0x1,%rdx
41c9: c1 e9 03 shr $0x3,%ecx
41cc: 8d 3c cd 00 00 00 00 lea 0x0(,%rcx,8),%edi
41d3: 89 c1 mov %eax,%ecx
41d5: 83 c0 01 add $0x1,%eax
41d8: 83 e1 07 and $0x7,%ecx
41db: c1 e1 03 shl $0x3,%ecx
41de: 48 d3 e6 shl %cl,%rsi
41e1: 4a 8d 4c 02 ff lea -0x1(%rdx,%r8,1),%rcx
41e6: 48 31 34 3b xor %rsi,(%rbx,%rdi,1)
41ea: 48 29 e9 sub %rbp,%rcx
41ed: 4c 39 e1 cmp %r12,%rcx
41f0: 72 ce jb 41c0 <pqcrystals_kyber_fips202_ref_shake128_absorb+0x110>
41f2: 89 83 c8 00 00 00 mov %eax,0xc8(%rbx)
41f8: 5b pop %rbx
41f9: 5d pop %rbp
41fa: 41 5c pop %r12
41fc: c3 ret
41fd: 0f 1f 00 nopl (%rax)
0000000000004200 <pqcrystals_kyber_fips202_ref_shake128_finalize>:
4200: 8b 8f c8 00 00 00 mov 0xc8(%rdi),%ecx
4206: 89 c8 mov %ecx,%eax
4208: 83 e1 07 and $0x7,%ecx
420b: c1 e8 03 shr $0x3,%eax
420e: c1 e1 03 shl $0x3,%ecx
4211: 8d 14 c5 00 00 00 00 lea 0x0(,%rax,8),%edx
4218: b8 1f 00 00 00 mov $0x1f,%eax
421d: 48 d3 e0 shl %cl,%rax
4220: 48 31 04 17 xor %rax,(%rdi,%rdx,1)
4224: c7 87 c8 00 00 00 a8 movl $0xa8,0xc8(%rdi)
422b: 00 00 00
422e: 48 0f ba bf a0 00 00 btcq $0x3f,0xa0(%rdi)
4235: 00 3f
4237: c3 ret
4238: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
423f: 00
0000000000004240 <pqcrystals_kyber_fips202_ref_shake128_squeeze>:
4240: 41 54 push %r12
4242: 49 89 d4 mov %rdx,%r12
4245: 55 push %rbp
4246: 53 push %rbx
4247: 8b 82 c8 00 00 00 mov 0xc8(%rdx),%eax
424d: 48 85 f6 test %rsi,%rsi
4250: 74 66 je 42b8 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x78>
4252: 48 89 fb mov %rdi,%rbx
4255: 48 89 f7 mov %rsi,%rdi
4258: 3d a8 00 00 00 cmp $0xa8,%eax
425d: 0f 84 82 00 00 00 je 42e5 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0xa5>
4263: 3d a7 00 00 00 cmp $0xa7,%eax
4268: 77 f9 ja 4263 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x23>
426a: 89 c5 mov %eax,%ebp
426c: 41 89 c0 mov %eax,%r8d
426f: 48 01 fd add %rdi,%rbp
4272: 44 89 c6 mov %r8d,%esi
4275: 44 89 c0 mov %r8d,%eax
4278: 48 29 de sub %rbx,%rsi
427b: eb 28 jmp 42a5 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x65>
427d: 0f 1f 00 nopl (%rax)
4280: 89 c2 mov %eax,%edx
4282: 89 c1 mov %eax,%ecx
4284: 48 83 c3 01 add $0x1,%rbx
4288: 83 c0 01 add $0x1,%eax
428b: c1 ea 03 shr $0x3,%edx
428e: 83 e1 07 and $0x7,%ecx
4291: 49 8b 14 d4 mov (%r12,%rdx,8),%rdx
4295: c1 e1 03 shl $0x3,%ecx
4298: 48 d3 ea shr %cl,%rdx
429b: 88 53 ff mov %dl,-0x1(%rbx)
429e: 3d a8 00 00 00 cmp $0xa8,%eax
42a3: 74 23 je 42c8 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x88>
42a5: 48 8d 14 33 lea (%rbx,%rsi,1),%rdx
42a9: 48 39 ea cmp %rbp,%rdx
42ac: 72 d2 jb 4280 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x40>
42ae: 89 c2 mov %eax,%edx
42b0: 44 29 c2 sub %r8d,%edx
42b3: 48 29 d7 sub %rdx,%rdi
42b6: 75 b2 jne 426a <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x2a>
42b8: 41 89 84 24 c8 00 00 mov %eax,0xc8(%r12)
42bf: 00
42c0: 5b pop %rbx
42c1: 5d pop %rbp
42c2: 41 5c pop %r12
42c4: c3 ret
42c5: 0f 1f 00 nopl (%rax)
42c8: 89 c2 mov %eax,%edx
42ca: 44 29 c2 sub %r8d,%edx
42cd: 48 29 d7 sub %rdx,%rdi
42d0: 48 89 fd mov %rdi,%rbp
42d3: 74 e3 je 42b8 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x78>
42d5: 4c 89 e7 mov %r12,%rdi
42d8: e8 a3 f1 ff ff call 3480 <KeccakF1600_StatePermute>
42dd: 48 89 ef mov %rbp,%rdi
42e0: 45 31 c0 xor %r8d,%r8d
42e3: eb 8d jmp 4272 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x32>
42e5: 48 89 f5 mov %rsi,%rbp
42e8: eb eb jmp 42d5 <pqcrystals_kyber_fips202_ref_shake128_squeeze+0x95>
42ea: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
00000000000042f0 <pqcrystals_kyber_fips202_ref_shake128_absorb_once>:
42f0: 53 push %rbx
42f1: 48 89 fb mov %rdi,%rbx
42f4: e8 f7 fb ff ff call 3ef0 <keccak_absorb_once.constprop.2>
42f9: c7 83 c8 00 00 00 a8 movl $0xa8,0xc8(%rbx)
4300: 00 00 00
4303: 5b pop %rbx
4304: c3 ret
4305: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
430c: 00 00 00 00
0000000000004310 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks>:
4310: 48 85 f6 test %rsi,%rsi
4313: 0f 84 9a 00 00 00 je 43b3 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks+0xa3>
4319: 41 55 push %r13
431b: 4c 8d af a8 00 00 00 lea 0xa8(%rdi),%r13
4322: 41 54 push %r12
4324: 49 89 d4 mov %rdx,%r12
4327: 55 push %rbp
4328: 48 89 f5 mov %rsi,%rbp
432b: 53 push %rbx
432c: 0f 1f 40 00 nopl 0x0(%rax)
4330: 4c 89 e7 mov %r12,%rdi
4333: 49 8d 9d 58 ff ff ff lea -0xa8(%r13),%rbx
433a: e8 41 f1 ff ff call 3480 <KeccakF1600_StatePermute>
433f: 4c 89 e2 mov %r12,%rdx
4342: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4349: 00 00 00 00
434d: 0f 1f 00 nopl (%rax)
4350: 48 8b 02 mov (%rdx),%rax
4353: 48 83 c3 08 add $0x8,%rbx
4357: 48 83 c2 08 add $0x8,%rdx
435b: 48 89 c1 mov %rax,%rcx
435e: 88 43 f8 mov %al,-0x8(%rbx)
4361: 48 c1 e9 10 shr $0x10,%rcx
4365: 88 63 f9 mov %ah,-0x7(%rbx)
4368: 88 4b fa mov %cl,-0x6(%rbx)
436b: 48 89 c1 mov %rax,%rcx
436e: 48 c1 e9 18 shr $0x18,%rcx
4372: 88 4b fb mov %cl,-0x5(%rbx)
4375: 48 89 c1 mov %rax,%rcx
4378: 48 c1 e9 20 shr $0x20,%rcx
437c: 88 4b fc mov %cl,-0x4(%rbx)
437f: 48 89 c1 mov %rax,%rcx
4382: 48 c1 e9 28 shr $0x28,%rcx
4386: 88 4b fd mov %cl,-0x3(%rbx)
4389: 48 89 c1 mov %rax,%rcx
438c: 48 c1 e8 38 shr $0x38,%rax
4390: 48 c1 e9 30 shr $0x30,%rcx
4394: 88 43 ff mov %al,-0x1(%rbx)
4397: 88 4b fe mov %cl,-0x2(%rbx)
439a: 49 39 dd cmp %rbx,%r13
439d: 75 b1 jne 4350 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks+0x40>
439f: 49 81 c5 a8 00 00 00 add $0xa8,%r13
43a6: 48 83 ed 01 sub $0x1,%rbp
43aa: 75 84 jne 4330 <pqcrystals_kyber_fips202_ref_shake128_squeezeblocks+0x20>
43ac: 5b pop %rbx
43ad: 5d pop %rbp
43ae: 41 5c pop %r12
43b0: 41 5d pop %r13
43b2: c3 ret
43b3: c3 ret
43b4: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
43bb: 00 00 00 00
43bf: 90 nop
00000000000043c0 <pqcrystals_kyber_fips202_ref_shake256_init>:
43c0: 48 c7 07 00 00 00 00 movq $0x0,(%rdi)
43c7: 48 89 fa mov %rdi,%rdx
43ca: 48 8d 7f 08 lea 0x8(%rdi),%rdi
43ce: 31 c0 xor %eax,%eax
43d0: 48 c7 87 b8 00 00 00 movq $0x0,0xb8(%rdi)
43d7: 00 00 00 00
43db: 48 89 d1 mov %rdx,%rcx
43de: 48 83 e7 f8 and $0xfffffffffffffff8,%rdi
43e2: 48 29 f9 sub %rdi,%rcx
43e5: 81 c1 c8 00 00 00 add $0xc8,%ecx
43eb: c1 e9 03 shr $0x3,%ecx
43ee: f3 48 ab rep stos %rax,%es:(%rdi)
43f1: c7 82 c8 00 00 00 00 movl $0x0,0xc8(%rdx)
43f8: 00 00 00
43fb: c3 ret
43fc: 0f 1f 40 00 nopl 0x0(%rax)
0000000000004400 <pqcrystals_kyber_fips202_ref_shake256_absorb>:
4400: 41 54 push %r12
4402: 49 89 d4 mov %rdx,%r12
4405: 55 push %rbp
4406: 48 89 f5 mov %rsi,%rbp
4409: 53 push %rbx
440a: 8b 87 c8 00 00 00 mov 0xc8(%rdi),%eax
4410: 48 89 fb mov %rdi,%rbx
4413: 48 01 c2 add %rax,%rdx
4416: 49 89 c0 mov %rax,%r8
4419: 48 81 fa 87 00 00 00 cmp $0x87,%rdx
4420: 0f 86 99 00 00 00 jbe 44bf <pqcrystals_kyber_fips202_ref_shake256_absorb+0xbf>
4426: 3d 87 00 00 00 cmp $0x87,%eax
442b: 76 24 jbe 4451 <pqcrystals_kyber_fips202_ref_shake256_absorb+0x51>
442d: 0f 1f 00 nopl (%rax)
4430: b8 88 00 00 00 mov $0x88,%eax
4435: 48 89 df mov %rbx,%rdi
4438: 44 29 c0 sub %r8d,%eax
443b: 49 29 c4 sub %rax,%r12
443e: e8 3d f0 ff ff call 3480 <KeccakF1600_StatePermute>
4443: 45 31 c0 xor %r8d,%r8d
4446: 31 c0 xor %eax,%eax
4448: 49 81 fc 87 00 00 00 cmp $0x87,%r12
444f: 76 7f jbe 44d0 <pqcrystals_kyber_fips202_ref_shake256_absorb+0xd0>
4451: 44 89 c0 mov %r8d,%eax
4454: 48 89 ee mov %rbp,%rsi
4457: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
445e: 00 00 00 00
4462: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4469: 00 00 00 00
446d: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4474: 00 00 00 00
4478: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
447f: 00
4480: 89 c2 mov %eax,%edx
4482: 89 c1 mov %eax,%ecx
4484: 48 83 c6 01 add $0x1,%rsi
4488: 83 c0 01 add $0x1,%eax
448b: c1 ea 03 shr $0x3,%edx
448e: 83 e1 07 and $0x7,%ecx
4491: 8d 3c d5 00 00 00 00 lea 0x0(,%rdx,8),%edi
4498: 0f b6 56 ff movzbl -0x1(%rsi),%edx
449c: c1 e1 03 shl $0x3,%ecx
449f: 48 d3 e2 shl %cl,%rdx
44a2: 48 31 14 3b xor %rdx,(%rbx,%rdi,1)
44a6: 3d 88 00 00 00 cmp $0x88,%eax
44ab: 75 d3 jne 4480 <pqcrystals_kyber_fips202_ref_shake256_absorb+0x80>
44ad: b8 87 00 00 00 mov $0x87,%eax
44b2: 44 29 c0 sub %r8d,%eax
44b5: 48 8d 6c 05 01 lea 0x1(%rbp,%rax,1),%rbp
44ba: e9 71 ff ff ff jmp 4430 <pqcrystals_kyber_fips202_ref_shake256_absorb+0x30>
44bf: 49 89 d4 mov %rdx,%r12
44c2: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
44c9: 00 00 00 00
44cd: 0f 1f 00 nopl (%rax)
44d0: 4c 39 e0 cmp %r12,%rax
44d3: 44 89 c0 mov %r8d,%eax
44d6: 73 5a jae 4532 <pqcrystals_kyber_fips202_ref_shake256_absorb+0x132>
44d8: 48 89 ea mov %rbp,%rdx
44db: 45 8d 40 01 lea 0x1(%r8),%r8d
44df: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
44e6: 00 00 00 00
44ea: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
44f1: 00 00 00 00
44f5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
44fc: 00 00 00 00
4500: 89 c1 mov %eax,%ecx
4502: 0f b6 32 movzbl (%rdx),%esi
4505: 48 83 c2 01 add $0x1,%rdx
4509: c1 e9 03 shr $0x3,%ecx
450c: 8d 3c cd 00 00 00 00 lea 0x0(,%rcx,8),%edi
4513: 89 c1 mov %eax,%ecx
4515: 83 c0 01 add $0x1,%eax
4518: 83 e1 07 and $0x7,%ecx
451b: c1 e1 03 shl $0x3,%ecx
451e: 48 d3 e6 shl %cl,%rsi
4521: 4a 8d 4c 02 ff lea -0x1(%rdx,%r8,1),%rcx
4526: 48 31 34 3b xor %rsi,(%rbx,%rdi,1)
452a: 48 29 e9 sub %rbp,%rcx
452d: 4c 39 e1 cmp %r12,%rcx
4530: 72 ce jb 4500 <pqcrystals_kyber_fips202_ref_shake256_absorb+0x100>
4532: 89 83 c8 00 00 00 mov %eax,0xc8(%rbx)
4538: 5b pop %rbx
4539: 5d pop %rbp
453a: 41 5c pop %r12
453c: c3 ret
453d: 0f 1f 00 nopl (%rax)
0000000000004540 <pqcrystals_kyber_fips202_ref_shake256_finalize>:
4540: 8b 8f c8 00 00 00 mov 0xc8(%rdi),%ecx
4546: 89 c8 mov %ecx,%eax
4548: 83 e1 07 and $0x7,%ecx
454b: c1 e8 03 shr $0x3,%eax
454e: c1 e1 03 shl $0x3,%ecx
4551: 8d 14 c5 00 00 00 00 lea 0x0(,%rax,8),%edx
4558: b8 1f 00 00 00 mov $0x1f,%eax
455d: 48 d3 e0 shl %cl,%rax
4560: 48 31 04 17 xor %rax,(%rdi,%rdx,1)
4564: c7 87 c8 00 00 00 88 movl $0x88,0xc8(%rdi)
456b: 00 00 00
456e: 48 0f ba bf 80 00 00 btcq $0x3f,0x80(%rdi)
4575: 00 3f
4577: c3 ret
4578: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
457f: 00
0000000000004580 <pqcrystals_kyber_fips202_ref_shake256_squeeze>:
4580: 41 54 push %r12
4582: 49 89 d4 mov %rdx,%r12
4585: 55 push %rbp
4586: 53 push %rbx
4587: 8b 82 c8 00 00 00 mov 0xc8(%rdx),%eax
458d: 48 85 f6 test %rsi,%rsi
4590: 74 66 je 45f8 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x78>
4592: 48 89 fb mov %rdi,%rbx
4595: 48 89 f7 mov %rsi,%rdi
4598: 3d 88 00 00 00 cmp $0x88,%eax
459d: 0f 84 82 00 00 00 je 4625 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0xa5>
45a3: 3d 87 00 00 00 cmp $0x87,%eax
45a8: 77 f9 ja 45a3 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x23>
45aa: 89 c5 mov %eax,%ebp
45ac: 41 89 c0 mov %eax,%r8d
45af: 48 01 fd add %rdi,%rbp
45b2: 44 89 c6 mov %r8d,%esi
45b5: 44 89 c0 mov %r8d,%eax
45b8: 48 29 de sub %rbx,%rsi
45bb: eb 28 jmp 45e5 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x65>
45bd: 0f 1f 00 nopl (%rax)
45c0: 89 c2 mov %eax,%edx
45c2: 89 c1 mov %eax,%ecx
45c4: 48 83 c3 01 add $0x1,%rbx
45c8: 83 c0 01 add $0x1,%eax
45cb: c1 ea 03 shr $0x3,%edx
45ce: 83 e1 07 and $0x7,%ecx
45d1: 49 8b 14 d4 mov (%r12,%rdx,8),%rdx
45d5: c1 e1 03 shl $0x3,%ecx
45d8: 48 d3 ea shr %cl,%rdx
45db: 88 53 ff mov %dl,-0x1(%rbx)
45de: 3d 88 00 00 00 cmp $0x88,%eax
45e3: 74 23 je 4608 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x88>
45e5: 48 8d 14 33 lea (%rbx,%rsi,1),%rdx
45e9: 48 39 ea cmp %rbp,%rdx
45ec: 72 d2 jb 45c0 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x40>
45ee: 89 c2 mov %eax,%edx
45f0: 44 29 c2 sub %r8d,%edx
45f3: 48 29 d7 sub %rdx,%rdi
45f6: 75 b2 jne 45aa <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x2a>
45f8: 41 89 84 24 c8 00 00 mov %eax,0xc8(%r12)
45ff: 00
4600: 5b pop %rbx
4601: 5d pop %rbp
4602: 41 5c pop %r12
4604: c3 ret
4605: 0f 1f 00 nopl (%rax)
4608: 89 c2 mov %eax,%edx
460a: 44 29 c2 sub %r8d,%edx
460d: 48 29 d7 sub %rdx,%rdi
4610: 48 89 fd mov %rdi,%rbp
4613: 74 e3 je 45f8 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x78>
4615: 4c 89 e7 mov %r12,%rdi
4618: e8 63 ee ff ff call 3480 <KeccakF1600_StatePermute>
461d: 48 89 ef mov %rbp,%rdi
4620: 45 31 c0 xor %r8d,%r8d
4623: eb 8d jmp 45b2 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x32>
4625: 48 89 f5 mov %rsi,%rbp
4628: eb eb jmp 4615 <pqcrystals_kyber_fips202_ref_shake256_squeeze+0x95>
462a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
0000000000004630 <pqcrystals_kyber_fips202_ref_shake256_absorb_once>:
4630: 53 push %rbx
4631: b9 1f 00 00 00 mov $0x1f,%ecx
4636: 48 89 fb mov %rdi,%rbx
4639: e8 32 f7 ff ff call 3d70 <keccak_absorb_once.constprop.1>
463e: c7 83 c8 00 00 00 88 movl $0x88,0xc8(%rbx)
4645: 00 00 00
4648: 5b pop %rbx
4649: c3 ret
464a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
0000000000004650 <pqcrystals_kyber_fips202_ref_shake256_squeezeblocks>:
4650: 48 85 f6 test %rsi,%rsi
4653: 0f 84 9a 00 00 00 je 46f3 <pqcrystals_kyber_fips202_ref_shake256_squeezeblocks+0xa3>
4659: 41 55 push %r13
465b: 4c 8d af 88 00 00 00 lea 0x88(%rdi),%r13
4662: 41 54 push %r12
4664: 49 89 d4 mov %rdx,%r12
4667: 55 push %rbp
4668: 48 89 f5 mov %rsi,%rbp
466b: 53 push %rbx
466c: 0f 1f 40 00 nopl 0x0(%rax)
4670: 4c 89 e7 mov %r12,%rdi
4673: 49 8d 9d 78 ff ff ff lea -0x88(%r13),%rbx
467a: e8 01 ee ff ff call 3480 <KeccakF1600_StatePermute>
467f: 4c 89 e2 mov %r12,%rdx
4682: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4689: 00 00 00 00
468d: 0f 1f 00 nopl (%rax)
4690: 48 8b 02 mov (%rdx),%rax
4693: 48 83 c3 08 add $0x8,%rbx
4697: 48 83 c2 08 add $0x8,%rdx
469b: 48 89 c1 mov %rax,%rcx
469e: 88 43 f8 mov %al,-0x8(%rbx)
46a1: 48 c1 e9 10 shr $0x10,%rcx
46a5: 88 63 f9 mov %ah,-0x7(%rbx)
46a8: 88 4b fa mov %cl,-0x6(%rbx)
46ab: 48 89 c1 mov %rax,%rcx
46ae: 48 c1 e9 18 shr $0x18,%rcx
46b2: 88 4b fb mov %cl,-0x5(%rbx)
46b5: 48 89 c1 mov %rax,%rcx
46b8: 48 c1 e9 20 shr $0x20,%rcx
46bc: 88 4b fc mov %cl,-0x4(%rbx)
46bf: 48 89 c1 mov %rax,%rcx
46c2: 48 c1 e9 28 shr $0x28,%rcx
46c6: 88 4b fd mov %cl,-0x3(%rbx)
46c9: 48 89 c1 mov %rax,%rcx
46cc: 48 c1 e8 38 shr $0x38,%rax
46d0: 48 c1 e9 30 shr $0x30,%rcx
46d4: 88 43 ff mov %al,-0x1(%rbx)
46d7: 88 4b fe mov %cl,-0x2(%rbx)
46da: 49 39 dd cmp %rbx,%r13
46dd: 75 b1 jne 4690 <pqcrystals_kyber_fips202_ref_shake256_squeezeblocks+0x40>
46df: 49 81 c5 88 00 00 00 add $0x88,%r13
46e6: 48 83 ed 01 sub $0x1,%rbp
46ea: 75 84 jne 4670 <pqcrystals_kyber_fips202_ref_shake256_squeezeblocks+0x20>
46ec: 5b pop %rbx
46ed: 5d pop %rbp
46ee: 41 5c pop %r12
46f0: 41 5d pop %r13
46f2: c3 ret
46f3: c3 ret
46f4: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
46fb: 00 00 00 00
46ff: 90 nop
0000000000004700 <pqcrystals_kyber_fips202_ref_shake128>:
4700: 41 57 push %r15
4702: 41 56 push %r14
4704: 49 89 fe mov %rdi,%r14
4707: 41 55 push %r13
4709: 41 54 push %r12
470b: 55 push %rbp
470c: 48 89 f5 mov %rsi,%rbp
470f: 48 89 d6 mov %rdx,%rsi
4712: 53 push %rbx
4713: 48 89 eb mov %rbp,%rbx
4716: 48 c1 eb 03 shr $0x3,%rbx
471a: 48 81 ec f8 00 00 00 sub $0xf8,%rsp
4721: 64 48 8b 14 25 28 00 mov %fs:0x28,%rdx
4728: 00 00
472a: 48 89 94 24 e8 00 00 mov %rdx,0xe8(%rsp)
4731: 00
4732: 48 89 ca mov %rcx,%rdx
4735: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
473a: e8 b1 f7 ff ff call 3ef0 <keccak_absorb_once.constprop.2>
473f: 48 b8 31 0c c3 30 0c movabs $0xc30c30c30c30c31,%rax
4746: c3 30 0c
4749: 48 f7 e3 mul %rbx
474c: 48 89 54 24 08 mov %rdx,0x8(%rsp)
4751: 48 81 fd a7 00 00 00 cmp $0xa7,%rbp
4758: 0f 86 a2 00 00 00 jbe 4800 <pqcrystals_kyber_fips202_ref_shake128+0x100>
475e: 4c 69 6c 24 08 a8 00 imul $0xa8,0x8(%rsp),%r13
4765: 00 00
4767: 4c 89 f3 mov %r14,%rbx
476a: 4c 8d bc 24 b8 00 00 lea 0xb8(%rsp),%r15
4771: 00
4772: 4d 01 f5 add %r14,%r13
4775: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
477c: 00 00 00 00
4780: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4785: e8 f6 ec ff ff call 3480 <KeccakF1600_StatePermute>
478a: 48 8d 4c 24 10 lea 0x10(%rsp),%rcx
478f: 48 89 da mov %rbx,%rdx
4792: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4799: 00 00 00 00
479d: 0f 1f 00 nopl (%rax)
47a0: 48 8b 01 mov (%rcx),%rax
47a3: 48 83 c1 08 add $0x8,%rcx
47a7: 48 83 c2 08 add $0x8,%rdx
47ab: 48 89 c6 mov %rax,%rsi
47ae: 88 42 f8 mov %al,-0x8(%rdx)
47b1: 48 c1 ee 10 shr $0x10,%rsi
47b5: 88 62 f9 mov %ah,-0x7(%rdx)
47b8: 40 88 72 fa mov %sil,-0x6(%rdx)
47bc: 48 89 c6 mov %rax,%rsi
47bf: 48 c1 ee 18 shr $0x18,%rsi
47c3: 40 88 72 fb mov %sil,-0x5(%rdx)
47c7: 48 89 c6 mov %rax,%rsi
47ca: 48 c1 ee 20 shr $0x20,%rsi
47ce: 40 88 72 fc mov %sil,-0x4(%rdx)
47d2: 48 89 c6 mov %rax,%rsi
47d5: 48 c1 ee 28 shr $0x28,%rsi
47d9: 40 88 72 fd mov %sil,-0x3(%rdx)
47dd: 48 89 c6 mov %rax,%rsi
47e0: 48 c1 e8 38 shr $0x38,%rax
47e4: 48 c1 ee 30 shr $0x30,%rsi
47e8: 88 42 ff mov %al,-0x1(%rdx)
47eb: 40 88 72 fe mov %sil,-0x2(%rdx)
47ef: 49 39 cf cmp %rcx,%r15
47f2: 75 ac jne 47a0 <pqcrystals_kyber_fips202_ref_shake128+0xa0>
47f4: 48 81 c3 a8 00 00 00 add $0xa8,%rbx
47fb: 4c 39 eb cmp %r13,%rbx
47fe: 75 80 jne 4780 <pqcrystals_kyber_fips202_ref_shake128+0x80>
4800: 48 ba 31 0c c3 30 0c movabs $0xc30c30c30c30c31,%rdx
4807: c3 30 0c
480a: 48 89 e8 mov %rbp,%rax
480d: 48 c1 e8 03 shr $0x3,%rax
4811: 48 f7 e2 mul %rdx
4814: 48 69 c2 a8 00 00 00 imul $0xa8,%rdx,%rax
481b: 48 29 c5 sub %rax,%rbp
481e: 0f 84 ae 00 00 00 je 48d2 <pqcrystals_kyber_fips202_ref_shake128+0x1d2>
4824: 48 69 5c 24 08 a8 00 imul $0xa8,0x8(%rsp),%rbx
482b: 00 00
482d: 4c 01 f3 add %r14,%rbx
4830: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4835: e8 46 ec ff ff call 3480 <KeccakF1600_StatePermute>
483a: 49 89 e8 mov %rbp,%r8
483d: 31 ff xor %edi,%edi
483f: 89 fe mov %edi,%esi
4841: 89 f8 mov %edi,%eax
4843: 48 29 de sub %rbx,%rsi
4846: eb 5e jmp 48a6 <pqcrystals_kyber_fips202_ref_shake128+0x1a6>
4848: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
484f: 00 00 00 00
4853: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
485a: 00 00 00 00
485e: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4865: 00 00 00 00
4869: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4870: 00 00 00 00
4874: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
487b: 00 00 00 00
487f: 90 nop
4880: 89 c2 mov %eax,%edx
4882: 89 c1 mov %eax,%ecx
4884: 48 83 c3 01 add $0x1,%rbx
4888: 83 c0 01 add $0x1,%eax
488b: c1 ea 03 shr $0x3,%edx
488e: 83 e1 07 and $0x7,%ecx
4891: 48 8b 54 d4 10 mov 0x10(%rsp,%rdx,8),%rdx
4896: c1 e1 03 shl $0x3,%ecx
4899: 48 d3 ea shr %cl,%rdx
489c: 88 53 ff mov %dl,-0x1(%rbx)
489f: 3d a8 00 00 00 cmp $0xa8,%eax
48a4: 74 1e je 48c4 <pqcrystals_kyber_fips202_ref_shake128+0x1c4>
48a6: 48 8d 14 33 lea (%rbx,%rsi,1),%rdx
48aa: 48 39 ea cmp %rbp,%rdx
48ad: 72 d1 jb 4880 <pqcrystals_kyber_fips202_ref_shake128+0x180>
48af: 89 c2 mov %eax,%edx
48b1: 29 fa sub %edi,%edx
48b3: 49 29 d0 sub %rdx,%r8
48b6: 74 1a je 48d2 <pqcrystals_kyber_fips202_ref_shake128+0x1d2>
48b8: 89 c5 mov %eax,%ebp
48ba: 89 c7 mov %eax,%edi
48bc: 4c 01 c5 add %r8,%rbp
48bf: e9 7b ff ff ff jmp 483f <pqcrystals_kyber_fips202_ref_shake128+0x13f>
48c4: 29 f8 sub %edi,%eax
48c6: 49 29 c0 sub %rax,%r8
48c9: 4c 89 c5 mov %r8,%rbp
48cc: 0f 85 5e ff ff ff jne 4830 <pqcrystals_kyber_fips202_ref_shake128+0x130>
48d2: 48 8b 84 24 e8 00 00 mov 0xe8(%rsp),%rax
48d9: 00
48da: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
48e1: 00 00
48e3: 75 12 jne 48f7 <pqcrystals_kyber_fips202_ref_shake128+0x1f7>
48e5: 48 81 c4 f8 00 00 00 add $0xf8,%rsp
48ec: 5b pop %rbx
48ed: 5d pop %rbp
48ee: 41 5c pop %r12
48f0: 41 5d pop %r13
48f2: 41 5e pop %r14
48f4: 41 5f pop %r15
48f6: c3 ret
48f7: e8 84 c7 ff ff call 1080 <__stack_chk_fail@plt>
48fc: 0f 1f 40 00 nopl 0x0(%rax)
0000000000004900 <pqcrystals_kyber_fips202_ref_shake256>:
4900: 41 57 push %r15
4902: 41 56 push %r14
4904: 49 89 fe mov %rdi,%r14
4907: 41 55 push %r13
4909: 49 89 f5 mov %rsi,%r13
490c: 48 89 d6 mov %rdx,%rsi
490f: 41 54 push %r12
4911: 55 push %rbp
4912: 53 push %rbx
4913: 48 81 ec f8 00 00 00 sub $0xf8,%rsp
491a: 64 48 8b 14 25 28 00 mov %fs:0x28,%rdx
4921: 00 00
4923: 48 89 94 24 e8 00 00 mov %rdx,0xe8(%rsp)
492a: 00
492b: 48 89 ca mov %rcx,%rdx
492e: 48 8d 6c 24 10 lea 0x10(%rsp),%rbp
4933: b9 1f 00 00 00 mov $0x1f,%ecx
4938: 48 89 ef mov %rbp,%rdi
493b: e8 30 f4 ff ff call 3d70 <keccak_absorb_once.constprop.1>
4940: 48 b8 f1 f0 f0 f0 f0 movabs $0xf0f0f0f0f0f0f0f1,%rax
4947: f0 f0 f0
494a: 49 f7 e5 mul %r13
494d: 48 c1 ea 07 shr $0x7,%rdx
4951: 48 89 54 24 08 mov %rdx,0x8(%rsp)
4956: 49 81 fd 87 00 00 00 cmp $0x87,%r13
495d: 0f 86 8d 00 00 00 jbe 49f0 <pqcrystals_kyber_fips202_ref_shake256+0xf0>
4963: 4c 69 64 24 08 88 00 imul $0x88,0x8(%rsp),%r12
496a: 00 00
496c: 4c 89 f3 mov %r14,%rbx
496f: 4c 8d bc 24 98 00 00 lea 0x98(%rsp),%r15
4976: 00
4977: 4d 01 f4 add %r14,%r12
497a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
4980: 48 89 ef mov %rbp,%rdi
4983: e8 f8 ea ff ff call 3480 <KeccakF1600_StatePermute>
4988: 48 89 e9 mov %rbp,%rcx
498b: 48 89 da mov %rbx,%rdx
498e: 66 90 xchg %ax,%ax
4990: 48 8b 01 mov (%rcx),%rax
4993: 48 83 c1 08 add $0x8,%rcx
4997: 48 83 c2 08 add $0x8,%rdx
499b: 48 89 c6 mov %rax,%rsi
499e: 88 42 f8 mov %al,-0x8(%rdx)
49a1: 48 c1 ee 10 shr $0x10,%rsi
49a5: 88 62 f9 mov %ah,-0x7(%rdx)
49a8: 40 88 72 fa mov %sil,-0x6(%rdx)
49ac: 48 89 c6 mov %rax,%rsi
49af: 48 c1 ee 18 shr $0x18,%rsi
49b3: 40 88 72 fb mov %sil,-0x5(%rdx)
49b7: 48 89 c6 mov %rax,%rsi
49ba: 48 c1 ee 20 shr $0x20,%rsi
49be: 40 88 72 fc mov %sil,-0x4(%rdx)
49c2: 48 89 c6 mov %rax,%rsi
49c5: 48 c1 ee 28 shr $0x28,%rsi
49c9: 40 88 72 fd mov %sil,-0x3(%rdx)
49cd: 48 89 c6 mov %rax,%rsi
49d0: 48 c1 e8 38 shr $0x38,%rax
49d4: 48 c1 ee 30 shr $0x30,%rsi
49d8: 88 42 ff mov %al,-0x1(%rdx)
49db: 40 88 72 fe mov %sil,-0x2(%rdx)
49df: 49 39 cf cmp %rcx,%r15
49e2: 75 ac jne 4990 <pqcrystals_kyber_fips202_ref_shake256+0x90>
49e4: 48 81 c3 88 00 00 00 add $0x88,%rbx
49eb: 4c 39 e3 cmp %r12,%rbx
49ee: 75 90 jne 4980 <pqcrystals_kyber_fips202_ref_shake256+0x80>
49f0: 48 b8 f1 f0 f0 f0 f0 movabs $0xf0f0f0f0f0f0f0f1,%rax
49f7: f0 f0 f0
49fa: 49 f7 e5 mul %r13
49fd: 48 c1 ea 07 shr $0x7,%rdx
4a01: 48 69 c2 88 00 00 00 imul $0x88,%rdx,%rax
4a08: 49 29 c5 sub %rax,%r13
4a0b: 4d 89 ec mov %r13,%r12
4a0e: 74 7c je 4a8c <pqcrystals_kyber_fips202_ref_shake256+0x18c>
4a10: 48 69 5c 24 08 88 00 imul $0x88,0x8(%rsp),%rbx
4a17: 00 00
4a19: 4c 01 f3 add %r14,%rbx
4a1c: 48 89 ef mov %rbp,%rdi
4a1f: e8 5c ea ff ff call 3480 <KeccakF1600_StatePermute>
4a24: 4d 89 e0 mov %r12,%r8
4a27: 31 ff xor %edi,%edi
4a29: 89 fe mov %edi,%esi
4a2b: 89 f8 mov %edi,%eax
4a2d: 48 29 de sub %rbx,%rsi
4a30: eb 34 jmp 4a66 <pqcrystals_kyber_fips202_ref_shake256+0x166>
4a32: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4a39: 00 00 00 00
4a3d: 0f 1f 00 nopl (%rax)
4a40: 89 c2 mov %eax,%edx
4a42: 89 c1 mov %eax,%ecx
4a44: 48 83 c3 01 add $0x1,%rbx
4a48: 83 c0 01 add $0x1,%eax
4a4b: c1 ea 03 shr $0x3,%edx
4a4e: 83 e1 07 and $0x7,%ecx
4a51: 48 8b 54 d4 10 mov 0x10(%rsp,%rdx,8),%rdx
4a56: c1 e1 03 shl $0x3,%ecx
4a59: 48 d3 ea shr %cl,%rdx
4a5c: 88 53 ff mov %dl,-0x1(%rbx)
4a5f: 3d 88 00 00 00 cmp $0x88,%eax
4a64: 74 1c je 4a82 <pqcrystals_kyber_fips202_ref_shake256+0x182>
4a66: 48 8d 14 33 lea (%rbx,%rsi,1),%rdx
4a6a: 4c 39 e2 cmp %r12,%rdx
4a6d: 72 d1 jb 4a40 <pqcrystals_kyber_fips202_ref_shake256+0x140>
4a6f: 89 c2 mov %eax,%edx
4a71: 29 fa sub %edi,%edx
4a73: 49 29 d0 sub %rdx,%r8
4a76: 74 14 je 4a8c <pqcrystals_kyber_fips202_ref_shake256+0x18c>
4a78: 41 89 c4 mov %eax,%r12d
4a7b: 89 c7 mov %eax,%edi
4a7d: 4d 01 c4 add %r8,%r12
4a80: eb a7 jmp 4a29 <pqcrystals_kyber_fips202_ref_shake256+0x129>
4a82: 29 f8 sub %edi,%eax
4a84: 49 29 c0 sub %rax,%r8
4a87: 4d 89 c4 mov %r8,%r12
4a8a: 75 90 jne 4a1c <pqcrystals_kyber_fips202_ref_shake256+0x11c>
4a8c: 48 8b 84 24 e8 00 00 mov 0xe8(%rsp),%rax
4a93: 00
4a94: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4a9b: 00 00
4a9d: 75 12 jne 4ab1 <pqcrystals_kyber_fips202_ref_shake256+0x1b1>
4a9f: 48 81 c4 f8 00 00 00 add $0xf8,%rsp
4aa6: 5b pop %rbx
4aa7: 5d pop %rbp
4aa8: 41 5c pop %r12
4aaa: 41 5d pop %r13
4aac: 41 5e pop %r14
4aae: 41 5f pop %r15
4ab0: c3 ret
4ab1: e8 ca c5 ff ff call 1080 <__stack_chk_fail@plt>
4ab6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4abd: 00 00 00
0000000000004ac0 <pqcrystals_kyber_fips202_ref_sha3_256>:
4ac0: 55 push %rbp
4ac1: b9 06 00 00 00 mov $0x6,%ecx
4ac6: 53 push %rbx
4ac7: 48 81 ec d8 00 00 00 sub $0xd8,%rsp
4ace: 64 48 8b 1c 25 28 00 mov %fs:0x28,%rbx
4ad5: 00 00
4ad7: 48 89 9c 24 c8 00 00 mov %rbx,0xc8(%rsp)
4ade: 00
4adf: 48 89 fb mov %rdi,%rbx
4ae2: 48 89 e7 mov %rsp,%rdi
4ae5: e8 86 f2 ff ff call 3d70 <keccak_absorb_once.constprop.1>
4aea: 48 89 e7 mov %rsp,%rdi
4aed: e8 8e e9 ff ff call 3480 <KeccakF1600_StatePermute>
4af2: 48 8b 04 24 mov (%rsp),%rax
4af6: 48 89 03 mov %rax,(%rbx)
4af9: 48 8b 44 24 08 mov 0x8(%rsp),%rax
4afe: 48 89 43 08 mov %rax,0x8(%rbx)
4b02: 48 8b 44 24 10 mov 0x10(%rsp),%rax
4b07: 48 89 43 10 mov %rax,0x10(%rbx)
4b0b: 48 8b 44 24 18 mov 0x18(%rsp),%rax
4b10: 48 89 43 18 mov %rax,0x18(%rbx)
4b14: 48 8b 84 24 c8 00 00 mov 0xc8(%rsp),%rax
4b1b: 00
4b1c: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4b23: 00 00
4b25: 75 0a jne 4b31 <pqcrystals_kyber_fips202_ref_sha3_256+0x71>
4b27: 48 81 c4 d8 00 00 00 add $0xd8,%rsp
4b2e: 5b pop %rbx
4b2f: 5d pop %rbp
4b30: c3 ret
4b31: e8 4a c5 ff ff call 1080 <__stack_chk_fail@plt>
4b36: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4b3d: 00 00 00
0000000000004b40 <pqcrystals_kyber_fips202_ref_sha3_512>:
4b40: 41 56 push %r14
4b42: b9 19 00 00 00 mov $0x19,%ecx
4b47: 41 55 push %r13
4b49: 41 54 push %r12
4b4b: 49 89 f4 mov %rsi,%r12
4b4e: 55 push %rbp
4b4f: 48 89 d5 mov %rdx,%rbp
4b52: 53 push %rbx
4b53: 48 89 fb mov %rdi,%rbx
4b56: 48 81 ec d0 00 00 00 sub $0xd0,%rsp
4b5d: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
4b64: 00 00
4b66: 48 89 84 24 c8 00 00 mov %rax,0xc8(%rsp)
4b6d: 00
4b6e: 31 c0 xor %eax,%eax
4b70: 48 89 e7 mov %rsp,%rdi
4b73: 4c 8d 74 24 48 lea 0x48(%rsp),%r14
4b78: f3 48 ab rep stos %rax,%es:(%rdi)
4b7b: 48 83 fa 47 cmp $0x47,%rdx
4b7f: 0f 86 96 00 00 00 jbe 4c1b <pqcrystals_kyber_fips202_ref_sha3_512+0xdb>
4b85: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4b8c: 00 00 00 00
4b90: 4c 89 e0 mov %r12,%rax
4b93: 48 89 e6 mov %rsp,%rsi
4b96: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4b9d: 00 00 00
4ba0: 0f b6 50 01 movzbl 0x1(%rax),%edx
4ba4: 0f b6 48 02 movzbl 0x2(%rax),%ecx
4ba8: 48 83 c0 08 add $0x8,%rax
4bac: 48 c1 e1 10 shl $0x10,%rcx
4bb0: 48 c1 e2 08 shl $0x8,%rdx
4bb4: 48 09 ca or %rcx,%rdx
4bb7: 0f b6 48 f8 movzbl -0x8(%rax),%ecx
4bbb: 48 09 ca or %rcx,%rdx
4bbe: 0f b6 48 fb movzbl -0x5(%rax),%ecx
4bc2: 48 c1 e1 18 shl $0x18,%rcx
4bc6: 48 09 ca or %rcx,%rdx
4bc9: 0f b6 48 fc movzbl -0x4(%rax),%ecx
4bcd: 48 c1 e1 20 shl $0x20,%rcx
4bd1: 48 09 d1 or %rdx,%rcx
4bd4: 0f b6 50 fd movzbl -0x3(%rax),%edx
4bd8: 48 c1 e2 28 shl $0x28,%rdx
4bdc: 48 09 ca or %rcx,%rdx
4bdf: 0f b6 48 fe movzbl -0x2(%rax),%ecx
4be3: 48 c1 e1 30 shl $0x30,%rcx
4be7: 48 09 d1 or %rdx,%rcx
4bea: 0f b6 50 ff movzbl -0x1(%rax),%edx
4bee: 48 c1 e2 38 shl $0x38,%rdx
4bf2: 48 09 ca or %rcx,%rdx
4bf5: 48 31 16 xor %rdx,(%rsi)
4bf8: 48 83 c6 08 add $0x8,%rsi
4bfc: 49 39 f6 cmp %rsi,%r14
4bff: 75 9f jne 4ba0 <pqcrystals_kyber_fips202_ref_sha3_512+0x60>
4c01: 48 83 ed 48 sub $0x48,%rbp
4c05: 48 89 e7 mov %rsp,%rdi
4c08: 49 83 c4 48 add $0x48,%r12
4c0c: e8 6f e8 ff ff call 3480 <KeccakF1600_StatePermute>
4c11: 48 83 fd 47 cmp $0x47,%rbp
4c15: 0f 87 75 ff ff ff ja 4b90 <pqcrystals_kyber_fips202_ref_sha3_512+0x50>
4c1b: 48 85 ed test %rbp,%rbp
4c1e: 0f 84 df 00 00 00 je 4d03 <pqcrystals_kyber_fips202_ref_sha3_512+0x1c3>
4c24: 31 c0 xor %eax,%eax
4c26: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4c2d: 00 00 00 00
4c31: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4c38: 00 00 00 00
4c3c: 0f 1f 40 00 nopl 0x0(%rax)
4c40: 89 c2 mov %eax,%edx
4c42: 89 c1 mov %eax,%ecx
4c44: c1 ea 03 shr $0x3,%edx
4c47: 83 e1 07 and $0x7,%ecx
4c4a: 8d 34 d5 00 00 00 00 lea 0x0(,%rdx,8),%esi
4c51: 41 0f b6 14 04 movzbl (%r12,%rax,1),%edx
4c56: c1 e1 03 shl $0x3,%ecx
4c59: 48 83 c0 01 add $0x1,%rax
4c5d: 48 d3 e2 shl %cl,%rdx
4c60: 48 31 14 34 xor %rdx,(%rsp,%rsi,1)
4c64: 48 39 c5 cmp %rax,%rbp
4c67: 75 d7 jne 4c40 <pqcrystals_kyber_fips202_ref_sha3_512+0x100>
4c69: 89 e8 mov %ebp,%eax
4c6b: 89 e9 mov %ebp,%ecx
4c6d: ba 06 00 00 00 mov $0x6,%edx
4c72: c1 e8 03 shr $0x3,%eax
4c75: 83 e1 07 and $0x7,%ecx
4c78: 8d 04 c5 00 00 00 00 lea 0x0(,%rax,8),%eax
4c7f: c1 e1 03 shl $0x3,%ecx
4c82: 48 01 e0 add %rsp,%rax
4c85: 48 d3 e2 shl %cl,%rdx
4c88: 48 31 10 xor %rdx,(%rax)
4c8b: 48 89 e7 mov %rsp,%rdi
4c8e: 48 0f ba 7c 24 40 3f btcq $0x3f,0x40(%rsp)
4c95: e8 e6 e7 ff ff call 3480 <KeccakF1600_StatePermute>
4c9a: 48 8b 04 24 mov (%rsp),%rax
4c9e: 48 89 03 mov %rax,(%rbx)
4ca1: 48 8b 44 24 08 mov 0x8(%rsp),%rax
4ca6: 48 89 43 08 mov %rax,0x8(%rbx)
4caa: 48 8b 44 24 10 mov 0x10(%rsp),%rax
4caf: 48 89 43 10 mov %rax,0x10(%rbx)
4cb3: 48 8b 44 24 18 mov 0x18(%rsp),%rax
4cb8: 48 89 43 18 mov %rax,0x18(%rbx)
4cbc: 48 8b 44 24 20 mov 0x20(%rsp),%rax
4cc1: 48 89 43 20 mov %rax,0x20(%rbx)
4cc5: 48 8b 44 24 28 mov 0x28(%rsp),%rax
4cca: 48 89 43 28 mov %rax,0x28(%rbx)
4cce: 48 8b 44 24 30 mov 0x30(%rsp),%rax
4cd3: 48 89 43 30 mov %rax,0x30(%rbx)
4cd7: 48 8b 44 24 38 mov 0x38(%rsp),%rax
4cdc: 48 89 43 38 mov %rax,0x38(%rbx)
4ce0: 48 8b 84 24 c8 00 00 mov 0xc8(%rsp),%rax
4ce7: 00
4ce8: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4cef: 00 00
4cf1: 75 1d jne 4d10 <pqcrystals_kyber_fips202_ref_sha3_512+0x1d0>
4cf3: 48 81 c4 d0 00 00 00 add $0xd0,%rsp
4cfa: 5b pop %rbx
4cfb: 5d pop %rbp
4cfc: 41 5c pop %r12
4cfe: 41 5d pop %r13
4d00: 41 5e pop %r14
4d02: c3 ret
4d03: ba 06 00 00 00 mov $0x6,%edx
4d08: 48 89 e0 mov %rsp,%rax
4d0b: e9 78 ff ff ff jmp 4c88 <pqcrystals_kyber_fips202_ref_sha3_512+0x148>
4d10: e8 6b c3 ff ff call 1080 <__stack_chk_fail@plt>
4d15: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4d1c: 00 00 00
4d1f: 90 nop
0000000000004d20 <pqcrystals_kyber768_ref_kyber_shake128_absorb>:
4d20: 48 83 ec 38 sub $0x38,%rsp
4d24: f3 0f 6f 06 movdqu (%rsi),%xmm0
4d28: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
4d2f: 00 00
4d31: 48 89 44 24 28 mov %rax,0x28(%rsp)
4d36: 31 c0 xor %eax,%eax
4d38: 88 54 24 20 mov %dl,0x20(%rsp)
4d3c: ba 22 00 00 00 mov $0x22,%edx
4d41: 0f 29 04 24 movaps %xmm0,(%rsp)
4d45: f3 0f 6f 46 10 movdqu 0x10(%rsi),%xmm0
4d4a: 48 89 e6 mov %rsp,%rsi
4d4d: 88 4c 24 21 mov %cl,0x21(%rsp)
4d51: 0f 29 44 24 10 movaps %xmm0,0x10(%rsp)
4d56: e8 95 f5 ff ff call 42f0 <pqcrystals_kyber_fips202_ref_shake128_absorb_once>
4d5b: 48 8b 44 24 28 mov 0x28(%rsp),%rax
4d60: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4d67: 00 00
4d69: 75 05 jne 4d70 <pqcrystals_kyber768_ref_kyber_shake128_absorb+0x50>
4d6b: 48 83 c4 38 add $0x38,%rsp
4d6f: c3 ret
4d70: e8 0b c3 ff ff call 1080 <__stack_chk_fail@plt>
4d75: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4d7c: 00 00 00 00
0000000000004d80 <pqcrystals_kyber768_ref_kyber_shake256_prf>:
4d80: 48 83 ec 38 sub $0x38,%rsp
4d84: f3 0f 6f 02 movdqu (%rdx),%xmm0
4d88: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
4d8f: 00 00
4d91: 48 89 44 24 28 mov %rax,0x28(%rsp)
4d96: 31 c0 xor %eax,%eax
4d98: 88 4c 24 20 mov %cl,0x20(%rsp)
4d9c: b9 21 00 00 00 mov $0x21,%ecx
4da1: 0f 29 04 24 movaps %xmm0,(%rsp)
4da5: f3 0f 6f 42 10 movdqu 0x10(%rdx),%xmm0
4daa: 48 89 e2 mov %rsp,%rdx
4dad: 0f 29 44 24 10 movaps %xmm0,0x10(%rsp)
4db2: e8 49 fb ff ff call 4900 <pqcrystals_kyber_fips202_ref_shake256>
4db7: 48 8b 44 24 28 mov 0x28(%rsp),%rax
4dbc: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4dc3: 00 00
4dc5: 75 05 jne 4dcc <pqcrystals_kyber768_ref_kyber_shake256_prf+0x4c>
4dc7: 48 83 c4 38 add $0x38,%rsp
4dcb: c3 ret
4dcc: e8 af c2 ff ff call 1080 <__stack_chk_fail@plt>
4dd1: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4dd8: 00 00 00 00
4ddc: 0f 1f 40 00 nopl 0x0(%rax)
0000000000004de0 <pqcrystals_kyber768_ref_kyber_shake256_rkprf>:
4de0: 41 54 push %r12
4de2: 55 push %rbp
4de3: 48 89 fd mov %rdi,%rbp
4de6: 53 push %rbx
4de7: 48 81 ec f0 00 00 00 sub $0xf0,%rsp
4dee: 48 89 74 24 08 mov %rsi,0x8(%rsp)
4df3: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4df8: 64 4c 8b 24 25 28 00 mov %fs:0x28,%r12
4dff: 00 00
4e01: 4c 89 a4 24 e8 00 00 mov %r12,0xe8(%rsp)
4e08: 00
4e09: 49 89 d4 mov %rdx,%r12
4e0c: e8 af f5 ff ff call 43c0 <pqcrystals_kyber_fips202_ref_shake256_init>
4e11: 48 8b 74 24 08 mov 0x8(%rsp),%rsi
4e16: ba 20 00 00 00 mov $0x20,%edx
4e1b: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4e20: e8 db f5 ff ff call 4400 <pqcrystals_kyber_fips202_ref_shake256_absorb>
4e25: ba 40 04 00 00 mov $0x440,%edx
4e2a: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4e2f: 4c 89 e6 mov %r12,%rsi
4e32: e8 c9 f5 ff ff call 4400 <pqcrystals_kyber_fips202_ref_shake256_absorb>
4e37: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
4e3c: e8 ff f6 ff ff call 4540 <pqcrystals_kyber_fips202_ref_shake256_finalize>
4e41: 48 8d 54 24 10 lea 0x10(%rsp),%rdx
4e46: be 20 00 00 00 mov $0x20,%esi
4e4b: 48 89 ef mov %rbp,%rdi
4e4e: e8 2d f7 ff ff call 4580 <pqcrystals_kyber_fips202_ref_shake256_squeeze>
4e53: 48 8b 84 24 e8 00 00 mov 0xe8(%rsp),%rax
4e5a: 00
4e5b: 64 48 2b 04 25 28 00 sub %fs:0x28,%rax
4e62: 00 00
4e64: 75 0c jne 4e72 <pqcrystals_kyber768_ref_kyber_shake256_rkprf+0x92>
4e66: 48 81 c4 f0 00 00 00 add $0xf0,%rsp
4e6d: 5b pop %rbx
4e6e: 5d pop %rbp
4e6f: 41 5c pop %r12
4e71: c3 ret
4e72: e8 09 c2 ff ff call 1080 <__stack_chk_fail@plt>
4e77: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
4e7e: 00 00
0000000000004e80 <randombytes>:
4e80: 55 push %rbp
4e81: 48 89 fd mov %rdi,%rbp
4e84: 53 push %rbx
4e85: 48 89 f3 mov %rsi,%rbx
4e88: 48 83 ec 08 sub $0x8,%rsp
4e8c: 48 85 f6 test %rsi,%rsi
4e8f: 74 4f je 4ee0 <randombytes+0x60>
4e91: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4e98: 00 00 00 00
4e9c: 0f 1f 40 00 nopl 0x0(%rax)
4ea0: 31 c9 xor %ecx,%ecx
4ea2: 31 c0 xor %eax,%eax
4ea4: 48 89 da mov %rbx,%rdx
4ea7: 48 89 ee mov %rbp,%rsi
4eaa: bf 3e 01 00 00 mov $0x13e,%edi
4eaf: e8 ec c1 ff ff call 10a0 <syscall@plt>
4eb4: 48 83 f8 ff cmp $0xffffffffffffffff,%rax
4eb8: 74 0e je 4ec8 <randombytes+0x48>
4eba: 48 29 c3 sub %rax,%rbx
4ebd: 74 21 je 4ee0 <randombytes+0x60>
4ebf: 48 01 c5 add %rax,%rbp
4ec2: eb dc jmp 4ea0 <randombytes+0x20>
4ec4: 0f 1f 40 00 nopl 0x0(%rax)
4ec8: e8 83 c1 ff ff call 1050 <__errno_location@plt>
4ecd: 83 38 04 cmpl $0x4,(%rax)
4ed0: 74 ce je 4ea0 <randombytes+0x20>
4ed2: e9 e9 c1 ff ff jmp 10c0 <randombytes.cold>
4ed7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
4ede: 00 00
4ee0: 48 83 c4 08 add $0x8,%rsp
4ee4: 5b pop %rbx
4ee5: 5d pop %rbp
4ee6: c3 ret
4ee7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
4eee: 00 00
0000000000004ef0 <cpucycles_overhead>:
4ef0: be a0 86 01 00 mov $0x186a0,%esi
4ef5: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
4efc: 0f 1f 40 00 nopl 0x0(%rax)
4f00: 0f 31 rdtsc
4f02: 48 c1 e2 20 shl $0x20,%rdx
4f06: 48 09 d0 or %rdx,%rax
4f09: 48 89 c7 mov %rax,%rdi
4f0c: 0f 31 rdtsc
4f0e: 48 c1 e2 20 shl $0x20,%rdx
4f12: 48 09 d0 or %rdx,%rax
4f15: 48 29 f8 sub %rdi,%rax
4f18: 48 39 c1 cmp %rax,%rcx
4f1b: 48 0f 47 c8 cmova %rax,%rcx
4f1f: 83 ee 01 sub $0x1,%esi
4f22: 75 dc jne 4f00 <cpucycles_overhead+0x10>
4f24: 48 89 c8 mov %rcx,%rax
4f27: c3 ret
4f28: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4f2f: 00 00 00
4f32: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
4f39: 00 00 00
4f3c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000004f40 <cmp_uint64>:
4f40: 48 8b 17 mov (%rdi),%rdx
4f43: 48 8b 0e mov (%rsi),%rcx
4f46: b8 ff ff ff ff mov $0xffffffff,%eax
4f4b: 48 39 ca cmp %rcx,%rdx
4f4e: 72 08 jb 4f58 <cmp_uint64+0x18>
4f50: 31 c0 xor %eax,%eax
4f52: 48 39 d1 cmp %rdx,%rcx
4f55: 0f 92 c0 setb %al
4f58: c3 ret
4f59: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000004f60 <print_results>:
4f60: 48 83 fa 01 cmp $0x1,%rdx
4f64: 0f 86 66 01 00 00 jbe 50d0 <print_results+0x170>
4f6a: 41 54 push %r12
4f6c: 49 89 f9 mov %rdi,%r9
4f6f: 55 push %rbp
4f70: 48 89 d5 mov %rdx,%rbp
4f73: 53 push %rbx
4f74: 48 89 f3 mov %rsi,%rbx
4f77: 48 83 ec 10 sub $0x10,%rsp
4f7b: 48 8b 3d d6 40 00 00 mov 0x40d6(%rip),%rdi # 9058 <overhead.0>
4f82: 48 83 ff ff cmp $0xffffffffffffffff,%rdi
4f86: 0f 84 24 01 00 00 je 50b0 <print_results+0x150>
4f8c: 4c 8d 65 ff lea -0x1(%rbp),%r12
4f90: 49 83 fc 02 cmp $0x2,%r12
4f94: 0f 86 56 01 00 00 jbe 50f0 <print_results+0x190>
4f9a: 48 89 e8 mov %rbp,%rax
4f9d: 48 8b 0b mov (%rbx),%rcx
4fa0: 48 d1 e8 shr $1,%rax
4fa3: 4c 8d 44 00 fe lea -0x2(%rax,%rax,1),%r8
4fa8: 31 c0 xor %eax,%eax
4faa: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4fb1: 00 00 00 00
4fb5: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
4fbc: 00 00 00 00
4fc0: 48 8b 74 c3 08 mov 0x8(%rbx,%rax,8),%rsi
4fc5: 48 89 f2 mov %rsi,%rdx
4fc8: 48 29 fa sub %rdi,%rdx
4fcb: 48 29 ca sub %rcx,%rdx
4fce: 48 89 14 c3 mov %rdx,(%rbx,%rax,8)
4fd2: 48 83 c0 02 add $0x2,%rax
4fd6: 48 8b 0c c3 mov (%rbx,%rax,8),%rcx
4fda: 48 89 ca mov %rcx,%rdx
4fdd: 48 29 fa sub %rdi,%rdx
4fe0: 48 29 f2 sub %rsi,%rdx
4fe3: 48 89 54 c3 f8 mov %rdx,-0x8(%rbx,%rax,8)
4fe8: 4c 39 c0 cmp %r8,%rax
4feb: 75 d3 jne 4fc0 <print_results+0x60>
4fed: 49 8d 50 01 lea 0x1(%r8),%rdx
4ff1: 48 8b 04 d3 mov (%rbx,%rdx,8),%rax
4ff5: 4a 2b 04 c3 sub (%rbx,%r8,8),%rax
4ff9: 48 29 f8 sub %rdi,%rax
4ffc: 4a 89 04 c3 mov %rax,(%rbx,%r8,8)
5000: 4c 39 e2 cmp %r12,%rdx
5003: 0f 82 8f 00 00 00 jb 5098 <print_results+0x138>
5009: 4c 89 cf mov %r9,%rdi
500c: e8 4f c0 ff ff call 1060 <puts@plt>
5011: 4c 89 e6 mov %r12,%rsi
5014: ba 08 00 00 00 mov $0x8,%edx
5019: 48 89 df mov %rbx,%rdi
501c: 48 8d 0d 1d ff ff ff lea -0xe3(%rip),%rcx # 4f40 <cmp_uint64>
5023: e8 48 c0 ff ff call 1070 <qsort@plt>
5028: 4c 89 e0 mov %r12,%rax
502b: 48 d1 e8 shr $1,%rax
502e: 48 8b 34 c3 mov (%rbx,%rax,8),%rsi
5032: 41 f6 c4 01 test $0x1,%r12b
5036: 74 50 je 5088 <print_results+0x128>
5038: 48 8d 3d ea 11 00 00 lea 0x11ea(%rip),%rdi # 6229 <KeccakF_RoundConstants+0x109>
503f: 31 c0 xor %eax,%eax
5041: e8 4a c0 ff ff call 1090 <printf@plt>
5046: 48 8d 54 eb f8 lea -0x8(%rbx,%rbp,8),%rdx
504b: 31 c0 xor %eax,%eax
504d: 0f 1f 00 nopl (%rax)
5050: 48 03 03 add (%rbx),%rax
5053: 48 83 c3 08 add $0x8,%rbx
5057: 48 39 d3 cmp %rdx,%rbx
505a: 75 f4 jne 5050 <print_results+0xf0>
505c: 31 d2 xor %edx,%edx
505e: 48 8d 3d df 11 00 00 lea 0x11df(%rip),%rdi # 6244 <KeccakF_RoundConstants+0x124>
5065: 49 f7 f4 div %r12
5068: 48 89 c6 mov %rax,%rsi
506b: 31 c0 xor %eax,%eax
506d: e8 1e c0 ff ff call 1090 <printf@plt>
5072: 48 83 c4 10 add $0x10,%rsp
5076: bf 0a 00 00 00 mov $0xa,%edi
507b: 5b pop %rbx
507c: 5d pop %rbp
507d: 41 5c pop %r12
507f: e9 ac bf ff ff jmp 1030 <putchar@plt>
5084: 0f 1f 40 00 nopl 0x0(%rax)
5088: 48 03 74 c3 f8 add -0x8(%rbx,%rax,8),%rsi
508d: 48 d1 ee shr $1,%rsi
5090: eb a6 jmp 5038 <print_results+0xd8>
5092: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
5098: 48 8b 44 d3 08 mov 0x8(%rbx,%rdx,8),%rax
509d: 48 2b 04 d3 sub (%rbx,%rdx,8),%rax
50a1: 48 29 f8 sub %rdi,%rax
50a4: 48 89 04 d3 mov %rax,(%rbx,%rdx,8)
50a8: e9 5c ff ff ff jmp 5009 <print_results+0xa9>
50ad: 0f 1f 00 nopl (%rax)
50b0: 4c 89 4c 24 08 mov %r9,0x8(%rsp)
50b5: e8 36 fe ff ff call 4ef0 <cpucycles_overhead>
50ba: 4c 8b 4c 24 08 mov 0x8(%rsp),%r9
50bf: 48 89 05 92 3f 00 00 mov %rax,0x3f92(%rip) # 9058 <overhead.0>
50c6: 48 89 c7 mov %rax,%rdi
50c9: e9 be fe ff ff jmp 4f8c <print_results+0x2c>
50ce: 66 90 xchg %ax,%ax
50d0: 48 8b 0d 89 3f 00 00 mov 0x3f89(%rip),%rcx # 9060 <stderr@GLIBC_2.2.5>
50d7: ba 26 00 00 00 mov $0x26,%edx
50dc: be 01 00 00 00 mov $0x1,%esi
50e1: 48 8d 3d f8 10 00 00 lea 0x10f8(%rip),%rdi # 61e0 <KeccakF_RoundConstants+0xc0>
50e8: e9 c3 bf ff ff jmp 10b0 <fwrite@plt>
50ed: 0f 1f 00 nopl (%rax)
50f0: 45 31 c0 xor %r8d,%r8d
50f3: e9 f5 fe ff ff jmp 4fed <print_results+0x8d>
Disassembly of section .fini:
00000000000050f8 <_fini>:
50f8: f3 0f 1e fa endbr64
50fc: 48 83 ec 08 sub $0x8,%rsp
5100: 48 83 c4 08 add $0x8,%rsp
5104: c3 ret