4205fe:	83 e8 01             	sub    $0x1,%eax
420601:	74 15                	je     0x420618
420603:	83 e8 01             	sub    $0x1,%eax
420606:	74 05                	je     0x42060d
420608:	83 e8 01             	sub    $0x1,%eax
42060b:	eb 16                	jmp    0x420623
42060d:	ff 75 0c             	push   0xc(%ebp)
420610:	52                   	push   %edx
420611:	e8 a2 03 00 00       	call   0x4209b8
420616:	eb 09                	jmp    0x420621
420618:	ff 75 0c             	push   0xc(%ebp)
42061b:	52                   	push   %edx
42061c:	e8 56 04 00 00       	call   0x420a77
420621:	8b c8                	mov    %eax,%ecx
420623:	8b c1                	mov    %ecx,%eax
420625:	5d                   	pop    %ebp
420626:	c3                   	ret
420627:	55                   	push   %ebp
420628:	8b ec                	mov    %esp,%ebp
42062a:	51                   	push   %ecx
42062b:	8b 0d c0 aa 46 00    	mov    0x46aac0,%ecx
420631:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
420637:	53                   	push   %ebx
420638:	56                   	push   %esi
420639:	57                   	push   %edi
42063a:	8b 04 88             	mov    (%eax,%ecx,4),%eax
42063d:	83 cb ff             	or     $0xffffffff,%ebx
420640:	53                   	push   %ebx
420641:	ff 75 08             	push   0x8(%ebp)
420644:	33 f6                	xor    %esi,%esi
420646:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420649:	8b b8 04 00 00 00    	mov    0x4(%eax),%edi
42064f:	53                   	push   %ebx
420650:	68 90 a7 45 00       	push   $0x45a790
420655:	56                   	push   %esi
420656:	56                   	push   %esi
420657:	ff 15 4c b2 44 00    	call   *0x44b24c
42065d:	83 f8 02             	cmp    $0x2,%eax
420660:	75 7b                	jne    0x4206dd
420662:	50                   	push   %eax
420663:	56                   	push   %esi
420664:	56                   	push   %esi
420665:	8b 35 80 b1 44 00    	mov    0x44b180,%esi
42066b:	8d 45 fc             	lea    -0x4(%ebp),%eax
42066e:	50                   	push   %eax
42066f:	ff d6                	call   *%esi
420671:	50                   	push   %eax
420672:	ff 37                	push   (%edi)
420674:	ff d6                	call   *%esi
420676:	50                   	push   %eax
420677:	ff 15 f4 b1 44 00    	call   *0x44b1f4
42067d:	85 c0                	test   %eax,%eax
42067f:	75 3d                	jne    0x4206be
420681:	ff 15 e8 b0 44 00    	call   *0x44b0e8
420687:	0f b7 f0             	movzwl %ax,%esi
42068a:	81 ce 00 00 07 80    	or     $0x80070000,%esi
420690:	85 c0                	test   %eax,%eax
420692:	0f 4e f0             	cmovle %eax,%esi
420695:	b8 05 40 00 80       	mov    $0x80004005,%eax
42069a:	85 f6                	test   %esi,%esi
42069c:	0f 49 f0             	cmovns %eax,%esi
42069f:	56                   	push   %esi
4206a0:	68 ca 02 00 00       	push   $0x2ca
4206a5:	68 b8 a7 45 00       	push   $0x45a7b8
4206aa:	e8 24 31 fe ff       	call   0x4037d3
4206af:	68 48 ab 45 00       	push   $0x45ab48
4206b4:	56                   	push   %esi
4206b5:	e8 75 fa 01 00       	call   0x44012f
4206ba:	59                   	pop    %ecx
4206bb:	59                   	pop    %ecx
4206bc:	eb 7e                	jmp    0x42073c
4206be:	ff 77 0c             	push   0xc(%edi)
4206c1:	8d 47 1c             	lea    0x1c(%edi),%eax
4206c4:	ff 77 08             	push   0x8(%edi)
4206c7:	ff 75 fc             	push   -0x4(%ebp)
4206ca:	50                   	push   %eax
4206cb:	e8 ee fd ff ff       	call   0x4204be
4206d0:	8b f0                	mov    %eax,%esi
4206d2:	85 f6                	test   %esi,%esi
4206d4:	79 66                	jns    0x42073c
4206d6:	68 78 ab 45 00       	push   $0x45ab78
4206db:	eb d7                	jmp    0x4206b4
4206dd:	56                   	push   %esi
4206de:	68 80 00 00 08       	push   $0x8000080
4206e3:	6a 03                	push   $0x3
4206e5:	56                   	push   %esi
4206e6:	6a 01                	push   $0x1
4206e8:	68 00 00 00 80       	push   $0x80000000
4206ed:	ff 75 08             	push   0x8(%ebp)
4206f0:	ff 15 40 b1 44 00    	call   *0x44b140
4206f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4206f9:	3b c3                	cmp    %ebx,%eax
4206fb:	75 3f                	jne    0x42073c
4206fd:	ff 15 e8 b0 44 00    	call   *0x44b0e8
420703:	0f b7 f0             	movzwl %ax,%esi
420706:	81 ce 00 00 07 80    	or     $0x80070000,%esi
42070c:	85 c0                	test   %eax,%eax
42070e:	0f 4e f0             	cmovle %eax,%esi
420711:	b8 05 40 00 80       	mov    $0x80004005,%eax
420716:	85 f6                	test   %esi,%esi
420718:	0f 49 f0             	cmovns %eax,%esi
42071b:	56                   	push   %esi
42071c:	68 d5 02 00 00       	push   $0x2d5
420721:	68 b8 a7 45 00       	push   $0x45a7b8
420726:	e8 a8 30 fe ff       	call   0x4037d3
42072b:	ff 75 08             	push   0x8(%ebp)
42072e:	68 b0 ab 45 00       	push   $0x45abb0
420733:	56                   	push   %esi
420734:	e8 f6 f9 01 00       	call   0x44012f
420739:	83 c4 0c             	add    $0xc,%esp
42073c:	89 77 30             	mov    %esi,0x30(%edi)
42073f:	85 f6                	test   %esi,%esi
420741:	8b 45 fc             	mov    -0x4(%ebp),%eax
420744:	5f                   	pop    %edi
420745:	5e                   	pop    %esi
420746:	0f 48 c3             	cmovs  %ebx,%eax
420749:	5b                   	pop    %ebx
42074a:	8b e5                	mov    %ebp,%esp
42074c:	5d                   	pop    %ebp
42074d:	c3                   	ret
42074e:	55                   	push   %ebp
42074f:	8b ec                	mov    %esp,%ebp
420751:	51                   	push   %ecx
420752:	8b 0d c0 aa 46 00    	mov    0x46aac0,%ecx
420758:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
42075e:	56                   	push   %esi
42075f:	57                   	push   %edi
420760:	ff 75 10             	push   0x10(%ebp)
420763:	8b 04 88             	mov    (%eax,%ecx,4),%eax
420766:	33 f6                	xor    %esi,%esi
420768:	ff 75 08             	push   0x8(%ebp)
42076b:	89 75 fc             	mov    %esi,-0x4(%ebp)
42076e:	8b b8 04 00 00 00    	mov    0x4(%eax),%edi
420774:	8d 47 1c             	lea    0x1c(%edi),%eax
420777:	50                   	push   %eax
420778:	e8 d2 09 00 00       	call   0x42114f
42077d:	56                   	push   %esi
42077e:	8d 45 fc             	lea    -0x4(%ebp),%eax
420781:	50                   	push   %eax
420782:	ff 75 10             	push   0x10(%ebp)
420785:	ff 75 0c             	push   0xc(%ebp)
420788:	ff 75 08             	push   0x8(%ebp)
42078b:	ff 15 ec b1 44 00    	call   *0x44b1ec
420791:	85 c0                	test   %eax,%eax
420793:	75 3b                	jne    0x4207d0
420795:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42079b:	0f b7 f0             	movzwl %ax,%esi
42079e:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4207a4:	85 c0                	test   %eax,%eax
4207a6:	0f 4e f0             	cmovle %eax,%esi
4207a9:	b8 05 40 00 80       	mov    $0x80004005,%eax
4207ae:	85 f6                	test   %esi,%esi
4207b0:	0f 49 f0             	cmovns %eax,%esi
4207b3:	56                   	push   %esi
4207b4:	68 ec 02 00 00       	push   $0x2ec
4207b9:	68 b8 a7 45 00       	push   $0x45a7b8
4207be:	e8 10 30 fe ff       	call   0x4037d3
4207c3:	68 d4 ab 45 00       	push   $0x45abd4
4207c8:	56                   	push   %esi
4207c9:	e8 61 f9 01 00       	call   0x44012f
4207ce:	59                   	pop    %ecx
4207cf:	59                   	pop    %ecx
4207d0:	89 77 30             	mov    %esi,0x30(%edi)
4207d3:	83 c9 ff             	or     $0xffffffff,%ecx
4207d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4207d9:	85 f6                	test   %esi,%esi
4207db:	5f                   	pop    %edi
4207dc:	0f 48 c1             	cmovs  %ecx,%eax
4207df:	5e                   	pop    %esi
4207e0:	8b e5                	mov    %ebp,%esp
4207e2:	5d                   	pop    %ebp
4207e3:	c3                   	ret
4207e4:	55                   	push   %ebp
4207e5:	8b ec                	mov    %esp,%ebp
4207e7:	83 ec 0c             	sub    $0xc,%esp
4207ea:	8b 0d c0 aa 46 00    	mov    0x46aac0,%ecx
4207f0:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
4207f6:	53                   	push   %ebx
4207f7:	56                   	push   %esi
4207f8:	57                   	push   %edi
4207f9:	8b 04 88             	mov    (%eax,%ecx,4),%eax
4207fc:	33 f6                	xor    %esi,%esi
4207fe:	89 75 f4             	mov    %esi,-0xc(%ebp)
420801:	89 75 f8             	mov    %esi,-0x8(%ebp)
420804:	8b b8 04 00 00 00    	mov    0x4(%eax),%edi
42080a:	8b 45 10             	mov    0x10(%ebp),%eax
42080d:	2b c6                	sub    %esi,%eax
42080f:	74 41                	je     0x420852
420811:	83 e8 01             	sub    $0x1,%eax
420814:	74 32                	je     0x420848
420816:	83 e8 01             	sub    $0x1,%eax
420819:	74 17                	je     0x420832
42081b:	be 57 00 07 80       	mov    $0x80070057,%esi
420820:	68 4c ac 45 00       	push   $0x45ac4c
420825:	56                   	push   %esi
420826:	e8 04 f9 01 00       	call   0x44012f
42082b:	59                   	pop    %ecx
42082c:	59                   	pop    %ecx
42082d:	e9 a9 00 00 00       	jmp    0x4208db
420832:	8b 5f 10             	mov    0x10(%edi),%ebx
420835:	03 5f 08             	add    0x8(%edi),%ebx
420838:	8b 45 0c             	mov    0xc(%ebp),%eax
42083b:	8b 4f 14             	mov    0x14(%edi),%ecx
42083e:	13 4f 0c             	adc    0xc(%edi),%ecx
420841:	99                   	cltd
420842:	03 d8                	add    %eax,%ebx
420844:	13 ca                	adc    %edx,%ecx
420846:	eb 18                	jmp    0x420860
420848:	8b 45 0c             	mov    0xc(%ebp),%eax
42084b:	99                   	cltd
42084c:	8b d8                	mov    %eax,%ebx
42084e:	8b ca                	mov    %edx,%ecx
420850:	eb 0e                	jmp    0x420860
420852:	8b 45 0c             	mov    0xc(%ebp),%eax
420855:	99                   	cltd
420856:	8b d8                	mov    %eax,%ebx
420858:	8b ca                	mov    %edx,%ecx
42085a:	03 5f 08             	add    0x8(%edi),%ebx
42085d:	13 4f 0c             	adc    0xc(%edi),%ecx
420860:	ff 75 10             	push   0x10(%ebp)
420863:	8d 45 f4             	lea    -0xc(%ebp),%eax
420866:	89 4d fc             	mov    %ecx,-0x4(%ebp)
420869:	50                   	push   %eax
42086a:	51                   	push   %ecx
42086b:	53                   	push   %ebx
42086c:	ff 75 08             	push   0x8(%ebp)
42086f:	8d 47 1c             	lea    0x1c(%edi),%eax
420872:	50                   	push   %eax
420873:	e8 57 09 00 00       	call   0x4211cf
420878:	85 c0                	test   %eax,%eax
42087a:	74 59                	je     0x4208d5
42087c:	ff 75 10             	push   0x10(%ebp)
42087f:	8d 45 f4             	lea    -0xc(%ebp),%eax
420882:	50                   	push   %eax
420883:	ff 75 fc             	push   -0x4(%ebp)
420886:	53                   	push   %ebx
420887:	ff 75 08             	push   0x8(%ebp)
42088a:	ff 15 f0 b1 44 00    	call   *0x44b1f0
420890:	85 c0                	test   %eax,%eax
420892:	75 41                	jne    0x4208d5
420894:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42089a:	0f b7 f0             	movzwl %ax,%esi
42089d:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4208a3:	85 c0                	test   %eax,%eax
4208a5:	0f 4e f0             	cmovle %eax,%esi
4208a8:	b8 05 40 00 80       	mov    $0x80004005,%eax
4208ad:	85 f6                	test   %esi,%esi
4208af:	0f 49 f0             	cmovns %eax,%esi
4208b2:	56                   	push   %esi
4208b3:	68 45 03 00 00       	push   $0x345
4208b8:	68 b8 a7 45 00       	push   $0x45a7b8
4208bd:	e8 11 2f fe ff       	call   0x4037d3
4208c2:	ff 75 0c             	push   0xc(%ebp)
4208c5:	68 60 ac 45 00       	push   $0x45ac60
4208ca:	56                   	push   %esi
4208cb:	e8 5f f8 01 00       	call   0x44012f
4208d0:	83 c4 0c             	add    $0xc,%esp
4208d3:	eb 06                	jmp    0x4208db
4208d5:	8b 47 08             	mov    0x8(%edi),%eax
4208d8:	29 45 f4             	sub    %eax,-0xc(%ebp)
4208db:	89 77 30             	mov    %esi,0x30(%edi)
4208de:	83 c9 ff             	or     $0xffffffff,%ecx
4208e1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4208e4:	85 f6                	test   %esi,%esi
4208e6:	5f                   	pop    %edi
4208e7:	5e                   	pop    %esi
4208e8:	0f 48 c1             	cmovs  %ecx,%eax
4208eb:	5b                   	pop    %ebx
4208ec:	8b e5                	mov    %ebp,%esp
4208ee:	5d                   	pop    %ebp
4208ef:	c3                   	ret
4208f0:	55                   	push   %ebp
4208f1:	8b ec                	mov    %esp,%ebp
4208f3:	51                   	push   %ecx
4208f4:	8b 0d c0 aa 46 00    	mov    0x46aac0,%ecx
4208fa:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
420900:	53                   	push   %ebx
420901:	57                   	push   %edi
420902:	33 ff                	xor    %edi,%edi
420904:	8b 04 88             	mov    (%eax,%ecx,4),%eax
420907:	89 7d fc             	mov    %edi,-0x4(%ebp)
42090a:	8b 98 04 00 00 00    	mov    0x4(%eax),%ebx
420910:	8b 43 2c             	mov    0x2c(%ebx),%eax
420913:	48                   	dec    %eax
420914:	83 e8 01             	sub    $0x1,%eax
420917:	74 38                	je     0x420951
420919:	83 e8 01             	sub    $0x1,%eax
42091c:	74 0c                	je     0x42092a
42091e:	bf 9f 13 07 80       	mov    $0x8007139f,%edi
420923:	68 2c ac 45 00       	push   $0x45ac2c
420928:	eb 72                	jmp    0x42099c
42092a:	8b 43 44             	mov    0x44(%ebx),%eax
42092d:	2b 43 48             	sub    0x48(%ebx),%eax
420930:	56                   	push   %esi
420931:	8b 75 10             	mov    0x10(%ebp),%esi
420934:	56                   	push   %esi
420935:	ff 75 0c             	push   0xc(%ebp)
420938:	50                   	push   %eax
420939:	8b 43 40             	mov    0x40(%ebx),%eax
42093c:	03 43 48             	add    0x48(%ebx),%eax
42093f:	50                   	push   %eax
420940:	e8 1f 0d 00 00       	call   0x421664
420945:	83 c4 10             	add    $0x10,%esp
420948:	01 73 48             	add    %esi,0x48(%ebx)
42094b:	89 75 fc             	mov    %esi,-0x4(%ebp)
42094e:	5e                   	pop    %esi
42094f:	eb 53                	jmp    0x4209a4
420951:	57                   	push   %edi
420952:	8d 45 fc             	lea    -0x4(%ebp),%eax
420955:	50                   	push   %eax
420956:	ff 75 10             	push   0x10(%ebp)
420959:	ff 75 0c             	push   0xc(%ebp)
42095c:	ff 73 3c             	push   0x3c(%ebx)
42095f:	ff 15 30 b1 44 00    	call   *0x44b130
420965:	85 c0                	test   %eax,%eax
420967:	75 3b                	jne    0x4209a4
420969:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42096f:	0f b7 f8             	movzwl %ax,%edi
420972:	81 cf 00 00 07 80    	or     $0x80070000,%edi
420978:	85 c0                	test   %eax,%eax
42097a:	0f 4e f8             	cmovle %eax,%edi
42097d:	b8 05 40 00 80       	mov    $0x80004005,%eax
420982:	85 ff                	test   %edi,%edi
420984:	0f 49 f8             	cmovns %eax,%edi
420987:	57                   	push   %edi
420988:	68 04 03 00 00       	push   $0x304
42098d:	68 b8 a7 45 00       	push   $0x45a7b8
420992:	e8 3c 2e fe ff       	call   0x4037d3
420997:	68 00 ac 45 00       	push   $0x45ac00
42099c:	57                   	push   %edi
42099d:	e8 8d f7 01 00       	call   0x44012f
4209a2:	59                   	pop    %ecx
4209a3:	59                   	pop    %ecx
4209a4:	89 7b 30             	mov    %edi,0x30(%ebx)
4209a7:	83 c9 ff             	or     $0xffffffff,%ecx
4209aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4209ad:	85 ff                	test   %edi,%edi
4209af:	5f                   	pop    %edi
4209b0:	0f 48 c1             	cmovs  %ecx,%eax
4209b3:	5b                   	pop    %ebx
4209b4:	8b e5                	mov    %ebp,%esp
4209b6:	5d                   	pop    %ebp
4209b7:	c3                   	ret
4209b8:	55                   	push   %ebp
4209b9:	8b ec                	mov    %esp,%ebp
4209bb:	83 ec 10             	sub    $0x10,%esp
4209be:	56                   	push   %esi
4209bf:	57                   	push   %edi
4209c0:	8b 7d 08             	mov    0x8(%ebp),%edi
4209c3:	33 f6                	xor    %esi,%esi