424682:	8b c7                	mov    %edi,%eax
424684:	84 db                	test   %bl,%bl
424686:	74 0f                	je     0x424697
424688:	e8 a7 f7 fd ff       	call   0x403e34
42468d:	64 8f 05 00 00 00 00 	pop    %fs:0x0
424694:	83 c4 0c             	add    $0xc,%esp
424697:	8b c7                	mov    %edi,%eax
424699:	5f                   	pop    %edi
42469a:	5e                   	pop    %esi
42469b:	5b                   	pop    %ebx
42469c:	c3                   	ret
42469d:	00 00                	add    %al,(%eax)
42469f:	00 01                	add    %al,(%ecx)
4246a1:	00 00                	add    %al,(%eax)
4246a3:	00 53 56             	add    %dl,0x56(%ebx)
4246a6:	51                   	push   %ecx
4246a7:	e8 98 f7 fd ff       	call   0x403e44
4246ac:	88 14 24             	mov    %dl,(%esp)
4246af:	8b d8                	mov    %eax,%ebx
4246b1:	8b c3                	mov    %ebx,%eax
4246b3:	e8 40 02 00 00       	call   0x4248f8
4246b8:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
4246bc:	74 2b                	je     0x4246e9
4246be:	eb 14                	jmp    0x4246d4
4246c0:	8b 56 08             	mov    0x8(%esi),%edx
4246c3:	4a                   	dec    %edx
4246c4:	8b c6                	mov    %esi,%eax
4246c6:	e8 f5 76 ff ff       	call   0x41bdc0
4246cb:	b1 01                	mov    $0x1,%cl
4246cd:	8b d3                	mov    %ebx,%edx
4246cf:	8b 30                	mov    (%eax),%esi
4246d1:	ff 56 10             	call   *0x10(%esi)
4246d4:	8b 73 14             	mov    0x14(%ebx),%esi
4246d7:	85 f6                	test   %esi,%esi
4246d9:	74 06                	je     0x4246e1
4246db:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4246df:	7f df                	jg     0x4246c0
4246e1:	8d 43 14             	lea    0x14(%ebx),%eax
4246e4:	e8 73 a3 fe ff       	call   0x40ea5c
4246e9:	8b c3                	mov    %ebx,%eax
4246eb:	e8 b0 01 00 00       	call   0x4248a0
4246f0:	8b 43 04             	mov    0x4(%ebx),%eax
4246f3:	85 c0                	test   %eax,%eax
4246f5:	74 07                	je     0x4246fe
4246f7:	8b d3                	mov    %ebx,%edx
4246f9:	e8 6a 01 00 00       	call   0x424868
4246fe:	8a 14 24             	mov    (%esp),%dl
424701:	80 e2 fc             	and    $0xfc,%dl
424704:	8b c3                	mov    %ebx,%eax
424706:	e8 11 80 ff ff       	call   0x41c71c
42470b:	80 3c 24 00          	cmpb   $0x0,(%esp)
42470f:	7e 07                	jle    0x424718
424711:	8b c3                	mov    %ebx,%eax
424713:	e8 14 f7 fd ff       	call   0x403e2c
424718:	5a                   	pop    %edx
424719:	5e                   	pop    %esi
42471a:	5b                   	pop    %ebx
42471b:	c3                   	ret
42471c:	f6 40 1c 08          	testb  $0x8,0x1c(%eax)
424720:	75 05                	jne    0x424727
424722:	e8 d1 01 00 00       	call   0x4248f8
424727:	c3                   	ret
424728:	53                   	push   %ebx
424729:	56                   	push   %esi
42472a:	8b f2                	mov    %edx,%esi
42472c:	8b d8                	mov    %eax,%ebx
42472e:	8b 43 04             	mov    0x4(%ebx),%eax
424731:	85 c0                	test   %eax,%eax
424733:	74 05                	je     0x42473a
424735:	3b 46 04             	cmp    0x4(%esi),%eax
424738:	74 36                	je     0x424770
42473a:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
42473e:	75 0f                	jne    0x42474f
424740:	b2 01                	mov    $0x1,%dl
424742:	a1 24 94 41 00       	mov    0x419424,%eax
424747:	e8 fc f2 fd ff       	call   0x403a48
42474c:	89 43 14             	mov    %eax,0x14(%ebx)
42474f:	8b d6                	mov    %esi,%edx
424751:	8b 43 14             	mov    0x14(%ebx),%eax
424754:	e8 c3 76 ff ff       	call   0x41be1c
424759:	85 c0                	test   %eax,%eax
42475b:	7d 13                	jge    0x424770
42475d:	8b d6                	mov    %esi,%edx
42475f:	8b 43 14             	mov    0x14(%ebx),%eax
424762:	e8 ad 74 ff ff       	call   0x41bc14
424767:	8b d3                	mov    %ebx,%edx
424769:	8b c6                	mov    %esi,%eax
42476b:	e8 b8 ff ff ff       	call   0x424728
424770:	66 81 4b 1c 00 01    	orw    $0x100,0x1c(%ebx)
424776:	5e                   	pop    %esi
424777:	5b                   	pop    %ebx
424778:	c3                   	ret
424779:	8d 40 00             	lea    0x0(%eax),%eax
42477c:	53                   	push   %ebx
42477d:	56                   	push   %esi
42477e:	8b f2                	mov    %edx,%esi
424780:	8b d8                	mov    %eax,%ebx
424782:	8b c6                	mov    %esi,%eax
424784:	e8 43 bf ff ff       	call   0x4206cc
424789:	66 89 43 18          	mov    %ax,0x18(%ebx)
42478d:	5e                   	pop    %esi
42478e:	5b                   	pop    %ebx
42478f:	c3                   	ret
424790:	53                   	push   %ebx
424791:	56                   	push   %esi
424792:	8b f2                	mov    %edx,%esi
424794:	8b d8                	mov    %eax,%ebx
424796:	8b c6                	mov    %esi,%eax
424798:	e8 2f bf ff ff       	call   0x4206cc
42479d:	66 89 43 1a          	mov    %ax,0x1a(%ebx)
4247a1:	5e                   	pop    %esi
4247a2:	5b                   	pop    %ebx
4247a3:	c3                   	ret
4247a4:	0f b7 40 18          	movzwl 0x18(%eax),%eax
4247a8:	92                   	xchg   %eax,%edx
4247a9:	e8 d6 e0 ff ff       	call   0x422884
4247ae:	c3                   	ret
4247af:	90                   	nop
4247b0:	0f b7 40 1a          	movzwl 0x1a(%eax),%eax
4247b4:	92                   	xchg   %eax,%edx
4247b5:	e8 ca e0 ff ff       	call   0x422884
4247ba:	c3                   	ret
4247bb:	90                   	nop
4247bc:	53                   	push   %ebx
4247bd:	56                   	push   %esi
4247be:	8b f2                	mov    %edx,%esi
4247c0:	8b d8                	mov    %eax,%ebx
4247c2:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
4247c6:	75 0f                	jne    0x4247d7
4247c8:	b2 01                	mov    $0x1,%dl
4247ca:	a1 24 94 41 00       	mov    0x419424,%eax
4247cf:	e8 74 f2 fd ff       	call   0x403a48
4247d4:	89 43 10             	mov    %eax,0x10(%ebx)
4247d7:	8b d6                	mov    %esi,%edx
4247d9:	8b 43 10             	mov    0x10(%ebx),%eax
4247dc:	e8 33 74 ff ff       	call   0x41bc14
4247e1:	89 5e 04             	mov    %ebx,0x4(%esi)
4247e4:	5e                   	pop    %esi
4247e5:	5b                   	pop    %ebx
4247e6:	c3                   	ret
4247e7:	90                   	nop
4247e8:	53                   	push   %ebx
4247e9:	8b d8                	mov    %eax,%ebx
4247eb:	33 c0                	xor    %eax,%eax
4247ed:	89 42 04             	mov    %eax,0x4(%edx)
4247f0:	8b 43 10             	mov    0x10(%ebx),%eax
4247f3:	e8 68 77 ff ff       	call   0x41bf60
4247f8:	8b 43 10             	mov    0x10(%ebx),%eax
4247fb:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4247ff:	75 0a                	jne    0x42480b
424801:	e8 72 f2 fd ff       	call   0x403a78
424806:	33 c0                	xor    %eax,%eax
424808:	89 43 10             	mov    %eax,0x10(%ebx)
42480b:	5b                   	pop    %ebx
42480c:	c3                   	ret
42480d:	8d 40 00             	lea    0x0(%eax),%eax
424810:	53                   	push   %ebx
424811:	56                   	push   %esi
424812:	57                   	push   %edi
424813:	8b da                	mov    %edx,%ebx
424815:	8b f8                	mov    %eax,%edi
424817:	8b d7                	mov    %edi,%edx
424819:	8b c3                	mov    %ebx,%eax
42481b:	66 be f5 ff          	mov    $0xfff5,%si
42481f:	e8 50 f4 fd ff       	call   0x403c74
424824:	8b 43 08             	mov    0x8(%ebx),%eax
424827:	50                   	push   %eax
424828:	33 c9                	xor    %ecx,%ecx
42482a:	8b d3                	mov    %ebx,%edx
42482c:	8b c7                	mov    %edi,%eax
42482e:	8b 30                	mov    (%eax),%esi
424830:	ff 56 20             	call   *0x20(%esi)
424833:	8b d3                	mov    %ebx,%edx
424835:	8b c7                	mov    %edi,%eax
424837:	e8 80 ff ff ff       	call   0x4247bc
42483c:	b2 01                	mov    $0x1,%dl
42483e:	8b c3                	mov    %ebx,%eax
424840:	e8 eb 04 00 00       	call   0x424d30
424845:	f6 47 1c 10          	testb  $0x10,0x1c(%edi)
424849:	74 0b                	je     0x424856
42484b:	b1 01                	mov    $0x1,%cl
42484d:	b2 01                	mov    $0x1,%dl
42484f:	8b c3                	mov    %ebx,%eax
424851:	e8 8a 04 00 00       	call   0x424ce0
424856:	33 c9                	xor    %ecx,%ecx
424858:	8b d3                	mov    %ebx,%edx
42485a:	8b c7                	mov    %edi,%eax
42485c:	8b 18                	mov    (%eax),%ebx
42485e:	ff 53 10             	call   *0x10(%ebx)
424861:	5f                   	pop    %edi
424862:	5e                   	pop    %esi
424863:	5b                   	pop    %ebx
424864:	c3                   	ret
424865:	8d 40 00             	lea    0x0(%eax),%eax
424868:	53                   	push   %ebx
424869:	56                   	push   %esi
42486a:	57                   	push   %edi
42486b:	8b da                	mov    %edx,%ebx
42486d:	8b f0                	mov    %eax,%esi
42486f:	6a 00                	push   $0x0
424871:	8b 4b 08             	mov    0x8(%ebx),%ecx
424874:	8b d3                	mov    %ebx,%edx
424876:	8b c6                	mov    %esi,%eax
424878:	8b 38                	mov    (%eax),%edi
42487a:	ff 57 20             	call   *0x20(%edi)
42487d:	b1 01                	mov    $0x1,%cl
42487f:	8b d3                	mov    %ebx,%edx
424881:	8b c6                	mov    %esi,%eax
424883:	8b 38                	mov    (%eax),%edi
424885:	ff 57 10             	call   *0x10(%edi)
424888:	33 d2                	xor    %edx,%edx
42488a:	8b c3                	mov    %ebx,%eax
42488c:	e8 9f 04 00 00       	call   0x424d30
424891:	8b d3                	mov    %ebx,%edx
424893:	8b c6                	mov    %esi,%eax
424895:	e8 4e ff ff ff       	call   0x4247e8
42489a:	5f                   	pop    %edi
42489b:	5e                   	pop    %esi
42489c:	5b                   	pop    %ebx
42489d:	c3                   	ret
42489e:	8b c0                	mov    %eax,%eax
4248a0:	53                   	push   %ebx
4248a1:	56                   	push   %esi
4248a2:	57                   	push   %edi
4248a3:	8b f0                	mov    %eax,%esi
4248a5:	eb 42                	jmp    0x4248e9
4248a7:	8b c3                	mov    %ebx,%eax
4248a9:	e8 fa 75 ff ff       	call   0x41bea8
4248ae:	8b f8                	mov    %eax,%edi
4248b0:	f6 47 1d 01          	testb  $0x1,0x1d(%edi)
4248b4:	75 16                	jne    0x4248cc
4248b6:	66 a1 f4 48 42 00    	mov    0x4248f4,%ax
4248bc:	66 23 46 1c          	and    0x1c(%esi),%ax
4248c0:	66 8b 15 f4 48 42 00 	mov    0x4248f4,%dx
4248c7:	66 3b d0             	cmp    %ax,%dx
4248ca:	75 0b                	jne    0x4248d7
4248cc:	8b d7                	mov    %edi,%edx
4248ce:	8b c6                	mov    %esi,%eax
4248d0:	e8 93 ff ff ff       	call   0x424868
4248d5:	eb 09                	jmp    0x4248e0
4248d7:	8b d7                	mov    %edi,%edx
4248d9:	8b c6                	mov    %esi,%eax
4248db:	e8 08 ff ff ff       	call   0x4247e8
4248e0:	b2 01                	mov    $0x1,%dl
4248e2:	8b c7                	mov    %edi,%eax
4248e4:	8b 08                	mov    (%eax),%ecx
4248e6:	ff 51 fc             	call   *-0x4(%ecx)
4248e9:	8b 5e 10             	mov    0x10(%esi),%ebx
4248ec:	85 db                	test   %ebx,%ebx
4248ee:	75 b7                	jne    0x4248a7
4248f0:	5f                   	pop    %edi
4248f1:	5e                   	pop    %esi
4248f2:	5b                   	pop    %ebx
4248f3:	c3                   	ret
4248f4:	10 02                	adc    %al,(%edx)
4248f6:	00 00                	add    %al,(%eax)
4248f8:	53                   	push   %ebx
4248f9:	56                   	push   %esi
4248fa:	57                   	push   %edi
4248fb:	8b d8                	mov    %eax,%ebx
4248fd:	f6 43 1c 08          	testb  $0x8,0x1c(%ebx)
424901:	75 2a                	jne    0x42492d
424903:	66 83 4b 1c 08       	orw    $0x8,0x1c(%ebx)
424908:	8b 43 10             	mov    0x10(%ebx),%eax
42490b:	85 c0                	test   %eax,%eax
42490d:	74 1e                	je     0x42492d
42490f:	8b 70 08             	mov    0x8(%eax),%esi
424912:	4e                   	dec    %esi
424913:	85 f6                	test   %esi,%esi
424915:	7c 16                	jl     0x42492d
424917:	46                   	inc    %esi
424918:	33 ff                	xor    %edi,%edi
42491a:	8b d7                	mov    %edi,%edx
42491c:	8b 43 10             	mov    0x10(%ebx),%eax
42491f:	e8 9c 74 ff ff       	call   0x41bdc0
424924:	e8 cf ff ff ff       	call   0x4248f8
424929:	47                   	inc    %edi
42492a:	4e                   	dec    %esi
42492b:	75 ed                	jne    0x42491a
42492d:	5f                   	pop    %edi
42492e:	5e                   	pop    %esi
42492f:	5b                   	pop    %ebx
424930:	c3                   	ret
424931:	8d 40 00             	lea    0x0(%eax),%eax
424934:	53                   	push   %ebx
424935:	8b d8                	mov    %eax,%ebx
424937:	8b 43 14             	mov    0x14(%ebx),%eax
42493a:	85 c0                	test   %eax,%eax
42493c:	74 18                	je     0x424956
42493e:	e8 1d 76 ff ff       	call   0x41bf60
424943:	8b 43 14             	mov    0x14(%ebx),%eax
424946:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
42494a:	75 0a                	jne    0x424956
42494c:	e8 27 f1 fd ff       	call   0x403a78
424951:	33 c0                	xor    %eax,%eax
424953:	89 43 14             	mov    %eax,0x14(%ebx)
424956:	5b                   	pop    %ebx
424957:	c3                   	ret
424958:	53                   	push   %ebx
424959:	56                   	push   %esi
42495a:	8b f2                	mov    %edx,%esi
42495c:	8b d8                	mov    %eax,%ebx
42495e:	8b d6                	mov    %esi,%edx
424960:	8b c3                	mov    %ebx,%eax
424962:	e8 cd ff ff ff       	call   0x424934
424967:	8b d3                	mov    %ebx,%edx
424969:	8b c6                	mov    %esi,%eax
42496b:	e8 c4 ff ff ff       	call   0x424934
424970:	5e                   	pop    %esi
424971:	5b                   	pop    %ebx
424972:	c3                   	ret
424973:	90                   	nop
424974:	53                   	push   %ebx
424975:	56                   	push   %esi
424976:	57                   	push   %edi
424977:	55                   	push   %ebp
424978:	51                   	push   %ecx
424979:	88 0c 24             	mov    %cl,(%esp)
42497c:	8b fa                	mov    %edx,%edi
42497e:	8b f0                	mov    %eax,%esi
424980:	80 3c 24 01          	cmpb   $0x1,(%esp)
424984:	75 0d                	jne    0x424993
424986:	85 ff                	test   %edi,%edi
424988:	74 09                	je     0x424993
42498a:	8b d7                	mov    %edi,%edx
42498c:	8b c6                	mov    %esi,%eax
42498e:	e8 c5 ff ff ff       	call   0x424958
424993:	8b 46 10             	mov    0x10(%esi),%eax
424996:	85 c0                	test   %eax,%eax
424998:	74 2e                	je     0x4249c8
42499a:	8b 58 08             	mov    0x8(%eax),%ebx
42499d:	4b                   	dec    %ebx
42499e:	85 db                	test   %ebx,%ebx
4249a0:	7c 26                	jl     0x4249c8
4249a2:	8b d3                	mov    %ebx,%edx
4249a4:	8b 46 10             	mov    0x10(%esi),%eax
4249a7:	e8 14 74 ff ff       	call   0x41bdc0
4249ac:	8a 0c 24             	mov    (%esp),%cl
4249af:	8b d7                	mov    %edi,%edx
4249b1:	8b 28                	mov    (%eax),%ebp
4249b3:	ff 55 10             	call   *0x10(%ebp)
4249b6:	4b                   	dec    %ebx
4249b7:	8b 46 10             	mov    0x10(%esi),%eax
4249ba:	8b 40 08             	mov    0x8(%eax),%eax
4249bd:	3b d8                	cmp    %eax,%ebx
4249bf:	7c 03                	jl     0x4249c4
4249c1:	8b d8                	mov    %eax,%ebx
4249c3:	4b                   	dec    %ebx
4249c4:	85 db                	test   %ebx,%ebx
4249c6:	7d da                	jge    0x4249a2