// File: /workspace/github_cpp_makefile_star2_O3/halfflat[P]tinyopt/test/test_state.cc
// Function: state_consume_Test::TestBody()
TEST(state, consume) {
    const char* argstr = "zero\0one\0two\0three\0four\0five\0six\0";
    mockargs M(argstr);

    std::vector<char*> v0 = M.args;
    to::state s(M.argc, M.argv);

    typedef to::state::match_result MR;


    s.consume(MR{nullptr, 0, 0});
    EXPECT_EQ(7, M.argc);
    EXPECT_EQ(0, M.argv[M.argc]);
    EXPECT_EQ(v0[0], M.argv[0]+s.optoff);

    s.consume(MR{nullptr, 0, 2});
    EXPECT_EQ(7, M.argc);
    EXPECT_EQ(0, M.argv[M.argc]);
    EXPECT_EQ(v0[0]+2, M.argv[0]+s.optoff);

    s.consume(MR{nullptr, 2, 0});
    EXPECT_EQ(5, M.argc);
    EXPECT_EQ(0, M.argv[M.argc]);
    EXPECT_EQ(v0[2], M.argv[0]+s.optoff);

    s.consume(MR{nullptr, 0, 2});
    EXPECT_EQ(5, M.argc);
    EXPECT_EQ(0, M.argv[M.argc]);
    EXPECT_EQ(v0[2]+2, M.argv[0]+s.optoff);

    s.consume(MR{nullptr, 1, 1});
    EXPECT_EQ(4, M.argc);
    EXPECT_EQ(0, M.argv[M.argc]);
    EXPECT_EQ(v0[3]+1, M.argv[0]+s.optoff);
}

