a0959d:	8b 07                	mov    (%edi),%eax
a0959f:	ff 75 08             	push   0x8(%ebp)
a095a2:	68 8c 01 00 00       	push   $0x18c
a095a7:	8b b0 1c 01 00 00    	mov    0x11c(%eax),%esi
a095ad:	8b ce                	mov    %esi,%ecx
a095af:	e8 b1 30 a2 ff       	call   0x42c665
a095b4:	8b cf                	mov    %edi,%ecx
a095b6:	ff d6                	call   *%esi
a095b8:	eb 3e                	jmp    0xa095f8
a095ba:	8b 75 08             	mov    0x8(%ebp),%esi
a095bd:	46                   	inc    %esi
a095be:	f7 de                	neg    %esi
a095c0:	53                   	push   %ebx
a095c1:	1b f6                	sbb    %esi,%esi
a095c3:	23 75 08             	and    0x8(%ebp),%esi
a095c6:	33 db                	xor    %ebx,%ebx
a095c8:	eb 16                	jmp    0xa095e0
a095ca:	53                   	push   %ebx
a095cb:	56                   	push   %esi
a095cc:	68 99 01 00 00       	push   $0x199
a095d1:	ff 77 20             	push   0x20(%edi)
a095d4:	ff 15 20 40 d8 00    	call   *0xd84020
a095da:	39 45 0c             	cmp    %eax,0xc(%ebp)
a095dd:	74 1f                	je     0xa095fe
a095df:	46                   	inc    %esi
a095e0:	53                   	push   %ebx
a095e1:	53                   	push   %ebx
a095e2:	68 8b 01 00 00       	push   $0x18b
a095e7:	ff 77 20             	push   0x20(%edi)
a095ea:	ff 15 20 40 d8 00    	call   *0xd84020
a095f0:	3b f0                	cmp    %eax,%esi
a095f2:	7c d6                	jl     0xa095ca
a095f4:	83 c8 ff             	or     $0xffffffff,%eax
a095f7:	5b                   	pop    %ebx
a095f8:	5f                   	pop    %edi
a095f9:	5e                   	pop    %esi
a095fa:	5d                   	pop    %ebp
a095fb:	c2 08 00             	ret    $0x8
a095fe:	53                   	push   %ebx
a095ff:	56                   	push   %esi
a09600:	68 86 01 00 00       	push   $0x186
a09605:	ff 77 20             	push   0x20(%edi)
a09608:	ff 15 20 40 d8 00    	call   *0xd84020
a0960e:	8b c6                	mov    %esi,%eax
a09610:	eb e5                	jmp    0xa095f7
a09612:	cc                   	int3
a09613:	cc                   	int3
a09614:	cc                   	int3
a09615:	cc                   	int3
a09616:	cc                   	int3
a09617:	cc                   	int3
a09618:	cc                   	int3
a09619:	cc                   	int3
a0961a:	cc                   	int3
a0961b:	cc                   	int3
a0961c:	cc                   	int3
a0961d:	cc                   	int3
a0961e:	cc                   	int3
a0961f:	cc                   	int3
a09620:	cc                   	int3
a09621:	cc                   	int3
a09622:	cc                   	int3
a09623:	cc                   	int3
a09624:	cc                   	int3
a09625:	cc                   	int3
a09626:	cc                   	int3
a09627:	cc                   	int3
a09628:	cc                   	int3
a09629:	cc                   	int3
a0962a:	cc                   	int3
a0962b:	cc                   	int3
a0962c:	cc                   	int3
a0962d:	cc                   	int3
a0962e:	cc                   	int3
a0962f:	cc                   	int3
a09630:	cc                   	int3
a09631:	cc                   	int3
a09632:	cc                   	int3
a09633:	cc                   	int3
a09634:	55                   	push   %ebp
a09635:	8b ec                	mov    %esp,%ebp
a09637:	51                   	push   %ecx
a09638:	53                   	push   %ebx
a09639:	8b d9                	mov    %ecx,%ebx
a0963b:	56                   	push   %esi
a0963c:	6a 00                	push   $0x0
a0963e:	ff 75 08             	push   0x8(%ebp)
a09641:	8b 33                	mov    (%ebx),%esi
a09643:	68 99 01 00 00       	push   $0x199
a09648:	8b b6 1c 01 00 00    	mov    0x11c(%esi),%esi
a0964e:	8b ce                	mov    %esi,%ecx
a09650:	e8 10 30 a2 ff       	call   0x42c665
a09655:	8b cb                	mov    %ebx,%ecx
a09657:	ff d6                	call   *%esi
a09659:	8b f0                	mov    %eax,%esi
a0965b:	83 fe ff             	cmp    $0xffffffff,%esi
a0965e:	74 5c                	je     0xa096bc
a09660:	57                   	push   %edi
a09661:	8b fe                	mov    %esi,%edi
a09663:	85 f6                	test   %esi,%esi
a09665:	75 21                	jne    0xa09688
a09667:	6a 0c                	push   $0xc
a09669:	e8 0f 13 a2 ff       	call   0x42a97d
a0966e:	8b f8                	mov    %eax,%edi
a09670:	89 7d fc             	mov    %edi,-0x4(%ebp)
a09673:	59                   	pop    %ecx
a09674:	85 ff                	test   %edi,%edi
a09676:	74 0e                	je     0xa09686
a09678:	21 37                	and    %esi,(%edi)
a0967a:	21 77 08             	and    %esi,0x8(%edi)
a0967d:	c7 47 04 01 00 00 00 	movl   $0x1,0x4(%edi)
a09684:	eb 02                	jmp    0xa09688
a09686:	33 ff                	xor    %edi,%edi
a09688:	8b 45 0c             	mov    0xc(%ebp),%eax
a0968b:	89 47 08             	mov    %eax,0x8(%edi)
a0968e:	8b 03                	mov    (%ebx),%eax
a09690:	57                   	push   %edi
a09691:	ff 75 08             	push   0x8(%ebp)
a09694:	8b b0 1c 01 00 00    	mov    0x11c(%eax),%esi
a0969a:	8b ce                	mov    %esi,%ecx
a0969c:	68 9a 01 00 00       	push   $0x19a
a096a1:	e8 bf 2f a2 ff       	call   0x42c665
a096a6:	8b cb                	mov    %ebx,%ecx
a096a8:	ff d6                	call   *%esi
a096aa:	8b f0                	mov    %eax,%esi
a096ac:	83 fe ff             	cmp    $0xffffffff,%esi
a096af:	75 0a                	jne    0xa096bb
a096b1:	6a 0c                	push   $0xc
a096b3:	57                   	push   %edi
a096b4:	e8 e3 87 9f ff       	call   0x401e9c
a096b9:	59                   	pop    %ecx
a096ba:	59                   	pop    %ecx
a096bb:	5f                   	pop    %edi
a096bc:	8b c6                	mov    %esi,%eax
a096be:	5e                   	pop    %esi
a096bf:	5b                   	pop    %ebx
a096c0:	8b e5                	mov    %ebp,%esp
a096c2:	5d                   	pop    %ebp
a096c3:	c2 08 00             	ret    $0x8
a096c6:	cc                   	int3
a096c7:	cc                   	int3
a096c8:	cc                   	int3
a096c9:	cc                   	int3
a096ca:	cc                   	int3
a096cb:	cc                   	int3
a096cc:	cc                   	int3
a096cd:	cc                   	int3
a096ce:	cc                   	int3
a096cf:	cc                   	int3
a096d0:	cc                   	int3
a096d1:	cc                   	int3
a096d2:	cc                   	int3
a096d3:	cc                   	int3
a096d4:	cc                   	int3
a096d5:	cc                   	int3
a096d6:	cc                   	int3
a096d7:	cc                   	int3
a096d8:	cc                   	int3
a096d9:	cc                   	int3
a096da:	cc                   	int3
a096db:	cc                   	int3
a096dc:	cc                   	int3
a096dd:	cc                   	int3
a096de:	cc                   	int3
a096df:	cc                   	int3
a096e0:	cc                   	int3
a096e1:	cc                   	int3
a096e2:	cc                   	int3
a096e3:	cc                   	int3
a096e4:	cc                   	int3
a096e5:	cc                   	int3
a096e6:	cc                   	int3
a096e7:	cc                   	int3
a096e8:	cc                   	int3
a096e9:	cc                   	int3
a096ea:	55                   	push   %ebp
a096eb:	8b ec                	mov    %esp,%ebp
a096ed:	56                   	push   %esi
a096ee:	0f b7 75 0c          	movzwl 0xc(%ebp),%esi
a096f2:	57                   	push   %edi
a096f3:	8b f9                	mov    %ecx,%edi
a096f5:	e8 02 cc a0 ff       	call   0x4162fc
a096fa:	3b c6                	cmp    %esi,%eax
a096fc:	7e 09                	jle    0xa09707
a096fe:	8b cf                	mov    %edi,%ecx
a09700:	e8 f7 cb a0 ff       	call   0x4162fc
a09705:	8b f0                	mov    %eax,%esi
a09707:	8b 0f                	mov    (%edi),%ecx
a09709:	0f b7 c6             	movzwl %si,%eax
a0970c:	50                   	push   %eax
a0970d:	ff 75 08             	push   0x8(%ebp)
a09710:	8b b1 1c 01 00 00    	mov    0x11c(%ecx),%esi
a09716:	8b ce                	mov    %esi,%ecx
a09718:	68 a0 01 00 00       	push   $0x1a0
a0971d:	e8 43 2f a2 ff       	call   0x42c665
a09722:	8b cf                	mov    %edi,%ecx
a09724:	ff d6                	call   *%esi
a09726:	5f                   	pop    %edi
a09727:	5e                   	pop    %esi
a09728:	5d                   	pop    %ebp
a09729:	c2 08 00             	ret    $0x8
a0972c:	cc                   	int3
a0972d:	cc                   	int3
a0972e:	cc                   	int3
a0972f:	cc                   	int3
a09730:	cc                   	int3
a09731:	cc                   	int3
a09732:	cc                   	int3
a09733:	cc                   	int3
a09734:	cc                   	int3
a09735:	cc                   	int3
a09736:	cc                   	int3
a09737:	cc                   	int3
a09738:	cc                   	int3
a09739:	cc                   	int3
a0973a:	cc                   	int3
a0973b:	cc                   	int3
a0973c:	55                   	push   %ebp
a0973d:	8b ec                	mov    %esp,%ebp
a0973f:	51                   	push   %ecx
a09740:	56                   	push   %esi
a09741:	8d 45 fc             	lea    -0x4(%ebp),%eax
a09744:	8b f1                	mov    %ecx,%esi
a09746:	50                   	push   %eax
a09747:	ff 75 10             	push   0x10(%ebp)
a0974a:	ff 75 0c             	push   0xc(%ebp)
a0974d:	e8 d8 97 a1 ff       	call   0x422f2a
a09752:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
a09756:	8b ce                	mov    %esi,%ecx
a09758:	74 10                	je     0xa0976a
a0975a:	ff 75 10             	push   0x10(%ebp)
a0975d:	ff 75 0c             	push   0xc(%ebp)
a09760:	ff 75 08             	push   0x8(%ebp)
a09763:	e8 fa b0 a0 ff       	call   0x414862
a09768:	eb 05                	jmp    0xa0976f
a0976a:	e8 f1 88 a2 ff       	call   0x432060
a0976f:	5e                   	pop    %esi
a09770:	8b e5                	mov    %ebp,%esp
a09772:	5d                   	pop    %ebp
a09773:	c2 0c 00             	ret    $0xc
a09776:	cc                   	int3
a09777:	cc                   	int3
a09778:	cc                   	int3
a09779:	cc                   	int3
a0977a:	cc                   	int3
a0977b:	cc                   	int3
a0977c:	cc                   	int3
a0977d:	cc                   	int3
a0977e:	cc                   	int3
a0977f:	cc                   	int3
a09780:	cc                   	int3
a09781:	cc                   	int3
a09782:	cc                   	int3
a09783:	cc                   	int3
a09784:	55                   	push   %ebp
a09785:	8b ec                	mov    %esp,%ebp
a09787:	51                   	push   %ecx
a09788:	56                   	push   %esi
a09789:	57                   	push   %edi
a0978a:	8b f9                	mov    %ecx,%edi
a0978c:	e8 98 75 a1 ff       	call   0x420d29
a09791:	8d 45 fc             	lea    -0x4(%ebp),%eax
a09794:	8b cf                	mov    %edi,%ecx
a09796:	50                   	push   %eax
a09797:	ff 75 10             	push   0x10(%ebp)
a0979a:	ff 75 0c             	push   0xc(%ebp)
a0979d:	e8 88 97 a1 ff       	call   0x422f2a
a097a2:	8b f0                	mov    %eax,%esi
a097a4:	8b cf                	mov    %edi,%ecx
a097a6:	56                   	push   %esi
a097a7:	e8 ca 4c a0 ff       	call   0x40e476
a097ac:	85 c0                	test   %eax,%eax
a097ae:	0f 84 cb 00 00 00    	je     0xa0987f
a097b4:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
a097ba:	83 f8 02             	cmp    $0x2,%eax
a097bd:	0f 84 b5 00 00 00    	je     0xa09878
a097c3:	83 f8 05             	cmp    $0x5,%eax
a097c6:	0f 84 ac 00 00 00    	je     0xa09878
a097cc:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
a097d0:	0f 84 a2 00 00 00    	je     0xa09878
a097d6:	53                   	push   %ebx
a097d7:	ff 77 20             	push   0x20(%edi)
a097da:	ff 15 30 40 d8 00    	call   *0xd84030
a097e0:	50                   	push   %eax
a097e1:	e8 a8 bf a1 ff       	call   0x42578e
a097e6:	33 db                	xor    %ebx,%ebx
a097e8:	89 45 fc             	mov    %eax,-0x4(%ebp)
a097eb:	83 bf 84 00 00 00 06 	cmpl   $0x6,0x84(%edi)
a097f2:	8b cf                	mov    %edi,%ecx
a097f4:	56                   	push   %esi
a097f5:	0f 94 c3             	sete   %bl
a097f8:	83 c3 02             	add    $0x2,%ebx
a097fb:	e8 1a 48 a1 ff       	call   0x41e01a
a09800:	3b c3                	cmp    %ebx,%eax
a09802:	75 01                	jne    0xa09805
a09804:	48                   	dec    %eax
a09805:	40                   	inc    %eax
a09806:	8b cf                	mov    %edi,%ecx
a09808:	99                   	cltd
a09809:	f7 fb                	idiv   %ebx
a0980b:	8b da                	mov    %edx,%ebx
a0980d:	53                   	push   %ebx
a0980e:	56                   	push   %esi
a0980f:	e8 74 92 a2 ff       	call   0x432a88
a09814:	56                   	push   %esi
a09815:	8b cf                	mov    %edi,%ecx
a09817:	e8 55 dd a0 ff       	call   0x417571
a0981c:	8b cf                	mov    %edi,%ecx
a0981e:	e8 58 00 a1 ff       	call   0x41987b
a09823:	a9 08 08 00 00       	test   $0x808,%eax
a09828:	74 1f                	je     0xa09849
a0982a:	6a 00                	push   $0x0
a0982c:	56                   	push   %esi
a0982d:	68 87 01 00 00       	push   $0x187
a09832:	ff 77 20             	push   0x20(%edi)
a09835:	ff 15 20 40 d8 00    	call   *0xd84020
a0983b:	85 c0                	test   %eax,%eax
a0983d:	74 0a                	je     0xa09849
a0983f:	53                   	push   %ebx
a09840:	8b cf                	mov    %edi,%ecx
a09842:	e8 bb 19 a1 ff       	call   0x41b202
a09847:	eb 07                	jmp    0xa09850
a09849:	8b cf                	mov    %edi,%ecx
a0984b:	e8 10 88 a2 ff       	call   0x432060
a09850:	8b 77 20             	mov    0x20(%edi),%esi
a09853:	8b cf                	mov    %edi,%ecx
a09855:	e8 5f fe a0 ff       	call   0x4196b9
a0985a:	0f b7 c0             	movzwl %ax,%eax
a0985d:	56                   	push   %esi
a0985e:	0d 00 00 28 00       	or     $0x280000,%eax
a09863:	50                   	push   %eax
a09864:	8b 45 fc             	mov    -0x4(%ebp),%eax
a09867:	68 11 01 00 00       	push   $0x111
a0986c:	ff 70 20             	push   0x20(%eax)
a0986f:	ff 15 20 40 d8 00    	call   *0xd84020
a09875:	5b                   	pop    %ebx
a09876:	eb 07                	jmp    0xa0987f
a09878:	8b cf                	mov    %edi,%ecx
a0987a:	e8 e1 87 a2 ff       	call   0x432060
a0987f:	5f                   	pop    %edi
a09880:	5e                   	pop    %esi
a09881:	8b e5                	mov    %ebp,%esp
a09883:	5d                   	pop    %ebp
a09884:	c2 0c 00             	ret    $0xc
a09887:	cc                   	int3
a09888:	cc                   	int3
a09889:	cc                   	int3
a0988a:	cc                   	int3
a0988b:	cc                   	int3
a0988c:	cc                   	int3