406596:	ff d2                	call   *%edx
406598:	85 c0                	test   %eax,%eax
40659a:	0f 8c c0 00 00 00    	jl     0x406660
4065a0:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4065a7:	8d 45 f0             	lea    -0x10(%ebp),%eax
4065aa:	50                   	push   %eax
4065ab:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4065ae:	8b 11                	mov    (%ecx),%edx
4065b0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4065b3:	50                   	push   %eax
4065b4:	8b 4a 1c             	mov    0x1c(%edx),%ecx
4065b7:	ff d1                	call   *%ecx
4065b9:	85 c0                	test   %eax,%eax
4065bb:	0f 8c 91 00 00 00    	jl     0x406652
4065c1:	6a 10                	push   $0x10
4065c3:	6a 00                	push   $0x0
4065c5:	8d 55 e0             	lea    -0x20(%ebp),%edx
4065c8:	52                   	push   %edx
4065c9:	e8 b2 03 00 00       	call   0x406980
4065ce:	83 c4 0c             	add    $0xc,%esp
4065d1:	b8 03 00 00 00       	mov    $0x3,%eax
4065d6:	66 89 45 e0          	mov    %ax,-0x20(%ebp)
4065da:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4065e1:	eb 09                	jmp    0x4065ec
4065e3:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4065e6:	83 c1 01             	add    $0x1,%ecx
4065e9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4065ec:	8b 55 f8             	mov    -0x8(%ebp),%edx
4065ef:	3b 55 f0             	cmp    -0x10(%ebp),%edx
4065f2:	73 5e                	jae    0x406652
4065f4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4065f7:	83 c0 01             	add    $0x1,%eax
4065fa:	89 45 e8             	mov    %eax,-0x18(%ebp)
4065fd:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
406604:	8d 4d f4             	lea    -0xc(%ebp),%ecx
406607:	51                   	push   %ecx
406608:	83 ec 10             	sub    $0x10,%esp
40660b:	8b d4                	mov    %esp,%edx
40660d:	8b 45 e0             	mov    -0x20(%ebp),%eax
406610:	89 02                	mov    %eax,(%edx)
406612:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
406615:	89 4a 04             	mov    %ecx,0x4(%edx)
406618:	8b 45 e8             	mov    -0x18(%ebp),%eax
40661b:	89 42 08             	mov    %eax,0x8(%edx)
40661e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
406621:	89 4a 0c             	mov    %ecx,0xc(%edx)
406624:	8b 55 fc             	mov    -0x4(%ebp),%edx
406627:	8b 02                	mov    (%edx),%eax
406629:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40662c:	51                   	push   %ecx
40662d:	8b 50 20             	mov    0x20(%eax),%edx
406630:	ff d2                	call   *%edx
406632:	85 c0                	test   %eax,%eax
406634:	7c 1a                	jl     0x406650
406636:	8b 45 f4             	mov    -0xc(%ebp),%eax
406639:	50                   	push   %eax
40663a:	e8 21 ff ff ff       	call   0x406560
40663f:	83 c4 04             	add    $0x4,%esp
406642:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406645:	8b 11                	mov    (%ecx),%edx
406647:	8b 45 f4             	mov    -0xc(%ebp),%eax
40664a:	50                   	push   %eax
40664b:	8b 4a 08             	mov    0x8(%edx),%ecx
40664e:	ff d1                	call   *%ecx
406650:	eb 91                	jmp    0x4065e3
406652:	8b 55 fc             	mov    -0x4(%ebp),%edx
406655:	8b 02                	mov    (%edx),%eax
406657:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40665a:	51                   	push   %ecx
40665b:	8b 50 08             	mov    0x8(%eax),%edx
40665e:	ff d2                	call   *%edx
406660:	8b e5                	mov    %ebp,%esp
406662:	5d                   	pop    %ebp
406663:	c3                   	ret
406664:	cc                   	int3
406665:	cc                   	int3
406666:	cc                   	int3
406667:	cc                   	int3
406668:	cc                   	int3
406669:	cc                   	int3
40666a:	cc                   	int3
40666b:	cc                   	int3
40666c:	cc                   	int3
40666d:	cc                   	int3
40666e:	cc                   	int3
40666f:	cc                   	int3
406670:	55                   	push   %ebp
406671:	8b ec                	mov    %esp,%ebp
406673:	83 ec 1c             	sub    $0x1c,%esp
406676:	83 3d ac 73 41 00 00 	cmpl   $0x0,0x4173ac
40667d:	74 09                	je     0x406688
40667f:	e8 1c c5 ff ff       	call   0x402ba0
406684:	85 c0                	test   %eax,%eax
406686:	75 07                	jne    0x40668f
406688:	33 c0                	xor    %eax,%eax
40668a:	e9 c2 01 00 00       	jmp    0x406851
40668f:	e8 ec d4 ff ff       	call   0x403b80
406694:	83 38 06             	cmpl   $0x6,(%eax)
406697:	73 07                	jae    0x4066a0
406699:	33 c0                	xor    %eax,%eax
40669b:	e9 b1 01 00 00       	jmp    0x406851
4066a0:	b8 01 00 00 00       	mov    $0x1,%eax
4066a5:	85 c0                	test   %eax,%eax
4066a7:	0f 84 a2 01 00 00    	je     0x40684f
4066ad:	6a 00                	push   $0x0
4066af:	6a 00                	push   $0x0
4066b1:	e8 0a bf ff ff       	call   0x4025c0
4066b6:	8b 88 38 02 00 00    	mov    0x238(%eax),%ecx
4066bc:	ff d1                	call   *%ecx
4066be:	85 c0                	test   %eax,%eax
4066c0:	0f 8c 72 01 00 00    	jl     0x406838
4066c6:	6a 00                	push   $0x0
4066c8:	6a 00                	push   $0x0
4066ca:	6a 00                	push   $0x0
4066cc:	6a 03                	push   $0x3
4066ce:	6a 06                	push   $0x6
4066d0:	6a 00                	push   $0x0
4066d2:	6a 00                	push   $0x0
4066d4:	6a ff                	push   $0xffffffff
4066d6:	6a 00                	push   $0x0
4066d8:	e8 e3 be ff ff       	call   0x4025c0
4066dd:	8b 90 44 02 00 00    	mov    0x244(%eax),%edx
4066e3:	ff d2                	call   *%edx
4066e5:	85 c0                	test   %eax,%eax
4066e7:	0f 8c 3e 01 00 00    	jl     0x40682b
4066ed:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4066f4:	8d 45 fc             	lea    -0x4(%ebp),%eax
4066f7:	50                   	push   %eax
4066f8:	68 40 60 41 00       	push   $0x416040
4066fd:	6a 01                	push   $0x1
4066ff:	6a 00                	push   $0x0
406701:	68 50 60 41 00       	push   $0x416050
406706:	e8 b5 be ff ff       	call   0x4025c0
40670b:	8b 88 40 02 00 00    	mov    0x240(%eax),%ecx
406711:	ff d1                	call   *%ecx
406713:	85 c0                	test   %eax,%eax
406715:	0f 8c 10 01 00 00    	jl     0x40682b
40671b:	6a 10                	push   $0x10
40671d:	6a 00                	push   $0x0
40671f:	8d 55 e4             	lea    -0x1c(%ebp),%edx
406722:	52                   	push   %edx
406723:	e8 58 02 00 00       	call   0x406980
406728:	83 c4 0c             	add    $0xc,%esp
40672b:	b8 08 00 00 00       	mov    $0x8,%eax
406730:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
406734:	83 ec 10             	sub    $0x10,%esp
406737:	8b cc                	mov    %esp,%ecx
406739:	8b 55 e4             	mov    -0x1c(%ebp),%edx
40673c:	89 11                	mov    %edx,(%ecx)
40673e:	8b 45 e8             	mov    -0x18(%ebp),%eax
406741:	89 41 04             	mov    %eax,0x4(%ecx)
406744:	8b 55 ec             	mov    -0x14(%ebp),%edx
406747:	89 51 08             	mov    %edx,0x8(%ecx)
40674a:	8b 45 f0             	mov    -0x10(%ebp),%eax
40674d:	89 41 0c             	mov    %eax,0xc(%ecx)
406750:	83 ec 10             	sub    $0x10,%esp
406753:	8b cc                	mov    %esp,%ecx
406755:	8b 55 e4             	mov    -0x1c(%ebp),%edx
406758:	89 11                	mov    %edx,(%ecx)
40675a:	8b 45 e8             	mov    -0x18(%ebp),%eax
40675d:	89 41 04             	mov    %eax,0x4(%ecx)
406760:	8b 55 ec             	mov    -0x14(%ebp),%edx
406763:	89 51 08             	mov    %edx,0x8(%ecx)
406766:	8b 45 f0             	mov    -0x10(%ebp),%eax
406769:	89 41 0c             	mov    %eax,0xc(%ecx)
40676c:	83 ec 10             	sub    $0x10,%esp
40676f:	8b cc                	mov    %esp,%ecx
406771:	8b 55 e4             	mov    -0x1c(%ebp),%edx
406774:	89 11                	mov    %edx,(%ecx)
406776:	8b 45 e8             	mov    -0x18(%ebp),%eax
406779:	89 41 04             	mov    %eax,0x4(%ecx)
40677c:	8b 55 ec             	mov    -0x14(%ebp),%edx
40677f:	89 51 08             	mov    %edx,0x8(%ecx)
406782:	8b 45 f0             	mov    -0x10(%ebp),%eax
406785:	89 41 0c             	mov    %eax,0xc(%ecx)
406788:	83 ec 10             	sub    $0x10,%esp
40678b:	8b cc                	mov    %esp,%ecx
40678d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
406790:	89 11                	mov    %edx,(%ecx)
406792:	8b 45 e8             	mov    -0x18(%ebp),%eax
406795:	89 41 04             	mov    %eax,0x4(%ecx)
406798:	8b 55 ec             	mov    -0x14(%ebp),%edx
40679b:	89 51 08             	mov    %edx,0x8(%ecx)
40679e:	8b 45 f0             	mov    -0x10(%ebp),%eax
4067a1:	89 41 0c             	mov    %eax,0xc(%ecx)
4067a4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4067a7:	8b 11                	mov    (%ecx),%edx
4067a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4067ac:	50                   	push   %eax
4067ad:	8b 4a 28             	mov    0x28(%edx),%ecx
4067b0:	ff d1                	call   *%ecx
4067b2:	85 c0                	test   %eax,%eax
4067b4:	7c 67                	jl     0x40681d
4067b6:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4067bd:	68 60 60 41 00       	push   $0x416060
4067c2:	e8 f9 bd ff ff       	call   0x4025c0
4067c7:	8b 90 48 02 00 00    	mov    0x248(%eax),%edx
4067cd:	ff d2                	call   *%edx
4067cf:	89 45 f4             	mov    %eax,-0xc(%ebp)
4067d2:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4067d6:	74 45                	je     0x40681d
4067d8:	8d 45 f8             	lea    -0x8(%ebp),%eax
4067db:	50                   	push   %eax
4067dc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4067df:	51                   	push   %ecx
4067e0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4067e3:	8b 02                	mov    (%edx),%eax
4067e5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4067e8:	51                   	push   %ecx
4067e9:	8b 50 1c             	mov    0x1c(%eax),%edx
4067ec:	ff d2                	call   *%edx
4067ee:	85 c0                	test   %eax,%eax
4067f0:	7c 1a                	jl     0x40680c
4067f2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4067f5:	50                   	push   %eax
4067f6:	e8 65 fd ff ff       	call   0x406560
4067fb:	83 c4 04             	add    $0x4,%esp
4067fe:	8b 4d f8             	mov    -0x8(%ebp),%ecx
406801:	8b 11                	mov    (%ecx),%edx
406803:	8b 45 f8             	mov    -0x8(%ebp),%eax
406806:	50                   	push   %eax
406807:	8b 4a 08             	mov    0x8(%edx),%ecx
40680a:	ff d1                	call   *%ecx
40680c:	8b 55 f4             	mov    -0xc(%ebp),%edx
40680f:	52                   	push   %edx
406810:	e8 ab bd ff ff       	call   0x4025c0
406815:	8b 80 4c 02 00 00    	mov    0x24c(%eax),%eax
40681b:	ff d0                	call   *%eax
40681d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
406820:	8b 11                	mov    (%ecx),%edx
406822:	8b 45 fc             	mov    -0x4(%ebp),%eax
406825:	50                   	push   %eax
406826:	8b 4a 08             	mov    0x8(%edx),%ecx
406829:	ff d1                	call   *%ecx
40682b:	e8 90 bd ff ff       	call   0x4025c0
406830:	8b 90 3c 02 00 00    	mov    0x23c(%eax),%edx
406836:	ff d2                	call   *%edx
406838:	68 60 ea 00 00       	push   $0xea60
40683d:	e8 7e bd ff ff       	call   0x4025c0
406842:	8b 80 64 01 00 00    	mov    0x164(%eax),%eax
406848:	ff d0                	call   *%eax
40684a:	e9 51 fe ff ff       	jmp    0x4066a0
40684f:	33 c0                	xor    %eax,%eax
406851:	8b e5                	mov    %ebp,%esp
406853:	5d                   	pop    %ebp
406854:	c2 04 00             	ret    $0x4
406857:	cc                   	int3
406858:	cc                   	int3
406859:	cc                   	int3
40685a:	cc                   	int3
40685b:	cc                   	int3
40685c:	cc                   	int3
40685d:	cc                   	int3
40685e:	cc                   	int3
40685f:	cc                   	int3
406860:	55                   	push   %ebp
406861:	8b ec                	mov    %esp,%ebp
406863:	8b 45 08             	mov    0x8(%ebp),%eax
406866:	5d                   	pop    %ebp
406867:	c3                   	ret
406868:	cc                   	int3
406869:	cc                   	int3
40686a:	cc                   	int3
40686b:	cc                   	int3
40686c:	cc                   	int3
40686d:	cc                   	int3
40686e:	cc                   	int3
40686f:	cc                   	int3
406870:	55                   	push   %ebp
406871:	8b ec                	mov    %esp,%ebp
406873:	e8 88 cf 00 00       	call   0x413800
406878:	8b 40 18             	mov    0x18(%eax),%eax
40687b:	5d                   	pop    %ebp
40687c:	c3                   	ret
40687d:	cc                   	int3
40687e:	cc                   	int3
40687f:	cc                   	int3
406880:	55                   	push   %ebp
406881:	8b ec                	mov    %esp,%ebp
406883:	51                   	push   %ecx
406884:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40688b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40688f:	74 18                	je     0x4068a9
406891:	8b 45 08             	mov    0x8(%ebp),%eax
406894:	50                   	push   %eax
406895:	6a 08                	push   $0x8
406897:	e8 d4 ff ff ff       	call   0x406870
40689c:	50                   	push   %eax
40689d:	e8 1e bd ff ff       	call   0x4025c0
4068a2:	8b 08                	mov    (%eax),%ecx
4068a4:	ff d1                	call   *%ecx
4068a6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4068a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4068ac:	8b e5                	mov    %ebp,%esp
4068ae:	5d                   	pop    %ebp
4068af:	c3                   	ret
4068b0:	55                   	push   %ebp
4068b1:	8b ec                	mov    %esp,%ebp
4068b3:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4068b7:	74 16                	je     0x4068cf
4068b9:	8b 45 08             	mov    0x8(%ebp),%eax
4068bc:	50                   	push   %eax
4068bd:	6a 00                	push   $0x0
4068bf:	e8 ac ff ff ff       	call   0x406870
4068c4:	50                   	push   %eax
4068c5:	e8 f6 bc ff ff       	call   0x4025c0
4068ca:	8b 48 04             	mov    0x4(%eax),%ecx
4068cd:	ff d1                	call   *%ecx
4068cf:	5d                   	pop    %ebp
4068d0:	c3                   	ret
4068d1:	cc                   	int3
4068d2:	cc                   	int3
4068d3:	cc                   	int3
4068d4:	cc                   	int3
4068d5:	cc                   	int3
4068d6:	cc                   	int3
4068d7:	cc                   	int3
4068d8:	cc                   	int3
4068d9:	cc                   	int3
4068da:	cc                   	int3
4068db:	cc                   	int3
4068dc:	cc                   	int3
4068dd:	cc                   	int3
4068de:	cc                   	int3
4068df:	cc                   	int3
4068e0:	55                   	push   %ebp
4068e1:	8b ec                	mov    %esp,%ebp
4068e3:	51                   	push   %ecx
4068e4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4068eb:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4068ef:	75 11                	jne    0x406902
4068f1:	8b 45 0c             	mov    0xc(%ebp),%eax
4068f4:	50                   	push   %eax
4068f5:	e8 86 ff ff ff       	call   0x406880
4068fa:	83 c4 04             	add    $0x4,%esp
4068fd:	89 45 fc             	mov    %eax,-0x4(%ebp)
406900:	eb 1d                	jmp    0x40691f
406902:	8b 4d 0c             	mov    0xc(%ebp),%ecx
406905:	51                   	push   %ecx
406906:	8b 55 08             	mov    0x8(%ebp),%edx
406909:	52                   	push   %edx
40690a:	6a 08                	push   $0x8
40690c:	e8 5f ff ff ff       	call   0x406870
406911:	50                   	push   %eax
406912:	e8 a9 bc ff ff       	call   0x4025c0
406917:	8b 40 08             	mov    0x8(%eax),%eax
40691a:	ff d0                	call   *%eax
40691c:	89 45 fc             	mov    %eax,-0x4(%ebp)
40691f:	8b 45 fc             	mov    -0x4(%ebp),%eax
406922:	8b e5                	mov    %ebp,%esp