// File: /workspace/github_cpp_makefile_star2_O3/jswaff[P]prophet3/test/pos__test.cpp
// Function: test_pos_consistency(position*)
bool test_pos_consistency(position *pos) {

    assert(pos);

    // king placement
    square_t wkingsq=NO_SQUARE;
    for (int32 sq=0;sq<64;sq++) {
        if (pos->piece[sq]==KING) {
            wkingsq=(square_t)sq;
            break;
        }
    }
    if (wkingsq != pos->white_king) {
        print("wkingsq: %d, %d\n",wkingsq,pos->white_king);
        return false;
    }

    square_t bkingsq=NO_SQUARE;
    for (int32 sq=0;sq<64;sq++) {
        if (pos->piece[sq]==-KING) {
            bkingsq=(square_t)sq;
            break;
        }
    }
    if (bkingsq != pos->black_king) {
        print("bkingsq: %d, %d\n",bkingsq,pos->black_king);
        return false;
    }

    // ep square
    if (pos->ep_sq!=NO_SQUARE) {
        if (pos->player==BLACK) {
            assert(get_rank(pos->ep_sq)==RANK_3);
            assert(pos->piece[pos->ep_sq-8]==PAWN);
        } else {
            assert(get_rank(pos->ep_sq)==RANK_6);
            assert(pos->piece[pos->ep_sq+8]==-PAWN);
        }
    }

    // piece counts and bitmaps
    uint32 num_wpawns=0,num_wrooks=0,num_wknights=0,num_wbishops=0,num_wqueens=0;
    uint32 num_bpawns=0,num_brooks=0,num_bknights=0,num_bbishops=0,num_bqueens=0;

    uint64 bb_wpawns=0,bb_wrooks=0,bb_wknights=0,bb_wbishops=0,bb_wqueens=0,bb_wpieces=0;
    uint64 bb_bpawns=0,bb_brooks=0,bb_bknights=0,bb_bbishops=0,bb_bqueens=0,bb_bpieces=0;

    for (int32 sq=0;sq<64;sq++) {
        if (pos->piece[sq] > NO_PIECE) {
            bb_wpieces |= bb_squares[sq];
        } else if (pos->piece[sq] < NO_PIECE) {
            bb_bpieces |= bb_squares[sq];
        }

        if (pos->piece[sq]==PAWN) {
            num_wpawns++;
            bb_wpawns |= bb_squares[sq];
        } else if (pos->piece[sq]==-PAWN) {
            num_bpawns++;
            bb_bpawns |= bb_squares[sq];
        } else if (pos->piece[sq]==ROOK) {
            num_wrooks++;
            bb_wrooks |= bb_squares[sq];
        } else if (pos->piece[sq]==-ROOK) {
            num_brooks++;
            bb_brooks |= bb_squares[sq];
        } else if (pos->piece[sq]==KNIGHT) {
            num_wknights++;
            bb_wknights |= bb_squares[sq];
        } else if (pos->piece[sq]==-KNIGHT) {
            num_bknights++;
            bb_bknights |= bb_squares[sq];
        } else if (pos->piece[sq]==BISHOP) {
            num_wbishops++;
            bb_wbishops |= bb_squares[sq];
        } else if (pos->piece[sq]==-BISHOP) {
            num_bbishops++;
            bb_bbishops |= bb_squares[sq];
        } else if (pos->piece[sq]==QUEEN) {
            num_wqueens++;
            bb_wqueens |= bb_squares[sq];
        } else if (pos->piece[sq]==-QUEEN) {
            num_bqueens++;
            bb_bqueens |= bb_squares[sq];
        }
    }

    assert(bb_wpawns==pos->white_pawns);
    assert(get_num_bits(bb_wpawns)==num_wpawns);
    assert(num_wpawns==pos->piece_counts[WHITE][PAWN]);

    assert(bb_bpawns==pos->black_pawns);
    assert(get_num_bits(bb_bpawns)==num_bpawns);
    assert(num_bpawns==pos->piece_counts[BLACK][PAWN]);

    assert(bb_wknights==pos->white_knights);
    assert(get_num_bits(bb_wknights)==num_wknights);
    assert(num_wknights==pos->piece_counts[WHITE][KNIGHT]);

    assert(bb_bknights==pos->black_knights);
    assert(get_num_bits(bb_bknights)==num_bknights);
    assert(num_bknights==pos->piece_counts[BLACK][KNIGHT]);

    assert(bb_wbishops==pos->white_bishops);
    assert(get_num_bits(bb_wbishops)==num_wbishops);
    assert(num_wbishops==pos->piece_counts[WHITE][BISHOP]);

    assert(bb_bbishops==pos->black_bishops);
    assert(get_num_bits(bb_bbishops)==num_bbishops);
    assert(num_bbishops==pos->piece_counts[BLACK][BISHOP]);

    assert(bb_wrooks==pos->white_rooks);
    assert(get_num_bits(bb_wrooks)==num_wrooks);
    assert(num_wrooks==pos->piece_counts[WHITE][ROOK]);

    assert(bb_brooks==pos->black_rooks);
    assert(get_num_bits(bb_brooks)==num_brooks);
    assert(num_brooks==pos->piece_counts[BLACK][ROOK]);

    assert(bb_wqueens==pos->white_queens);
    assert(get_num_bits(bb_wqueens)==num_wqueens);
    assert(num_wqueens==pos->piece_counts[WHITE][QUEEN]);

    assert(bb_bqueens==pos->black_queens);
    assert(get_num_bits(bb_bqueens)==num_bqueens);
    assert(num_bqueens==pos->piece_counts[BLACK][QUEEN]);

    assert(bb_wpieces==pos->white_pieces);
    assert(bb_bpieces==pos->black_pieces);

    // assert casting rights make sense
    if (can_castle_bq(pos)) {
        assert(pos->piece[E8]==-KING);
        assert(pos->piece[A8]==-ROOK);
    }
    if (can_castle_bk(pos)) {
        assert(pos->piece[E8]==-KING);
        assert(pos->piece[H8]==-ROOK);
    }
    if (can_castle_wq(pos)) {
        assert(pos->piece[E1]==KING);
        assert(pos->piece[A1]==ROOK);
    }
    if (can_castle_wk(pos)) {
        assert(pos->piece[E1]==KING);
        assert(pos->piece[H1]==ROOK);
    }

    assert(pos->hash_key==build_hash_key(pos));
    assert(pos->pawn_key==build_pawn_key(pos));

    return true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
testq %rdi, %rdi
je 0x236ad
movq %rdi, %rbx
xorl %esi, %esi
cmpl $0x6, (%rbx,%rsi,4)
je 0x23204
incq %rsi
cmpq $0x40, %rsi
jne 0x231f0
movl $0x40, %esi
movl 0x14c(%rbx), %edx
cmpl %edx, %esi
jne 0x2327e
xorl %esi, %esi
cmpl $-0x6, (%rbx,%rsi,4)
je 0x23224
incq %rsi
cmpq $0x40, %rsi
jne 0x23210
movl $0x40, %esi
movl 0x150(%rbx), %edx
cmpl %edx, %esi
jne 0x23287
movl 0x13c(%rbx), %edi
cmpl $0x40, %edi
je 0x232b7
movl 0x138(%rbx), %ebp
callq 0xca69
testl %ebp, %ebp
je 0x2329c
cmpl $0x2, %eax
jne 0x23be2
movslq 0x13c(%rbx), %rax
cmpl $-0x1, 0x20(%rbx,%rax,4)
je 0x232b7
leaq 0x12e14(%rip), %rdi     # 0x3607a
leaq 0x1249b(%rip), %rsi     # 0x35708
leaq 0x12d65(%rip), %rcx     # 0x35fd9
movl $0x13c, %edx            # imm = 0x13C
callq 0x20d0
leaq 0x12d7a(%rip), %rdi     # 0x35fff
jmp 0x2328e
leaq 0x12d82(%rip), %rdi     # 0x36010
xorl %ebx, %ebx
xorl %eax, %eax
callq 0x64b9
jmp 0x2369c
cmpl $0x5, %eax
jne 0x23c01
movslq 0x13c(%rbx), %rax
cmpl $0x1, -0x20(%rbx,%rax,4)
jne 0x23c20
xorl %eax, %eax
leaq 0xd71f0(%rip), %rcx     # 0xfa4b0
leaq 0x12401(%rip), %rdx     # 0x356c8
xorl %ebp, %ebp
xorl %r9d, %r9d
movq $0x0, 0x38(%rsp)
movq $0x0, 0x48(%rsp)
movq $0x0, 0x28(%rsp)
xorl %r13d, %r13d
xorl %r14d, %r14d
xorl %r11d, %r11d
movq $0x0, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
movq $0x0, 0x30(%rsp)
xorl %edi, %edi
xorl %r10d, %r10d
movl $0x0, 0x14(%rsp)
movl $0x0, 0x1c(%rsp)
movl $0x0, 0xc(%rsp)
xorl %r15d, %r15d
movl $0x0, 0x8(%rsp)
movl $0x0, 0x18(%rsp)
movl $0x0, 0x20(%rsp)
movl $0x0, 0x10(%rsp)
xorl %r12d, %r12d
movl (%rbx,%rax,4), %r8d
testl %r8d, %r8d
jle 0x2337a
movq (%rcx,%rax,8), %rsi
orq %rsi, %r14
addl $0x5, %r8d
cmpl $0xa, %r8d
ja 0x233de
movslq (%rdx,%r8,4), %r8
addq %rdx, %r8
jmpq *%r8
incl %r10d
orq %rsi, %r9
jmp 0x233de
jns 0x233de
movq (%rcx,%rax,8), %rsi
orq %rsi, %rbp
jmp 0x2335e
incl 0x14(%rsp)
orq %rsi, 0x38(%rsp)
jmp 0x233de
incl %r12d
orq %rsi, %rdi
jmp 0x233de
incl 0xc(%rsp)
orq %rsi, 0x28(%rsp)
jmp 0x233de
incl 0x20(%rsp)
orq %rsi, 0x50(%rsp)
jmp 0x233de
incl 0x18(%rsp)
orq %rsi, 0x40(%rsp)
jmp 0x233de
incl 0x1c(%rsp)
orq %rsi, 0x48(%rsp)
jmp 0x233de
incl %r15d
orq %rsi, %r13
jmp 0x233de
incl 0x8(%rsp)
orq %rsi, %r11
jmp 0x233de
incl 0x10(%rsp)
orq %rsi, 0x30(%rsp)
incq %rax
cmpq $0x40, %rax
jne 0x2334e
movq %r11, 0x60(%rsp)
movl %r10d, 0x24(%rsp)
movq %r9, 0x58(%rsp)
cmpq 0x158(%rbx), %rdi
jne 0x236cc
callq 0x3b14
cmpl %r12d, %eax
jne 0x236eb
cmpl 0x120(%rbx), %r12d
jne 0x2370a
cmpq 0x160(%rbx), %r13
jne 0x23729
movq %r13, %rdi
callq 0x3b14
cmpl %r15d, %eax
jne 0x23748
cmpl 0x104(%rbx), %r15d
jne 0x23767
movq 0x50(%rsp), %rdi
cmpq 0x168(%rbx), %rdi
jne 0x23786
callq 0x3b14
movl 0x20(%rsp), %ecx
cmpl %ecx, %eax
jne 0x237a5
cmpl 0x124(%rbx), %ecx
movq 0x48(%rsp), %rdi
jne 0x237c4
cmpq 0x170(%rbx), %rdi
jne 0x237e3
callq 0x3b14
movl 0x1c(%rsp), %ecx
cmpl %ecx, %eax
jne 0x23802
cmpl 0x108(%rbx), %ecx
movq 0x40(%rsp), %rdi
jne 0x23821
cmpq 0x178(%rbx), %rdi
jne 0x23840
callq 0x3b14
movl 0x18(%rsp), %ecx
cmpl %ecx, %eax
jne 0x2385f
cmpl 0x128(%rbx), %ecx
movq 0x38(%rsp), %rdi
jne 0x2387e
cmpq 0x180(%rbx), %rdi
jne 0x2389d
callq 0x3b14
movl 0x14(%rsp), %ecx
cmpl %ecx, %eax
jne 0x238bc
cmpl 0x10c(%rbx), %ecx
movq 0x30(%rsp), %rdi
jne 0x238db
cmpq 0x188(%rbx), %rdi
jne 0x238fa
callq 0x3b14
movl 0x10(%rsp), %ecx
cmpl %ecx, %eax
jne 0x23919
cmpl 0x12c(%rbx), %ecx
movq 0x28(%rsp), %rdi
jne 0x23938
cmpq 0x190(%rbx), %rdi
jne 0x23957
callq 0x3b14
movl 0xc(%rsp), %ecx
cmpl %ecx, %eax
jne 0x23976
cmpl 0x110(%rbx), %ecx
movq 0x60(%rsp), %rdi
jne 0x23995
cmpq 0x198(%rbx), %rdi
jne 0x239b4
callq 0x3b14
movl 0x8(%rsp), %ecx
cmpl %ecx, %eax
jne 0x239d3
cmpl 0x130(%rbx), %ecx
movq 0x58(%rsp), %rdi
jne 0x239f2
cmpq 0x1a0(%rbx), %rdi
jne 0x23a11
callq 0x3b14
movl 0x24(%rsp), %ecx
cmpl %ecx, %eax
jne 0x23a30
cmpl 0x114(%rbx), %ecx
jne 0x23a4f
cmpq 0x1a8(%rbx), %r14
jne 0x23a6e
cmpq 0x1b0(%rbx), %rbp
jne 0x23a8d
movq %rbx, %rdi
callq 0xa941
testb %al, %al
je 0x235fe
cmpl $-0x6, 0x10(%rbx)
jne 0x23aea
cmpl $-0x4, (%rbx)
jne 0x23b09
movq %rbx, %rdi
callq 0xa935
testb %al, %al
je 0x2361e
cmpl $-0x6, 0x10(%rbx)
jne 0x23b28
cmpl $-0x4, 0x1c(%rbx)
jne 0x23b47
movq %rbx, %rdi
callq 0xa92a
testb %al, %al
je 0x23644
cmpl $0x6, 0xf0(%rbx)
jne 0x23b66
cmpl $0x4, 0xe0(%rbx)
jne 0x23b85
movq %rbx, %rdi
callq 0xa921
testb %al, %al
je 0x2366a
cmpl $0x6, 0xf0(%rbx)
jne 0x23ba4
cmpl $0x4, 0xfc(%rbx)
jne 0x23bc3
movq 0x1b8(%rbx), %r14
movq %rbx, %rdi
callq 0x5ee8
cmpq %rax, %r14
jne 0x23aac
movq 0x1c0(%rbx), %r14
movq %rbx, %rdi
callq 0x5fb7
movb $0x1, %bl
cmpq %rax, %r14
jne 0x23acb
movl %ebx, %eax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x5ed5(%rip), %rdi      # 0x29589
leaq 0x1204d(%rip), %rsi     # 0x35708
leaq 0x12917(%rip), %rcx     # 0x35fd9
movl $0x11a, %edx            # imm = 0x11A
callq 0x20d0
leaq 0x129c7(%rip), %rdi     # 0x3609a
leaq 0x1202e(%rip), %rsi     # 0x35708
leaq 0x128f8(%rip), %rcx     # 0x35fd9
movl $0x16f, %edx            # imm = 0x16F
callq 0x20d0
leaq 0x129c4(%rip), %rdi     # 0x360b6
leaq 0x1200f(%rip), %rsi     # 0x35708
leaq 0x128d9(%rip), %rcx     # 0x35fd9
movl $0x170, %edx            # imm = 0x170
callq 0x20d0
leaq 0x129c9(%rip), %rdi     # 0x360da
leaq 0x11ff0(%rip), %rsi     # 0x35708
leaq 0x128ba(%rip), %rcx     # 0x35fd9
movl $0x171, %edx            # imm = 0x171
callq 0x20d0
leaq 0x129d5(%rip), %rdi     # 0x36105
leaq 0x11fd1(%rip), %rsi     # 0x35708
leaq 0x1289b(%rip), %rcx     # 0x35fd9
movl $0x173, %edx            # imm = 0x173
callq 0x20d0
leaq 0x129d2(%rip), %rdi     # 0x36121
leaq 0x11fb2(%rip), %rsi     # 0x35708
leaq 0x1287c(%rip), %rcx     # 0x35fd9
movl $0x174, %edx            # imm = 0x174
callq 0x20d0
leaq 0x129d7(%rip), %rdi     # 0x36145
leaq 0x11f93(%rip), %rsi     # 0x35708
leaq 0x1285d(%rip), %rcx     # 0x35fd9
movl $0x175, %edx            # imm = 0x175
callq 0x20d0
leaq 0x129e3(%rip), %rdi     # 0x36170
leaq 0x11f74(%rip), %rsi     # 0x35708
leaq 0x1283e(%rip), %rcx     # 0x35fd9
movl $0x177, %edx            # imm = 0x177
callq 0x20d0
leaq 0x129e4(%rip), %rdi     # 0x36190
leaq 0x11f55(%rip), %rsi     # 0x35708
leaq 0x1281f(%rip), %rcx     # 0x35fd9
movl $0x178, %edx            # imm = 0x178
callq 0x20d0
leaq 0x129ed(%rip), %rdi     # 0x361b8
leaq 0x11f36(%rip), %rsi     # 0x35708
leaq 0x12800(%rip), %rcx     # 0x35fd9
movl $0x179, %edx            # imm = 0x179
callq 0x20d0
leaq 0x129fd(%rip), %rdi     # 0x361e7
leaq 0x11f17(%rip), %rsi     # 0x35708
leaq 0x127e1(%rip), %rcx     # 0x35fd9
movl $0x17b, %edx            # imm = 0x17B
callq 0x20d0
leaq 0x129fe(%rip), %rdi     # 0x36207
leaq 0x11ef8(%rip), %rsi     # 0x35708
leaq 0x127c2(%rip), %rcx     # 0x35fd9
movl $0x17c, %edx            # imm = 0x17C
callq 0x20d0
leaq 0x12a07(%rip), %rdi     # 0x3622f
leaq 0x11ed9(%rip), %rsi     # 0x35708
leaq 0x127a3(%rip), %rcx     # 0x35fd9
movl $0x17d, %edx            # imm = 0x17D
callq 0x20d0
leaq 0x12a17(%rip), %rdi     # 0x3625e
leaq 0x11eba(%rip), %rsi     # 0x35708
leaq 0x12784(%rip), %rcx     # 0x35fd9
movl $0x17f, %edx            # imm = 0x17F
callq 0x20d0
leaq 0x12a18(%rip), %rdi     # 0x3627e
leaq 0x11e9b(%rip), %rsi     # 0x35708
leaq 0x12765(%rip), %rcx     # 0x35fd9
movl $0x180, %edx            # imm = 0x180
callq 0x20d0
leaq 0x12a21(%rip), %rdi     # 0x362a6
leaq 0x11e7c(%rip), %rsi     # 0x35708
leaq 0x12746(%rip), %rcx     # 0x35fd9
movl $0x181, %edx            # imm = 0x181
callq 0x20d0
leaq 0x12a31(%rip), %rdi     # 0x362d5
leaq 0x11e5d(%rip), %rsi     # 0x35708
leaq 0x12727(%rip), %rcx     # 0x35fd9
movl $0x183, %edx            # imm = 0x183
callq 0x20d0
leaq 0x12a32(%rip), %rdi     # 0x362f5
leaq 0x11e3e(%rip), %rsi     # 0x35708
leaq 0x12708(%rip), %rcx     # 0x35fd9
movl $0x184, %edx            # imm = 0x184
callq 0x20d0
leaq 0x12a3b(%rip), %rdi     # 0x3631d
leaq 0x11e1f(%rip), %rsi     # 0x35708
leaq 0x126e9(%rip), %rcx     # 0x35fd9
movl $0x185, %edx            # imm = 0x185
callq 0x20d0
leaq 0x12a4b(%rip), %rdi     # 0x3634c
leaq 0x11e00(%rip), %rsi     # 0x35708
leaq 0x126ca(%rip), %rcx     # 0x35fd9
movl $0x187, %edx            # imm = 0x187
callq 0x20d0
leaq 0x12a48(%rip), %rdi     # 0x36368
leaq 0x11de1(%rip), %rsi     # 0x35708
leaq 0x126ab(%rip), %rcx     # 0x35fd9
movl $0x188, %edx            # imm = 0x188
callq 0x20d0
leaq 0x12a4d(%rip), %rdi     # 0x3638c
leaq 0x11dc2(%rip), %rsi     # 0x35708
leaq 0x1268c(%rip), %rcx     # 0x35fd9
movl $0x189, %edx            # imm = 0x189
callq 0x20d0
leaq 0x12a59(%rip), %rdi     # 0x363b7
leaq 0x11da3(%rip), %rsi     # 0x35708
leaq 0x1266d(%rip), %rcx     # 0x35fd9
movl $0x18b, %edx            # imm = 0x18B
callq 0x20d0
leaq 0x12a56(%rip), %rdi     # 0x363d3
leaq 0x11d84(%rip), %rsi     # 0x35708
leaq 0x1264e(%rip), %rcx     # 0x35fd9
movl $0x18c, %edx            # imm = 0x18C
callq 0x20d0
leaq 0x12a5b(%rip), %rdi     # 0x363f7
leaq 0x11d65(%rip), %rsi     # 0x35708
leaq 0x1262f(%rip), %rcx     # 0x35fd9
movl $0x18d, %edx            # imm = 0x18D
callq 0x20d0
leaq 0x12a67(%rip), %rdi     # 0x36422
leaq 0x11d46(%rip), %rsi     # 0x35708
leaq 0x12610(%rip), %rcx     # 0x35fd9
movl $0x18f, %edx            # imm = 0x18F
callq 0x20d0
leaq 0x12a66(%rip), %rdi     # 0x36440
leaq 0x11d27(%rip), %rsi     # 0x35708
leaq 0x125f1(%rip), %rcx     # 0x35fd9
movl $0x190, %edx            # imm = 0x190
callq 0x20d0
leaq 0x12a6d(%rip), %rdi     # 0x36466
leaq 0x11d08(%rip), %rsi     # 0x35708
leaq 0x125d2(%rip), %rcx     # 0x35fd9
movl $0x191, %edx            # imm = 0x191
callq 0x20d0
leaq 0x12a7b(%rip), %rdi     # 0x36493
leaq 0x11ce9(%rip), %rsi     # 0x35708
leaq 0x125b3(%rip), %rcx     # 0x35fd9
movl $0x193, %edx            # imm = 0x193
callq 0x20d0
leaq 0x12a7a(%rip), %rdi     # 0x364b1
leaq 0x11cca(%rip), %rsi     # 0x35708
leaq 0x12594(%rip), %rcx     # 0x35fd9
movl $0x194, %edx            # imm = 0x194
callq 0x20d0
leaq 0x12a81(%rip), %rdi     # 0x364d7
leaq 0x11cab(%rip), %rsi     # 0x35708
leaq 0x12575(%rip), %rcx     # 0x35fd9
movl $0x195, %edx            # imm = 0x195
callq 0x20d0
leaq 0x12a8f(%rip), %rdi     # 0x36504
leaq 0x11c8c(%rip), %rsi     # 0x35708
leaq 0x12556(%rip), %rcx     # 0x35fd9
movl $0x197, %edx            # imm = 0x197
callq 0x20d0
leaq 0x12a8e(%rip), %rdi     # 0x36522
leaq 0x11c6d(%rip), %rsi     # 0x35708
leaq 0x12537(%rip), %rcx     # 0x35fd9
movl $0x198, %edx            # imm = 0x198
callq 0x20d0
leaq 0x5bbf(%rip), %rdi      # 0x29672
leaq 0x11c4e(%rip), %rsi     # 0x35708
leaq 0x12518(%rip), %rcx     # 0x35fd9
movl $0x1ac, %edx            # imm = 0x1AC
callq 0x20d0
leaq 0x12aef(%rip), %rdi     # 0x365c1
leaq 0x11c2f(%rip), %rsi     # 0x35708
leaq 0x124f9(%rip), %rcx     # 0x35fd9
movl $0x1ad, %edx            # imm = 0x1AD
callq 0x20d0
leaq 0x12a4f(%rip), %rdi     # 0x36540
leaq 0x11c10(%rip), %rsi     # 0x35708
leaq 0x124da(%rip), %rcx     # 0x35fd9
movl $0x19c, %edx            # imm = 0x19C
callq 0x20d0
leaq 0x12a46(%rip), %rdi     # 0x36556
leaq 0x11bf1(%rip), %rsi     # 0x35708
leaq 0x124bb(%rip), %rcx     # 0x35fd9
movl $0x19d, %edx            # imm = 0x19D
callq 0x20d0
leaq 0x12a11(%rip), %rdi     # 0x36540
leaq 0x11bd2(%rip), %rsi     # 0x35708
leaq 0x1249c(%rip), %rcx     # 0x35fd9
movl $0x1a0, %edx            # imm = 0x1A0
callq 0x20d0
leaq 0x12a1e(%rip), %rdi     # 0x3656c
leaq 0x11bb3(%rip), %rsi     # 0x35708
leaq 0x1247d(%rip), %rcx     # 0x35fd9
movl $0x1a1, %edx            # imm = 0x1A1
callq 0x20d0
leaq 0x12a15(%rip), %rdi     # 0x36582
leaq 0x11b94(%rip), %rsi     # 0x35708
leaq 0x1245e(%rip), %rcx     # 0x35fd9
movl $0x1a4, %edx            # imm = 0x1A4
callq 0x20d0
leaq 0x12a0b(%rip), %rdi     # 0x36597
leaq 0x11b75(%rip), %rsi     # 0x35708
leaq 0x1243f(%rip), %rcx     # 0x35fd9
movl $0x1a5, %edx            # imm = 0x1A5
callq 0x20d0
leaq 0x129d7(%rip), %rdi     # 0x36582
leaq 0x11b56(%rip), %rsi     # 0x35708
leaq 0x12420(%rip), %rcx     # 0x35fd9
movl $0x1a8, %edx            # imm = 0x1A8
callq 0x20d0
leaq 0x129e2(%rip), %rdi     # 0x365ac
leaq 0x11b37(%rip), %rsi     # 0x35708
leaq 0x12401(%rip), %rcx     # 0x35fd9
movl $0x1a9, %edx            # imm = 0x1A9
callq 0x20d0
leaq 0x12474(%rip), %rdi     # 0x3605d
leaq 0x11b18(%rip), %rsi     # 0x35708
leaq 0x123e2(%rip), %rcx     # 0x35fd9
movl $0x13b, %edx            # imm = 0x13B
callq 0x20d0
leaq 0x12419(%rip), %rdi     # 0x36021
leaq 0x11af9(%rip), %rsi     # 0x35708
leaq 0x123c3(%rip), %rcx     # 0x35fd9
movl $0x138, %edx            # imm = 0x138
callq 0x20d0
leaq 0x12417(%rip), %rdi     # 0x3603e
leaq 0x11ada(%rip), %rsi     # 0x35708
leaq 0x123a4(%rip), %rcx     # 0x35fd9
movl $0x139, %edx            # imm = 0x139
callq 0x20d0