4155a9:	8b 75 f0             	mov    -0x10(%ebp),%esi
4155ac:	83 7e f8 00          	cmpl   $0x0,-0x8(%esi)
4155b0:	75 0e                	jne    0x4155c0
4155b2:	6a 75                	push   $0x75
4155b4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4155b7:	ff 15 74 33 42 00    	call   *0x423374
4155bd:	8b 75 f0             	mov    -0x10(%ebp),%esi
4155c0:	6a 3c                	push   $0x3c
4155c2:	33 db                	xor    %ebx,%ebx
4155c4:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4155c7:	53                   	push   %ebx
4155c8:	50                   	push   %eax
4155c9:	e8 53 70 00 00       	call   0x41c621
4155ce:	8b 45 08             	mov    0x8(%ebp),%eax
4155d1:	33 c9                	xor    %ecx,%ecx
4155d3:	41                   	inc    %ecx
4155d4:	89 45 a8             	mov    %eax,-0x58(%ebp)
4155d7:	83 c4 0c             	add    $0xc,%esp
4155da:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4155dd:	89 4d ac             	mov    %ecx,-0x54(%ebp)
4155e0:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4155e3:	8b 46 f8             	mov    -0x8(%esi),%eax
4155e6:	40                   	inc    %eax
4155e7:	50                   	push   %eax
4155e8:	ff 15 78 33 42 00    	call   *0x423378
4155ee:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4155f1:	85 c0                	test   %eax,%eax
4155f3:	89 45 b8             	mov    %eax,-0x48(%ebp)
4155f6:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4155f9:	50                   	push   %eax
4155fa:	53                   	push   %ebx
4155fb:	8b 89 3c 02 00 00    	mov    0x23c(%ecx),%ecx
415601:	68 4c 10 00 00       	push   $0x104c
415606:	51                   	push   %ecx
415607:	74 13                	je     0x41561c
415609:	ff 15 40 34 42 00    	call   *0x423440
41560f:	6a ff                	push   $0xffffffff
415611:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415614:	ff 15 7c 33 42 00    	call   *0x42337c
41561a:	eb 0d                	jmp    0x415629
41561c:	c7 45 b8 34 1f 42 00 	movl   $0x421f34,-0x48(%ebp)
415623:	ff 15 40 34 42 00    	call   *0x423440
415629:	88 5d fc             	mov    %bl,-0x4(%ebp)
41562c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
41562f:	ff 15 44 32 42 00    	call   *0x423244
415635:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
415639:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41563c:	ff 15 44 32 42 00    	call   *0x423244
415642:	e8 bf 6d 00 00       	call   0x41c406
415647:	c2 08 00             	ret    $0x8
41564a:	cc                   	int3
41564b:	cc                   	int3
41564c:	cc                   	int3
41564d:	cc                   	int3
41564e:	cc                   	int3
41564f:	cc                   	int3
415650:	8b ff                	mov    %edi,%edi
415652:	55                   	push   %ebp
415653:	8b ec                	mov    %esp,%ebp
415655:	8b 45 10             	mov    0x10(%ebp),%eax
415658:	8b 88 44 01 00 00    	mov    0x144(%eax),%ecx
41565e:	85 c9                	test   %ecx,%ecx
415660:	75 08                	jne    0x41566a
415662:	8b 90 48 01 00 00    	mov    0x148(%eax),%edx
415668:	eb 06                	jmp    0x415670
41566a:	8b 90 4c 01 00 00    	mov    0x14c(%eax),%edx
415670:	52                   	push   %edx
415671:	51                   	push   %ecx
415672:	05 1c 02 00 00       	add    $0x21c,%eax
415677:	50                   	push   %eax
415678:	ff 75 0c             	push   0xc(%ebp)
41567b:	ff 75 08             	push   0x8(%ebp)
41567e:	e8 44 00 00 00       	call   0x4156c7
415683:	5d                   	pop    %ebp
415684:	c2 0c 00             	ret    $0xc
415687:	cc                   	int3
415688:	cc                   	int3
415689:	cc                   	int3
41568a:	cc                   	int3
41568b:	cc                   	int3
41568c:	cc                   	int3
41568d:	cc                   	int3
41568e:	cc                   	int3
41568f:	cc                   	int3
415690:	8b ff                	mov    %edi,%edi
415692:	55                   	push   %ebp
415693:	8b ec                	mov    %esp,%ebp
415695:	8b 45 10             	mov    0x10(%ebp),%eax
415698:	8b 88 50 01 00 00    	mov    0x150(%eax),%ecx
41569e:	85 c9                	test   %ecx,%ecx
4156a0:	75 08                	jne    0x4156aa
4156a2:	8b 90 54 01 00 00    	mov    0x154(%eax),%edx
4156a8:	eb 06                	jmp    0x4156b0
4156aa:	8b 90 58 01 00 00    	mov    0x158(%eax),%edx
4156b0:	52                   	push   %edx
4156b1:	51                   	push   %ecx
4156b2:	05 dc 01 00 00       	add    $0x1dc,%eax
4156b7:	50                   	push   %eax
4156b8:	ff 75 0c             	push   0xc(%ebp)
4156bb:	ff 75 08             	push   0x8(%ebp)
4156be:	e8 04 00 00 00       	call   0x4156c7
4156c3:	5d                   	pop    %ebp
4156c4:	c2 0c 00             	ret    $0xc
4156c7:	8b ff                	mov    %edi,%edi
4156c9:	55                   	push   %ebp
4156ca:	8b ec                	mov    %esp,%ebp
4156cc:	81 ec 14 04 00 00    	sub    $0x414,%esp
4156d2:	a1 e4 05 42 00       	mov    0x4205e4,%eax
4156d7:	33 c5                	xor    %ebp,%eax
4156d9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4156dc:	56                   	push   %esi
4156dd:	57                   	push   %edi
4156de:	8b 7d 10             	mov    0x10(%ebp),%edi
4156e1:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4156e7:	51                   	push   %ecx
4156e8:	50                   	push   %eax
4156e9:	ff 75 08             	push   0x8(%ebp)
4156ec:	33 f6                	xor    %esi,%esi
4156ee:	ff 75 14             	push   0x14(%ebp)
4156f1:	57                   	push   %edi
4156f2:	e8 4e 00 00 00       	call   0x415745
4156f7:	85 c0                	test   %eax,%eax
4156f9:	74 38                	je     0x415733
4156fb:	51                   	push   %ecx
4156fc:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
415702:	50                   	push   %eax
415703:	ff 75 0c             	push   0xc(%ebp)
415706:	ff 75 14             	push   0x14(%ebp)
415709:	57                   	push   %edi
41570a:	e8 36 00 00 00       	call   0x415745
41570f:	85 c0                	test   %eax,%eax
415711:	74 20                	je     0x415733
415713:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
415719:	50                   	push   %eax
41571a:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
415720:	50                   	push   %eax
415721:	ff 15 64 35 42 00    	call   *0x423564
415727:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
41572b:	8b f0                	mov    %eax,%esi
41572d:	59                   	pop    %ecx
41572e:	59                   	pop    %ecx
41572f:	74 02                	je     0x415733
415731:	f7 de                	neg    %esi
415733:	8b 4d fc             	mov    -0x4(%ebp),%ecx
415736:	8b c6                	mov    %esi,%eax
415738:	5f                   	pop    %edi
415739:	33 cd                	xor    %ebp,%ecx
41573b:	5e                   	pop    %esi
41573c:	e8 df 5e 00 00       	call   0x41b620
415741:	c9                   	leave
415742:	c2 14 00             	ret    $0x14
415745:	8b ff                	mov    %edi,%edi
415747:	55                   	push   %ebp
415748:	8b ec                	mov    %esp,%ebp
41574a:	83 ec 54             	sub    $0x54,%esp
41574d:	53                   	push   %ebx
41574e:	56                   	push   %esi
41574f:	57                   	push   %edi
415750:	6a 06                	push   $0x6
415752:	59                   	pop    %ecx
415753:	33 c0                	xor    %eax,%eax
415755:	8d 7d e8             	lea    -0x18(%ebp),%edi
415758:	f3 ab                	rep stos %eax,%es:(%edi)
41575a:	8b 45 10             	mov    0x10(%ebp),%eax
41575d:	33 f6                	xor    %esi,%esi
41575f:	8b 7d 08             	mov    0x8(%ebp),%edi
415762:	89 45 f0             	mov    %eax,-0x10(%ebp)
415765:	8d 45 e8             	lea    -0x18(%ebp),%eax
415768:	50                   	push   %eax
415769:	6a ff                	push   $0xffffffff
41576b:	68 53 10 00 00       	push   $0x1053
415770:	ff 77 20             	push   0x20(%edi)
415773:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
41577a:	ff 15 40 34 42 00    	call   *0x423440
415780:	8b d8                	mov    %eax,%ebx
415782:	85 db                	test   %ebx,%ebx
415784:	78 41                	js     0x4157c7
415786:	6a 3c                	push   $0x3c
415788:	8d 45 ac             	lea    -0x54(%ebp),%eax
41578b:	56                   	push   %esi
41578c:	50                   	push   %eax
41578d:	e8 8f 6e 00 00       	call   0x41c621
415792:	8b 45 0c             	mov    0xc(%ebp),%eax
415795:	83 c4 0c             	add    $0xc,%esp
415798:	89 45 b4             	mov    %eax,-0x4c(%ebp)
41579b:	8b 45 14             	mov    0x14(%ebp),%eax
41579e:	89 45 c0             	mov    %eax,-0x40(%ebp)
4157a1:	8d 45 ac             	lea    -0x54(%ebp),%eax
4157a4:	50                   	push   %eax
4157a5:	56                   	push   %esi
4157a6:	68 4b 10 00 00       	push   $0x104b
4157ab:	ff 77 20             	push   0x20(%edi)
4157ae:	c7 45 ac 01 00 00 00 	movl   $0x1,-0x54(%ebp)
4157b5:	89 5d b0             	mov    %ebx,-0x50(%ebp)
4157b8:	c7 45 c4 04 01 00 00 	movl   $0x104,-0x3c(%ebp)
4157bf:	ff 15 40 34 42 00    	call   *0x423440
4157c5:	8b f0                	mov    %eax,%esi
4157c7:	5f                   	pop    %edi
4157c8:	8b c6                	mov    %esi,%eax
4157ca:	5e                   	pop    %esi
4157cb:	5b                   	pop    %ebx
4157cc:	c9                   	leave
4157cd:	c2 14 00             	ret    $0x14
4157d0:	6a 4c                	push   $0x4c
4157d2:	b8 f5 cc 41 00       	mov    $0x41ccf5,%eax
4157d7:	e8 8f 6c 00 00       	call   0x41c46b
4157dc:	8b f9                	mov    %ecx,%edi
4157de:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4157e1:	ff 15 40 32 42 00    	call   *0x423240
4157e7:	33 f6                	xor    %esi,%esi
4157e9:	89 75 fc             	mov    %esi,-0x4(%ebp)
4157ec:	8d 45 e0             	lea    -0x20(%ebp),%eax
4157ef:	50                   	push   %eax
4157f0:	ff b7 fc 01 00 00    	push   0x1fc(%edi)
4157f6:	ff 15 3c 34 42 00    	call   *0x42343c
4157fc:	6a 2c                	push   $0x2c
4157fe:	8d 45 a8             	lea    -0x58(%ebp),%eax
415801:	56                   	push   %esi
415802:	50                   	push   %eax
415803:	e8 19 6e 00 00       	call   0x41c621
415808:	83 c4 0c             	add    $0xc,%esp
41580b:	c7 45 a8 0f 00 00 00 	movl   $0xf,-0x58(%ebp)
415812:	8d 4d dc             	lea    -0x24(%ebp),%ecx
415815:	89 75 ac             	mov    %esi,-0x54(%ebp)
415818:	68 01 01 00 00       	push   $0x101
41581d:	ff 15 74 33 42 00    	call   *0x423374
415823:	8b 45 e8             	mov    -0x18(%ebp),%eax
415826:	2b 45 e0             	sub    -0x20(%ebp),%eax
415829:	89 45 d8             	mov    %eax,-0x28(%ebp)
41582c:	db 45 d8             	fildl  -0x28(%ebp)
41582f:	89 75 bc             	mov    %esi,-0x44(%ebp)
415832:	dd 5d d4             	fstpl  -0x2c(%ebp)
415835:	dd 45 d4             	fldl   -0x2c(%ebp)
415838:	dc 0d 70 62 40 00    	fmull  0x406270
41583e:	e8 cc 6d 00 00       	call   0x41c60f
415843:	89 45 b0             	mov    %eax,-0x50(%ebp)
415846:	8d 4d dc             	lea    -0x24(%ebp),%ecx
415849:	8b 45 dc             	mov    -0x24(%ebp),%eax
41584c:	8b 40 f8             	mov    -0x8(%eax),%eax
41584f:	40                   	inc    %eax
415850:	50                   	push   %eax
415851:	ff 15 78 33 42 00    	call   *0x423378
415857:	8b 8f fc 01 00 00    	mov    0x1fc(%edi),%ecx
41585d:	85 c0                	test   %eax,%eax
41585f:	89 45 b4             	mov    %eax,-0x4c(%ebp)
415862:	8d 45 a8             	lea    -0x58(%ebp),%eax
415865:	50                   	push   %eax
415866:	56                   	push   %esi
415867:	be 61 10 00 00       	mov    $0x1061,%esi
41586c:	56                   	push   %esi
41586d:	51                   	push   %ecx
41586e:	74 13                	je     0x415883
415870:	ff 15 40 34 42 00    	call   *0x423440
415876:	6a ff                	push   $0xffffffff
415878:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41587b:	ff 15 7c 33 42 00    	call   *0x42337c
415881:	eb 0d                	jmp    0x415890
415883:	c7 45 b4 34 1f 42 00 	movl   $0x421f34,-0x4c(%ebp)
41588a:	ff 15 40 34 42 00    	call   *0x423440
415890:	68 02 01 00 00       	push   $0x102
415895:	8d 4d dc             	lea    -0x24(%ebp),%ecx
415898:	ff 15 74 33 42 00    	call   *0x423374
41589e:	8b 45 e8             	mov    -0x18(%ebp),%eax
4158a1:	33 db                	xor    %ebx,%ebx
4158a3:	2b 45 e0             	sub    -0x20(%ebp),%eax
4158a6:	43                   	inc    %ebx
4158a7:	89 45 d8             	mov    %eax,-0x28(%ebp)
4158aa:	db 45 d8             	fildl  -0x28(%ebp)
4158ad:	89 5d bc             	mov    %ebx,-0x44(%ebp)
4158b0:	dd 5d d4             	fstpl  -0x2c(%ebp)
4158b3:	dd 45 d4             	fldl   -0x2c(%ebp)
4158b6:	dc 0d b0 62 40 00    	fmull  0x4062b0
4158bc:	e8 4e 6d 00 00       	call   0x41c60f
4158c1:	89 45 b0             	mov    %eax,-0x50(%ebp)
4158c4:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4158c7:	8b 45 dc             	mov    -0x24(%ebp),%eax
4158ca:	8b 40 f8             	mov    -0x8(%eax),%eax
4158cd:	40                   	inc    %eax
4158ce:	50                   	push   %eax
4158cf:	ff 15 78 33 42 00    	call   *0x423378
4158d5:	8b 8f fc 01 00 00    	mov    0x1fc(%edi),%ecx
4158db:	85 c0                	test   %eax,%eax
4158dd:	89 45 b4             	mov    %eax,-0x4c(%ebp)
4158e0:	8d 45 a8             	lea    -0x58(%ebp),%eax
4158e3:	50                   	push   %eax
4158e4:	53                   	push   %ebx
4158e5:	56                   	push   %esi
4158e6:	51                   	push   %ecx
4158e7:	74 13                	je     0x4158fc
4158e9:	ff 15 40 34 42 00    	call   *0x423440
4158ef:	6a ff                	push   $0xffffffff
4158f1:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4158f4:	ff 15 7c 33 42 00    	call   *0x42337c
4158fa:	eb 0d                	jmp    0x415909
4158fc:	c7 45 b4 34 1f 42 00 	movl   $0x421f34,-0x4c(%ebp)
415903:	ff 15 40 34 42 00    	call   *0x423440
415909:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41590d:	8d 4d dc             	lea    -0x24(%ebp),%ecx
415910:	ff 15 44 32 42 00    	call   *0x423244
415916:	e8 ff 6a 00 00       	call   0x41c41a
41591b:	c3                   	ret
41591c:	a1 14 12 42 00       	mov    0x421214,%eax
415921:	53                   	push   %ebx
415922:	56                   	push   %esi
415923:	57                   	push   %edi
415924:	33 db                	xor    %ebx,%ebx
415926:	8b f9                	mov    %ecx,%edi
415928:	68 bc 02 00 00       	push   $0x2bc
41592d:	43                   	inc    %ebx
41592e:	23 c3                	and    %ebx,%eax
415930:	50                   	push   %eax
415931:	6a 00                	push   $0x0
415933:	e8 00 04 00 00       	call   0x415d38
415938:	a1 14 12 42 00       	mov    0x421214,%eax
41593d:	8b cf                	mov    %edi,%ecx
41593f:	d1 e8                	shr    $1,%eax
415941:	68 bd 02 00 00       	push   $0x2bd
415946:	23 c3                	and    %ebx,%eax
415948:	50                   	push   %eax
415949:	53                   	push   %ebx
41594a:	e8 e9 03 00 00       	call   0x415d38
41594f:	a1 14 12 42 00       	mov    0x421214,%eax
415954:	8b cf                	mov    %edi,%ecx
415956:	c1 e8 02             	shr    $0x2,%eax
415959:	68 be 02 00 00       	push   $0x2be
41595e:	23 c3                	and    %ebx,%eax
415960:	50                   	push   %eax
415961:	6a 02                	push   $0x2
415963:	e8 d0 03 00 00       	call   0x415d38
415968:	a1 14 12 42 00       	mov    0x421214,%eax
41596d:	8b cf                	mov    %edi,%ecx
41596f:	c1 e8 03             	shr    $0x3,%eax
415972:	68 bf 02 00 00       	push   $0x2bf
415977:	23 c3                	and    %ebx,%eax
415979:	50                   	push   %eax
41597a:	6a 03                	push   $0x3
41597c:	e8 b7 03 00 00       	call   0x415d38
415981:	a1 14 12 42 00       	mov    0x421214,%eax
415986:	8b cf                	mov    %edi,%ecx
415988:	c1 e8 04             	shr    $0x4,%eax
41598b:	68 c0 02 00 00       	push   $0x2c0
415990:	23 c3                	and    %ebx,%eax
415992:	50                   	push   %eax
415993:	6a 04                	push   $0x4
415995:	e8 9e 03 00 00       	call   0x415d38
41599a:	a1 14 12 42 00       	mov    0x421214,%eax
41599f:	8b cf                	mov    %edi,%ecx
4159a1:	c1 e8 05             	shr    $0x5,%eax
4159a4:	68 c1 02 00 00       	push   $0x2c1
4159a9:	23 c3                	and    %ebx,%eax