4cf4a5:	50                   	push   %eax
4cf4a6:	8b 5f 0c             	mov    0xc(%edi),%ebx
4cf4a9:	53                   	push   %ebx
4cf4aa:	8b 45 e0             	mov    -0x20(%ebp),%eax
4cf4ad:	50                   	push   %eax
4cf4ae:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf4b1:	e8 0a 98 f5 ff       	call   0x428cc0
4cf4b6:	8b 17                	mov    (%edi),%edx
4cf4b8:	4a                   	dec    %edx
4cf4b9:	8b cb                	mov    %ebx,%ecx
4cf4bb:	e8 d0 99 fb ff       	call   0x488e90
4cf4c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf4c3:	8b 40 14             	mov    0x14(%eax),%eax
4cf4c6:	8b 55 dc             	mov    -0x24(%ebp),%edx
4cf4c9:	e8 b6 8d f5 ff       	call   0x428284
4cf4ce:	6a 01                	push   $0x1
4cf4d0:	8b d7                	mov    %edi,%edx
4cf4d2:	33 c9                	xor    %ecx,%ecx
4cf4d4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf4d7:	e8 d4 e8 fe ff       	call   0x4bddb0
4cf4dc:	55                   	push   %ebp
4cf4dd:	8b 45 08             	mov    0x8(%ebp),%eax
4cf4e0:	8b 40 20             	mov    0x20(%eax),%eax
4cf4e3:	e8 70 fa ff ff       	call   0x4cef58
4cf4e8:	59                   	pop    %ecx
4cf4e9:	3c 04                	cmp    $0x4,%al
4cf4eb:	75 27                	jne    0x4cf514
4cf4ed:	6a 01                	push   $0x1
4cf4ef:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf4f2:	e8 c9 97 f5 ff       	call   0x428cc0
4cf4f7:	8b d7                	mov    %edi,%edx
4cf4f9:	8b 8e b8 00 00 00    	mov    0xb8(%esi),%ecx
4cf4ff:	e8 28 99 fb ff       	call   0x488e2c
4cf504:	6a 01                	push   $0x1
4cf506:	8b d7                	mov    %edi,%edx
4cf508:	b1 01                	mov    $0x1,%cl
4cf50a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf50d:	e8 9e e8 fe ff       	call   0x4bddb0
4cf512:	eb 30                	jmp    0x4cf544
4cf514:	3c 03                	cmp    $0x3,%al
4cf516:	75 2c                	jne    0x4cf544
4cf518:	6a 01                	push   $0x1
4cf51a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf51d:	e8 9e 97 f5 ff       	call   0x428cc0
4cf522:	8b d7                	mov    %edi,%edx
4cf524:	b9 d0 d0 d0 00       	mov    $0xd0d0d0,%ecx
4cf529:	e8 fe 98 fb ff       	call   0x488e2c
4cf52e:	68 c0 c0 c0 00       	push   $0xc0c0c0
4cf533:	6a 01                	push   $0x1
4cf535:	8b d7                	mov    %edi,%edx
4cf537:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4cf53c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf53f:	e8 a4 eb fe ff       	call   0x4be0e8
4cf544:	8b 07                	mov    (%edi),%eax
4cf546:	03 47 08             	add    0x8(%edi),%eax
4cf549:	8b 15 2c b3 6a 00    	mov    0x6ab32c,%edx
4cf54f:	2b 42 34             	sub    0x34(%edx),%eax
4cf552:	40                   	inc    %eax
4cf553:	d1 f8                	sar    $1,%eax
4cf555:	79 03                	jns    0x4cf55a
4cf557:	83 d0 00             	adc    $0x0,%eax
4cf55a:	89 45 f8             	mov    %eax,-0x8(%ebp)
4cf55d:	8b 47 04             	mov    0x4(%edi),%eax
4cf560:	03 47 0c             	add    0xc(%edi),%eax
4cf563:	8b 15 2c b3 6a 00    	mov    0x6ab32c,%edx
4cf569:	2b 42 30             	sub    0x30(%edx),%eax
4cf56c:	d1 f8                	sar    $1,%eax
4cf56e:	79 03                	jns    0x4cf573
4cf570:	83 d0 00             	adc    $0x0,%eax
4cf573:	89 45 f4             	mov    %eax,-0xc(%ebp)
4cf576:	33 c9                	xor    %ecx,%ecx
4cf578:	8b d7                	mov    %edi,%edx
4cf57a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf57d:	e8 36 e7 ff ff       	call   0x4cdcb8
4cf582:	5f                   	pop    %edi
4cf583:	5e                   	pop    %esi
4cf584:	5b                   	pop    %ebx
4cf585:	8b e5                	mov    %ebp,%esp
4cf587:	5d                   	pop    %ebp
4cf588:	c2 04 00             	ret    $0x4
4cf58b:	90                   	nop
4cf58c:	55                   	push   %ebp
4cf58d:	8b ec                	mov    %esp,%ebp
4cf58f:	83 c4 ec             	add    $0xffffffec,%esp
4cf592:	53                   	push   %ebx
4cf593:	56                   	push   %esi
4cf594:	57                   	push   %edi
4cf595:	8b f9                	mov    %ecx,%edi
4cf597:	89 55 fc             	mov    %edx,-0x4(%ebp)
4cf59a:	8b f0                	mov    %eax,%esi
4cf59c:	8b 5d 08             	mov    0x8(%ebp),%ebx
4cf59f:	56                   	push   %esi
4cf5a0:	8b f7                	mov    %edi,%esi
4cf5a2:	8d 7d ec             	lea    -0x14(%ebp),%edi
4cf5a5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf5a6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf5a7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf5a8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf5a9:	5e                   	pop    %esi
4cf5aa:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4cf5ae:	75 10                	jne    0x4cf5c0
4cf5b0:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4cf5b4:	75 06                	jne    0x4cf5bc
4cf5b6:	80 7b 0a 01          	cmpb   $0x1,0xa(%ebx)
4cf5ba:	74 04                	je     0x4cf5c0
4cf5bc:	33 c0                	xor    %eax,%eax
4cf5be:	eb 02                	jmp    0x4cf5c2
4cf5c0:	b0 01                	mov    $0x1,%al
4cf5c2:	84 c0                	test   %al,%al
4cf5c4:	75 27                	jne    0x4cf5ed
4cf5c6:	6a ff                	push   $0xffffffff
4cf5c8:	6a ff                	push   $0xffffffff
4cf5ca:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf5cd:	50                   	push   %eax
4cf5ce:	e8 b5 85 f3 ff       	call   0x407b88
4cf5d3:	6a 01                	push   $0x1
4cf5d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf5d8:	e8 e3 96 f5 ff       	call   0x428cc0
4cf5dd:	8b 4e 10             	mov    0x10(%esi),%ecx
4cf5e0:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf5e3:	e8 44 98 fb ff       	call   0x488e2c
4cf5e8:	e9 ac 00 00 00       	jmp    0x4cf699
4cf5ed:	84 c0                	test   %al,%al
4cf5ef:	74 06                	je     0x4cf5f7
4cf5f1:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4cf5f5:	75 0a                	jne    0x4cf601
4cf5f7:	f6 43 04 10          	testb  $0x10,0x4(%ebx)
4cf5fb:	0f 84 98 00 00 00    	je     0x4cf699
4cf601:	6a ff                	push   $0xffffffff
4cf603:	6a ff                	push   $0xffffffff
4cf605:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf608:	50                   	push   %eax
4cf609:	e8 7a 85 f3 ff       	call   0x407b88
4cf60e:	6a 01                	push   $0x1
4cf610:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf613:	33 c9                	xor    %ecx,%ecx
4cf615:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf618:	e8 93 e7 fe ff       	call   0x4bddb0
4cf61d:	80 7b 09 00          	cmpb   $0x0,0x9(%ebx)
4cf621:	74 29                	je     0x4cf64c
4cf623:	f6 43 01 20          	testb  $0x20,0x1(%ebx)
4cf627:	74 10                	je     0x4cf639
4cf629:	8b 56 70             	mov    0x70(%esi),%edx
4cf62c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf62f:	8b 40 10             	mov    0x10(%eax),%eax
4cf632:	e8 4d 89 f5 ff       	call   0x427f84
4cf637:	eb 41                	jmp    0x4cf67a
4cf639:	8b 96 a0 00 00 00    	mov    0xa0(%esi),%edx
4cf63f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf642:	8b 40 10             	mov    0x10(%eax),%eax
4cf645:	e8 3a 89 f5 ff       	call   0x427f84
4cf64a:	eb 2e                	jmp    0x4cf67a
4cf64c:	f6 43 01 20          	testb  $0x20,0x1(%ebx)
4cf650:	74 10                	je     0x4cf662
4cf652:	8b 56 70             	mov    0x70(%esi),%edx
4cf655:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf658:	8b 40 10             	mov    0x10(%eax),%eax
4cf65b:	e8 24 89 f5 ff       	call   0x427f84
4cf660:	eb 18                	jmp    0x4cf67a
4cf662:	8b d3                	mov    %ebx,%edx
4cf664:	b1 02                	mov    $0x2,%cl
4cf666:	8b c6                	mov    %esi,%eax
4cf668:	e8 33 e5 ff ff       	call   0x4cdba0
4cf66d:	8b d0                	mov    %eax,%edx
4cf66f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf672:	8b 40 10             	mov    0x10(%eax),%eax
4cf675:	e8 0a 89 f5 ff       	call   0x427f84
4cf67a:	6a 01                	push   $0x1
4cf67c:	6a 01                	push   $0x1
4cf67e:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf681:	50                   	push   %eax
4cf682:	e8 01 85 f3 ff       	call   0x407b88
4cf687:	6a 01                	push   $0x1
4cf689:	b9 01 00 00 00       	mov    $0x1,%ecx
4cf68e:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf691:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf694:	e8 2f e1 ff ff       	call   0x4cd7c8
4cf699:	5f                   	pop    %edi
4cf69a:	5e                   	pop    %esi
4cf69b:	5b                   	pop    %ebx
4cf69c:	8b e5                	mov    %ebp,%esp
4cf69e:	5d                   	pop    %ebp
4cf69f:	c2 04 00             	ret    $0x4
4cf6a2:	8b c0                	mov    %eax,%eax
4cf6a4:	55                   	push   %ebp
4cf6a5:	8b ec                	mov    %esp,%ebp
4cf6a7:	53                   	push   %ebx
4cf6a8:	56                   	push   %esi
4cf6a9:	8b f1                	mov    %ecx,%esi
4cf6ab:	8b 5d 08             	mov    0x8(%ebp),%ebx
4cf6ae:	33 c0                	xor    %eax,%eax
4cf6b0:	89 03                	mov    %eax,(%ebx)
4cf6b2:	8b 45 0c             	mov    0xc(%ebp),%eax
4cf6b5:	8b 15 28 07 47 00    	mov    0x470728,%edx
4cf6bb:	e8 44 45 f3 ff       	call   0x403c04
4cf6c0:	84 c0                	test   %al,%al
4cf6c2:	75 24                	jne    0x4cf6e8
4cf6c4:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
4cf6c8:	74 1e                	je     0x4cf6e8
4cf6ca:	80 7e 0a 00          	cmpb   $0x0,0xa(%esi)
4cf6ce:	74 18                	je     0x4cf6e8
4cf6d0:	80 7e 0b 00          	cmpb   $0x0,0xb(%esi)
4cf6d4:	75 12                	jne    0x4cf6e8
4cf6d6:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
4cf6da:	74 06                	je     0x4cf6e2
4cf6dc:	80 7e 1a 00          	cmpb   $0x0,0x1a(%esi)
4cf6e0:	74 06                	je     0x4cf6e8
4cf6e2:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
4cf6e8:	8b 03                	mov    (%ebx),%eax
4cf6ea:	89 43 04             	mov    %eax,0x4(%ebx)
4cf6ed:	5e                   	pop    %esi
4cf6ee:	5b                   	pop    %ebx
4cf6ef:	5d                   	pop    %ebp
4cf6f0:	c2 08 00             	ret    $0x8
4cf6f3:	90                   	nop
4cf6f4:	55                   	push   %ebp
4cf6f5:	8b ec                	mov    %esp,%ebp
4cf6f7:	83 c4 ec             	add    $0xffffffec,%esp
4cf6fa:	53                   	push   %ebx
4cf6fb:	56                   	push   %esi
4cf6fc:	57                   	push   %edi
4cf6fd:	8b f1                	mov    %ecx,%esi
4cf6ff:	8d 7d ec             	lea    -0x14(%ebp),%edi
4cf702:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf703:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf704:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf705:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cf706:	89 55 fc             	mov    %edx,-0x4(%ebp)
4cf709:	8b d8                	mov    %eax,%ebx
4cf70b:	8b 75 0c             	mov    0xc(%ebp),%esi
4cf70e:	8b 7d 10             	mov    0x10(%ebp),%edi
4cf711:	8b c6                	mov    %esi,%eax
4cf713:	8b 15 28 07 47 00    	mov    0x470728,%edx
4cf719:	e8 e6 44 f3 ff       	call   0x403c04
4cf71e:	84 c0                	test   %al,%al
4cf720:	74 2a                	je     0x4cf74c
4cf722:	8b 45 f0             	mov    -0x10(%ebp),%eax
4cf725:	50                   	push   %eax
4cf726:	8b 45 08             	mov    0x8(%ebp),%eax
4cf729:	50                   	push   %eax
4cf72a:	8a 47 08             	mov    0x8(%edi),%al
4cf72d:	50                   	push   %eax
4cf72e:	80 7f 0a 00          	cmpb   $0x0,0xa(%edi)
4cf732:	0f 95 c0             	setne  %al
4cf735:	50                   	push   %eax
4cf736:	8a 47 0b             	mov    0xb(%edi),%al
4cf739:	50                   	push   %eax
4cf73a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4cf73d:	8b 55 fc             	mov    -0x4(%ebp),%edx
4cf740:	8b c6                	mov    %esi,%eax
4cf742:	8b 18                	mov    (%eax),%ebx
4cf744:	ff 53 3c             	call   *0x3c(%ebx)
4cf747:	e9 19 01 00 00       	jmp    0x4cf865
4cf74c:	8b d7                	mov    %edi,%edx
4cf74e:	8b c3                	mov    %ebx,%eax
4cf750:	8b 08                	mov    (%eax),%ecx
4cf752:	ff 51 10             	call   *0x10(%ecx)
4cf755:	e8 5e 8f fb ff       	call   0x4886b8
4cf75a:	83 f8 50             	cmp    $0x50,%eax
4cf75d:	0f 9c c0             	setl   %al
4cf760:	8b d8                	mov    %eax,%ebx
4cf762:	80 7f 08 00          	cmpb   $0x0,0x8(%edi)
4cf766:	75 37                	jne    0x4cf79f
4cf768:	84 db                	test   %bl,%bl
4cf76a:	75 18                	jne    0x4cf784
4cf76c:	8b 45 08             	mov    0x8(%ebp),%eax
4cf76f:	50                   	push   %eax
4cf770:	6a 00                	push   $0x0
4cf772:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf775:	8b ce                	mov    %esi,%ecx
4cf777:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf77a:	e8 cd 9d fb ff       	call   0x48954c
4cf77f:	e9 e1 00 00 00       	jmp    0x4cf865
4cf784:	8b 45 08             	mov    0x8(%ebp),%eax
4cf787:	50                   	push   %eax
4cf788:	68 10 00 00 80       	push   $0x80000010
4cf78d:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf790:	8b ce                	mov    %esi,%ecx
4cf792:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf795:	e8 e6 9f fb ff       	call   0x489780
4cf79a:	e9 c6 00 00 00       	jmp    0x4cf865
4cf79f:	80 7f 0b 00          	cmpb   $0x0,0xb(%edi)
4cf7a3:	75 0c                	jne    0x4cf7b1
4cf7a5:	80 7f 09 00          	cmpb   $0x0,0x9(%edi)
4cf7a9:	75 06                	jne    0x4cf7b1
4cf7ab:	80 7f 0a 00          	cmpb   $0x0,0xa(%edi)
4cf7af:	74 6d                	je     0x4cf81e
4cf7b1:	80 7f 0b 00          	cmpb   $0x0,0xb(%edi)
4cf7b5:	75 53                	jne    0x4cf80a
4cf7b7:	80 7f 09 00          	cmpb   $0x0,0x9(%edi)
4cf7bb:	75 4d                	jne    0x4cf80a
4cf7bd:	6a 01                	push   $0x1
4cf7bf:	6a 01                	push   $0x1
4cf7c1:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf7c4:	50                   	push   %eax
4cf7c5:	e8 ae 84 f3 ff       	call   0x407c78
4cf7ca:	8b 45 08             	mov    0x8(%ebp),%eax
4cf7cd:	50                   	push   %eax
4cf7ce:	6a 01                	push   $0x1
4cf7d0:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf7d3:	8b ce                	mov    %esi,%ecx
4cf7d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf7d8:	e8 6f 9d fb ff       	call   0x48954c
4cf7dd:	6a 01                	push   $0x1
4cf7df:	6a 01                	push   $0x1
4cf7e1:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf7e4:	50                   	push   %eax
4cf7e5:	e8 8e 84 f3 ff       	call   0x407c78
4cf7ea:	8b 45 08             	mov    0x8(%ebp),%eax
4cf7ed:	50                   	push   %eax
4cf7ee:	6a 01                	push   $0x1
4cf7f0:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf7f3:	8b ce                	mov    %esi,%ecx
4cf7f5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf7f8:	e8 4f 9d fb ff       	call   0x48954c
4cf7fd:	6a fe                	push   $0xfffffffe
4cf7ff:	6a fe                	push   $0xfffffffe
4cf801:	8d 45 ec             	lea    -0x14(%ebp),%eax
4cf804:	50                   	push   %eax
4cf805:	e8 6e 84 f3 ff       	call   0x407c78
4cf80a:	8b 45 08             	mov    0x8(%ebp),%eax
4cf80d:	50                   	push   %eax
4cf80e:	53                   	push   %ebx
4cf80f:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf812:	8b ce                	mov    %esi,%ecx
4cf814:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf817:	e8 f4 98 fb ff       	call   0x489110
4cf81c:	eb 47                	jmp    0x4cf865
4cf81e:	84 db                	test   %bl,%bl
4cf820:	75 14                	jne    0x4cf836
4cf822:	a1 e8 6b 6a 00       	mov    0x6a6be8,%eax
4cf827:	80 38 00             	cmpb   $0x0,(%eax)
4cf82a:	75 0a                	jne    0x4cf836
4cf82c:	a1 b0 70 6a 00       	mov    0x6a70b0,%eax
4cf831:	80 38 00             	cmpb   $0x0,(%eax)
4cf834:	74 14                	je     0x4cf84a
4cf836:	8b 45 08             	mov    0x8(%ebp),%eax
4cf839:	50                   	push   %eax
4cf83a:	53                   	push   %ebx
4cf83b:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf83e:	8b ce                	mov    %esi,%ecx
4cf840:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cf843:	e8 c8 98 fb ff       	call   0x489110
4cf848:	eb 1b                	jmp    0x4cf865
4cf84a:	8b 45 08             	mov    0x8(%ebp),%eax
4cf84d:	50                   	push   %eax
4cf84e:	68 05 00 00 80       	push   $0x80000005
4cf853:	68 ff 00 00 00       	push   $0xff
4cf858:	8d 55 ec             	lea    -0x14(%ebp),%edx
4cf85b:	8b ce                	mov    %esi,%ecx