46c2f6:	cc                   	int3
46c2f7:	cc                   	int3
46c2f8:	cc                   	int3
46c2f9:	cc                   	int3
46c2fa:	cc                   	int3
46c2fb:	cc                   	int3
46c2fc:	cc                   	int3
46c2fd:	cc                   	int3
46c2fe:	cc                   	int3
46c2ff:	cc                   	int3
46c300:	cc                   	int3
46c301:	cc                   	int3
46c302:	cc                   	int3
46c303:	cc                   	int3
46c304:	cc                   	int3
46c305:	cc                   	int3
46c306:	cc                   	int3
46c307:	cc                   	int3
46c308:	cc                   	int3
46c309:	cc                   	int3
46c30a:	cc                   	int3
46c30b:	cc                   	int3
46c30c:	cc                   	int3
46c30d:	cc                   	int3
46c30e:	cc                   	int3
46c30f:	cc                   	int3
46c310:	8b ff                	mov    %edi,%edi
46c312:	55                   	push   %ebp
46c313:	8b ec                	mov    %esp,%ebp
46c315:	83 ec 38             	sub    $0x38,%esp
46c318:	56                   	push   %esi
46c319:	57                   	push   %edi
46c31a:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
46c321:	8b 45 08             	mov    0x8(%ebp),%eax
46c324:	89 45 c8             	mov    %eax,-0x38(%ebp)
46c327:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
46c32e:	b9 04 00 00 00       	mov    $0x4,%ecx
46c333:	6b d1 03             	imul   $0x3,%ecx,%edx
46c336:	8b 45 08             	mov    0x8(%ebp),%eax
46c339:	83 bc 10 a0 00 00 00 	cmpl   $0x0,0xa0(%eax,%edx,1)
46c340:	00
46c341:	75 19                	jne    0x46c35c
46c343:	b9 04 00 00 00       	mov    $0x4,%ecx
46c348:	c1 e1 02             	shl    $0x2,%ecx
46c34b:	8b 55 08             	mov    0x8(%ebp),%edx
46c34e:	83 bc 0a a0 00 00 00 	cmpl   $0x0,0xa0(%edx,%ecx,1)
46c355:	00
46c356:	0f 84 02 05 00 00    	je     0x46c85e
46c35c:	6a 4e                	push   $0x4e
46c35e:	68 4c c6 4a 00       	push   $0x4ac64c
46c363:	6a 02                	push   $0x2
46c365:	6a 50                	push   $0x50
46c367:	6a 01                	push   $0x1
46c369:	e8 94 54 f9 ff       	call   0x401802
46c36e:	83 c4 14             	add    $0x14,%esp
46c371:	50                   	push   %eax
46c372:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46c375:	e8 d7 5a f9 ff       	call   0x401e51
46c37a:	8b c8                	mov    %eax,%ecx
46c37c:	e8 9f 4f f9 ff       	call   0x401320
46c381:	89 45 f4             	mov    %eax,-0xc(%ebp)
46c384:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
46c388:	75 09                	jne    0x46c393
46c38a:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
46c391:	eb 07                	jmp    0x46c39a
46c393:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
46c39a:	8a 45 e4             	mov    -0x1c(%ebp),%al
46c39d:	88 45 ff             	mov    %al,-0x1(%ebp)
46c3a0:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46c3a3:	e8 a4 50 f9 ff       	call   0x40144c
46c3a8:	0f b6 4d ff          	movzbl -0x1(%ebp),%ecx
46c3ac:	85 c9                	test   %ecx,%ecx
46c3ae:	74 0a                	je     0x46c3ba
46c3b0:	b8 01 00 00 00       	mov    $0x1,%eax
46c3b5:	e9 6b 05 00 00       	jmp    0x46c925
46c3ba:	6a 54                	push   $0x54
46c3bc:	68 4c c6 4a 00       	push   $0x4ac64c
46c3c1:	6a 02                	push   $0x2
46c3c3:	6a 04                	push   $0x4
46c3c5:	6a 01                	push   $0x1
46c3c7:	e8 36 54 f9 ff       	call   0x401802
46c3cc:	83 c4 14             	add    $0x14,%esp
46c3cf:	50                   	push   %eax
46c3d0:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
46c3d3:	e8 d9 72 f9 ff       	call   0x4036b1
46c3d8:	8b c8                	mov    %eax,%ecx
46c3da:	e8 ba 53 f9 ff       	call   0x401799
46c3df:	89 45 e8             	mov    %eax,-0x18(%ebp)
46c3e2:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
46c3e6:	75 09                	jne    0x46c3f1
46c3e8:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
46c3ef:	eb 07                	jmp    0x46c3f8
46c3f1:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
46c3f8:	8a 55 e0             	mov    -0x20(%ebp),%dl
46c3fb:	88 55 fe             	mov    %dl,-0x2(%ebp)
46c3fe:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
46c401:	e8 42 77 f9 ff       	call   0x403b48
46c406:	0f b6 45 fe          	movzbl -0x2(%ebp),%eax
46c40a:	85 c0                	test   %eax,%eax
46c40c:	74 18                	je     0x46c426
46c40e:	6a 02                	push   $0x2
46c410:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c413:	51                   	push   %ecx
46c414:	e8 f9 75 f9 ff       	call   0x403a12
46c419:	83 c4 08             	add    $0x8,%esp
46c41c:	b8 01 00 00 00       	mov    $0x1,%eax
46c421:	e9 ff 04 00 00       	jmp    0x46c925
46c426:	ba 04 00 00 00       	mov    $0x4,%edx
46c42b:	6b c2 03             	imul   $0x3,%edx,%eax
46c42e:	8b 4d 08             	mov    0x8(%ebp),%ecx
46c431:	83 bc 01 a0 00 00 00 	cmpl   $0x0,0xa0(%ecx,%eax,1)
46c438:	00
46c439:	0f 84 9e 03 00 00    	je     0x46c7dd
46c43f:	6a 5f                	push   $0x5f
46c441:	68 4c c6 4a 00       	push   $0x4ac64c
46c446:	6a 02                	push   $0x2
46c448:	6a 04                	push   $0x4
46c44a:	6a 01                	push   $0x1
46c44c:	e8 b1 53 f9 ff       	call   0x401802
46c451:	83 c4 14             	add    $0x14,%esp
46c454:	50                   	push   %eax
46c455:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46c458:	e8 54 72 f9 ff       	call   0x4036b1
46c45d:	8b c8                	mov    %eax,%ecx
46c45f:	e8 35 53 f9 ff       	call   0x401799
46c464:	89 45 ec             	mov    %eax,-0x14(%ebp)
46c467:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
46c46b:	75 09                	jne    0x46c476
46c46d:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
46c474:	eb 07                	jmp    0x46c47d
46c476:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
46c47d:	8a 55 dc             	mov    -0x24(%ebp),%dl
46c480:	88 55 fd             	mov    %dl,-0x3(%ebp)
46c483:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46c486:	e8 bd 76 f9 ff       	call   0x403b48
46c48b:	0f b6 45 fd          	movzbl -0x3(%ebp),%eax
46c48f:	85 c0                	test   %eax,%eax
46c491:	74 26                	je     0x46c4b9
46c493:	6a 02                	push   $0x2
46c495:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c498:	51                   	push   %ecx
46c499:	e8 74 75 f9 ff       	call   0x403a12
46c49e:	83 c4 08             	add    $0x8,%esp
46c4a1:	6a 02                	push   $0x2
46c4a3:	8b 55 e8             	mov    -0x18(%ebp),%edx
46c4a6:	52                   	push   %edx
46c4a7:	e8 66 75 f9 ff       	call   0x403a12
46c4ac:	83 c4 08             	add    $0x8,%esp
46c4af:	b8 01 00 00 00       	mov    $0x1,%eax
46c4b4:	e9 6c 04 00 00       	jmp    0x46c925
46c4b9:	b8 04 00 00 00       	mov    $0x4,%eax
46c4be:	6b c8 03             	imul   $0x3,%eax,%ecx
46c4c1:	8b 55 08             	mov    0x8(%ebp),%edx
46c4c4:	8b 84 0a a0 00 00 00 	mov    0xa0(%edx,%ecx,1),%eax
46c4cb:	89 45 f0             	mov    %eax,-0x10(%ebp)
46c4ce:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
46c4d5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c4d8:	83 c1 0c             	add    $0xc,%ecx
46c4db:	51                   	push   %ecx
46c4dc:	6a 15                	push   $0x15
46c4de:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c4e1:	52                   	push   %edx
46c4e2:	6a 01                	push   $0x1
46c4e4:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c4e7:	50                   	push   %eax
46c4e8:	e8 2b 6a f9 ff       	call   0x402f18
46c4ed:	83 c4 14             	add    $0x14,%esp
46c4f0:	0b 45 f8             	or     -0x8(%ebp),%eax
46c4f3:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c4f6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c4f9:	83 c1 10             	add    $0x10,%ecx
46c4fc:	51                   	push   %ecx
46c4fd:	6a 14                	push   $0x14
46c4ff:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c502:	52                   	push   %edx
46c503:	6a 01                	push   $0x1
46c505:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c508:	50                   	push   %eax
46c509:	e8 0a 6a f9 ff       	call   0x402f18
46c50e:	83 c4 14             	add    $0x14,%esp
46c511:	0b 45 f8             	or     -0x8(%ebp),%eax
46c514:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c517:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c51a:	83 c1 14             	add    $0x14,%ecx
46c51d:	51                   	push   %ecx
46c51e:	6a 16                	push   $0x16
46c520:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c523:	52                   	push   %edx
46c524:	6a 01                	push   $0x1
46c526:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c529:	50                   	push   %eax
46c52a:	e8 e9 69 f9 ff       	call   0x402f18
46c52f:	83 c4 14             	add    $0x14,%esp
46c532:	0b 45 f8             	or     -0x8(%ebp),%eax
46c535:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c538:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c53b:	83 c1 18             	add    $0x18,%ecx
46c53e:	51                   	push   %ecx
46c53f:	6a 17                	push   $0x17
46c541:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c544:	52                   	push   %edx
46c545:	6a 01                	push   $0x1
46c547:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c54a:	50                   	push   %eax
46c54b:	e8 c8 69 f9 ff       	call   0x402f18
46c550:	83 c4 14             	add    $0x14,%esp
46c553:	0b 45 f8             	or     -0x8(%ebp),%eax
46c556:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c559:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c55c:	83 c1 1c             	add    $0x1c,%ecx
46c55f:	51                   	push   %ecx
46c560:	6a 18                	push   $0x18
46c562:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c565:	52                   	push   %edx
46c566:	6a 01                	push   $0x1
46c568:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c56b:	50                   	push   %eax
46c56c:	e8 a7 69 f9 ff       	call   0x402f18
46c571:	83 c4 14             	add    $0x14,%esp
46c574:	0b 45 f8             	or     -0x8(%ebp),%eax
46c577:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c57a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c57d:	83 c1 20             	add    $0x20,%ecx
46c580:	51                   	push   %ecx
46c581:	6a 50                	push   $0x50
46c583:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c586:	52                   	push   %edx
46c587:	6a 01                	push   $0x1
46c589:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c58c:	50                   	push   %eax
46c58d:	e8 86 69 f9 ff       	call   0x402f18
46c592:	83 c4 14             	add    $0x14,%esp
46c595:	0b 45 f8             	or     -0x8(%ebp),%eax
46c598:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c59b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c59e:	83 c1 24             	add    $0x24,%ecx
46c5a1:	51                   	push   %ecx
46c5a2:	6a 51                	push   $0x51
46c5a4:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c5a7:	52                   	push   %edx
46c5a8:	6a 01                	push   $0x1
46c5aa:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c5ad:	50                   	push   %eax
46c5ae:	e8 65 69 f9 ff       	call   0x402f18
46c5b3:	83 c4 14             	add    $0x14,%esp
46c5b6:	0b 45 f8             	or     -0x8(%ebp),%eax
46c5b9:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c5bc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c5bf:	83 c1 28             	add    $0x28,%ecx
46c5c2:	51                   	push   %ecx
46c5c3:	6a 1a                	push   $0x1a
46c5c5:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c5c8:	52                   	push   %edx
46c5c9:	6a 00                	push   $0x0
46c5cb:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c5ce:	50                   	push   %eax
46c5cf:	e8 44 69 f9 ff       	call   0x402f18
46c5d4:	83 c4 14             	add    $0x14,%esp
46c5d7:	0b 45 f8             	or     -0x8(%ebp),%eax
46c5da:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c5dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c5e0:	83 c1 29             	add    $0x29,%ecx
46c5e3:	51                   	push   %ecx
46c5e4:	6a 19                	push   $0x19
46c5e6:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c5e9:	52                   	push   %edx
46c5ea:	6a 00                	push   $0x0
46c5ec:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c5ef:	50                   	push   %eax
46c5f0:	e8 23 69 f9 ff       	call   0x402f18
46c5f5:	83 c4 14             	add    $0x14,%esp
46c5f8:	0b 45 f8             	or     -0x8(%ebp),%eax
46c5fb:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c5fe:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c601:	83 c1 2a             	add    $0x2a,%ecx
46c604:	51                   	push   %ecx
46c605:	6a 54                	push   $0x54
46c607:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c60a:	52                   	push   %edx
46c60b:	6a 00                	push   $0x0
46c60d:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c610:	50                   	push   %eax
46c611:	e8 02 69 f9 ff       	call   0x402f18
46c616:	83 c4 14             	add    $0x14,%esp
46c619:	0b 45 f8             	or     -0x8(%ebp),%eax
46c61c:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c61f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c622:	83 c1 2b             	add    $0x2b,%ecx
46c625:	51                   	push   %ecx
46c626:	6a 55                	push   $0x55
46c628:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c62b:	52                   	push   %edx
46c62c:	6a 00                	push   $0x0
46c62e:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c631:	50                   	push   %eax
46c632:	e8 e1 68 f9 ff       	call   0x402f18
46c637:	83 c4 14             	add    $0x14,%esp
46c63a:	0b 45 f8             	or     -0x8(%ebp),%eax
46c63d:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c640:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c643:	83 c1 2c             	add    $0x2c,%ecx
46c646:	51                   	push   %ecx
46c647:	6a 56                	push   $0x56
46c649:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c64c:	52                   	push   %edx
46c64d:	6a 00                	push   $0x0
46c64f:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c652:	50                   	push   %eax
46c653:	e8 c0 68 f9 ff       	call   0x402f18
46c658:	83 c4 14             	add    $0x14,%esp
46c65b:	0b 45 f8             	or     -0x8(%ebp),%eax
46c65e:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c661:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c664:	83 c1 2d             	add    $0x2d,%ecx
46c667:	51                   	push   %ecx
46c668:	6a 57                	push   $0x57
46c66a:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c66d:	52                   	push   %edx
46c66e:	6a 00                	push   $0x0
46c670:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c673:	50                   	push   %eax
46c674:	e8 9f 68 f9 ff       	call   0x402f18
46c679:	83 c4 14             	add    $0x14,%esp
46c67c:	0b 45 f8             	or     -0x8(%ebp),%eax
46c67f:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c682:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c685:	83 c1 2e             	add    $0x2e,%ecx
46c688:	51                   	push   %ecx
46c689:	6a 52                	push   $0x52
46c68b:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c68e:	52                   	push   %edx
46c68f:	6a 00                	push   $0x0
46c691:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c694:	50                   	push   %eax
46c695:	e8 7e 68 f9 ff       	call   0x402f18
46c69a:	83 c4 14             	add    $0x14,%esp
46c69d:	0b 45 f8             	or     -0x8(%ebp),%eax
46c6a0:	89 45 f8             	mov    %eax,-0x8(%ebp)
46c6a3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46c6a6:	83 c1 2f             	add    $0x2f,%ecx
46c6a9:	51                   	push   %ecx
46c6aa:	6a 53                	push   $0x53
46c6ac:	8b 55 f0             	mov    -0x10(%ebp),%edx
46c6af:	52                   	push   %edx
46c6b0:	6a 00                	push   $0x0
46c6b2:	8d 45 c8             	lea    -0x38(%ebp),%eax
46c6b5:	50                   	push   %eax
46c6b6:	e8 5d 68 f9 ff       	call   0x402f18
46c6bb:	83 c4 14             	add    $0x14,%esp
46c6be:	0b 45 f8             	or     -0x8(%ebp),%eax