4bf5ef:	56                   	push   %esi
4bf5f0:	57                   	push   %edi
4bf5f1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4bf5f4:	89 55 fc             	mov    %edx,-0x4(%ebp)
4bf5f7:	8b f0                	mov    %eax,%esi
4bf5f9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4bf5fc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bf5ff:	56                   	push   %esi
4bf600:	8b f0                	mov    %eax,%esi
4bf602:	8d 7d e8             	lea    -0x18(%ebp),%edi
4bf605:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf606:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf607:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf608:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf609:	5e                   	pop    %esi
4bf60a:	53                   	push   %ebx
4bf60b:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4bf60e:	8b 55 fc             	mov    -0x4(%ebp),%edx
4bf611:	8b c6                	mov    %esi,%eax
4bf613:	8b 38                	mov    (%eax),%edi
4bf615:	ff 57 54             	call   *0x54(%edi)
4bf618:	ba 3c 00 00 00       	mov    $0x3c,%edx
4bf61d:	8b c6                	mov    %esi,%eax
4bf61f:	8b 08                	mov    (%eax),%ecx
4bf621:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bf627:	8b f8                	mov    %eax,%edi
4bf629:	8b c7                	mov    %edi,%eax
4bf62b:	f7 d8                	neg    %eax
4bf62d:	50                   	push   %eax
4bf62e:	8b d7                	mov    %edi,%edx
4bf630:	f7 da                	neg    %edx
4bf632:	50                   	push   %eax
4bf633:	8d 45 e8             	lea    -0x18(%ebp),%eax
4bf636:	50                   	push   %eax
4bf637:	e8 4c 85 f4 ff       	call   0x407b88
4bf63c:	8b 03                	mov    (%ebx),%eax
4bf63e:	8b d0                	mov    %eax,%edx
4bf640:	81 e2 00 10 00 00    	and    $0x1000,%edx
4bf646:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4bf64c:	75 0c                	jne    0x4bf65a
4bf64e:	25 00 02 00 00       	and    $0x200,%eax
4bf653:	3d 00 02 00 00       	cmp    $0x200,%eax
4bf658:	74 04                	je     0x4bf65e
4bf65a:	33 c0                	xor    %eax,%eax
4bf65c:	eb 02                	jmp    0x4bf660
4bf65e:	b0 01                	mov    $0x1,%al
4bf660:	0a 43 08             	or     0x8(%ebx),%al
4bf663:	75 15                	jne    0x4bf67a
4bf665:	6a 01                	push   $0x1
4bf667:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf66a:	e8 51 96 f6 ff       	call   0x428cc0
4bf66f:	8d 55 e8             	lea    -0x18(%ebp),%edx
4bf672:	8b 4e 18             	mov    0x18(%esi),%ecx
4bf675:	e8 b2 97 fc ff       	call   0x488e2c
4bf67a:	8b 45 08             	mov    0x8(%ebp),%eax
4bf67d:	8b 40 04             	mov    0x4(%eax),%eax
4bf680:	85 c0                	test   %eax,%eax
4bf682:	7e 09                	jle    0x4bf68d
4bf684:	8b 55 08             	mov    0x8(%ebp),%edx
4bf687:	83 e8 02             	sub    $0x2,%eax
4bf68a:	29 45 f0             	sub    %eax,-0x10(%ebp)
4bf68d:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4bf691:	74 54                	je     0x4bf6e7
4bf693:	8b 03                	mov    (%ebx),%eax
4bf695:	25 00 10 00 00       	and    $0x1000,%eax
4bf69a:	3d 00 10 00 00       	cmp    $0x1000,%eax
4bf69f:	74 2b                	je     0x4bf6cc
4bf6a1:	8b d3                	mov    %ebx,%edx
4bf6a3:	b1 02                	mov    $0x2,%cl
4bf6a5:	8b c6                	mov    %esi,%eax
4bf6a7:	e8 40 ef ff ff       	call   0x4be5ec
4bf6ac:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
4bf6b1:	75 19                	jne    0x4bf6cc
4bf6b3:	6a 01                	push   $0x1
4bf6b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf6b8:	e8 03 96 f6 ff       	call   0x428cc0
4bf6bd:	8d 55 e8             	lea    -0x18(%ebp),%edx
4bf6c0:	b9 0f 00 00 80       	mov    $0x8000000f,%ecx
4bf6c5:	e8 62 97 fc ff       	call   0x488e2c
4bf6ca:	eb 1b                	jmp    0x4bf6e7
4bf6cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf6cf:	8b 40 14             	mov    0x14(%eax),%eax
4bf6d2:	ba 05 00 00 80       	mov    $0x80000005,%edx
4bf6d7:	e8 a8 8b f6 ff       	call   0x428284
4bf6dc:	8d 55 e8             	lea    -0x18(%ebp),%edx
4bf6df:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf6e2:	e8 51 90 f6 ff       	call   0x428738
4bf6e7:	6a ff                	push   $0xffffffff
4bf6e9:	6a ff                	push   $0xffffffff
4bf6eb:	8d 45 e8             	lea    -0x18(%ebp),%eax
4bf6ee:	50                   	push   %eax
4bf6ef:	e8 94 84 f4 ff       	call   0x407b88
4bf6f4:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4bf6f8:	74 73                	je     0x4bf76d
4bf6fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf6fd:	8b 40 14             	mov    0x14(%eax),%eax
4bf700:	ba 05 00 00 80       	mov    $0x80000005,%edx
4bf705:	e8 7a 8b f6 ff       	call   0x428284
4bf70a:	8d 55 e8             	lea    -0x18(%ebp),%edx
4bf70d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf710:	e8 e7 8f f6 ff       	call   0x4286fc
4bf715:	8b 03                	mov    (%ebx),%eax
4bf717:	25 00 10 00 00       	and    $0x1000,%eax
4bf71c:	3d 00 10 00 00       	cmp    $0x1000,%eax
4bf721:	74 4a                	je     0x4bf76d
4bf723:	8b d3                	mov    %ebx,%edx
4bf725:	b1 02                	mov    $0x2,%cl
4bf727:	8b c6                	mov    %esi,%eax
4bf729:	e8 be ee ff ff       	call   0x4be5ec
4bf72e:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
4bf733:	75 38                	jne    0x4bf76d
4bf735:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf738:	8b 40 14             	mov    0x14(%eax),%eax
4bf73b:	ba 0f 00 00 80       	mov    $0x8000000f,%edx
4bf740:	e8 3f 8b f6 ff       	call   0x428284
4bf745:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bf748:	56                   	push   %esi
4bf749:	57                   	push   %edi
4bf74a:	8b f0                	mov    %eax,%esi
4bf74c:	8d 7d e8             	lea    -0x18(%ebp),%edi
4bf74f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf750:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf751:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf752:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf753:	5f                   	pop    %edi
4bf754:	5e                   	pop    %esi
4bf755:	6a ff                	push   $0xffffffff
4bf757:	6a ff                	push   $0xffffffff
4bf759:	8d 45 e8             	lea    -0x18(%ebp),%eax
4bf75c:	50                   	push   %eax
4bf75d:	e8 26 84 f4 ff       	call   0x407b88
4bf762:	8d 55 e8             	lea    -0x18(%ebp),%edx
4bf765:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf768:	e8 cb 8f f6 ff       	call   0x428738
4bf76d:	8b 45 08             	mov    0x8(%ebp),%eax
4bf770:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
4bf774:	7e 42                	jle    0x4bf7b8
4bf776:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bf779:	56                   	push   %esi
4bf77a:	57                   	push   %edi
4bf77b:	8b f0                	mov    %eax,%esi
4bf77d:	8d 7d e8             	lea    -0x18(%ebp),%edi
4bf780:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf781:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf782:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf783:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf784:	5f                   	pop    %edi
4bf785:	5e                   	pop    %esi
4bf786:	8b c7                	mov    %edi,%eax
4bf788:	f7 d8                	neg    %eax
4bf78a:	50                   	push   %eax
4bf78b:	f7 df                	neg    %edi
4bf78d:	50                   	push   %eax
4bf78e:	8d 45 e8             	lea    -0x18(%ebp),%eax
4bf791:	50                   	push   %eax
4bf792:	e8 f1 83 f4 ff       	call   0x407b88
4bf797:	8b 45 08             	mov    0x8(%ebp),%eax
4bf79a:	8b 55 f0             	mov    -0x10(%ebp),%edx
4bf79d:	2b 50 04             	sub    0x4(%eax),%edx
4bf7a0:	89 55 e8             	mov    %edx,-0x18(%ebp)
4bf7a3:	53                   	push   %ebx
4bf7a4:	8b 45 08             	mov    0x8(%ebp),%eax
4bf7a7:	83 c0 10             	add    $0x10,%eax
4bf7aa:	50                   	push   %eax
4bf7ab:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4bf7ae:	8b 55 fc             	mov    -0x4(%ebp),%edx
4bf7b1:	8b c6                	mov    %esi,%eax
4bf7b3:	8b 18                	mov    (%eax),%ebx
4bf7b5:	ff 53 40             	call   *0x40(%ebx)
4bf7b8:	5f                   	pop    %edi
4bf7b9:	5e                   	pop    %esi
4bf7ba:	5b                   	pop    %ebx
4bf7bb:	8b e5                	mov    %ebp,%esp
4bf7bd:	5d                   	pop    %ebp
4bf7be:	c2 08 00             	ret    $0x8
4bf7c1:	8d 40 00             	lea    0x0(%eax),%eax
4bf7c4:	55                   	push   %ebp
4bf7c5:	8b ec                	mov    %esp,%ebp
4bf7c7:	83 c4 c8             	add    $0xffffffc8,%esp
4bf7ca:	53                   	push   %ebx
4bf7cb:	56                   	push   %esi
4bf7cc:	57                   	push   %edi
4bf7cd:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4bf7d0:	8b fa                	mov    %edx,%edi
4bf7d2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4bf7d5:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4bf7d8:	8b 1b                	mov    (%ebx),%ebx
4bf7da:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bf7dd:	03 58 08             	add    0x8(%eax),%ebx
4bf7e0:	d1 fb                	sar    $1,%ebx
4bf7e2:	79 03                	jns    0x4bf7e7
4bf7e4:	83 d3 00             	adc    $0x0,%ebx
4bf7e7:	8b 75 f8             	mov    -0x8(%ebp),%esi
4bf7ea:	8b 76 04             	mov    0x4(%esi),%esi
4bf7ed:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bf7f0:	03 70 0c             	add    0xc(%eax),%esi
4bf7f3:	d1 fe                	sar    $1,%esi
4bf7f5:	79 03                	jns    0x4bf7fa
4bf7f7:	83 d6 00             	adc    $0x0,%esi
4bf7fa:	4e                   	dec    %esi
4bf7fb:	8b 55 08             	mov    0x8(%ebp),%edx
4bf7fe:	b1 01                	mov    $0x1,%cl
4bf800:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf803:	e8 e4 ed ff ff       	call   0x4be5ec
4bf808:	8b d0                	mov    %eax,%edx
4bf80a:	8b 47 10             	mov    0x10(%edi),%eax
4bf80d:	e8 72 87 f6 ff       	call   0x427f84
4bf812:	8b 47 10             	mov    0x10(%edi),%eax
4bf815:	e8 62 87 f6 ff       	call   0x427f7c
4bf81a:	8b d0                	mov    %eax,%edx
4bf81c:	8b 47 14             	mov    0x14(%edi),%eax
4bf81f:	e8 60 8a f6 ff       	call   0x428284
4bf824:	8b 45 08             	mov    0x8(%ebp),%eax
4bf827:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
4bf82b:	74 60                	je     0x4bf88d
4bf82d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4bf830:	8d 56 02             	lea    0x2(%esi),%edx
4bf833:	8b c3                	mov    %ebx,%eax
4bf835:	e8 12 ae f5 ff       	call   0x41a64c
4bf83a:	8b 45 d8             	mov    -0x28(%ebp),%eax
4bf83d:	89 45 e0             	mov    %eax,-0x20(%ebp)
4bf840:	8b 45 dc             	mov    -0x24(%ebp),%eax
4bf843:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4bf846:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4bf849:	8b d6                	mov    %esi,%edx
4bf84b:	83 ea 02             	sub    $0x2,%edx
4bf84e:	8b c3                	mov    %ebx,%eax
4bf850:	e8 f7 ad f5 ff       	call   0x41a64c
4bf855:	8b 45 d0             	mov    -0x30(%ebp),%eax
4bf858:	89 45 e8             	mov    %eax,-0x18(%ebp)
4bf85b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4bf85e:	89 45 ec             	mov    %eax,-0x14(%ebp)
4bf861:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4bf864:	8b c3                	mov    %ebx,%eax
4bf866:	83 e8 02             	sub    $0x2,%eax
4bf869:	8b d6                	mov    %esi,%edx
4bf86b:	e8 dc ad f5 ff       	call   0x41a64c
4bf870:	8b 45 c8             	mov    -0x38(%ebp),%eax
4bf873:	89 45 f0             	mov    %eax,-0x10(%ebp)
4bf876:	8b 45 cc             	mov    -0x34(%ebp),%eax
4bf879:	89 45 f4             	mov    %eax,-0xc(%ebp)
4bf87c:	8d 55 e0             	lea    -0x20(%ebp),%edx
4bf87f:	b9 02 00 00 00       	mov    $0x2,%ecx
4bf884:	8b c7                	mov    %edi,%eax
4bf886:	e8 75 8f f6 ff       	call   0x428800
4bf88b:	eb 5c                	jmp    0x4bf8e9
4bf88d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4bf890:	8b c3                	mov    %ebx,%eax
4bf892:	83 e8 02             	sub    $0x2,%eax
4bf895:	8b d6                	mov    %esi,%edx
4bf897:	e8 b0 ad f5 ff       	call   0x41a64c
4bf89c:	8b 45 d8             	mov    -0x28(%ebp),%eax
4bf89f:	89 45 e0             	mov    %eax,-0x20(%ebp)
4bf8a2:	8b 45 dc             	mov    -0x24(%ebp),%eax
4bf8a5:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4bf8a8:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4bf8ab:	8d 43 02             	lea    0x2(%ebx),%eax
4bf8ae:	8b d6                	mov    %esi,%edx
4bf8b0:	e8 97 ad f5 ff       	call   0x41a64c
4bf8b5:	8b 45 d0             	mov    -0x30(%ebp),%eax
4bf8b8:	89 45 e8             	mov    %eax,-0x18(%ebp)
4bf8bb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4bf8be:	89 45 ec             	mov    %eax,-0x14(%ebp)
4bf8c1:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4bf8c4:	8d 56 02             	lea    0x2(%esi),%edx
4bf8c7:	8b c3                	mov    %ebx,%eax
4bf8c9:	e8 7e ad f5 ff       	call   0x41a64c
4bf8ce:	8b 45 c8             	mov    -0x38(%ebp),%eax
4bf8d1:	89 45 f0             	mov    %eax,-0x10(%ebp)
4bf8d4:	8b 45 cc             	mov    -0x34(%ebp),%eax
4bf8d7:	89 45 f4             	mov    %eax,-0xc(%ebp)
4bf8da:	8d 55 e0             	lea    -0x20(%ebp),%edx
4bf8dd:	b9 02 00 00 00       	mov    $0x2,%ecx
4bf8e2:	8b c7                	mov    %edi,%eax
4bf8e4:	e8 17 8f f6 ff       	call   0x428800
4bf8e9:	5f                   	pop    %edi
4bf8ea:	5e                   	pop    %esi
4bf8eb:	5b                   	pop    %ebx
4bf8ec:	8b e5                	mov    %ebp,%esp
4bf8ee:	5d                   	pop    %ebp
4bf8ef:	c2 04 00             	ret    $0x4
4bf8f2:	8b c0                	mov    %eax,%eax
4bf8f4:	55                   	push   %ebp
4bf8f5:	8b ec                	mov    %esp,%ebp
4bf8f7:	83 c4 d8             	add    $0xffffffd8,%esp
4bf8fa:	53                   	push   %ebx
4bf8fb:	56                   	push   %esi
4bf8fc:	57                   	push   %edi
4bf8fd:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4bf900:	8b f2                	mov    %edx,%esi
4bf902:	8b f8                	mov    %eax,%edi
4bf904:	8b 5d 08             	mov    0x8(%ebp),%ebx
4bf907:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bf90a:	56                   	push   %esi
4bf90b:	57                   	push   %edi
4bf90c:	8b f0                	mov    %eax,%esi
4bf90e:	8d 7d eb             	lea    -0x15(%ebp),%edi
4bf911:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf912:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf913:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf914:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bf915:	5f                   	pop    %edi
4bf916:	5e                   	pop    %esi
4bf917:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4bf91b:	74 06                	je     0x4bf923
4bf91d:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4bf921:	75 10                	jne    0x4bf933
4bf923:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4bf927:	75 06                	jne    0x4bf92f
4bf929:	80 7b 0a 01          	cmpb   $0x1,0xa(%ebx)
4bf92d:	74 04                	je     0x4bf933
4bf92f:	33 c0                	xor    %eax,%eax
4bf931:	eb 02                	jmp    0x4bf935
4bf933:	b0 01                	mov    $0x1,%al
4bf935:	88 45 fb             	mov    %al,-0x5(%ebp)
4bf938:	8a 43 19             	mov    0x19(%ebx),%al
4bf93b:	3c 02                	cmp    $0x2,%al
4bf93d:	75 09                	jne    0x4bf948
4bf93f:	80 7b 1a 00          	cmpb   $0x0,0x1a(%ebx)
4bf943:	74 03                	je     0x4bf948
4bf945:	ff 45 f3             	incl   -0xd(%ebp)
4bf948:	3c 03                	cmp    $0x3,%al
4bf94a:	75 03                	jne    0x4bf94f
4bf94c:	ff 4d eb             	decl   -0x15(%ebp)
4bf94f:	8b 03                	mov    (%ebx),%eax
4bf951:	25 02 10 00 00       	and    $0x1002,%eax
4bf956:	3d 02 10 00 00       	cmp    $0x1002,%eax
4bf95b:	0f 85 93 00 00 00    	jne    0x4bf9f4
4bf961:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4bf965:	0f 84 89 00 00 00    	je     0x4bf9f4
4bf96b:	8a 43 09             	mov    0x9(%ebx),%al
4bf96e:	84 c0                	test   %al,%al
4bf970:	75 06                	jne    0x4bf978
4bf972:	80 7b 0b 00          	cmpb   $0x0,0xb(%ebx)
4bf976:	74 06                	je     0x4bf97e
4bf978:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4bf97c:	75 06                	jne    0x4bf984
4bf97e:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
4bf982:	74 57                	je     0x4bf9db
4bf984:	84 c0                	test   %al,%al
4bf986:	74 34                	je     0x4bf9bc
4bf988:	80 3d 75 b2 6a 00 00 	cmpb   $0x0,0x6ab275
4bf98f:	74 17                	je     0x4bf9a8
4bf991:	8b c6                	mov    %esi,%eax
4bf993:	e8 28 93 f6 ff       	call   0x428cc0
4bf998:	8d 55 eb             	lea    -0x15(%ebp),%edx
4bf99b:	8b 0d 78 b2 6a 00    	mov    0x6ab278,%ecx
4bf9a1:	e8 3e 94 fc ff       	call   0x488de4
4bf9a6:	eb 33                	jmp    0x4bf9db
4bf9a8:	8b c6                	mov    %esi,%eax