442091:	66 3b c2             	cmp    %dx,%ax
442094:	0f 82 db fe ff ff    	jb     0x441f75
44209a:	b9 e0 17 00 00       	mov    $0x17e0,%ecx
44209f:	66 3b c1             	cmp    %cx,%ax
4420a2:	72 27                	jb     0x4420cb
4420a4:	8d 51 0a             	lea    0xa(%ecx),%edx
4420a7:	66 3b c2             	cmp    %dx,%ax
4420aa:	0f 82 c5 fe ff ff    	jb     0x441f75
4420b0:	83 c1 30             	add    $0x30,%ecx
4420b3:	66 3b c1             	cmp    %cx,%ax
4420b6:	72 13                	jb     0x4420cb
4420b8:	83 c2 30             	add    $0x30,%edx
4420bb:	eb 05                	jmp    0x4420c2
4420bd:	ba 1a ff 00 00       	mov    $0xff1a,%edx
4420c2:	66 3b c2             	cmp    %dx,%ax
4420c5:	0f 82 aa fe ff ff    	jb     0x441f75
4420cb:	83 c8 ff             	or     $0xffffffff,%eax
4420ce:	5d                   	pop    %ebp
4420cf:	c3                   	ret
4420d0:	8b ff                	mov    %edi,%edi
4420d2:	55                   	push   %ebp
4420d3:	8b ec                	mov    %esp,%ebp
4420d5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4420d8:	eb 07                	jmp    0x4420e1
4420da:	49                   	dec    %ecx
4420db:	80 38 00             	cmpb   $0x0,(%eax)
4420de:	74 06                	je     0x4420e6
4420e0:	40                   	inc    %eax
4420e1:	85 c9                	test   %ecx,%ecx
4420e3:	75 f5                	jne    0x4420da
4420e5:	49                   	dec    %ecx
4420e6:	8b 45 08             	mov    0x8(%ebp),%eax
4420e9:	2b c1                	sub    %ecx,%eax
4420eb:	48                   	dec    %eax
4420ec:	5d                   	pop    %ebp
4420ed:	c3                   	ret
4420ee:	8b ff                	mov    %edi,%edi
4420f0:	55                   	push   %ebp
4420f1:	8b ec                	mov    %esp,%ebp
4420f3:	83 ec 10             	sub    $0x10,%esp
4420f6:	a1 a8 f6 46 00       	mov    0x46f6a8,%eax
4420fb:	33 c5                	xor    %ebp,%eax
4420fd:	89 45 fc             	mov    %eax,-0x4(%ebp)
442100:	8b 55 18             	mov    0x18(%ebp),%edx
442103:	53                   	push   %ebx
442104:	33 db                	xor    %ebx,%ebx
442106:	56                   	push   %esi
442107:	57                   	push   %edi
442108:	3b d3                	cmp    %ebx,%edx
44210a:	7e 1f                	jle    0x44212b
44210c:	8b 45 14             	mov    0x14(%ebp),%eax
44210f:	8b ca                	mov    %edx,%ecx
442111:	49                   	dec    %ecx
442112:	38 18                	cmp    %bl,(%eax)
442114:	74 08                	je     0x44211e
442116:	40                   	inc    %eax
442117:	3b cb                	cmp    %ebx,%ecx
442119:	75 f6                	jne    0x442111
44211b:	83 c9 ff             	or     $0xffffffff,%ecx
44211e:	8b c2                	mov    %edx,%eax
442120:	2b c1                	sub    %ecx,%eax
442122:	48                   	dec    %eax
442123:	3b c2                	cmp    %edx,%eax
442125:	7d 01                	jge    0x442128
442127:	40                   	inc    %eax
442128:	89 45 18             	mov    %eax,0x18(%ebp)
44212b:	89 5d f8             	mov    %ebx,-0x8(%ebp)
44212e:	39 5d 24             	cmp    %ebx,0x24(%ebp)
442131:	75 0b                	jne    0x44213e
442133:	8b 45 08             	mov    0x8(%ebp),%eax
442136:	8b 00                	mov    (%eax),%eax
442138:	8b 40 04             	mov    0x4(%eax),%eax
44213b:	89 45 24             	mov    %eax,0x24(%ebp)
44213e:	8b 35 e8 34 47 00    	mov    0x4734e8,%esi
442144:	33 c0                	xor    %eax,%eax
442146:	39 5d 28             	cmp    %ebx,0x28(%ebp)
442149:	53                   	push   %ebx
44214a:	53                   	push   %ebx
44214b:	ff 75 18             	push   0x18(%ebp)
44214e:	0f 95 c0             	setne  %al
442151:	ff 75 14             	push   0x14(%ebp)
442154:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
44215b:	50                   	push   %eax
44215c:	ff 75 24             	push   0x24(%ebp)
44215f:	ff d6                	call   *%esi
442161:	8b f8                	mov    %eax,%edi
442163:	89 7d f0             	mov    %edi,-0x10(%ebp)
442166:	3b fb                	cmp    %ebx,%edi
442168:	75 07                	jne    0x442171
44216a:	33 c0                	xor    %eax,%eax
44216c:	e9 52 01 00 00       	jmp    0x4422c3
442171:	7e 43                	jle    0x4421b6
442173:	6a e0                	push   $0xffffffe0
442175:	33 d2                	xor    %edx,%edx
442177:	58                   	pop    %eax
442178:	f7 f7                	div    %edi
44217a:	83 f8 02             	cmp    $0x2,%eax
44217d:	72 37                	jb     0x4421b6
44217f:	8d 44 3f 08          	lea    0x8(%edi,%edi,1),%eax
442183:	3d 00 04 00 00       	cmp    $0x400,%eax
442188:	77 13                	ja     0x44219d
44218a:	e8 a1 58 00 00       	call   0x447a30
44218f:	8b c4                	mov    %esp,%eax
442191:	3b c3                	cmp    %ebx,%eax
442193:	74 1c                	je     0x4421b1
442195:	c7 00 cc cc 00 00    	movl   $0xcccc,(%eax)
44219b:	eb 11                	jmp    0x4421ae
44219d:	50                   	push   %eax
44219e:	e8 73 e8 fe ff       	call   0x430a16
4421a3:	59                   	pop    %ecx
4421a4:	3b c3                	cmp    %ebx,%eax
4421a6:	74 09                	je     0x4421b1
4421a8:	c7 00 dd dd 00 00    	movl   $0xdddd,(%eax)
4421ae:	83 c0 08             	add    $0x8,%eax
4421b1:	89 45 f4             	mov    %eax,-0xc(%ebp)
4421b4:	eb 03                	jmp    0x4421b9
4421b6:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4421b9:	39 5d f4             	cmp    %ebx,-0xc(%ebp)
4421bc:	74 ac                	je     0x44216a
4421be:	57                   	push   %edi
4421bf:	ff 75 f4             	push   -0xc(%ebp)
4421c2:	ff 75 18             	push   0x18(%ebp)
4421c5:	ff 75 14             	push   0x14(%ebp)
4421c8:	6a 01                	push   $0x1
4421ca:	ff 75 24             	push   0x24(%ebp)
4421cd:	ff d6                	call   *%esi
4421cf:	85 c0                	test   %eax,%eax
4421d1:	0f 84 e0 00 00 00    	je     0x4422b7
4421d7:	8b 35 98 35 47 00    	mov    0x473598,%esi
4421dd:	53                   	push   %ebx
4421de:	53                   	push   %ebx
4421df:	57                   	push   %edi
4421e0:	ff 75 f4             	push   -0xc(%ebp)
4421e3:	ff 75 10             	push   0x10(%ebp)
4421e6:	ff 75 0c             	push   0xc(%ebp)
4421e9:	ff d6                	call   *%esi
4421eb:	89 45 f8             	mov    %eax,-0x8(%ebp)
4421ee:	3b c3                	cmp    %ebx,%eax
4421f0:	0f 84 c1 00 00 00    	je     0x4422b7
4421f6:	b9 00 04 00 00       	mov    $0x400,%ecx
4421fb:	85 4d 10             	test   %ecx,0x10(%ebp)
4421fe:	74 29                	je     0x442229
442200:	8b 45 20             	mov    0x20(%ebp),%eax
442203:	3b c3                	cmp    %ebx,%eax
442205:	0f 84 ac 00 00 00    	je     0x4422b7
44220b:	39 45 f8             	cmp    %eax,-0x8(%ebp)
44220e:	0f 8f a3 00 00 00    	jg     0x4422b7
442214:	50                   	push   %eax
442215:	ff 75 1c             	push   0x1c(%ebp)
442218:	57                   	push   %edi
442219:	ff 75 f4             	push   -0xc(%ebp)
44221c:	ff 75 10             	push   0x10(%ebp)
44221f:	ff 75 0c             	push   0xc(%ebp)
442222:	ff d6                	call   *%esi
442224:	e9 8e 00 00 00       	jmp    0x4422b7
442229:	8b 7d f8             	mov    -0x8(%ebp),%edi
44222c:	3b fb                	cmp    %ebx,%edi
44222e:	7e 42                	jle    0x442272
442230:	6a e0                	push   $0xffffffe0
442232:	33 d2                	xor    %edx,%edx
442234:	58                   	pop    %eax
442235:	f7 f7                	div    %edi
442237:	83 f8 02             	cmp    $0x2,%eax
44223a:	72 36                	jb     0x442272
44223c:	8d 44 3f 08          	lea    0x8(%edi,%edi,1),%eax
442240:	3b c1                	cmp    %ecx,%eax
442242:	77 16                	ja     0x44225a
442244:	e8 e7 57 00 00       	call   0x447a30
442249:	8b fc                	mov    %esp,%edi
44224b:	3b fb                	cmp    %ebx,%edi
44224d:	74 68                	je     0x4422b7
44224f:	c7 07 cc cc 00 00    	movl   $0xcccc,(%edi)
442255:	83 c7 08             	add    $0x8,%edi
442258:	eb 1a                	jmp    0x442274
44225a:	50                   	push   %eax
44225b:	e8 b6 e7 fe ff       	call   0x430a16
442260:	59                   	pop    %ecx
442261:	3b c3                	cmp    %ebx,%eax
442263:	74 09                	je     0x44226e
442265:	c7 00 dd dd 00 00    	movl   $0xdddd,(%eax)
44226b:	83 c0 08             	add    $0x8,%eax
44226e:	8b f8                	mov    %eax,%edi
442270:	eb 02                	jmp    0x442274
442272:	33 ff                	xor    %edi,%edi
442274:	3b fb                	cmp    %ebx,%edi
442276:	74 3f                	je     0x4422b7
442278:	ff 75 f8             	push   -0x8(%ebp)
44227b:	57                   	push   %edi
44227c:	ff 75 f0             	push   -0x10(%ebp)
44227f:	ff 75 f4             	push   -0xc(%ebp)
442282:	ff 75 10             	push   0x10(%ebp)
442285:	ff 75 0c             	push   0xc(%ebp)
442288:	ff d6                	call   *%esi
44228a:	85 c0                	test   %eax,%eax
44228c:	74 22                	je     0x4422b0
44228e:	53                   	push   %ebx
44228f:	53                   	push   %ebx
442290:	39 5d 20             	cmp    %ebx,0x20(%ebp)
442293:	75 04                	jne    0x442299
442295:	53                   	push   %ebx
442296:	53                   	push   %ebx
442297:	eb 06                	jmp    0x44229f
442299:	ff 75 20             	push   0x20(%ebp)
44229c:	ff 75 1c             	push   0x1c(%ebp)
44229f:	ff 75 f8             	push   -0x8(%ebp)
4422a2:	57                   	push   %edi
4422a3:	53                   	push   %ebx
4422a4:	ff 75 24             	push   0x24(%ebp)
4422a7:	ff 15 68 35 47 00    	call   *0x473568
4422ad:	89 45 f8             	mov    %eax,-0x8(%ebp)
4422b0:	57                   	push   %edi
4422b1:	e8 a7 c5 ff ff       	call   0x43e85d
4422b6:	59                   	pop    %ecx
4422b7:	ff 75 f4             	push   -0xc(%ebp)
4422ba:	e8 9e c5 ff ff       	call   0x43e85d
4422bf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4422c2:	59                   	pop    %ecx
4422c3:	8d 65 e4             	lea    -0x1c(%ebp),%esp
4422c6:	5f                   	pop    %edi
4422c7:	5e                   	pop    %esi
4422c8:	5b                   	pop    %ebx
4422c9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4422cc:	33 cd                	xor    %ebp,%ecx
4422ce:	e8 be c6 ff ff       	call   0x43e991
4422d3:	c9                   	leave
4422d4:	c3                   	ret
4422d5:	8b ff                	mov    %edi,%edi
4422d7:	55                   	push   %ebp
4422d8:	8b ec                	mov    %esp,%ebp
4422da:	83 ec 10             	sub    $0x10,%esp
4422dd:	ff 75 08             	push   0x8(%ebp)
4422e0:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4422e3:	e8 02 e9 fe ff       	call   0x430bea
4422e8:	ff 75 28             	push   0x28(%ebp)
4422eb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4422ee:	ff 75 24             	push   0x24(%ebp)
4422f1:	ff 75 20             	push   0x20(%ebp)
4422f4:	ff 75 1c             	push   0x1c(%ebp)
4422f7:	ff 75 18             	push   0x18(%ebp)
4422fa:	ff 75 14             	push   0x14(%ebp)
4422fd:	ff 75 10             	push   0x10(%ebp)
442300:	ff 75 0c             	push   0xc(%ebp)
442303:	50                   	push   %eax
442304:	e8 e5 fd ff ff       	call   0x4420ee
442309:	83 c4 24             	add    $0x24,%esp
44230c:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
442310:	74 07                	je     0x442319
442312:	8b 4d f8             	mov    -0x8(%ebp),%ecx
442315:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
442319:	c9                   	leave
44231a:	c3                   	ret
44231b:	8b ff                	mov    %edi,%edi
44231d:	55                   	push   %ebp
44231e:	8b ec                	mov    %esp,%ebp
442320:	51                   	push   %ecx
442321:	51                   	push   %ecx
442322:	a1 a8 f6 46 00       	mov    0x46f6a8,%eax
442327:	33 c5                	xor    %ebp,%eax
442329:	89 45 fc             	mov    %eax,-0x4(%ebp)
44232c:	53                   	push   %ebx
44232d:	33 db                	xor    %ebx,%ebx
44232f:	56                   	push   %esi
442330:	57                   	push   %edi
442331:	89 5d f8             	mov    %ebx,-0x8(%ebp)
442334:	39 5d 1c             	cmp    %ebx,0x1c(%ebp)
442337:	75 0b                	jne    0x442344
442339:	8b 45 08             	mov    0x8(%ebp),%eax
44233c:	8b 00                	mov    (%eax),%eax
44233e:	8b 40 04             	mov    0x4(%eax),%eax
442341:	89 45 1c             	mov    %eax,0x1c(%ebp)
442344:	8b 35 e8 34 47 00    	mov    0x4734e8,%esi
44234a:	33 c0                	xor    %eax,%eax
44234c:	39 5d 20             	cmp    %ebx,0x20(%ebp)
44234f:	53                   	push   %ebx
442350:	53                   	push   %ebx
442351:	ff 75 14             	push   0x14(%ebp)
442354:	0f 95 c0             	setne  %al
442357:	ff 75 10             	push   0x10(%ebp)
44235a:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
442361:	50                   	push   %eax
442362:	ff 75 1c             	push   0x1c(%ebp)
442365:	ff d6                	call   *%esi
442367:	8b f8                	mov    %eax,%edi
442369:	3b fb                	cmp    %ebx,%edi
44236b:	75 04                	jne    0x442371
44236d:	33 c0                	xor    %eax,%eax
44236f:	eb 7f                	jmp    0x4423f0
442371:	7e 3c                	jle    0x4423af
442373:	81 ff f0 ff ff 7f    	cmp    $0x7ffffff0,%edi
442379:	77 34                	ja     0x4423af
44237b:	8d 44 3f 08          	lea    0x8(%edi,%edi,1),%eax
44237f:	3d 00 04 00 00       	cmp    $0x400,%eax
442384:	77 13                	ja     0x442399
442386:	e8 a5 56 00 00       	call   0x447a30
44238b:	8b c4                	mov    %esp,%eax
44238d:	3b c3                	cmp    %ebx,%eax
44238f:	74 1c                	je     0x4423ad
442391:	c7 00 cc cc 00 00    	movl   $0xcccc,(%eax)
442397:	eb 11                	jmp    0x4423aa
442399:	50                   	push   %eax
44239a:	e8 77 e6 fe ff       	call   0x430a16
44239f:	59                   	pop    %ecx
4423a0:	3b c3                	cmp    %ebx,%eax
4423a2:	74 09                	je     0x4423ad
4423a4:	c7 00 dd dd 00 00    	movl   $0xdddd,(%eax)
4423aa:	83 c0 08             	add    $0x8,%eax
4423ad:	8b d8                	mov    %eax,%ebx
4423af:	85 db                	test   %ebx,%ebx
4423b1:	74 ba                	je     0x44236d
4423b3:	8d 04 3f             	lea    (%edi,%edi,1),%eax
4423b6:	50                   	push   %eax
4423b7:	6a 00                	push   $0x0
4423b9:	53                   	push   %ebx
4423ba:	e8 b1 e7 fe ff       	call   0x430b70
4423bf:	83 c4 0c             	add    $0xc,%esp
4423c2:	57                   	push   %edi
4423c3:	53                   	push   %ebx
4423c4:	ff 75 14             	push   0x14(%ebp)
4423c7:	ff 75 10             	push   0x10(%ebp)
4423ca:	6a 01                	push   $0x1
4423cc:	ff 75 1c             	push   0x1c(%ebp)
4423cf:	ff d6                	call   *%esi
4423d1:	85 c0                	test   %eax,%eax
4423d3:	74 11                	je     0x4423e6
4423d5:	ff 75 18             	push   0x18(%ebp)
4423d8:	50                   	push   %eax
4423d9:	53                   	push   %ebx
4423da:	ff 75 0c             	push   0xc(%ebp)
4423dd:	ff 15 f4 34 47 00    	call   *0x4734f4
4423e3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4423e6:	53                   	push   %ebx
4423e7:	e8 71 c4 ff ff       	call   0x43e85d
4423ec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4423ef:	59                   	pop    %ecx
4423f0:	8d 65 ec             	lea    -0x14(%ebp),%esp
4423f3:	5f                   	pop    %edi
4423f4:	5e                   	pop    %esi
4423f5:	5b                   	pop    %ebx
4423f6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4423f9:	33 cd                	xor    %ebp,%ecx
4423fb:	e8 91 c5 ff ff       	call   0x43e991
442400:	c9                   	leave
442401:	c3                   	ret
442402:	8b ff                	mov    %edi,%edi
442404:	55                   	push   %ebp
442405:	8b ec                	mov    %esp,%ebp
442407:	83 ec 10             	sub    $0x10,%esp
44240a:	ff 75 08             	push   0x8(%ebp)
44240d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
442410:	e8 d5 e7 fe ff       	call   0x430bea