41f4df:	8b 45 18             	mov    0x18(%ebp),%eax
41f4e2:	85 c0                	test   %eax,%eax
41f4e4:	74 54                	je     0x41f53a
41f4e6:	33 c9                	xor    %ecx,%ecx
41f4e8:	66 39 08             	cmp    %cx,(%eax)
41f4eb:	74 4d                	je     0x41f53a
41f4ed:	51                   	push   %ecx
41f4ee:	50                   	push   %eax
41f4ef:	8d 47 04             	lea    0x4(%edi),%eax
41f4f2:	50                   	push   %eax
41f4f3:	e8 ad 2c fe ff       	call   0x4021a5
41f4f8:	8b f0                	mov    %eax,%esi
41f4fa:	85 f6                	test   %esi,%esi
41f4fc:	79 07                	jns    0x41f505
41f4fe:	68 cc a1 45 00       	push   $0x45a1cc
41f503:	eb 65                	jmp    0x41f56a
41f505:	8b 45 1c             	mov    0x1c(%ebp),%eax
41f508:	85 c0                	test   %eax,%eax
41f50a:	74 40                	je     0x41f54c
41f50c:	33 c9                	xor    %ecx,%ecx
41f50e:	66 39 08             	cmp    %cx,(%eax)
41f511:	74 39                	je     0x41f54c
41f513:	51                   	push   %ecx
41f514:	50                   	push   %eax
41f515:	8d 47 08             	lea    0x8(%edi),%eax
41f518:	50                   	push   %eax
41f519:	e8 87 2c fe ff       	call   0x4021a5
41f51e:	8b f0                	mov    %eax,%esi
41f520:	85 f6                	test   %esi,%esi
41f522:	79 4e                	jns    0x41f572
41f524:	68 ec a1 45 00       	push   $0x45a1ec
41f529:	eb 3f                	jmp    0x41f56a
41f52b:	83 3f 00             	cmpl   $0x0,(%edi)
41f52e:	74 0a                	je     0x41f53a
41f530:	ff 37                	push   (%edi)
41f532:	e8 b8 5f 02 00       	call   0x4454ef
41f537:	83 27 00             	andl   $0x0,(%edi)
41f53a:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
41f53e:	74 0c                	je     0x41f54c
41f540:	ff 77 04             	push   0x4(%edi)
41f543:	e8 a7 5f 02 00       	call   0x4454ef
41f548:	83 67 04 00          	andl   $0x0,0x4(%edi)
41f54c:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
41f550:	74 20                	je     0x41f572
41f552:	ff 77 08             	push   0x8(%edi)
41f555:	e8 95 5f 02 00       	call   0x4454ef
41f55a:	83 67 08 00          	andl   $0x0,0x8(%edi)
41f55e:	eb 12                	jmp    0x41f572
41f560:	be 57 00 07 80       	mov    $0x80070057,%esi
41f565:	68 84 a1 45 00       	push   $0x45a184
41f56a:	56                   	push   %esi
41f56b:	e8 bf 0b 02 00       	call   0x44012f
41f570:	59                   	pop    %ecx
41f571:	59                   	pop    %ecx
41f572:	5f                   	pop    %edi
41f573:	ff 73 0c             	push   0xc(%ebx)
41f576:	ff 15 b8 b1 44 00    	call   *0x44b1b8
41f57c:	8b c6                	mov    %esi,%eax
41f57e:	5e                   	pop    %esi
41f57f:	5b                   	pop    %ebx
41f580:	8b e5                	mov    %ebp,%esp
41f582:	5d                   	pop    %ebp
41f583:	c2 18 00             	ret    $0x18
41f586:	55                   	push   %ebp
41f587:	8b ec                	mov    %esp,%ebp
41f589:	51                   	push   %ecx
41f58a:	51                   	push   %ecx
41f58b:	56                   	push   %esi
41f58c:	8b 75 08             	mov    0x8(%ebp),%esi
41f58f:	57                   	push   %edi
41f590:	33 ff                	xor    %edi,%edi
41f592:	89 7d f8             	mov    %edi,-0x8(%ebp)
41f595:	ff 76 0c             	push   0xc(%esi)
41f598:	89 7d fc             	mov    %edi,-0x4(%ebp)
41f59b:	ff 15 b4 b1 44 00    	call   *0x44b1b4
41f5a1:	8b 46 0c             	mov    0xc(%esi),%eax
41f5a4:	05 b8 00 00 00       	add    $0xb8,%eax
41f5a9:	50                   	push   %eax
41f5aa:	e8 aa de fe ff       	call   0x40d459
41f5af:	8b f0                	mov    %eax,%esi
41f5b1:	85 f6                	test   %esi,%esi
41f5b3:	79 12                	jns    0x41f5c7
41f5b5:	68 24 a0 45 00       	push   $0x45a024
41f5ba:	56                   	push   %esi
41f5bb:	e8 6f 0b 02 00       	call   0x44012f
41f5c0:	59                   	pop    %ecx
41f5c1:	59                   	pop    %ecx
41f5c2:	e9 db 00 00 00       	jmp    0x41f6a2
41f5c7:	53                   	push   %ebx
41f5c8:	8b 5d 14             	mov    0x14(%ebp),%ebx
41f5cb:	85 db                	test   %ebx,%ebx
41f5cd:	0f 84 c9 00 00 00    	je     0x41f69c
41f5d3:	66 39 3b             	cmp    %di,(%ebx)
41f5d6:	0f 84 c0 00 00 00    	je     0x41f69c
41f5dc:	8b 7d 10             	mov    0x10(%ebp),%edi
41f5df:	33 c0                	xor    %eax,%eax
41f5e1:	85 ff                	test   %edi,%edi
41f5e3:	74 59                	je     0x41f63e
41f5e5:	66 39 07             	cmp    %ax,(%edi)
41f5e8:	74 54                	je     0x41f63e
41f5ea:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f5ed:	50                   	push   %eax
41f5ee:	8b 45 08             	mov    0x8(%ebp),%eax
41f5f1:	57                   	push   %edi
41f5f2:	8b 40 0c             	mov    0xc(%eax),%eax
41f5f5:	05 b8 02 00 00       	add    $0x2b8,%eax
41f5fa:	50                   	push   %eax
41f5fb:	e8 57 d6 fe ff       	call   0x40cc57
41f600:	8b f0                	mov    %eax,%esi
41f602:	85 f6                	test   %esi,%esi
41f604:	79 08                	jns    0x41f60e
41f606:	57                   	push   %edi
41f607:	68 54 a0 45 00       	push   $0x45a054
41f60c:	eb 5e                	jmp    0x41f66c
41f60e:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f611:	83 78 04 02          	cmpl   $0x2,0x4(%eax)
41f615:	75 0d                	jne    0x41f624
41f617:	57                   	push   %edi
41f618:	be dd 10 07 80       	mov    $0x800710dd,%esi
41f61d:	68 80 a0 45 00       	push   $0x45a080
41f622:	eb 48                	jmp    0x41f66c
41f624:	33 c9                	xor    %ecx,%ecx
41f626:	83 c0 38             	add    $0x38,%eax
41f629:	51                   	push   %ecx
41f62a:	53                   	push   %ebx
41f62b:	50                   	push   %eax
41f62c:	e8 74 2b fe ff       	call   0x4021a5
41f631:	8b f0                	mov    %eax,%esi
41f633:	85 f6                	test   %esi,%esi
41f635:	79 6a                	jns    0x41f6a1
41f637:	68 c0 a0 45 00       	push   $0x45a0c0
41f63c:	eb 54                	jmp    0x41f692
41f63e:	8b 7d 0c             	mov    0xc(%ebp),%edi
41f641:	85 ff                	test   %edi,%edi
41f643:	74 57                	je     0x41f69c
41f645:	66 39 07             	cmp    %ax,(%edi)
41f648:	74 52                	je     0x41f69c
41f64a:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f64d:	50                   	push   %eax
41f64e:	8b 45 08             	mov    0x8(%ebp),%eax
41f651:	57                   	push   %edi
41f652:	8b 40 0c             	mov    0xc(%eax),%eax
41f655:	05 a8 02 00 00       	add    $0x2a8,%eax
41f65a:	50                   	push   %eax
41f65b:	e8 49 ca fe ff       	call   0x40c0a9
41f660:	8b f0                	mov    %eax,%esi
41f662:	85 f6                	test   %esi,%esi
41f664:	79 11                	jns    0x41f677
41f666:	57                   	push   %edi
41f667:	68 e8 a0 45 00       	push   $0x45a0e8
41f66c:	56                   	push   %esi
41f66d:	e8 bd 0a 02 00       	call   0x44012f
41f672:	83 c4 0c             	add    $0xc,%esp
41f675:	eb 2a                	jmp    0x41f6a1
41f677:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f67a:	33 c9                	xor    %ecx,%ecx
41f67c:	51                   	push   %ecx
41f67d:	53                   	push   %ebx
41f67e:	83 c0 28             	add    $0x28,%eax
41f681:	50                   	push   %eax
41f682:	e8 1e 2b fe ff       	call   0x4021a5
41f687:	8b f0                	mov    %eax,%esi
41f689:	85 f6                	test   %esi,%esi
41f68b:	79 14                	jns    0x41f6a1
41f68d:	68 14 a1 45 00       	push   $0x45a114
41f692:	56                   	push   %esi
41f693:	e8 97 0a 02 00       	call   0x44012f
41f698:	59                   	pop    %ecx
41f699:	59                   	pop    %ecx
41f69a:	eb 05                	jmp    0x41f6a1
41f69c:	be 57 00 07 80       	mov    $0x80070057,%esi
41f6a1:	5b                   	pop    %ebx
41f6a2:	8b 45 08             	mov    0x8(%ebp),%eax
41f6a5:	ff 70 0c             	push   0xc(%eax)
41f6a8:	ff 15 b8 b1 44 00    	call   *0x44b1b8
41f6ae:	5f                   	pop    %edi
41f6af:	8b c6                	mov    %esi,%eax
41f6b1:	5e                   	pop    %esi
41f6b2:	8b e5                	mov    %ebp,%esp
41f6b4:	5d                   	pop    %ebp
41f6b5:	c2 10 00             	ret    $0x10
41f6b8:	55                   	push   %ebp
41f6b9:	8b ec                	mov    %esp,%ebp
41f6bb:	51                   	push   %ecx
41f6bc:	51                   	push   %ecx
41f6bd:	53                   	push   %ebx
41f6be:	56                   	push   %esi
41f6bf:	57                   	push   %edi
41f6c0:	8b 7d 08             	mov    0x8(%ebp),%edi
41f6c3:	33 c0                	xor    %eax,%eax
41f6c5:	8b f0                	mov    %eax,%esi
41f6c7:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f6ca:	89 45 f8             	mov    %eax,-0x8(%ebp)
41f6cd:	ff 77 0c             	push   0xc(%edi)
41f6d0:	ff 15 b4 b1 44 00    	call   *0x44b1b4
41f6d6:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41f6d9:	33 c9                	xor    %ecx,%ecx
41f6db:	85 db                	test   %ebx,%ebx
41f6dd:	74 05                	je     0x41f6e4
41f6df:	66 39 0b             	cmp    %cx,(%ebx)
41f6e2:	75 14                	jne    0x41f6f8
41f6e4:	8b 45 10             	mov    0x10(%ebp),%eax
41f6e7:	85 c0                	test   %eax,%eax
41f6e9:	0f 84 1d 01 00 00    	je     0x41f80c
41f6ef:	66 39 08             	cmp    %cx,(%eax)
41f6f2:	0f 84 14 01 00 00    	je     0x41f80c
41f6f8:	8b 45 20             	mov    0x20(%ebp),%eax
41f6fb:	39 75 1c             	cmp    %esi,0x1c(%ebp)
41f6fe:	75 54                	jne    0x41f754
41f700:	39 75 24             	cmp    %esi,0x24(%ebp)
41f703:	75 5f                	jne    0x41f764
41f705:	85 c0                	test   %eax,%eax
41f707:	75 5b                	jne    0x41f764
41f709:	8b 47 0c             	mov    0xc(%edi),%eax
41f70c:	05 f0 02 00 00       	add    $0x2f0,%eax
41f711:	50                   	push   %eax
41f712:	e8 83 f0 fe ff       	call   0x40e79a
41f717:	85 db                	test   %ebx,%ebx
41f719:	74 07                	je     0x41f722
41f71b:	33 c9                	xor    %ecx,%ecx
41f71d:	66 39 0b             	cmp    %cx,(%ebx)
41f720:	75 4e                	jne    0x41f770
41f722:	8b 47 0c             	mov    0xc(%edi),%eax
41f725:	ff b0 48 01 00 00    	push   0x148(%eax)
41f72b:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f72e:	68 90 9f 45 00       	push   $0x459f90
41f733:	50                   	push   %eax
41f734:	e8 e7 27 fe ff       	call   0x401f20
41f739:	8b f0                	mov    %eax,%esi
41f73b:	83 c4 0c             	add    $0xc,%esp
41f73e:	85 f6                	test   %esi,%esi
41f740:	79 2c                	jns    0x41f76e
41f742:	68 a8 9f 45 00       	push   $0x459fa8
41f747:	56                   	push   %esi
41f748:	e8 e2 09 02 00       	call   0x44012f
41f74d:	59                   	pop    %ecx
41f74e:	59                   	pop    %ecx
41f74f:	e9 c6 00 00 00       	jmp    0x41f81a
41f754:	83 7d 1c 01          	cmpl   $0x1,0x1c(%ebp)
41f758:	75 af                	jne    0x41f709
41f75a:	83 7d 24 14          	cmpl   $0x14,0x24(%ebp)
41f75e:	75 04                	jne    0x41f764
41f760:	85 c0                	test   %eax,%eax
41f762:	75 a5                	jne    0x41f709
41f764:	be 57 00 07 80       	mov    $0x80070057,%esi
41f769:	e9 ac 00 00 00       	jmp    0x41f81a
41f76e:	33 c9                	xor    %ecx,%ecx
41f770:	8b 47 0c             	mov    0xc(%edi),%eax
41f773:	ff 70 28             	push   0x28(%eax)
41f776:	51                   	push   %ecx
41f777:	ff b0 c0 01 00 00    	push   0x1c0(%eax)
41f77d:	ff b0 40 01 00 00    	push   0x140(%eax)
41f783:	51                   	push   %ecx
41f784:	51                   	push   %ecx
41f785:	ff 70 24             	push   0x24(%eax)
41f788:	ff 70 20             	push   0x20(%eax)
41f78b:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f78e:	6a 05                	push   $0x5
41f790:	50                   	push   %eax
41f791:	e8 93 84 ff ff       	call   0x417c29
41f796:	8b f0                	mov    %eax,%esi
41f798:	85 f6                	test   %esi,%esi
41f79a:	79 07                	jns    0x41f7a3
41f79c:	68 d0 9f 45 00       	push   $0x459fd0
41f7a1:	eb a4                	jmp    0x41f747
41f7a3:	ff 75 24             	push   0x24(%ebp)
41f7a6:	8b 47 0c             	mov    0xc(%edi),%eax
41f7a9:	33 c9                	xor    %ecx,%ecx
41f7ab:	ff 75 20             	push   0x20(%ebp)
41f7ae:	39 4d fc             	cmp    %ecx,-0x4(%ebp)
41f7b1:	51                   	push   %ecx
41f7b2:	0f 45 5d fc          	cmovne -0x4(%ebp),%ebx
41f7b6:	51                   	push   %ecx
41f7b7:	51                   	push   %ecx
41f7b8:	ff 75 f8             	push   -0x8(%ebp)
41f7bb:	6a 01                	push   $0x1
41f7bd:	ff 75 18             	push   0x18(%ebp)
41f7c0:	ff 75 14             	push   0x14(%ebp)
41f7c3:	ff 75 10             	push   0x10(%ebp)
41f7c6:	53                   	push   %ebx
41f7c7:	ff b0 48 01 00 00    	push   0x148(%eax)
41f7cd:	6a 02                	push   $0x2
41f7cf:	6a 06                	push   $0x6
41f7d1:	ff b0 10 01 00 00    	push   0x110(%eax)
41f7d7:	05 f8 02 00 00       	add    $0x2f8,%eax
41f7dc:	51                   	push   %ecx
41f7dd:	50                   	push   %eax
41f7de:	68 0a 00 03 00       	push   $0x3000a
41f7e3:	68 00 00 6e 12       	push   $0x126e0000
41f7e8:	e8 0d c9 00 00       	call   0x42c0fa
41f7ed:	8b f0                	mov    %eax,%esi
41f7ef:	85 f6                	test   %esi,%esi
41f7f1:	79 0a                	jns    0x41f7fd
41f7f3:	68 04 a0 45 00       	push   $0x45a004
41f7f8:	e9 4a ff ff ff       	jmp    0x41f747
41f7fd:	8b 47 0c             	mov    0xc(%edi),%eax
41f800:	c7 80 f0 02 00 00 01 	movl   $0x1,0x2f0(%eax)
41f807:	00 00 00
41f80a:	eb 0e                	jmp    0x41f81a
41f80c:	8b 47 0c             	mov    0xc(%edi),%eax
41f80f:	05 f0 02 00 00       	add    $0x2f0,%eax
41f814:	50                   	push   %eax
41f815:	e8 80 ef fe ff       	call   0x40e79a
41f81a:	ff 77 0c             	push   0xc(%edi)
41f81d:	ff 15 b8 b1 44 00    	call   *0x44b1b8
41f823:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41f827:	74 08                	je     0x41f831
41f829:	ff 75 f8             	push   -0x8(%ebp)
41f82c:	e8 be 5c 02 00       	call   0x4454ef
41f831:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41f835:	74 08                	je     0x41f83f
41f837:	ff 75 fc             	push   -0x4(%ebp)
41f83a:	e8 b0 5c 02 00       	call   0x4454ef
41f83f:	5f                   	pop    %edi
41f840:	8b c6                	mov    %esi,%eax
41f842:	5e                   	pop    %esi
41f843:	5b                   	pop    %ebx
41f844:	8b e5                	mov    %ebp,%esp
41f846:	5d                   	pop    %ebp
41f847:	c2 20 00             	ret    $0x20
41f84a:	55                   	push   %ebp
41f84b:	8b ec                	mov    %esp,%ebp
41f84d:	8b 45 0c             	mov    0xc(%ebp),%eax
41f850:	56                   	push   %esi
41f851:	85 c0                	test   %eax,%eax
41f853:	74 2d                	je     0x41f882
41f855:	33 c9                	xor    %ecx,%ecx
41f857:	66 39 08             	cmp    %cx,(%eax)
41f85a:	74 26                	je     0x41f882
41f85c:	51                   	push   %ecx
41f85d:	ff 75 14             	push   0x14(%ebp)
41f860:	ff 75 10             	push   0x10(%ebp)
41f863:	50                   	push   %eax
41f864:	8b 45 08             	mov    0x8(%ebp),%eax
41f867:	8b 40 0c             	mov    0xc(%eax),%eax
41f86a:	05 88 00 00 00       	add    $0x88,%eax
41f86f:	50                   	push   %eax
41f870:	e8 dd 88 fe ff       	call   0x408152
41f875:	8b f0                	mov    %eax,%esi
41f877:	85 f6                	test   %esi,%esi
41f879:	79 19                	jns    0x41f894
41f87b:	68 10 a2 45 00       	push   $0x45a210
41f880:	eb 0a                	jmp    0x41f88c
41f882:	be 57 00 07 80       	mov    $0x80070057,%esi
41f887:	68 30 a2 45 00       	push   $0x45a230
41f88c:	56                   	push   %esi
41f88d:	e8 9d 08 02 00       	call   0x44012f
41f892:	59                   	pop    %ecx
41f893:	59                   	pop    %ecx
41f894:	8b c6                	mov    %esi,%eax