58c4d5:	74 5d                	je     0x58c534
58c4d7:	6a 01                	push   $0x1
58c4d9:	ff 74 24 20          	push   0x20(%esp)
58c4dd:	e8 fe 72 f2 ff       	call   0x4b37e0
58c4e2:	83 c4 08             	add    $0x8,%esp
58c4e5:	85 c0                	test   %eax,%eax
58c4e7:	74 4b                	je     0x58c534
58c4e9:	ff 74 24 20          	push   0x20(%esp)
58c4ed:	ff 74 24 14          	push   0x14(%esp)
58c4f1:	ff 74 24 20          	push   0x20(%esp)
58c4f5:	ff 74 24 30          	push   0x30(%esp)
58c4f9:	55                   	push   %ebp
58c4fa:	56                   	push   %esi
58c4fb:	ff 74 24 34          	push   0x34(%esp)
58c4ff:	e8 1c 04 00 00       	call   0x58c920
58c504:	83 c4 1c             	add    $0x1c,%esp
58c507:	83 f8 ff             	cmp    $0xffffffff,%eax
58c50a:	74 28                	je     0x58c534
58c50c:	85 c0                	test   %eax,%eax
58c50e:	0f 85 33 ff ff ff    	jne    0x58c447
58c514:	57                   	push   %edi
58c515:	6a 01                	push   $0x1
58c517:	ff 74 24 44          	push   0x44(%esp)
58c51b:	e8 f0 f9 ff ff       	call   0x58bf10
58c520:	83 c4 0c             	add    $0xc,%esp
58c523:	85 c0                	test   %eax,%eax
58c525:	74 0d                	je     0x58c534
58c527:	47                   	inc    %edi
58c528:	3b fb                	cmp    %ebx,%edi
58c52a:	7c 9a                	jl     0x58c4c6
58c52c:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
58c533:	00
58c534:	8b 5c 24 10          	mov    0x10(%esp),%ebx
58c538:	85 db                	test   %ebx,%ebx
58c53a:	74 19                	je     0x58c555
58c53c:	53                   	push   %ebx
58c53d:	e8 0e b8 f4 ff       	call   0x4d7d50
58c542:	83 c4 04             	add    $0x4,%esp
58c545:	83 7c 24 34 00       	cmpl   $0x0,0x34(%esp)
58c54a:	75 09                	jne    0x58c555
58c54c:	53                   	push   %ebx
58c54d:	e8 3e b8 f4 ff       	call   0x4d7d90
58c552:	83 c4 04             	add    $0x4,%esp
58c555:	8b 44 24 20          	mov    0x20(%esp),%eax
58c559:	85 c0                	test   %eax,%eax
58c55b:	74 09                	je     0x58c566
58c55d:	50                   	push   %eax
58c55e:	e8 dd 43 fe ff       	call   0x570940
58c563:	83 c4 04             	add    $0x4,%esp
58c566:	5d                   	pop    %ebp
58c567:	8b 44 24 10          	mov    0x10(%esp),%eax
58c56b:	5f                   	pop    %edi
58c56c:	5b                   	pop    %ebx
58c56d:	5e                   	pop    %esi
58c56e:	83 c4 18             	add    $0x18,%esp
58c571:	c3                   	ret
58c572:	83 f9 01             	cmp    $0x1,%ecx
58c575:	75 15                	jne    0x58c58c
58c577:	8b 06                	mov    (%esi),%eax
58c579:	83 38 02             	cmpl   $0x2,(%eax)
58c57c:	75 0e                	jne    0x58c58c
58c57e:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
58c582:	75 08                	jne    0x58c58c
58c584:	5b                   	pop    %ebx
58c585:	8b c1                	mov    %ecx,%eax
58c587:	5e                   	pop    %esi
58c588:	83 c4 18             	add    $0x18,%esp
58c58b:	c3                   	ret
58c58c:	5b                   	pop    %ebx
58c58d:	33 c0                	xor    %eax,%eax
58c58f:	5e                   	pop    %esi
58c590:	83 c4 18             	add    $0x18,%esp
58c593:	c3                   	ret
58c594:	cc                   	int3
58c595:	cc                   	int3
58c596:	cc                   	int3
58c597:	cc                   	int3
58c598:	cc                   	int3
58c599:	cc                   	int3
58c59a:	cc                   	int3
58c59b:	cc                   	int3
58c59c:	cc                   	int3
58c59d:	cc                   	int3
58c59e:	cc                   	int3
58c59f:	cc                   	int3
58c5a0:	b8 04 10 00 00       	mov    $0x1004,%eax
58c5a5:	e8 46 4f 05 00       	call   0x5e14f0
58c5aa:	a1 d4 89 72 00       	mov    0x7289d4,%eax
58c5af:	33 c4                	xor    %esp,%eax
58c5b1:	89 84 24 00 10 00 00 	mov    %eax,0x1000(%esp)
58c5b8:	53                   	push   %ebx
58c5b9:	8b 9c 24 0c 10 00 00 	mov    0x100c(%esp),%ebx
58c5c0:	55                   	push   %ebp
58c5c1:	8b ac 24 14 10 00 00 	mov    0x1014(%esp),%ebp
58c5c8:	56                   	push   %esi
58c5c9:	57                   	push   %edi
58c5ca:	6a 01                	push   $0x1
58c5cc:	6a 01                	push   $0x1
58c5ce:	55                   	push   %ebp
58c5cf:	53                   	push   %ebx
58c5d0:	e8 9b 20 fe ff       	call   0x56e670
58c5d5:	83 c4 10             	add    $0x10,%esp
58c5d8:	85 c0                	test   %eax,%eax
58c5da:	74 6c                	je     0x58c648
58c5dc:	0f 1f 40 00          	nopl   0x0(%eax)
58c5e0:	33 f6                	xor    %esi,%esi
58c5e2:	0f b7 86 b2 59 6c 00 	movzwl 0x6c59b2(%esi),%eax
58c5e9:	50                   	push   %eax
58c5ea:	53                   	push   %ebx
58c5eb:	e8 60 73 f2 ff       	call   0x4b3950
58c5f0:	66 89 44 34 1a       	mov    %ax,0x1a(%esp,%esi,1)
58c5f5:	83 c4 08             	add    $0x8,%esp
58c5f8:	83 c6 02             	add    $0x2,%esi
58c5fb:	81 fe fe 0f 00 00    	cmp    $0xffe,%esi
58c601:	7c df                	jl     0x58c5e2
58c603:	33 ff                	xor    %edi,%edi
58c605:	33 c9                	xor    %ecx,%ecx
58c607:	81 f9 fe 0f 00 00    	cmp    $0xffe,%ecx
58c60d:	7d 54                	jge    0x58c663
58c60f:	0f b7 44 0c 12       	movzwl 0x12(%esp,%ecx,1),%eax
58c614:	33 d2                	xor    %edx,%edx
58c616:	0f b7 b1 b2 59 6c 00 	movzwl 0x6c59b2(%ecx),%esi
58c61d:	03 c7                	add    %edi,%eax
58c61f:	f7 f6                	div    %esi
58c621:	83 fa 01             	cmp    $0x1,%edx
58c624:	76 05                	jbe    0x58c62b
58c626:	83 c1 02             	add    $0x2,%ecx
58c629:	eb dc                	jmp    0x58c607
58c62b:	83 c7 02             	add    $0x2,%edi
58c62e:	81 ff 38 ba ff ff    	cmp    $0xffffba38,%edi
58c634:	76 cf                	jbe    0x58c605
58c636:	6a 01                	push   $0x1
58c638:	6a 01                	push   $0x1
58c63a:	55                   	push   %ebp
58c63b:	53                   	push   %ebx
58c63c:	e8 2f 20 fe ff       	call   0x56e670
58c641:	83 c4 10             	add    $0x10,%esp
58c644:	85 c0                	test   %eax,%eax
58c646:	75 98                	jne    0x58c5e0
58c648:	33 c0                	xor    %eax,%eax
58c64a:	8b 8c 24 10 10 00 00 	mov    0x1010(%esp),%ecx
58c651:	5f                   	pop    %edi
58c652:	5e                   	pop    %esi
58c653:	5d                   	pop    %ebp
58c654:	5b                   	pop    %ebx
58c655:	33 cc                	xor    %esp,%ecx
58c657:	e8 7e 4e 05 00       	call   0x5e14da
58c65c:	81 c4 04 10 00 00    	add    $0x1004,%esp
58c662:	c3                   	ret
58c663:	57                   	push   %edi
58c664:	53                   	push   %ebx
58c665:	e8 76 71 f2 ff       	call   0x4b37e0
58c66a:	83 c4 08             	add    $0x8,%esp
58c66d:	f7 d8                	neg    %eax
58c66f:	1b c0                	sbb    %eax,%eax
58c671:	f7 d8                	neg    %eax
58c673:	eb d5                	jmp    0x58c64a
58c675:	cc                   	int3
58c676:	cc                   	int3
58c677:	cc                   	int3
58c678:	cc                   	int3
58c679:	cc                   	int3
58c67a:	cc                   	int3
58c67b:	cc                   	int3
58c67c:	cc                   	int3
58c67d:	cc                   	int3
58c67e:	cc                   	int3
58c67f:	cc                   	int3
58c680:	b8 04 00 00 00       	mov    $0x4,%eax
58c685:	e8 66 4e 05 00       	call   0x5e14f0
58c68a:	55                   	push   %ebp
58c68b:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
58c68f:	56                   	push   %esi
58c690:	55                   	push   %ebp
58c691:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
58c698:	00
58c699:	e8 02 b8 f4 ff       	call   0x4d7ea0
58c69e:	55                   	push   %ebp
58c69f:	e8 1c b7 f4 ff       	call   0x4d7dc0
58c6a4:	8b f0                	mov    %eax,%esi
58c6a6:	83 c4 08             	add    $0x8,%esp
58c6a9:	85 f6                	test   %esi,%esi
58c6ab:	0f 84 bf 00 00 00    	je     0x58c770
58c6b1:	57                   	push   %edi
58c6b2:	8b 7c 24 14          	mov    0x14(%esp),%edi
58c6b6:	6a 01                	push   $0x1
58c6b8:	6a 00                	push   $0x0
58c6ba:	ff 74 24 20          	push   0x20(%esp)
58c6be:	57                   	push   %edi
58c6bf:	e8 ac 1f fe ff       	call   0x56e670
58c6c4:	83 c4 10             	add    $0x10,%esp
58c6c7:	85 c0                	test   %eax,%eax
58c6c9:	0f 84 a0 00 00 00    	je     0x58c76f
58c6cf:	53                   	push   %ebx
58c6d0:	8b 5c 24 20          	mov    0x20(%esp),%ebx
58c6d4:	55                   	push   %ebp
58c6d5:	53                   	push   %ebx
58c6d6:	57                   	push   %edi
58c6d7:	56                   	push   %esi
58c6d8:	6a 00                	push   $0x0
58c6da:	e8 c1 3c fe ff       	call   0x5703a0
58c6df:	83 c4 14             	add    $0x14,%esp
58c6e2:	85 c0                	test   %eax,%eax
58c6e4:	0f 84 84 00 00 00    	je     0x58c76e
58c6ea:	56                   	push   %esi
58c6eb:	57                   	push   %edi
58c6ec:	57                   	push   %edi
58c6ed:	e8 6e ba f4 ff       	call   0x4d8160
58c6f2:	83 c4 0c             	add    $0xc,%esp
58c6f5:	85 c0                	test   %eax,%eax
58c6f7:	74 75                	je     0x58c76e
58c6f9:	8b 44 24 24          	mov    0x24(%esp),%eax
58c6fd:	85 c0                	test   %eax,%eax
58c6ff:	75 0d                	jne    0x58c70e
58c701:	6a 01                	push   $0x1
58c703:	57                   	push   %edi
58c704:	e8 d7 70 f2 ff       	call   0x4b37e0
58c709:	83 c4 08             	add    $0x8,%esp
58c70c:	eb 0b                	jmp    0x58c719
58c70e:	50                   	push   %eax
58c70f:	57                   	push   %edi
58c710:	57                   	push   %edi
58c711:	e8 ba b9 f4 ff       	call   0x4d80d0
58c716:	83 c4 0c             	add    $0xc,%esp
58c719:	85 c0                	test   %eax,%eax
58c71b:	74 51                	je     0x58c76e
58c71d:	0f 1f 00             	nopl   (%eax)
58c720:	be b2 59 6c 00       	mov    $0x6c59b2,%esi
58c725:	81 fe b0 69 6c 00    	cmp    $0x6c69b0,%esi
58c72b:	7d 39                	jge    0x58c766
58c72d:	0f b7 06             	movzwl (%esi),%eax
58c730:	50                   	push   %eax
58c731:	57                   	push   %edi
58c732:	e8 19 72 f2 ff       	call   0x4b3950
58c737:	83 c4 08             	add    $0x8,%esp
58c73a:	83 f8 01             	cmp    $0x1,%eax
58c73d:	76 05                	jbe    0x58c744
58c73f:	83 c6 02             	add    $0x2,%esi
58c742:	eb e1                	jmp    0x58c725
58c744:	53                   	push   %ebx
58c745:	57                   	push   %edi
58c746:	57                   	push   %edi
58c747:	e8 84 b9 f4 ff       	call   0x4d80d0
58c74c:	83 c4 0c             	add    $0xc,%esp
58c74f:	85 c0                	test   %eax,%eax
58c751:	75 cd                	jne    0x58c720
58c753:	5b                   	pop    %ebx
58c754:	5f                   	pop    %edi
58c755:	55                   	push   %ebp
58c756:	e8 f5 b5 f4 ff       	call   0x4d7d50
58c75b:	8b 44 24 0c          	mov    0xc(%esp),%eax
58c75f:	83 c4 04             	add    $0x4,%esp
58c762:	5e                   	pop    %esi
58c763:	5d                   	pop    %ebp
58c764:	59                   	pop    %ecx
58c765:	c3                   	ret
58c766:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
58c76d:	00
58c76e:	5b                   	pop    %ebx
58c76f:	5f                   	pop    %edi
58c770:	55                   	push   %ebp
58c771:	e8 da b5 f4 ff       	call   0x4d7d50
58c776:	8b 44 24 0c          	mov    0xc(%esp),%eax
58c77a:	83 c4 04             	add    $0x4,%esp
58c77d:	5e                   	pop    %esi
58c77e:	5d                   	pop    %ebp
58c77f:	59                   	pop    %ecx
58c780:	c3                   	ret
58c781:	cc                   	int3
58c782:	cc                   	int3
58c783:	cc                   	int3
58c784:	cc                   	int3
58c785:	cc                   	int3
58c786:	cc                   	int3
58c787:	cc                   	int3
58c788:	cc                   	int3
58c789:	cc                   	int3
58c78a:	cc                   	int3
58c78b:	cc                   	int3
58c78c:	cc                   	int3
58c78d:	cc                   	int3
58c78e:	cc                   	int3
58c78f:	cc                   	int3
58c790:	b8 04 00 00 00       	mov    $0x4,%eax
58c795:	e8 56 4d 05 00       	call   0x5e14f0
58c79a:	55                   	push   %ebp
58c79b:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
58c79f:	56                   	push   %esi
58c7a0:	57                   	push   %edi
58c7a1:	55                   	push   %ebp
58c7a2:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
58c7a9:	00
58c7aa:	e8 f1 b6 f4 ff       	call   0x4d7ea0
58c7af:	55                   	push   %ebp
58c7b0:	e8 0b b6 f4 ff       	call   0x4d7dc0
58c7b5:	55                   	push   %ebp
58c7b6:	8b f0                	mov    %eax,%esi
58c7b8:	e8 03 b6 f4 ff       	call   0x4d7dc0
58c7bd:	55                   	push   %ebp
58c7be:	8b f8                	mov    %eax,%edi
58c7c0:	e8 fb b5 f4 ff       	call   0x4d7dc0
58c7c5:	8b e8                	mov    %eax,%ebp
58c7c7:	83 c4 10             	add    $0x10,%esp
58c7ca:	85 ed                	test   %ebp,%ebp
58c7cc:	0f 84 32 01 00 00    	je     0x58c904
58c7d2:	ff 74 24 1c          	push   0x1c(%esp)
58c7d6:	55                   	push   %ebp
58c7d7:	e8 b4 80 f2 ff       	call   0x4b4890
58c7dc:	83 c4 08             	add    $0x8,%esp
58c7df:	85 c0                	test   %eax,%eax
58c7e1:	0f 84 1d 01 00 00    	je     0x58c904
58c7e7:	8b 44 24 18          	mov    0x18(%esp),%eax
58c7eb:	6a 01                	push   $0x1
58c7ed:	6a 00                	push   $0x0
58c7ef:	48                   	dec    %eax
58c7f0:	50                   	push   %eax
58c7f1:	57                   	push   %edi
58c7f2:	e8 79 1e fe ff       	call   0x56e670
58c7f7:	83 c4 10             	add    $0x10,%esp
58c7fa:	85 c0                	test   %eax,%eax
58c7fc:	0f 84 02 01 00 00    	je     0x58c904
58c802:	ff 74 24 24          	push   0x24(%esp)
58c806:	55                   	push   %ebp
58c807:	57                   	push   %edi
58c808:	56                   	push   %esi
58c809:	6a 00                	push   $0x0
58c80b:	e8 90 3b fe ff       	call   0x5703a0
58c810:	83 c4 14             	add    $0x14,%esp
58c813:	85 c0                	test   %eax,%eax
58c815:	0f 84 e9 00 00 00    	je     0x58c904
58c81b:	56                   	push   %esi
58c81c:	57                   	push   %edi
58c81d:	57                   	push   %edi
58c81e:	e8 3d b9 f4 ff       	call   0x4d8160
58c823:	83 c4 0c             	add    $0xc,%esp
58c826:	85 c0                	test   %eax,%eax
58c828:	0f 84 d6 00 00 00    	je     0x58c904
58c82e:	8b 44 24 20          	mov    0x20(%esp),%eax
58c832:	85 c0                	test   %eax,%eax
58c834:	75 0d                	jne    0x58c843
58c836:	6a 01                	push   $0x1
58c838:	57                   	push   %edi
58c839:	e8 a2 6f f2 ff       	call   0x4b37e0
58c83e:	83 c4 08             	add    $0x8,%esp
58c841:	eb 1d                	jmp    0x58c860
58c843:	50                   	push   %eax
58c844:	56                   	push   %esi
58c845:	e8 46 80 f2 ff       	call   0x4b4890
58c84a:	83 c4 08             	add    $0x8,%esp
58c84d:	85 c0                	test   %eax,%eax