// File: razimantv[P]DancingLinks/rectangles/rectangles.cpp
// Function: main
int main() {
  // Read the dimensions of the board
  int H, W;
  std::cin >> H >> W;
  if (H < 1 || W<1) {
    std::cerr << "Invalid board size" << std::endl;
    return 0;
  }
  std::vector<std::vector<int>> board(H), prefixsum(H);

  // Read the board and compute prefix sums
  for (int i = 0; i < H; ++i) {
    board[i].resize(W);
    prefixsum[i].resize(W);
    for (int j = 0; j < W; ++j) {
      std::cin >> board[i][j];
      if (board[i][j] < 0) {
        std::cerr << "Invalid board size" << std::endl;
        return 0;
      }
      prefixsum[i][j] = elem(prefixsum, i, j - 1) + elem(prefixsum, i - 1, j) -
                        elem(prefixsum, i - 1, j - 1) + (board[i][j] > 0);
    }
  }

  // Generate the possible rectangles which contain the cell and have right area
  // These will be the subsets which we try to cover the set elements with
  std::vector<std::tuple<int, int, int, int>> rectangles; // i1, i2, j1, j2
  for (int i = 0; i < H; ++i) {
    for (int j = 0; j < W; ++j) {
      if (board[i][j] == 0) continue;
      // Loop over all possibilities of rectangle size
      for (int h = board[i][j] / (W + 1) + 1; h <= H; ++h) {
        if (board[i][j] % h) continue;
        int w = board[i][j] / h;

        // Loop over all possibilities of rectangle position
        for (int i1 = std::max(0, i - h + 1), i2 = i1 + h - 1;
             i1 <= i && i2 < H; ++i1, ++i2) {
          for (int j1 = std::max(0, j - w + 1), j2 = j1 + w - 1;
               j1 <= j && j2 < W; ++j1, ++j2) {
            // There should be only one non-zero cell in the rectangle
            int cnt = elem(prefixsum, i2, j2) - elem(prefixsum, i1 - 1, j2) -
                      elem(prefixsum, i2, j1 - 1) +
                      elem(prefixsum, i1 - 1, j1 - 1);
            if (cnt != 1) continue;
            rectangles.push_back(std::make_tuple(i1, i2, j1, j2));
          }
        }
      }
    }
  }

  // Rectangles are the rows and cells are the columns
  // Let us build the adjacency matrix now
  int R = rectangles.size(), C = H * W;
  char* mat;
  mat = new (std::nothrow) char[R * C];
  if (mat == NULL) {
    printf("Memory allocation error\n");
    return 1;
  }
  memset(mat, 0, R * C);
  for (int r = 0; r < rectangles.size(); ++r) {
    auto rect = rectangles[r];
    for (int i = std::get<0>(rect); i <= std::get<1>(rect); ++i) {
      for (int j = std::get<2>(rect); j <= std::get<3>(rect); ++j) {
        int c = i * W + j;
        mat[r * C + c] = 1;
      }
    }
  }

  // Solve using dancing links
  DancingLinks N;
  N.Create(R, C, 0, mat);
  std::vector<std::vector<int> > all;
  std::vector<int> cur;
  N.solve(all, cur, false);

  if(all.size() != 1) {
    std::cerr << "No solution found" << std::endl;
  }

  // Assign board vales as unique rectangle IDs
  for (int r = 0; r < all[0].size(); ++r) {
    auto rect = rectangles[all[0][r]];
    for (int i = std::get<0>(rect); i <= std::get<1>(rect); ++i) {
      for (int j = std::get<2>(rect); j <= std::get<3>(rect); ++j) {
        board[i][j] = r;
      }
    }
  }

  // And print the board
  for (const auto& row : board) {
    std::copy(row.begin(), row.end(),
              std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
  }
  return 0;
}

// Assembly:
subq $0x268, %rsp            # imm = 0x268
movl $0x0, 0x264(%rsp)
movq 0xaccf(%rip), %rdi      # 0xbfd8
leaq 0x260(%rsp), %rsi
callq 0x10a0
movq %rax, %rdi
leaq 0x25c(%rsp), %rsi
callq 0x10a0
cmpl $0x1, 0x260(%rsp)
jl 0x133a
cmpl $0x1, 0x25c(%rsp)
jge 0x136c
movq 0xacaf(%rip), %rdi      # 0xbff0
leaq 0x6cbc(%rip), %rsi      # 0x8004
callq 0x10e0
movq %rax, %rdi
movq 0xac61(%rip), %rsi      # 0xbfb8
callq 0x1110
movl $0x0, 0x264(%rsp)
jmp 0x214c
movslq 0x260(%rsp), %rax
movq %rax, 0xa8(%rsp)
leaq 0x23f(%rsp), %rdi
movq %rdi, 0xb0(%rsp)
callq 0x2170
movq 0xa8(%rsp), %rsi
movq 0xb0(%rsp), %rdx
leaq 0x240(%rsp), %rdi
callq 0x2180
jmp 0x13b0
leaq 0x23f(%rsp), %rdi
callq 0x2200
movslq 0x260(%rsp), %rax
movq %rax, 0x98(%rsp)
leaq 0x20f(%rsp), %rdi
movq %rdi, 0xa0(%rsp)
callq 0x2170
movq 0x98(%rsp), %rsi
movq 0xa0(%rsp), %rdx
leaq 0x210(%rsp), %rdi
callq 0x2180
jmp 0x1401
leaq 0x20f(%rsp), %rdi
callq 0x2200
movl $0x0, 0x208(%rsp)
movl 0x208(%rsp), %eax
cmpl 0x260(%rsp), %eax
jge 0x16e7
movslq 0x208(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x25c(%rsp), %rsi
callq 0x2230
jmp 0x1454
movslq 0x208(%rsp), %rsi
leaq 0x210(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x25c(%rsp), %rsi
callq 0x2230
jmp 0x147b
movl $0x0, 0x204(%rsp)
movl 0x204(%rsp), %eax
cmpl 0x25c(%rsp), %eax
jge 0x16cf
movslq 0x208(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x204(%rsp), %rsi
callq 0x22d0
movq %rax, %rsi
movq 0xab0f(%rip), %rdi      # 0xbfd8
callq 0x10a0
jmp 0x14d0
movslq 0x208(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x204(%rsp), %rsi
callq 0x22d0
cmpl $0x0, (%rax)
jge 0x15b1
movq 0xaaeb(%rip), %rdi      # 0xbff0
leaq 0x6af8(%rip), %rsi      # 0x8004
callq 0x10e0
movq %rax, 0x90(%rsp)
jmp 0x151b
movq 0x90(%rsp), %rdi
movq 0xaa8e(%rip), %rsi      # 0xbfb8
callq 0x1110
jmp 0x1531
movl $0x0, 0x264(%rsp)
movl $0x1, 0x200(%rsp)
jmp 0x2114
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
leaq 0x23f(%rsp), %rdi
callq 0x2200
jmp 0x215b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
leaq 0x20f(%rsp), %rdi
callq 0x2200
jmp 0x213d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
jmp 0x2130
movl 0x208(%rsp), %esi
movl 0x204(%rsp), %edx
decl %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x8c(%rsp)
jmp 0x15d7
movl 0x208(%rsp), %esi
decl %esi
movl 0x204(%rsp), %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x88(%rsp)
jmp 0x15fd
movl 0x88(%rsp), %ecx
movl 0x8c(%rsp), %eax
addl %ecx, %eax
movl %eax, 0x80(%rsp)
movl 0x208(%rsp), %esi
decl %esi
movl 0x204(%rsp), %edx
decl %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x84(%rsp)
jmp 0x163c
movl 0x84(%rsp), %ecx
movl 0x80(%rsp), %eax
subl %ecx, %eax
movl %eax, 0x78(%rsp)
movslq 0x208(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x204(%rsp), %rsi
callq 0x22d0
movq %rax, %rcx
movl 0x78(%rsp), %eax
cmpl $0x0, (%rcx)
setg %cl
andb $0x1, %cl
movzbl %cl, %ecx
addl %ecx, %eax
movl %eax, 0x7c(%rsp)
movslq 0x208(%rsp), %rsi
leaq 0x210(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x204(%rsp), %rsi
callq 0x22d0
movl 0x7c(%rsp), %ecx
movl %ecx, (%rax)
movl 0x204(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x204(%rsp)
jmp 0x1486
jmp 0x16d1
movl 0x208(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x208(%rsp)
jmp 0x1419
leaq 0x1e8(%rsp), %rdi
callq 0x2350
movl $0x0, 0x1e4(%rsp)
movl 0x1e4(%rsp), %eax
cmpl 0x260(%rsp), %eax
jge 0x1b1e
movl $0x0, 0x1e0(%rsp)
movl 0x1e0(%rsp), %eax
cmpl 0x25c(%rsp), %eax
jge 0x1b06
movslq 0x1e4(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x1e0(%rsp), %rsi
callq 0x22d0
cmpl $0x0, (%rax)
jne 0x1761
jmp 0x1af0
movslq 0x1e4(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x1e0(%rsp), %rsi
callq 0x22d0
movl (%rax), %eax
movl 0x25c(%rsp), %ecx
addl $0x1, %ecx
cltd
idivl %ecx
addl $0x1, %eax
movl %eax, 0x1dc(%rsp)
movl 0x1dc(%rsp), %eax
cmpl 0x260(%rsp), %eax
jg 0x1aee
movslq 0x1e4(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x1e0(%rsp), %rsi
callq 0x22d0
movl (%rax), %eax
cltd
idivl 0x1dc(%rsp)
cmpl $0x0, %edx
je 0x17ec
jmp 0x1ad8
movslq 0x1e4(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x1e0(%rsp), %rsi
callq 0x22d0
movl (%rax), %eax
movl 0x1dc(%rsp), %ecx
cltd
idivl %ecx
movl %eax, 0x1d8(%rsp)
movl $0x0, 0x1d0(%rsp)
movl 0x1e4(%rsp), %eax
movl 0x1dc(%rsp), %ecx
subl %ecx, %eax
incl %eax
movl %eax, 0x1cc(%rsp)
leaq 0x1d0(%rsp), %rdi
leaq 0x1cc(%rsp), %rsi
callq 0x2360
movq %rax, 0x70(%rsp)
jmp 0x1864
movq 0x70(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x1d4(%rsp)
movl 0x1d4(%rsp), %eax
addl 0x1dc(%rsp), %eax
subl $0x1, %eax
movl %eax, 0x1c8(%rsp)
movl 0x1d4(%rsp), %ecx
xorl %eax, %eax
cmpl 0x1e4(%rsp), %ecx
movb %al, 0x6f(%rsp)
jg 0x18b5
movl 0x1c8(%rsp), %eax
cmpl 0x260(%rsp), %eax
setl %al
movb %al, 0x6f(%rsp)
movb 0x6f(%rsp), %al
testb $0x1, %al
jne 0x18c2
jmp 0x1ad6
movl $0x0, 0x1c0(%rsp)
movl 0x1e0(%rsp), %eax
movl 0x1d8(%rsp), %ecx
subl %ecx, %eax
incl %eax
movl %eax, 0x1bc(%rsp)
leaq 0x1c0(%rsp), %rdi
leaq 0x1bc(%rsp), %rsi
callq 0x2360
movq %rax, 0x60(%rsp)
jmp 0x1902
movq 0x60(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x1c4(%rsp)
movl 0x1c4(%rsp), %eax
addl 0x1d8(%rsp), %eax
subl $0x1, %eax
movl %eax, 0x1b8(%rsp)
movl 0x1c4(%rsp), %ecx
xorl %eax, %eax
cmpl 0x1e0(%rsp), %ecx
movb %al, 0x5f(%rsp)
jg 0x1953
movl 0x1b8(%rsp), %eax
cmpl 0x25c(%rsp), %eax
setl %al
movb %al, 0x5f(%rsp)
movb 0x5f(%rsp), %al
testb $0x1, %al
jne 0x1960
jmp 0x1aad
movl 0x1c8(%rsp), %esi
movl 0x1b8(%rsp), %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x58(%rsp)
jmp 0x1981
movl 0x1d4(%rsp), %esi
decl %esi
movl 0x1b8(%rsp), %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x54(%rsp)
jmp 0x19a4
movl 0x54(%rsp), %ecx
movl 0x58(%rsp), %eax
subl %ecx, %eax
movl %eax, 0x4c(%rsp)
movl 0x1c8(%rsp), %esi
movl 0x1c4(%rsp), %edx
decl %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x50(%rsp)
jmp 0x19d5
movl 0x50(%rsp), %ecx
movl 0x4c(%rsp), %eax
subl %ecx, %eax
movl %eax, 0x44(%rsp)
movl 0x1d4(%rsp), %esi
decl %esi
movl 0x1c4(%rsp), %edx
decl %edx
leaq 0x210(%rsp), %rdi
callq 0x22f0
movl %eax, 0x48(%rsp)
jmp 0x1a08
movl 0x48(%rsp), %ecx
movl 0x44(%rsp), %eax
addl %ecx, %eax
movl %eax, 0x1b4(%rsp)
cmpl $0x1, 0x1b4(%rsp)
je 0x1a3e
jmp 0x1a86
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
jmp 0x2105
leaq 0x1a4(%rsp), %rdi
leaq 0x1d4(%rsp), %rsi
leaq 0x1c8(%rsp), %rdx
leaq 0x1c4(%rsp), %rcx
leaq 0x1b8(%rsp), %r8
callq 0x23d0
jmp 0x1a6d
leaq 0x1e8(%rsp), %rdi
leaq 0x1a4(%rsp), %rsi
callq 0x23a0
jmp 0x1a84
jmp 0x1a86
movl 0x1c4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c4(%rsp)
movl 0x1b8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1b8(%rsp)
jmp 0x1928
jmp 0x1aaf
movl 0x1d4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1d4(%rsp)
movl 0x1c8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c8(%rsp)
jmp 0x188a
jmp 0x1ad8
movl 0x1dc(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1dc(%rsp)
jmp 0x179f
jmp 0x1af0
movl 0x1e0(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1e0(%rsp)
jmp 0x171e
jmp 0x1b08
movl 0x1e4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1e4(%rsp)
jmp 0x16ff
leaq 0x1e8(%rsp), %rdi
callq 0x2420
movl %eax, 0x1a0(%rsp)
movl 0x260(%rsp), %eax
imull 0x25c(%rsp), %eax
movl %eax, 0x19c(%rsp)
movl 0x1a0(%rsp), %eax
imull 0x19c(%rsp), %eax
movslq %eax, %rdi
movq 0xa447(%rip), %rsi      # 0xbfa8
callq 0x1170
movq %rax, 0x190(%rsp)
cmpq $0x0, 0x190(%rsp)
jne 0x1ba4
leaq 0x6497(%rip), %rdi      # 0x8017
xorl %eax, %eax
callq 0x1040
jmp 0x1b89
movl $0x1, 0x264(%rsp)
movl $0x1, 0x200(%rsp)
jmp 0x20f6
movq 0x190(%rsp), %rdi
movl 0x1a0(%rsp), %eax
imull 0x19c(%rsp), %eax
movslq %eax, %rdx
xorl %esi, %esi
callq 0x1090
movl $0x0, 0x18c(%rsp)
movslq 0x18c(%rsp), %rax
movq %rax, 0x38(%rsp)
leaq 0x1e8(%rsp), %rdi
callq 0x2420
movq %rax, %rcx
movq 0x38(%rsp), %rax
cmpq %rcx, %rax
jae 0x1d22
movslq 0x18c(%rsp), %rsi
leaq 0x1e8(%rsp), %rdi
callq 0x2440
movq (%rax), %rcx
movq %rcx, 0x17c(%rsp)
movq 0x8(%rax), %rax
movq %rax, 0x184(%rsp)
leaq 0x17c(%rsp), %rdi
callq 0x2460
movl (%rax), %eax
movl %eax, 0x178(%rsp)
movl 0x178(%rsp), %eax
movl %eax, 0x34(%rsp)
leaq 0x17c(%rsp), %rdi
callq 0x2470
movq %rax, %rcx
movl 0x34(%rsp), %eax
cmpl (%rcx), %eax
jg 0x1d0a
leaq 0x17c(%rsp), %rdi
callq 0x2480
movl (%rax), %eax
movl %eax, 0x174(%rsp)
movl 0x174(%rsp), %eax
movl %eax, 0x30(%rsp)
leaq 0x17c(%rsp), %rdi
callq 0x2490
movq %rax, %rcx
movl 0x30(%rsp), %eax
cmpl (%rcx), %eax
jg 0x1cf2
movl 0x178(%rsp), %eax
imull 0x25c(%rsp), %eax
addl 0x174(%rsp), %eax
movl %eax, 0x170(%rsp)
movq 0x190(%rsp), %rax
movl 0x18c(%rsp), %ecx
imull 0x19c(%rsp), %ecx
addl 0x170(%rsp), %ecx
movslq %ecx, %rcx
movb $0x1, (%rax,%rcx)
movl 0x174(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x174(%rsp)
jmp 0x1c7a
jmp 0x1cf4
movl 0x178(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x178(%rsp)
jmp 0x1c3d
jmp 0x1d0c
movl 0x18c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x18c(%rsp)
jmp 0x1bd0
leaq 0x158(%rsp), %rdi
callq 0x4d70
jmp 0x1d31
movl 0x1a0(%rsp), %esi
movl 0x19c(%rsp), %edx
movq 0x190(%rsp), %r8
leaq 0x158(%rsp), %rdi
xorl %ecx, %ecx
callq 0x4f60
jmp 0x1d58
leaq 0x140(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x24a0
leaq 0x128(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x24b0
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
leaq 0x158(%rsp), %rdi
xorl %ecx, %ecx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
callq 0x5850
jmp 0x1d9d
leaq 0x140(%rsp), %rdi
callq 0x24c0
cmpq $0x1, %rax
je 0x1e2b
movq 0xa239(%rip), %rdi      # 0xbff0
leaq 0x6272(%rip), %rsi      # 0x8030
callq 0x10e0
movq %rax, 0x18(%rsp)
jmp 0x1dca
movq 0x18(%rsp), %rdi
movq 0xa1e2(%rip), %rsi      # 0xbfb8
callq 0x1110
jmp 0x1ddd
jmp 0x1e2b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
jmp 0x20e7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x230(%rsp)
movl %eax, 0x22c(%rsp)
leaq 0x128(%rsp), %rdi
callq 0x26f0
leaq 0x140(%rsp), %rdi
callq 0x2750
jmp 0x20e7
movl $0x0, 0x124(%rsp)
movslq 0x124(%rsp), %rax
movq %rax, 0x10(%rsp)
leaq 0x140(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x2210
movq %rax, %rdi
callq 0x24e0
movq %rax, %rcx
movq 0x10(%rsp), %rax
cmpq %rcx, %rax
jae 0x1fa4
leaq 0x140(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x2210
movq %rax, %rdi
movslq 0x124(%rsp), %rsi
callq 0x22d0
movslq (%rax), %rsi
leaq 0x1e8(%rsp), %rdi
callq 0x2440
movq (%rax), %rcx
movq %rcx, 0x114(%rsp)
movq 0x8(%rax), %rax
movq %rax, 0x11c(%rsp)
leaq 0x114(%rsp), %rdi
callq 0x2460
movl (%rax), %eax
movl %eax, 0x110(%rsp)
movl 0x110(%rsp), %eax
movl %eax, 0xc(%rsp)
leaq 0x114(%rsp), %rdi
callq 0x2470
movq %rax, %rcx
movl 0xc(%rsp), %eax
cmpl (%rcx), %eax
jg 0x1f8c
leaq 0x114(%rsp), %rdi
callq 0x2480
movl (%rax), %eax
movl %eax, 0x10c(%rsp)
movl 0x10c(%rsp), %eax
movl %eax, 0x8(%rsp)
leaq 0x114(%rsp), %rdi
callq 0x2490
movq %rax, %rcx
movl 0x8(%rsp), %eax
cmpl (%rcx), %eax
jg 0x1f74
movl 0x124(%rsp), %eax
movl %eax, 0x4(%rsp)
movslq 0x110(%rsp), %rsi
leaq 0x240(%rsp), %rdi
callq 0x2210
movq %rax, %rdi
movslq 0x10c(%rsp), %rsi
callq 0x22d0
movl 0x4(%rsp), %ecx
movl %ecx, (%rax)
movl 0x10c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x10c(%rsp)
jmp 0x1f08
jmp 0x1f76
movl 0x110(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x110(%rsp)
jmp 0x1ecb
jmp 0x1f8e
movl 0x124(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x124(%rsp)
jmp 0x1e36
leaq 0x240(%rsp), %rax
movq %rax, 0x100(%rsp)
movq 0x100(%rsp), %rdi
callq 0x2500
movq %rax, 0xf8(%rsp)
movq 0x100(%rsp), %rdi
callq 0x2530
movq %rax, 0xf0(%rsp)
leaq 0xf8(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
callq 0x2560
testb $0x1, %al
jne 0x1ffc
jmp 0x20a8
leaq 0xf8(%rsp), %rdi
callq 0x25a0
movq %rax, 0xe8(%rsp)
movq 0xe8(%rsp), %rdi
callq 0x2640
movq %rax, 0xe0(%rsp)
movq 0xe8(%rsp), %rdi
callq 0x2670
movq %rax, 0xd8(%rsp)
movq 0x9f86(%rip), %rsi      # 0xbfc8
leaq 0x5ff9(%rip), %rdx      # 0x8042
leaq 0xc8(%rsp), %rdi
callq 0x26a0
jmp 0x2058
movq 0xe0(%rsp), %rsi
movq 0xd8(%rsp), %rdx
leaq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rcx
callq 0x25b0
jmp 0x207f
movq 0x9f42(%rip), %rdi      # 0xbfc8
movq 0x9f2b(%rip), %rsi      # 0xbfb8
callq 0x1110
jmp 0x2094
jmp 0x2096
leaq 0xf8(%rsp), %rdi
callq 0x26d0
jmp 0x1fde
movl $0x0, 0x264(%rsp)
movl $0x1, 0x200(%rsp)
leaq 0x128(%rsp), %rdi
callq 0x26f0
leaq 0x140(%rsp), %rdi
callq 0x2750
leaq 0x158(%rsp), %rdi
callq 0x4e00
jmp 0x20f6
leaq 0x158(%rsp), %rdi
callq 0x4e00
jmp 0x2105
leaq 0x1e8(%rsp), %rdi
callq 0x27b0
jmp 0x2114
leaq 0x1e8(%rsp), %rdi
callq 0x27b0
jmp 0x2130
leaq 0x210(%rsp), %rdi
callq 0x2750
leaq 0x240(%rsp), %rdi
callq 0x2750
jmp 0x214c
leaq 0x210(%rsp), %rdi
callq 0x2750
leaq 0x240(%rsp), %rdi
callq 0x2750
jmp 0x215b
movl 0x264(%rsp), %eax
addq $0x268, %rsp            # imm = 0x268
retq
movq 0x230(%rsp), %rdi
callq 0x1190
nopl (%rax,%rax)