4247d4:	56                   	push   %esi
4247d5:	ff 75 1c             	push   0x1c(%ebp)
4247d8:	e8 86 bf ff ff       	call   0x420763
4247dd:	ff 75 20             	push   0x20(%ebp)
4247e0:	8d 45 d8             	lea    -0x28(%ebp),%eax
4247e3:	50                   	push   %eax
4247e4:	ff 75 18             	push   0x18(%ebp)
4247e7:	ff 75 14             	push   0x14(%ebp)
4247ea:	ff 75 10             	push   0x10(%ebp)
4247ed:	ff 75 0c             	push   0xc(%ebp)
4247f0:	ff 75 08             	push   0x8(%ebp)
4247f3:	e8 ed c7 ff ff       	call   0x420fe5
4247f8:	83 c4 1c             	add    $0x1c,%esp
4247fb:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4247fe:	8b f0                	mov    %eax,%esi
424800:	e8 a6 bf ff ff       	call   0x4207ab
424805:	8b c6                	mov    %esi,%eax
424807:	5e                   	pop    %esi
424808:	c9                   	leave
424809:	c3                   	ret
42480a:	8b ff                	mov    %edi,%edi
42480c:	55                   	push   %ebp
42480d:	8b ec                	mov    %esp,%ebp
42480f:	83 ec 28             	sub    $0x28,%esp
424812:	8d 4d d8             	lea    -0x28(%ebp),%ecx
424815:	56                   	push   %esi
424816:	ff 75 1c             	push   0x1c(%ebp)
424819:	e8 45 bf ff ff       	call   0x420763
42481e:	ff 75 20             	push   0x20(%ebp)
424821:	8d 45 d8             	lea    -0x28(%ebp),%eax
424824:	50                   	push   %eax
424825:	ff 75 18             	push   0x18(%ebp)
424828:	ff 75 14             	push   0x14(%ebp)
42482b:	ff 75 10             	push   0x10(%ebp)
42482e:	ff 75 0c             	push   0xc(%ebp)
424831:	ff 75 08             	push   0x8(%ebp)
424834:	e8 4b c8 ff ff       	call   0x421084
424839:	83 c4 1c             	add    $0x1c,%esp
42483c:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42483f:	8b f0                	mov    %eax,%esi
424841:	e8 65 bf ff ff       	call   0x4207ab
424846:	8b c6                	mov    %esi,%eax
424848:	5e                   	pop    %esi
424849:	c9                   	leave
42484a:	c3                   	ret
42484b:	8b ff                	mov    %edi,%edi
42484d:	55                   	push   %ebp
42484e:	8b ec                	mov    %esp,%ebp
424850:	83 ec 14             	sub    $0x14,%esp
424853:	56                   	push   %esi
424854:	8b 75 08             	mov    0x8(%ebp),%esi
424857:	85 f6                	test   %esi,%esi
424859:	75 13                	jne    0x42486e
42485b:	e8 e0 1d 00 00       	call   0x426640
424860:	6a 16                	push   $0x16
424862:	5e                   	pop    %esi
424863:	89 30                	mov    %esi,(%eax)
424865:	e8 05 c2 ff ff       	call   0x420a6f
42486a:	8b c6                	mov    %esi,%eax
42486c:	eb 53                	jmp    0x4248c1
42486e:	57                   	push   %edi
42486f:	6a 09                	push   $0x9
424871:	83 c8 ff             	or     $0xffffffff,%eax
424874:	8b fe                	mov    %esi,%edi
424876:	59                   	pop    %ecx
424877:	f3 ab                	rep stos %eax,%es:(%edi)
424879:	8b 7d 0c             	mov    0xc(%ebp),%edi
42487c:	85 ff                	test   %edi,%edi
42487e:	75 13                	jne    0x424893
424880:	e8 bb 1d 00 00       	call   0x426640
424885:	6a 16                	push   $0x16
424887:	5e                   	pop    %esi
424888:	89 30                	mov    %esi,(%eax)
42488a:	e8 e0 c1 ff ff       	call   0x420a6f
42488f:	8b c6                	mov    %esi,%eax
424891:	eb 2d                	jmp    0x4248c0
424893:	53                   	push   %ebx
424894:	33 db                	xor    %ebx,%ebx
424896:	39 5f 04             	cmp    %ebx,0x4(%edi)
424899:	7f 06                	jg     0x4248a1
42489b:	7c 16                	jl     0x4248b3
42489d:	39 1f                	cmp    %ebx,(%edi)
42489f:	72 12                	jb     0x4248b3
4248a1:	6a 07                	push   $0x7
4248a3:	58                   	pop    %eax
4248a4:	39 47 04             	cmp    %eax,0x4(%edi)
4248a7:	7c 1b                	jl     0x4248c4
4248a9:	7f 08                	jg     0x4248b3
4248ab:	81 3f ff 2a 58 93    	cmpl   $0x93582aff,(%edi)
4248b1:	76 11                	jbe    0x4248c4
4248b3:	e8 88 1d 00 00       	call   0x426640
4248b8:	6a 16                	push   $0x16
4248ba:	5e                   	pop    %esi
4248bb:	89 30                	mov    %esi,(%eax)
4248bd:	8b c6                	mov    %esi,%eax
4248bf:	5b                   	pop    %ebx
4248c0:	5f                   	pop    %edi
4248c1:	5e                   	pop    %esi
4248c2:	c9                   	leave
4248c3:	c3                   	ret
4248c4:	e8 fc 96 00 00       	call   0x42dfc5
4248c9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4248cc:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4248cf:	50                   	push   %eax
4248d0:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4248d3:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4248d6:	e8 68 8d 00 00       	call   0x42d643
4248db:	59                   	pop    %ecx
4248dc:	85 c0                	test   %eax,%eax
4248de:	0f 85 ed 01 00 00    	jne    0x424ad1
4248e4:	8d 45 f4             	lea    -0xc(%ebp),%eax
4248e7:	50                   	push   %eax
4248e8:	e8 82 8d 00 00       	call   0x42d66f
4248ed:	59                   	pop    %ecx
4248ee:	85 c0                	test   %eax,%eax
4248f0:	0f 85 db 01 00 00    	jne    0x424ad1
4248f6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4248f9:	50                   	push   %eax
4248fa:	e8 9c 8d 00 00       	call   0x42d69b
4248ff:	59                   	pop    %ecx
424900:	85 c0                	test   %eax,%eax
424902:	0f 85 c9 01 00 00    	jne    0x424ad1
424908:	8b 0f                	mov    (%edi),%ecx
42490a:	8b d1                	mov    %ecx,%edx
42490c:	8b 5f 04             	mov    0x4(%edi),%ebx
42490f:	81 c2 7f 0b fc ff    	add    $0xfffc0b7f,%edx
424915:	8b c3                	mov    %ebx,%eax
424917:	83 d0 ff             	adc    $0xffffffff,%eax
42491a:	83 f8 07             	cmp    $0x7,%eax
42491d:	77 6e                	ja     0x42498d
42491f:	72 08                	jb     0x424929
424921:	81 fa fd 41 50 93    	cmp    $0x935041fd,%edx
424927:	77 64                	ja     0x42498d
424929:	8b 45 fc             	mov    -0x4(%ebp),%eax
42492c:	99                   	cltd
42492d:	2b c8                	sub    %eax,%ecx
42492f:	8d 45 ec             	lea    -0x14(%ebp),%eax
424932:	50                   	push   %eax
424933:	1b da                	sbb    %edx,%ebx
424935:	89 4d ec             	mov    %ecx,-0x14(%ebp)
424938:	56                   	push   %esi
424939:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42493c:	e8 25 3b 00 00       	call   0x428466
424941:	59                   	pop    %ecx
424942:	59                   	pop    %ecx
424943:	85 c0                	test   %eax,%eax
424945:	0f 85 74 ff ff ff    	jne    0x4248bf
42494b:	39 45 f8             	cmp    %eax,-0x8(%ebp)
42494e:	0f 84 76 01 00 00    	je     0x424aca
424954:	56                   	push   %esi
424955:	e8 c8 96 00 00       	call   0x42e022
42495a:	59                   	pop    %ecx
42495b:	85 c0                	test   %eax,%eax
42495d:	0f 84 67 01 00 00    	je     0x424aca
424963:	8b 45 f4             	mov    -0xc(%ebp),%eax
424966:	99                   	cltd
424967:	29 45 ec             	sub    %eax,-0x14(%ebp)
42496a:	8d 45 ec             	lea    -0x14(%ebp),%eax
42496d:	50                   	push   %eax
42496e:	19 55 f0             	sbb    %edx,-0x10(%ebp)
424971:	56                   	push   %esi
424972:	e8 ef 3a 00 00       	call   0x428466
424977:	59                   	pop    %ecx
424978:	59                   	pop    %ecx
424979:	85 c0                	test   %eax,%eax
42497b:	0f 85 3e ff ff ff    	jne    0x4248bf
424981:	c7 46 20 01 00 00 00 	movl   $0x1,0x20(%esi)
424988:	e9 3d 01 00 00       	jmp    0x424aca
42498d:	57                   	push   %edi
42498e:	56                   	push   %esi
42498f:	e8 d2 3a 00 00       	call   0x428466
424994:	59                   	pop    %ecx
424995:	59                   	pop    %ecx
424996:	85 c0                	test   %eax,%eax
424998:	0f 85 21 ff ff ff    	jne    0x4248bf
42499e:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4249a2:	8b 06                	mov    (%esi),%eax
4249a4:	99                   	cltd
4249a5:	8b f8                	mov    %eax,%edi
4249a7:	8b da                	mov    %edx,%ebx
4249a9:	74 1a                	je     0x4249c5
4249ab:	56                   	push   %esi
4249ac:	e8 71 96 00 00       	call   0x42e022
4249b1:	59                   	pop    %ecx
4249b2:	85 c0                	test   %eax,%eax
4249b4:	74 0f                	je     0x4249c5
4249b6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4249b9:	03 45 f4             	add    -0xc(%ebp),%eax
4249bc:	c7 46 20 01 00 00 00 	movl   $0x1,0x20(%esi)
4249c3:	eb 03                	jmp    0x4249c8
4249c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4249c8:	99                   	cltd
4249c9:	2b f8                	sub    %eax,%edi
4249cb:	6a 00                	push   $0x0
4249cd:	6a 3c                	push   $0x3c
4249cf:	1b da                	sbb    %edx,%ebx
4249d1:	53                   	push   %ebx
4249d2:	57                   	push   %edi
4249d3:	e8 68 78 01 00       	call   0x43c240
4249d8:	89 06                	mov    %eax,(%esi)
4249da:	85 c0                	test   %eax,%eax
4249dc:	79 0b                	jns    0x4249e9
4249de:	83 c0 3c             	add    $0x3c,%eax
4249e1:	83 c7 c4             	add    $0xffffffc4,%edi
4249e4:	89 06                	mov    %eax,(%esi)
4249e6:	83 d3 ff             	adc    $0xffffffff,%ebx
4249e9:	6a 00                	push   $0x0
4249eb:	6a 3c                	push   $0x3c
4249ed:	53                   	push   %ebx
4249ee:	57                   	push   %edi
4249ef:	e8 9c 77 01 00       	call   0x43c190
4249f4:	8b f8                	mov    %eax,%edi
4249f6:	8b da                	mov    %edx,%ebx
4249f8:	8b 46 04             	mov    0x4(%esi),%eax
4249fb:	99                   	cltd
4249fc:	03 f8                	add    %eax,%edi
4249fe:	6a 00                	push   $0x0
424a00:	6a 3c                	push   $0x3c
424a02:	13 da                	adc    %edx,%ebx
424a04:	53                   	push   %ebx
424a05:	57                   	push   %edi
424a06:	e8 35 78 01 00       	call   0x43c240
424a0b:	89 46 04             	mov    %eax,0x4(%esi)
424a0e:	85 c0                	test   %eax,%eax
424a10:	79 0c                	jns    0x424a1e
424a12:	83 c0 3c             	add    $0x3c,%eax
424a15:	83 c7 c4             	add    $0xffffffc4,%edi
424a18:	89 46 04             	mov    %eax,0x4(%esi)
424a1b:	83 d3 ff             	adc    $0xffffffff,%ebx
424a1e:	6a 00                	push   $0x0
424a20:	6a 3c                	push   $0x3c
424a22:	53                   	push   %ebx
424a23:	57                   	push   %edi
424a24:	e8 67 77 01 00       	call   0x43c190
424a29:	8b f8                	mov    %eax,%edi
424a2b:	8b da                	mov    %edx,%ebx
424a2d:	8b 46 08             	mov    0x8(%esi),%eax
424a30:	99                   	cltd
424a31:	03 f8                	add    %eax,%edi
424a33:	6a 00                	push   $0x0
424a35:	6a 18                	push   $0x18
424a37:	13 da                	adc    %edx,%ebx
424a39:	53                   	push   %ebx
424a3a:	57                   	push   %edi
424a3b:	e8 00 78 01 00       	call   0x43c240
424a40:	89 46 08             	mov    %eax,0x8(%esi)
424a43:	85 c0                	test   %eax,%eax
424a45:	79 0c                	jns    0x424a53
424a47:	83 c0 18             	add    $0x18,%eax
424a4a:	83 c7 e8             	add    $0xffffffe8,%edi
424a4d:	89 46 08             	mov    %eax,0x8(%esi)
424a50:	83 d3 ff             	adc    $0xffffffff,%ebx
424a53:	6a 00                	push   $0x0
424a55:	6a 18                	push   $0x18
424a57:	53                   	push   %ebx
424a58:	57                   	push   %edi
424a59:	e8 32 77 01 00       	call   0x43c190
424a5e:	8b c8                	mov    %eax,%ecx
424a60:	85 d2                	test   %edx,%edx
424a62:	7c 26                	jl     0x424a8a
424a64:	7f 04                	jg     0x424a6a
424a66:	85 c9                	test   %ecx,%ecx
424a68:	74 16                	je     0x424a80
424a6a:	8b 46 18             	mov    0x18(%esi),%eax
424a6d:	03 c1                	add    %ecx,%eax
424a6f:	01 4e 0c             	add    %ecx,0xc(%esi)
424a72:	6a 07                	push   $0x7
424a74:	99                   	cltd
424a75:	5b                   	pop    %ebx
424a76:	f7 fb                	idiv   %ebx
424a78:	01 4e 1c             	add    %ecx,0x1c(%esi)
424a7b:	89 56 18             	mov    %edx,0x18(%esi)
424a7e:	eb 4a                	jmp    0x424aca
424a80:	85 d2                	test   %edx,%edx
424a82:	7f 46                	jg     0x424aca
424a84:	7c 04                	jl     0x424a8a
424a86:	85 c9                	test   %ecx,%ecx
424a88:	73 40                	jae    0x424aca
424a8a:	8b 46 18             	mov    0x18(%esi),%eax
424a8d:	83 c0 07             	add    $0x7,%eax
424a90:	03 c1                	add    %ecx,%eax
424a92:	99                   	cltd
424a93:	6a 07                	push   $0x7
424a95:	5b                   	pop    %ebx
424a96:	f7 fb                	idiv   %ebx
424a98:	8b 46 0c             	mov    0xc(%esi),%eax
424a9b:	89 56 18             	mov    %edx,0x18(%esi)
424a9e:	03 c1                	add    %ecx,%eax
424aa0:	8b 56 1c             	mov    0x1c(%esi),%edx
424aa3:	03 d1                	add    %ecx,%edx
424aa5:	89 46 0c             	mov    %eax,0xc(%esi)
424aa8:	85 c0                	test   %eax,%eax
424aaa:	7f 1b                	jg     0x424ac7
424aac:	83 c0 1f             	add    $0x1f,%eax
424aaf:	c7 46 10 0b 00 00 00 	movl   $0xb,0x10(%esi)
424ab6:	ff 4e 14             	decl   0x14(%esi)
424ab9:	89 46 0c             	mov    %eax,0xc(%esi)
424abc:	8d 82 6d 01 00 00    	lea    0x16d(%edx),%eax
424ac2:	89 46 1c             	mov    %eax,0x1c(%esi)
424ac5:	eb 03                	jmp    0x424aca
424ac7:	89 56 1c             	mov    %edx,0x1c(%esi)
424aca:	33 c0                	xor    %eax,%eax
424acc:	e9 ee fd ff ff       	jmp    0x4248bf
424ad1:	53                   	push   %ebx
424ad2:	53                   	push   %ebx
424ad3:	53                   	push   %ebx
424ad4:	53                   	push   %ebx
424ad5:	53                   	push   %ebx
424ad6:	e8 c1 bf ff ff       	call   0x420a9c
424adb:	cc                   	int3
424adc:	8b ff                	mov    %edi,%edi
424ade:	55                   	push   %ebp
424adf:	8b ec                	mov    %esp,%ebp
424ae1:	5d                   	pop    %ebp
424ae2:	e9 64 fd ff ff       	jmp    0x42484b
424ae7:	6a 10                	push   $0x10
424ae9:	68 a8 22 45 00       	push   $0x4522a8
424aee:	e8 dd 7d ff ff       	call   0x41c8d0
424af3:	8b 75 08             	mov    0x8(%ebp),%esi
424af6:	85 f6                	test   %esi,%esi
424af8:	75 14                	jne    0x424b0e
424afa:	e8 41 1b 00 00       	call   0x426640
424aff:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
424b05:	e8 65 bf ff ff       	call   0x420a6f
424b0a:	33 c0                	xor    %eax,%eax
424b0c:	eb 65                	jmp    0x424b73
424b0e:	8b 7d 0c             	mov    0xc(%ebp),%edi
424b11:	85 ff                	test   %edi,%edi
424b13:	74 e5                	je     0x424afa
424b15:	33 db                	xor    %ebx,%ebx
424b17:	66 39 1f             	cmp    %bx,(%edi)
424b1a:	74 de                	je     0x424afa
424b1c:	66 39 1e             	cmp    %bx,(%esi)
424b1f:	75 0d                	jne    0x424b2e
424b21:	e8 1a 1b 00 00       	call   0x426640
424b26:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
424b2c:	eb dc                	jmp    0x424b0a
424b2e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
424b31:	50                   	push   %eax
424b32:	e8 3f 95 00 00       	call   0x42e076
424b37:	59                   	pop    %ecx
424b38:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
424b3b:	75 0d                	jne    0x424b4a
424b3d:	e8 fe 1a 00 00       	call   0x426640
424b42:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
424b48:	eb c0                	jmp    0x424b0a
424b4a:	89 5d e0             	mov    %ebx,-0x20(%ebp)
424b4d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
424b50:	ff 75 e4             	push   -0x1c(%ebp)
424b53:	ff 75 10             	push   0x10(%ebp)