4165f7:	e9 88 0c 00 00       	jmp    0x417284
4165fc:	8b 4f 10             	mov    0x10(%edi),%ecx
4165ff:	8b 41 0c             	mov    0xc(%ecx),%eax
416602:	f7 d8                	neg    %eax
416604:	1b c0                	sbb    %eax,%eax
416606:	83 e0 fa             	and    $0xfffffffa,%eax
416609:	83 c0 73             	add    $0x73,%eax
41660c:	50                   	push   %eax
41660d:	ff 71 04             	push   0x4(%ecx)
416610:	6a 05                	push   $0x5
416612:	68 24 2a 40 00       	push   $0x402a24
416617:	ff 15 74 23 45 00    	call   *0x452374
41661d:	83 c4 10             	add    $0x10,%esp
416620:	e9 4c 08 00 00       	jmp    0x416e71
416625:	8b 47 10             	mov    0x10(%edi),%eax
416628:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
41662c:	b8 34 2a 40 00       	mov    $0x402a34,%eax
416631:	75 05                	jne    0x416638
416633:	b8 40 2a 40 00       	mov    $0x402a40,%eax
416638:	50                   	push   %eax
416639:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
41663c:	ff 34 85 84 f0 44 00 	push   0x44f084(,%eax,4)
416643:	68 50 2a 40 00       	push   $0x402a50
416648:	ff 15 74 23 45 00    	call   *0x452374
41664e:	83 c4 0c             	add    $0xc,%esp
416651:	e9 1b 08 00 00       	jmp    0x416e71
416656:	8b 4f 10             	mov    0x10(%edi),%ecx
416659:	33 c0                	xor    %eax,%eax
41665b:	89 45 cc             	mov    %eax,-0x34(%ebp)
41665e:	8b 71 30             	mov    0x30(%ecx),%esi
416661:	85 f6                	test   %esi,%esi
416663:	0f 84 1a 0c 00 00    	je     0x417283
416669:	8b 47 0c             	mov    0xc(%edi),%eax
41666c:	8b 49 34             	mov    0x34(%ecx),%ecx
41666f:	83 c1 04             	add    $0x4,%ecx
416672:	8b b8 8c 00 00 00    	mov    0x8c(%eax),%edi
416678:	8b 01                	mov    (%ecx),%eax
41667a:	8b 51 04             	mov    0x4(%ecx),%edx
41667d:	2b c2                	sub    %edx,%eax
41667f:	40                   	inc    %eax
416680:	3b c7                	cmp    %edi,%eax
416682:	75 07                	jne    0x41668b
416684:	8b c2                	mov    %edx,%eax
416686:	89 45 cc             	mov    %eax,-0x34(%ebp)
416689:	eb 03                	jmp    0x41668e
41668b:	8b 45 cc             	mov    -0x34(%ebp),%eax
41668e:	83 c1 10             	add    $0x10,%ecx
416691:	83 ee 01             	sub    $0x1,%esi
416694:	75 e2                	jne    0x416678
416696:	e9 e8 0b 00 00       	jmp    0x417283
41669b:	8b 47 10             	mov    0x10(%edi),%eax
41669e:	ff 70 10             	push   0x10(%eax)
4166a1:	e9 de 0b 00 00       	jmp    0x417284
4166a6:	8b 47 10             	mov    0x10(%edi),%eax
4166a9:	ff 70 14             	push   0x14(%eax)
4166ac:	e9 d3 0b 00 00       	jmp    0x417284
4166b1:	8b 4f 10             	mov    0x10(%edi),%ecx
4166b4:	e8 77 fd ff ff       	call   0x416430
4166b9:	e9 c5 0b 00 00       	jmp    0x417283
4166be:	8b 4f 10             	mov    0x10(%edi),%ecx
4166c1:	e8 9a fd ff ff       	call   0x416460
4166c6:	e9 b8 0b 00 00       	jmp    0x417283
4166cb:	8b 47 10             	mov    0x10(%edi),%eax
4166ce:	ff 70 30             	push   0x30(%eax)
4166d1:	e9 ae 0b 00 00       	jmp    0x417284
4166d6:	8b 47 10             	mov    0x10(%edi),%eax
4166d9:	ff 70 18             	push   0x18(%eax)
4166dc:	e9 a3 0b 00 00       	jmp    0x417284
4166e1:	8b 47 10             	mov    0x10(%edi),%eax
4166e4:	6a 00                	push   $0x0
4166e6:	68 00 04 00 00       	push   $0x400
4166eb:	8b 40 18             	mov    0x18(%eax),%eax
4166ee:	f7 61 2c             	mull   0x2c(%ecx)
4166f1:	52                   	push   %edx
4166f2:	50                   	push   %eax
4166f3:	e8 28 70 03 00       	call   0x44d720
4166f8:	6a 00                	push   $0x0
4166fa:	8b c8                	mov    %eax,%ecx
4166fc:	8b c2                	mov    %edx,%eax
4166fe:	68 00 04 00 00       	push   $0x400
416703:	50                   	push   %eax
416704:	51                   	push   %ecx
416705:	89 4d dc             	mov    %ecx,-0x24(%ebp)
416708:	89 45 cc             	mov    %eax,-0x34(%ebp)
41670b:	e8 30 71 03 00       	call   0x44d840
416710:	6a 00                	push   $0x0
416712:	68 10 27 00 00       	push   $0x2710
416717:	8b fa                	mov    %edx,%edi
416719:	89 45 d4             	mov    %eax,-0x2c(%ebp)
41671c:	57                   	push   %edi
41671d:	50                   	push   %eax
41671e:	e8 ad 70 03 00       	call   0x44d7d0
416723:	85 d2                	test   %edx,%edx
416725:	7c 10                	jl     0x416737
416727:	7f 07                	jg     0x416730
416729:	3d 00 14 00 00       	cmp    $0x1400,%eax
41672e:	72 07                	jb     0x416737
416730:	be 01 00 00 00       	mov    $0x1,%esi
416735:	eb 02                	jmp    0x416739
416737:	33 f6                	xor    %esi,%esi
416739:	6a 00                	push   $0x0
41673b:	68 e8 03 00 00       	push   $0x3e8
416740:	57                   	push   %edi
416741:	ff 75 d4             	push   -0x2c(%ebp)
416744:	e8 87 70 03 00       	call   0x44d7d0
416749:	6a 00                	push   $0x0
41674b:	68 00 04 00 00       	push   $0x400
416750:	52                   	push   %edx
416751:	50                   	push   %eax
416752:	e8 c9 6f 03 00       	call   0x44d720
416757:	03 c6                	add    %esi,%eax
416759:	50                   	push   %eax
41675a:	6a 00                	push   $0x0
41675c:	68 00 04 00 00       	push   $0x400
416761:	ff 75 cc             	push   -0x34(%ebp)
416764:	ff 75 dc             	push   -0x24(%ebp)
416767:	e8 b4 6f 03 00       	call   0x44d720
41676c:	50                   	push   %eax
41676d:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
416770:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
416777:	83 e8 04             	sub    $0x4,%eax
41677a:	50                   	push   %eax
41677b:	68 5c 2a 40 00       	push   $0x402a5c
416780:	ff 15 74 23 45 00    	call   *0x452374
416786:	83 c4 10             	add    $0x10,%esp
416789:	e9 e3 06 00 00       	jmp    0x416e71
41678e:	8b 47 10             	mov    0x10(%edi),%eax
416791:	8b 40 18             	mov    0x18(%eax),%eax
416794:	89 45 dc             	mov    %eax,-0x24(%ebp)
416797:	db 45 dc             	fildl  -0x24(%ebp)
41679a:	85 c0                	test   %eax,%eax
41679c:	79 06                	jns    0x4167a4
41679e:	dc 05 e8 42 41 00    	faddl  0x4142e8
4167a4:	dd 5d d8             	fstpl  -0x28(%ebp)
4167a7:	dd 45 d8             	fldl   -0x28(%ebp)
4167aa:	8b 41 4c             	mov    0x4c(%ecx),%eax
4167ad:	db 41 4c             	fildl  0x4c(%ecx)
4167b0:	85 c0                	test   %eax,%eax
4167b2:	79 06                	jns    0x4167ba
4167b4:	dc 05 e8 42 41 00    	faddl  0x4142e8
4167ba:	dd 5d d8             	fstpl  -0x28(%ebp)
4167bd:	dc 75 d8             	fdivl  -0x28(%ebp)
4167c0:	dc 0d d0 42 41 00    	fmull  0x4142d0
4167c6:	83 ec 08             	sub    $0x8,%esp
4167c9:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
4167cc:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
4167d3:	48                   	dec    %eax
4167d4:	dd 1c 24             	fstpl  (%esp)
4167d7:	6a 02                	push   $0x2
4167d9:	50                   	push   %eax
4167da:	68 70 2a 40 00       	push   $0x402a70
4167df:	ff 15 74 23 45 00    	call   *0x452374
4167e5:	83 c4 14             	add    $0x14,%esp
4167e8:	e9 84 06 00 00       	jmp    0x416e71
4167ed:	8b 47 0c             	mov    0xc(%edi),%eax
4167f0:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
4167f4:	0f 84 70 06 00 00    	je     0x416e6a
4167fa:	8b 51 74             	mov    0x74(%ecx),%edx
4167fd:	85 d2                	test   %edx,%edx
4167ff:	0f 84 65 06 00 00    	je     0x416e6a
416805:	8b 47 10             	mov    0x10(%edi),%eax
416808:	8b 40 18             	mov    0x18(%eax),%eax
41680b:	89 45 dc             	mov    %eax,-0x24(%ebp)
41680e:	db 45 dc             	fildl  -0x24(%ebp)
416811:	85 c0                	test   %eax,%eax
416813:	79 06                	jns    0x41681b
416815:	dc 05 e8 42 41 00    	faddl  0x4142e8
41681b:	dd 5d d8             	fstpl  -0x28(%ebp)
41681e:	dd 45 d8             	fldl   -0x28(%ebp)
416821:	89 55 dc             	mov    %edx,-0x24(%ebp)
416824:	db 45 dc             	fildl  -0x24(%ebp)
416827:	85 d2                	test   %edx,%edx
416829:	79 06                	jns    0x416831
41682b:	dc 05 e8 42 41 00    	faddl  0x4142e8
416831:	dd 5d d8             	fstpl  -0x28(%ebp)
416834:	dc 75 d8             	fdivl  -0x28(%ebp)
416837:	eb 87                	jmp    0x4167c0
416839:	8b 47 14             	mov    0x14(%edi),%eax
41683c:	ff 70 0c             	push   0xc(%eax)
41683f:	e9 40 0a 00 00       	jmp    0x417284
416844:	8b 47 14             	mov    0x14(%edi),%eax
416847:	6a 00                	push   $0x0
416849:	68 00 04 00 00       	push   $0x400
41684e:	8b 40 0c             	mov    0xc(%eax),%eax
416851:	f7 61 2c             	mull   0x2c(%ecx)
416854:	52                   	push   %edx
416855:	50                   	push   %eax
416856:	e8 c5 6e 03 00       	call   0x44d720
41685b:	6a 00                	push   $0x0
41685d:	8b c8                	mov    %eax,%ecx
41685f:	8b c2                	mov    %edx,%eax
416861:	68 00 04 00 00       	push   $0x400
416866:	50                   	push   %eax
416867:	51                   	push   %ecx
416868:	89 4d cc             	mov    %ecx,-0x34(%ebp)
41686b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
41686e:	e8 cd 6f 03 00       	call   0x44d840
416873:	6a 00                	push   $0x0
416875:	68 10 27 00 00       	push   $0x2710
41687a:	8b fa                	mov    %edx,%edi
41687c:	89 45 dc             	mov    %eax,-0x24(%ebp)
41687f:	57                   	push   %edi
416880:	50                   	push   %eax
416881:	e8 4a 6f 03 00       	call   0x44d7d0
416886:	85 d2                	test   %edx,%edx
416888:	7c 10                	jl     0x41689a
41688a:	7f 07                	jg     0x416893
41688c:	3d 00 14 00 00       	cmp    $0x1400,%eax
416891:	72 07                	jb     0x41689a
416893:	be 01 00 00 00       	mov    $0x1,%esi
416898:	eb 02                	jmp    0x41689c
41689a:	33 f6                	xor    %esi,%esi
41689c:	6a 00                	push   $0x0
41689e:	68 e8 03 00 00       	push   $0x3e8
4168a3:	57                   	push   %edi
4168a4:	ff 75 dc             	push   -0x24(%ebp)
4168a7:	e8 24 6f 03 00       	call   0x44d7d0
4168ac:	6a 00                	push   $0x0
4168ae:	68 00 04 00 00       	push   $0x400
4168b3:	52                   	push   %edx
4168b4:	50                   	push   %eax
4168b5:	e8 66 6e 03 00       	call   0x44d720
4168ba:	03 c6                	add    %esi,%eax
4168bc:	50                   	push   %eax
4168bd:	6a 00                	push   $0x0
4168bf:	68 00 04 00 00       	push   $0x400
4168c4:	ff 75 d4             	push   -0x2c(%ebp)
4168c7:	ff 75 cc             	push   -0x34(%ebp)
4168ca:	e8 51 6e 03 00       	call   0x44d720
4168cf:	50                   	push   %eax
4168d0:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
4168d3:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
4168da:	83 e8 04             	sub    $0x4,%eax
4168dd:	50                   	push   %eax
4168de:	68 5c 2a 40 00       	push   $0x402a5c
4168e3:	ff 15 74 23 45 00    	call   *0x452374
4168e9:	83 c4 10             	add    $0x10,%esp
4168ec:	e9 80 05 00 00       	jmp    0x416e71
4168f1:	8b 47 14             	mov    0x14(%edi),%eax
4168f4:	8b 40 0c             	mov    0xc(%eax),%eax
4168f7:	89 45 dc             	mov    %eax,-0x24(%ebp)
4168fa:	db 45 dc             	fildl  -0x24(%ebp)
4168fd:	85 c0                	test   %eax,%eax
4168ff:	79 06                	jns    0x416907
416901:	dc 05 e8 42 41 00    	faddl  0x4142e8
416907:	dd 5d d8             	fstpl  -0x28(%ebp)
41690a:	dd 45 d8             	fldl   -0x28(%ebp)
41690d:	8b 41 4c             	mov    0x4c(%ecx),%eax
416910:	db 41 4c             	fildl  0x4c(%ecx)
416913:	85 c0                	test   %eax,%eax
416915:	79 06                	jns    0x41691d
416917:	dc 05 e8 42 41 00    	faddl  0x4142e8
41691d:	dd 5d d8             	fstpl  -0x28(%ebp)
416920:	dc 75 d8             	fdivl  -0x28(%ebp)
416923:	e9 98 fe ff ff       	jmp    0x4167c0
416928:	8b 47 10             	mov    0x10(%edi),%eax
41692b:	ff 70 38             	push   0x38(%eax)
41692e:	e9 51 09 00 00       	jmp    0x417284
416933:	8b 47 10             	mov    0x10(%edi),%eax
416936:	ff 70 1c             	push   0x1c(%eax)
416939:	e9 46 09 00 00       	jmp    0x417284
41693e:	8b 47 10             	mov    0x10(%edi),%eax
416941:	6a 00                	push   $0x0
416943:	68 00 04 00 00       	push   $0x400
416948:	8b 40 1c             	mov    0x1c(%eax),%eax
41694b:	f7 61 2c             	mull   0x2c(%ecx)
41694e:	52                   	push   %edx
41694f:	50                   	push   %eax
416950:	e8 cb 6d 03 00       	call   0x44d720
416955:	6a 00                	push   $0x0
416957:	8b c8                	mov    %eax,%ecx
416959:	8b c2                	mov    %edx,%eax
41695b:	68 00 04 00 00       	push   $0x400
416960:	50                   	push   %eax
416961:	51                   	push   %ecx
416962:	89 4d cc             	mov    %ecx,-0x34(%ebp)
416965:	89 45 d4             	mov    %eax,-0x2c(%ebp)
416968:	e8 d3 6e 03 00       	call   0x44d840
41696d:	6a 00                	push   $0x0
41696f:	68 10 27 00 00       	push   $0x2710
416974:	8b fa                	mov    %edx,%edi
416976:	89 45 dc             	mov    %eax,-0x24(%ebp)
416979:	57                   	push   %edi
41697a:	50                   	push   %eax
41697b:	e8 50 6e 03 00       	call   0x44d7d0
416980:	85 d2                	test   %edx,%edx
416982:	7c 10                	jl     0x416994
416984:	7f 07                	jg     0x41698d
416986:	3d 00 14 00 00       	cmp    $0x1400,%eax
41698b:	72 07                	jb     0x416994
41698d:	be 01 00 00 00       	mov    $0x1,%esi
416992:	eb 02                	jmp    0x416996
416994:	33 f6                	xor    %esi,%esi
416996:	6a 00                	push   $0x0
416998:	68 e8 03 00 00       	push   $0x3e8
41699d:	57                   	push   %edi
41699e:	ff 75 dc             	push   -0x24(%ebp)
4169a1:	e8 2a 6e 03 00       	call   0x44d7d0
4169a6:	6a 00                	push   $0x0
4169a8:	68 00 04 00 00       	push   $0x400
4169ad:	52                   	push   %edx
4169ae:	50                   	push   %eax
4169af:	e8 6c 6d 03 00       	call   0x44d720
4169b4:	03 c6                	add    %esi,%eax
4169b6:	50                   	push   %eax
4169b7:	6a 00                	push   $0x0
4169b9:	68 00 04 00 00       	push   $0x400
4169be:	ff 75 d4             	push   -0x2c(%ebp)
4169c1:	ff 75 cc             	push   -0x34(%ebp)
4169c4:	e8 57 6d 03 00       	call   0x44d720
4169c9:	50                   	push   %eax
4169ca:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
4169cd:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
4169d4:	83 e8 04             	sub    $0x4,%eax
4169d7:	50                   	push   %eax
4169d8:	68 5c 2a 40 00       	push   $0x402a5c
4169dd:	ff 15 74 23 45 00    	call   *0x452374
4169e3:	83 c4 10             	add    $0x10,%esp
4169e6:	e9 86 04 00 00       	jmp    0x416e71
4169eb:	8b 47 0c             	mov    0xc(%edi),%eax
4169ee:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
4169f2:	0f 84 72 04 00 00    	je     0x416e6a
4169f8:	8b 51 74             	mov    0x74(%ecx),%edx
4169fb:	85 d2                	test   %edx,%edx
4169fd:	0f 84 67 04 00 00    	je     0x416e6a
416a03:	8b 47 10             	mov    0x10(%edi),%eax
416a06:	8b 40 1c             	mov    0x1c(%eax),%eax
416a09:	89 45 dc             	mov    %eax,-0x24(%ebp)
416a0c:	db 45 dc             	fildl  -0x24(%ebp)
416a0f:	85 c0                	test   %eax,%eax
416a11:	79 06                	jns    0x416a19
416a13:	dc 05 e8 42 41 00    	faddl  0x4142e8
416a19:	dd 5d d8             	fstpl  -0x28(%ebp)
416a1c:	dd 45 d8             	fldl   -0x28(%ebp)
416a1f:	89 55 dc             	mov    %edx,-0x24(%ebp)
416a22:	db 45 dc             	fildl  -0x24(%ebp)
416a25:	85 d2                	test   %edx,%edx
416a27:	79 06                	jns    0x416a2f
416a29:	dc 05 e8 42 41 00    	faddl  0x4142e8
416a2f:	dd 5d d8             	fstpl  -0x28(%ebp)
416a32:	dc 75 d8             	fdivl  -0x28(%ebp)
416a35:	e9 86 fd ff ff       	jmp    0x4167c0
416a3a:	ff b0 50 01 00 00    	push   0x150(%eax)
416a40:	e9 3f 08 00 00       	jmp    0x417284
416a45:	8b 47 0c             	mov    0xc(%edi),%eax
416a48:	83 78 04 04          	cmpl   $0x4,0x4(%eax)
416a4c:	0f 85 18 04 00 00    	jne    0x416e6a
416a52:	8b 47 10             	mov    0x10(%edi),%eax
416a55:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
416a59:	0f 84 0b 04 00 00    	je     0x416e6a