// Assembly:
pushq %rbx
subq $0x80, %rsp
leaq 0x492f9(%rip), %rsi     # 0x6e0cc
leaq 0x28(%rsp), %rbx
movq %rbx, %rdi
callq 0x29a42
leaq 0x38(%rsp), %rsi
leaq 0x68(%rsp), %rdi
callq 0x29a88
movq 0x30(%rsp), %rax
leaq 0x50(%rsp), %rdi
movq %rbx, (%rdi)
movq %rax, 0x8(%rdi)
movl $0x0, 0x10(%rdi)
xorl %esi, %esi
callq 0x29b08
leaq 0x8(%rsp), %rcx
movl $0x7, (%rcx)
leaq 0x4730a(%rip), %rsi     # 0x6c12a
leaq 0x4910b(%rip), %rdx     # 0x6df32
leaq 0x18(%rsp), %rdi
movq %rbx, %r8
callq 0x157b7
cmpb $0x0, 0x18(%rsp)
jne 0x24e9f
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x24e54
movq (%rax), %r8
jmp 0x24e5b
leaq 0x4a17a(%rip), %r8      # 0x6efd5
leaq 0x49082(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x37, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x24e9f
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x24eb3
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x30(%rsp), %rax
movslq 0x28(%rsp), %rcx
movq (%rax,%rcx,8), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x4de2c(%rip), %rsi     # 0x72d08
leaq 0x49056(%rip), %rdx     # 0x6df39
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x24f58
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x24f0d
movq (%rax), %r8
jmp 0x24f14
leaq 0x4a0c1(%rip), %r8      # 0x6efd5
leaq 0x48fc9(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x38, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x24f58
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x24f6c
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rcx
movq 0x30(%rsp), %rax
movl 0x60(%rsp), %edx
addq (%rax), %rdx
leaq 0x8(%rsp), %r8
movq %rdx, (%r8)
leaq 0x48fbc(%rip), %rsi     # 0x6df48
leaq 0x48ff3(%rip), %rdx     # 0x6df86
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x25008
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x24fbd
movq (%rax), %r8
jmp 0x24fc4
leaq 0x4a011(%rip), %r8      # 0x6efd5
leaq 0x48f19(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x39, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x25008
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x2501c
leaq 0x20(%rsp), %rdi
callq 0x153ca
leaq 0x50(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x29b08
addl $0x2, 0x10(%rbx)
leaq 0x8(%rsp), %rcx
movl $0x7, (%rcx)
leaq 0x470e9(%rip), %rsi     # 0x6c12a
leaq 0x48eea(%rip), %rdx     # 0x6df32
leaq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %r8
callq 0x157b7
cmpb $0x0, 0x18(%rsp)
jne 0x250c2
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25077
movq (%rax), %r8
jmp 0x2507e
leaq 0x49f57(%rip), %r8      # 0x6efd5
leaq 0x48e5f(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x3c, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x250c2
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x250d6
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x30(%rsp), %rax
movslq 0x28(%rsp), %rcx
movq (%rax,%rcx,8), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x4dc09(%rip), %rsi     # 0x72d08
leaq 0x48e33(%rip), %rdx     # 0x6df39
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x2517b
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25130
movq (%rax), %r8
jmp 0x25137
leaq 0x49e9e(%rip), %r8      # 0x6efd5
leaq 0x48da6(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x3d, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2517b
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x2518f
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rax
movq (%rax), %rax
addq $0x2, %rax
leaq 0x8(%rsp), %rcx
movq %rax, (%rcx)
movq 0x30(%rsp), %rax
movl 0x60(%rsp), %edx
addq (%rax), %rdx
leaq 0x10(%rsp), %r8
movq %rdx, (%r8)
leaq 0x48ddb(%rip), %rsi     # 0x6df99
leaq 0x48dc1(%rip), %rdx     # 0x6df86
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x2523a
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x251ef
movq (%rax), %r8
jmp 0x251f6
leaq 0x49ddf(%rip), %r8      # 0x6efd5
leaq 0x48ce7(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x3e, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2523a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x2524e
leaq 0x20(%rsp), %rdi
callq 0x153ca
leaq 0x50(%rsp), %rdi
movl $0x2, %esi
callq 0x29b08
leaq 0x8(%rsp), %rcx
movl $0x5, (%rcx)
leaq 0x478f9(%rip), %rsi     # 0x6cb68
leaq 0x48cbc(%rip), %rdx     # 0x6df32
leaq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %r8
callq 0x157b7
cmpb $0x0, 0x18(%rsp)
jne 0x252f0
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x252a5
movq (%rax), %r8
jmp 0x252ac
leaq 0x49d29(%rip), %r8      # 0x6efd5
leaq 0x48c31(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x41, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x252f0
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x25304
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x30(%rsp), %rax
movslq 0x28(%rsp), %rcx
movq (%rax,%rcx,8), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x4d9db(%rip), %rsi     # 0x72d08
leaq 0x48c05(%rip), %rdx     # 0x6df39
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x253a9
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x2535e
movq (%rax), %r8
jmp 0x25365
leaq 0x49c70(%rip), %r8      # 0x6efd5
leaq 0x48b78(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x42, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x253a9
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x253bd
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rcx
addq $0x10, %rcx
movq 0x30(%rsp), %rax
movl 0x60(%rsp), %edx
addq (%rax), %rdx
leaq 0x8(%rsp), %r8
movq %rdx, (%r8)
leaq 0x48b91(%rip), %rsi     # 0x6df72
leaq 0x48b9e(%rip), %rdx     # 0x6df86
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x2545d
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25412
movq (%rax), %r8
jmp 0x25419
leaq 0x49bbc(%rip), %r8      # 0x6efd5
leaq 0x48ac4(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x43, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2545d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x25471
leaq 0x20(%rsp), %rdi
callq 0x153ca
leaq 0x50(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x29b08
addl $0x2, 0x10(%rbx)
leaq 0x8(%rsp), %rcx
movl $0x5, (%rcx)
leaq 0x476d2(%rip), %rsi     # 0x6cb68
leaq 0x48a95(%rip), %rdx     # 0x6df32
leaq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %r8
callq 0x157b7
cmpb $0x0, 0x18(%rsp)
jne 0x25517
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x254cc
movq (%rax), %r8
jmp 0x254d3
leaq 0x49b02(%rip), %r8      # 0x6efd5
leaq 0x48a0a(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x46, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x25517
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x2552b
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x30(%rsp), %rax
movslq 0x28(%rsp), %rcx
movq (%rax,%rcx,8), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x4d7b4(%rip), %rsi     # 0x72d08
leaq 0x489de(%rip), %rdx     # 0x6df39
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x255d0
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25585
movq (%rax), %r8
jmp 0x2558c
leaq 0x49a49(%rip), %r8      # 0x6efd5
leaq 0x48951(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x47, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x255d0
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x255e4
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rax
movq 0x10(%rax), %rax
addq $0x2, %rax
leaq 0x8(%rsp), %rcx
movq %rax, (%rcx)
movq 0x30(%rsp), %rax
movl 0x60(%rsp), %edx
addq (%rax), %rdx
leaq 0x10(%rsp), %r8
movq %rdx, (%r8)
leaq 0x4898d(%rip), %rsi     # 0x6dfa1
leaq 0x4896b(%rip), %rdx     # 0x6df86
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x25690
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25645
movq (%rax), %r8
jmp 0x2564c
leaq 0x49989(%rip), %r8      # 0x6efd5
leaq 0x48891(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x48, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x25690
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x256a4
leaq 0x20(%rsp), %rdi
callq 0x153ca
leaq 0x50(%rsp), %rbx
movq %rbx, %rdi
movl $0x1, %esi
callq 0x29b08
incl 0x10(%rbx)
leaq 0x8(%rsp), %rcx
movl $0x4, (%rcx)
leaq 0x49375(%rip), %rsi     # 0x6ea40
leaq 0x48860(%rip), %rdx     # 0x6df32
leaq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %r8
callq 0x157b7
cmpb $0x0, 0x18(%rsp)
jne 0x2574c
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25701
movq (%rax), %r8
jmp 0x25708
leaq 0x498cd(%rip), %r8      # 0x6efd5
leaq 0x487d5(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x4b, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2574c
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x25760
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x30(%rsp), %rax
movslq 0x28(%rsp), %rcx
movq (%rax,%rcx,8), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x4d57f(%rip), %rsi     # 0x72d08
leaq 0x487a9(%rip), %rdx     # 0x6df39
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x25805
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x257ba
movq (%rax), %r8
jmp 0x257c1
leaq 0x49814(%rip), %r8      # 0x6efd5
leaq 0x4871c(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x4c, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x25805
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x25819
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rax
movq 0x18(%rax), %rax
incq %rax
leaq 0x8(%rsp), %rcx
movq %rax, (%rcx)
movq 0x30(%rsp), %rax
movl 0x60(%rsp), %edx
addq (%rax), %rdx
leaq 0x10(%rsp), %r8
movq %rdx, (%r8)
leaq 0x48761(%rip), %rsi     # 0x6dfa9
leaq 0x48737(%rip), %rdx     # 0x6df86
leaq 0x18(%rsp), %rdi
callq 0x2a206
cmpb $0x0, 0x18(%rsp)
jne 0x258c4
leaq 0x8(%rsp), %rdi
callq 0x4ca86
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x25879
movq (%rax), %r8
jmp 0x25880
leaq 0x49755(%rip), %r8      # 0x6efd5
leaq 0x4865d(%rip), %rdx     # 0x6dee4
leaq 0x10(%rsp), %rdi
movl $0x1, %esi
movl $0x4d, %ecx
callq 0x4902a
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x46a1c
leaq 0x10(%rsp), %rdi
callq 0x49096
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x258c4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x258d8
leaq 0x20(%rsp), %rdi
callq 0x153ca
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x258ef
movq 0x78(%rsp), %rsi
subq %rdi, %rsi
callq 0xd530
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x25906
movq 0x48(%rsp), %rsi
subq %rdi, %rsi
callq 0xd530
addq $0x80, %rsp
popq %rbx
retq
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
jmp 0x25963
jmp 0x25972
jmp 0x25987
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x49096
jmp 0x25975
movq %rax, %rbx
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2598a
movq (%rdi), %rax
callq *0x8(%rax)
jmp 0x2598a
movq %rax, %rbx
movq 0x20(%rsp), %rsi
testq %rsi, %rsi
je 0x259bf
leaq 0x20(%rsp), %rdi
callq 0x153ca
jmp 0x259bf
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
jmp 0x259bc
movq %rax, %rbx
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x259d6
movq 0x78(%rsp), %rsi
subq %rdi, %rsi
callq 0xd530
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x259ed
movq 0x48(%rsp), %rsi
subq %rdi, %rsi
callq 0xd530
movq %rbx, %rdi
callq 0xda70
movq %rax, %rbx
jmp 0x259d6