41965e:	ff 15 24 a3 42 00    	call   *0x42a324
419664:	8b 1d 98 a2 42 00    	mov    0x42a298,%ebx
41966a:	6a 02                	push   $0x2
41966c:	8d 45 f0             	lea    -0x10(%ebp),%eax
41966f:	50                   	push   %eax
419670:	ff 75 0c             	push   0xc(%ebp)
419673:	ff d3                	call   *%ebx
419675:	50                   	push   %eax
419676:	6a 00                	push   $0x0
419678:	ff 15 9c a2 42 00    	call   *0x42a29c
41967e:	8b 46 04             	mov    0x4(%esi),%eax
419681:	85 c0                	test   %eax,%eax
419683:	74 07                	je     0x41968c
419685:	50                   	push   %eax
419686:	ff 15 b4 a2 42 00    	call   *0x42a2b4
41968c:	8b 45 f0             	mov    -0x10(%ebp),%eax
41968f:	8b 7d f8             	mov    -0x8(%ebp),%edi
419692:	56                   	push   %esi
419693:	ff 36                	push   (%esi)
419695:	2b f8                	sub    %eax,%edi
419697:	6a 00                	push   $0x0
419699:	ff 75 0c             	push   0xc(%ebp)
41969c:	8d 48 01             	lea    0x1(%eax),%ecx
41969f:	4f                   	dec    %edi
4196a0:	89 4d 18             	mov    %ecx,0x18(%ebp)
4196a3:	4f                   	dec    %edi
4196a4:	ff d3                	call   *%ebx
4196a6:	50                   	push   %eax
4196a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4196aa:	2b 45 f4             	sub    -0xc(%ebp),%eax
4196ad:	50                   	push   %eax
4196ae:	57                   	push   %edi
4196af:	ff 75 f4             	push   -0xc(%ebp)
4196b2:	33 ff                	xor    %edi,%edi
4196b4:	ff 75 18             	push   0x18(%ebp)
4196b7:	68 00 00 00 40       	push   $0x40000000
4196bc:	57                   	push   %edi
4196bd:	68 30 b0 42 00       	push   $0x42b030
4196c2:	57                   	push   %edi
4196c3:	ff 15 a0 a2 42 00    	call   *0x42a2a0
4196c9:	89 46 04             	mov    %eax,0x4(%esi)
4196cc:	39 7e 0c             	cmp    %edi,0xc(%esi)
4196cf:	75 3d                	jne    0x41970e
4196d1:	39 7d 0c             	cmp    %edi,0xc(%ebp)
4196d4:	74 5b                	je     0x419731
4196d6:	39 7e 14             	cmp    %edi,0x14(%esi)
4196d9:	75 56                	jne    0x419731
4196db:	8b 46 10             	mov    0x10(%esi),%eax
4196de:	3b c7                	cmp    %edi,%eax
4196e0:	74 4f                	je     0x419731
4196e2:	50                   	push   %eax
4196e3:	8b ce                	mov    %esi,%ecx
4196e5:	e8 af fb ff ff       	call   0x419299
4196ea:	8b f0                	mov    %eax,%esi
4196ec:	3b f7                	cmp    %edi,%esi
4196ee:	74 41                	je     0x419731
4196f0:	6a 05                	push   $0x5
4196f2:	ff 75 0c             	push   0xc(%ebp)
4196f5:	ff 15 8c a2 42 00    	call   *0x42a28c
4196fb:	56                   	push   %esi
4196fc:	ff 75 0c             	push   0xc(%ebp)
4196ff:	ff 15 34 a3 42 00    	call   *0x42a334
419705:	56                   	push   %esi
419706:	e8 d7 07 00 00       	call   0x419ee2
41970b:	59                   	pop    %ecx
41970c:	eb 23                	jmp    0x419731
41970e:	3b c7                	cmp    %edi,%eax
419710:	74 12                	je     0x419724
419712:	6a 05                	push   $0x5
419714:	50                   	push   %eax
419715:	ff 15 8c a2 42 00    	call   *0x42a28c
41971b:	ff 76 04             	push   0x4(%esi)
41971e:	ff 15 a4 a2 42 00    	call   *0x42a2a4
419724:	83 7e 1c 64          	cmpl   $0x64,0x1c(%esi)
419728:	76 07                	jbe    0x419731
41972a:	8b ce                	mov    %esi,%ecx
41972c:	e8 72 f8 ff ff       	call   0x418fa3
419731:	5f                   	pop    %edi
419732:	5e                   	pop    %esi
419733:	5b                   	pop    %ebx
419734:	c9                   	leave
419735:	c2 14 00             	ret    $0x14
419738:	55                   	push   %ebp
419739:	8b ec                	mov    %esp,%ebp
41973b:	51                   	push   %ecx
41973c:	51                   	push   %ecx
41973d:	53                   	push   %ebx
41973e:	8d 45 fc             	lea    -0x4(%ebp),%eax
419741:	50                   	push   %eax
419742:	68 a8 b0 42 00       	push   $0x42b0a8
419747:	6a 01                	push   $0x1
419749:	33 db                	xor    %ebx,%ebx
41974b:	53                   	push   %ebx
41974c:	68 58 b1 42 00       	push   $0x42b158
419751:	ff 15 50 a3 42 00    	call   *0x42a350
419757:	85 c0                	test   %eax,%eax
419759:	0f 8c aa 00 00 00    	jl     0x419809
41975f:	8b 45 fc             	mov    -0x4(%ebp),%eax
419762:	8b 08                	mov    (%eax),%ecx
419764:	8d 55 f8             	lea    -0x8(%ebp),%edx
419767:	52                   	push   %edx
419768:	68 48 b1 42 00       	push   $0x42b148
41976d:	50                   	push   %eax
41976e:	ff 11                	call   *(%ecx)
419770:	85 c0                	test   %eax,%eax
419772:	0f 8c 88 00 00 00    	jl     0x419800
419778:	38 5d 08             	cmp    %bl,0x8(%ebp)
41977b:	74 0e                	je     0x41978b
41977d:	8b 45 f8             	mov    -0x8(%ebp),%eax
419780:	8b 08                	mov    (%eax),%ecx
419782:	6a 02                	push   $0x2
419784:	ff 75 10             	push   0x10(%ebp)
419787:	50                   	push   %eax
419788:	ff 51 14             	call   *0x14(%ecx)
41978b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41978e:	ff 75 0c             	push   0xc(%ebp)
419791:	8b 08                	mov    (%eax),%ecx
419793:	50                   	push   %eax
419794:	ff 51 50             	call   *0x50(%ecx)
419797:	39 5d 18             	cmp    %ebx,0x18(%ebp)
41979a:	74 0c                	je     0x4197a8
41979c:	8b 45 fc             	mov    -0x4(%ebp),%eax
41979f:	ff 75 18             	push   0x18(%ebp)
4197a2:	8b 08                	mov    (%eax),%ecx
4197a4:	50                   	push   %eax
4197a5:	ff 51 1c             	call   *0x1c(%ecx)
4197a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4197ab:	8b 08                	mov    (%eax),%ecx
4197ad:	53                   	push   %ebx
4197ae:	39 5d 1c             	cmp    %ebx,0x1c(%ebp)
4197b1:	75 07                	jne    0x4197ba
4197b3:	68 3c a5 42 00       	push   $0x42a53c
4197b8:	eb 03                	jmp    0x4197bd
4197ba:	ff 75 1c             	push   0x1c(%ebp)
4197bd:	50                   	push   %eax
4197be:	ff 51 44             	call   *0x44(%ecx)
4197c1:	39 5d 20             	cmp    %ebx,0x20(%ebp)
4197c4:	74 0c                	je     0x4197d2
4197c6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4197c9:	ff 75 20             	push   0x20(%ebp)
4197cc:	8b 08                	mov    (%eax),%ecx
4197ce:	50                   	push   %eax
4197cf:	ff 51 2c             	call   *0x2c(%ecx)
4197d2:	39 5d 14             	cmp    %ebx,0x14(%ebp)
4197d5:	74 0c                	je     0x4197e3
4197d7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4197da:	ff 75 14             	push   0x14(%ebp)
4197dd:	8b 08                	mov    (%eax),%ecx
4197df:	50                   	push   %eax
4197e0:	ff 51 24             	call   *0x24(%ecx)
4197e3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4197e6:	8b 08                	mov    (%eax),%ecx
4197e8:	6a 01                	push   $0x1
4197ea:	ff 75 10             	push   0x10(%ebp)
4197ed:	50                   	push   %eax
4197ee:	ff 51 18             	call   *0x18(%ecx)
4197f1:	85 c0                	test   %eax,%eax
4197f3:	7c 02                	jl     0x4197f7
4197f5:	b3 01                	mov    $0x1,%bl
4197f7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4197fa:	8b 08                	mov    (%eax),%ecx
4197fc:	50                   	push   %eax
4197fd:	ff 51 08             	call   *0x8(%ecx)
419800:	8b 45 fc             	mov    -0x4(%ebp),%eax
419803:	8b 08                	mov    (%eax),%ecx
419805:	50                   	push   %eax
419806:	ff 51 08             	call   *0x8(%ecx)
419809:	8a c3                	mov    %bl,%al
41980b:	5b                   	pop    %ebx
41980c:	c9                   	leave
41980d:	c2 1c 00             	ret    $0x1c
419810:	ff 74 24 04          	push   0x4(%esp)
419814:	ff 15 38 a1 42 00    	call   *0x42a138
41981a:	f7 d8                	neg    %eax
41981c:	1b c0                	sbb    %eax,%eax
41981e:	f7 d8                	neg    %eax
419820:	c2 04 00             	ret    $0x4
419823:	ff 74 24 04          	push   0x4(%esp)
419827:	ff 74 24 0c          	push   0xc(%esp)
41982b:	ff 15 70 a0 42 00    	call   *0x42a070
419831:	f7 d8                	neg    %eax
419833:	1b c0                	sbb    %eax,%eax
419835:	f7 d8                	neg    %eax
419837:	c2 08 00             	ret    $0x8
41983a:	55                   	push   %ebp
41983b:	8b ec                	mov    %esp,%ebp
41983d:	81 ec a0 00 00 00    	sub    $0xa0,%esp
419843:	57                   	push   %edi
419844:	8b 7d 08             	mov    0x8(%ebp),%edi
419847:	6a 50                	push   $0x50
419849:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
41984f:	50                   	push   %eax
419850:	57                   	push   %edi
419851:	ff 15 ec a2 42 00    	call   *0x42a2ec
419857:	85 c0                	test   %eax,%eax
419859:	74 26                	je     0x419881
41985b:	56                   	push   %esi
41985c:	be 54 b0 42 00       	mov    $0x42b054,%esi
419861:	56                   	push   %esi
419862:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
419868:	50                   	push   %eax
419869:	e8 2a 82 ff ff       	call   0x411a98
41986e:	85 c0                	test   %eax,%eax
419870:	74 0e                	je     0x419880
419872:	6a 00                	push   $0x0
419874:	56                   	push   %esi
419875:	6a 00                	push   $0x0
419877:	57                   	push   %edi
419878:	ff 15 94 a2 42 00    	call   *0x42a294
41987e:	8b f8                	mov    %eax,%edi
419880:	5e                   	pop    %esi
419881:	85 ff                	test   %edi,%edi
419883:	74 09                	je     0x41988e
419885:	6a 10                	push   $0x10
419887:	57                   	push   %edi
419888:	ff 15 7c a2 42 00    	call   *0x42a27c
41988e:	5f                   	pop    %edi
41988f:	c9                   	leave
419890:	c2 04 00             	ret    $0x4
419893:	55                   	push   %ebp
419894:	8b ec                	mov    %esp,%ebp
419896:	83 ec 68             	sub    $0x68,%esp
419899:	53                   	push   %ebx
41989a:	56                   	push   %esi
41989b:	57                   	push   %edi
41989c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41989f:	50                   	push   %eax
4198a0:	6a 18                	push   $0x18
4198a2:	ff 75 08             	push   0x8(%ebp)
4198a5:	ff 15 40 a0 42 00    	call   *0x42a040
4198ab:	8b 45 cc             	mov    -0x34(%ebp),%eax
4198ae:	8b 75 0c             	mov    0xc(%ebp),%esi
4198b1:	0f af c6             	imul   %esi,%eax
4198b4:	99                   	cltd
4198b5:	f7 7d c8             	idivl  -0x38(%ebp)
4198b8:	8b 5d 10             	mov    0x10(%ebp),%ebx
4198bb:	3b c3                	cmp    %ebx,%eax
4198bd:	7d 02                	jge    0x4198c1
4198bf:	8b d8                	mov    %eax,%ebx
4198c1:	8d 45 fc             	lea    -0x4(%ebp),%eax
4198c4:	50                   	push   %eax
4198c5:	68 60 b0 42 00       	push   $0x42b060
4198ca:	6a 01                	push   $0x1
4198cc:	33 ff                	xor    %edi,%edi
4198ce:	57                   	push   %edi
4198cf:	68 68 b1 42 00       	push   $0x42b168
4198d4:	ff 15 50 a3 42 00    	call   *0x42a350
4198da:	85 c0                	test   %eax,%eax
4198dc:	0f 8c 4f 01 00 00    	jl     0x419a31
4198e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4198e5:	8b 08                	mov    (%eax),%ecx
4198e7:	8d 55 f8             	lea    -0x8(%ebp),%edx
4198ea:	52                   	push   %edx
4198eb:	6a 02                	push   $0x2
4198ed:	57                   	push   %edi
4198ee:	ff 75 08             	push   0x8(%ebp)
4198f1:	50                   	push   %eax
4198f2:	ff 51 54             	call   *0x54(%ecx)
4198f5:	85 c0                	test   %eax,%eax
4198f7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4198fa:	7d 0b                	jge    0x419907
4198fc:	8b 08                	mov    (%eax),%ecx
4198fe:	50                   	push   %eax
4198ff:	ff 51 08             	call   *0x8(%ecx)
419902:	e9 2a 01 00 00       	jmp    0x419a31
419907:	8d 55 f4             	lea    -0xc(%ebp),%edx
41990a:	52                   	push   %edx
41990b:	89 7d f4             	mov    %edi,-0xc(%ebp)
41990e:	8b 08                	mov    (%eax),%ecx
419910:	50                   	push   %eax
419911:	ff 51 28             	call   *0x28(%ecx)
419914:	85 c0                	test   %eax,%eax
419916:	7d 0e                	jge    0x419926
419918:	8b 45 f8             	mov    -0x8(%ebp),%eax
41991b:	8b 08                	mov    (%eax),%ecx
41991d:	50                   	push   %eax
41991e:	ff 51 08             	call   *0x8(%ecx)
419921:	8b 45 fc             	mov    -0x4(%ebp),%eax
419924:	eb d6                	jmp    0x4198fc
419926:	8b 45 f4             	mov    -0xc(%ebp),%eax
419929:	d9 ee                	fldz
41992b:	8b 08                	mov    (%eax),%ecx
41992d:	57                   	push   %edi
41992e:	51                   	push   %ecx
41992f:	51                   	push   %ecx
419930:	dd 1c 24             	fstpl  (%esp)
419933:	57                   	push   %edi
419934:	57                   	push   %edi
419935:	68 78 b1 42 00       	push   $0x42b178
41993a:	ff 75 f8             	push   -0x8(%ebp)
41993d:	50                   	push   %eax
41993e:	ff 51 20             	call   *0x20(%ecx)
419941:	85 c0                	test   %eax,%eax
419943:	7d 0b                	jge    0x419950
419945:	8b 45 f4             	mov    -0xc(%ebp),%eax
419948:	8b 08                	mov    (%eax),%ecx
41994a:	50                   	push   %eax
41994b:	ff 51 08             	call   *0x8(%ecx)
41994e:	eb c8                	jmp    0x419918
419950:	6a 2c                	push   $0x2c
419952:	8d 45 98             	lea    -0x68(%ebp),%eax
419955:	57                   	push   %edi
419956:	50                   	push   %eax
419957:	e8 a4 08 00 00       	call   0x41a200
41995c:	83 c4 0c             	add    $0xc,%esp
41995f:	8b c3                	mov    %ebx,%eax
419961:	f7 d8                	neg    %eax
419963:	89 45 a0             	mov    %eax,-0x60(%ebp)
419966:	33 c0                	xor    %eax,%eax
419968:	6a 20                	push   $0x20
41996a:	40                   	inc    %eax
41996b:	66 89 45 a4          	mov    %ax,-0x5c(%ebp)
41996f:	58                   	pop    %eax
419970:	57                   	push   %edi
419971:	57                   	push   %edi
419972:	66 89 45 a6          	mov    %ax,-0x5a(%ebp)
419976:	8d 45 ec             	lea    -0x14(%ebp),%eax
419979:	50                   	push   %eax
41997a:	57                   	push   %edi
41997b:	8d 45 98             	lea    -0x68(%ebp),%eax
41997e:	50                   	push   %eax
41997f:	57                   	push   %edi
419980:	c7 45 98 28 00 00 00 	movl   $0x28,-0x68(%ebp)
419987:	89 75 9c             	mov    %esi,-0x64(%ebp)
41998a:	89 7d a8             	mov    %edi,-0x58(%ebp)
41998d:	89 7d f0             	mov    %edi,-0x10(%ebp)
419990:	ff 15 4c a0 42 00    	call   *0x42a04c
419996:	89 45 10             	mov    %eax,0x10(%ebp)
419999:	f7 d8                	neg    %eax
41999b:	1b c0                	sbb    %eax,%eax
41999d:	25 f2 ff f8 7f       	and    $0x7ff8fff2,%eax
4199a2:	05 0e 00 07 80       	add    $0x8007000e,%eax
4199a7:	78 66                	js     0x419a0f
4199a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4199ac:	8b 08                	mov    (%eax),%ecx
4199ae:	8d 55 0c             	lea    0xc(%ebp),%edx
4199b1:	52                   	push   %edx
4199b2:	50                   	push   %eax
4199b3:	ff 51 2c             	call   *0x2c(%ecx)
4199b6:	8b 45 0c             	mov    0xc(%ebp),%eax
4199b9:	8b 08                	mov    (%eax),%ecx
4199bb:	6a 03                	push   $0x3
4199bd:	53                   	push   %ebx
4199be:	56                   	push   %esi
4199bf:	ff 75 f8             	push   -0x8(%ebp)
4199c2:	50                   	push   %eax
4199c3:	ff 51 20             	call   *0x20(%ecx)
4199c6:	ff 75 ec             	push   -0x14(%ebp)
4199c9:	8b 45 0c             	mov    0xc(%ebp),%eax
4199cc:	8b d6                	mov    %esi,%edx