448021:	8b 45 f4             	mov    -0xc(%ebp),%eax
448024:	89 45 fc             	mov    %eax,-0x4(%ebp)
448027:	85 ff                	test   %edi,%edi
448029:	74 1c                	je     0x448047
44802b:	8b c3                	mov    %ebx,%eax
44802d:	25 00 07 00 00       	and    $0x700,%eax
448032:	3d 00 01 00 00       	cmp    $0x100,%eax
448037:	0f 84 ae 00 00 00    	je     0x4480eb
44803d:	33 c0                	xor    %eax,%eax
44803f:	81 fe 00 08 00 00    	cmp    $0x800,%esi
448045:	eb 04                	jmp    0x44804b
448047:	33 c0                	xor    %eax,%eax
448049:	85 c9                	test   %ecx,%ecx
44804b:	0f 94 c0             	sete   %al
44804e:	f7 d8                	neg    %eax
448050:	1b c0                	sbb    %eax,%eax
448052:	25 00 f4 ff ff       	and    $0xfffff400,%eax
448057:	05 00 10 00 00       	add    $0x1000,%eax
44805c:	85 c3                	test   %eax,%ebx
44805e:	0f 84 af 00 00 00    	je     0x448113
448064:	33 c0                	xor    %eax,%eax
448066:	85 ff                	test   %edi,%edi
448068:	74 15                	je     0x44807f
44806a:	81 fe 00 08 00 00    	cmp    $0x800,%esi
448070:	8b cb                	mov    %ebx,%ecx
448072:	8b d6                	mov    %esi,%edx
448074:	0f 94 c0             	sete   %al
448077:	81 e1 00 60 00 00    	and    $0x6000,%ecx
44807d:	eb 0d                	jmp    0x44808c
44807f:	85 c9                	test   %ecx,%ecx
448081:	8b d3                	mov    %ebx,%edx
448083:	0f 94 c0             	sete   %al
448086:	81 e2 00 18 00 00    	and    $0x1800,%edx
44808c:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
44808f:	8b cb                	mov    %ebx,%ecx
448091:	81 e1 00 07 00 00    	and    $0x700,%ecx
448097:	85 c0                	test   %eax,%eax
448099:	74 08                	je     0x4480a3
44809b:	81 f9 00 05 00 00    	cmp    $0x500,%ecx
4480a1:	74 48                	je     0x4480eb
4480a3:	8b c3                	mov    %ebx,%eax
4480a5:	85 ff                	test   %edi,%edi
4480a7:	74 0c                	je     0x4480b5
4480a9:	25 00 18 00 00       	and    $0x1800,%eax
4480ae:	2d 00 08 00 00       	sub    $0x800,%eax
4480b3:	eb 05                	jmp    0x4480ba
4480b5:	25 00 60 00 00       	and    $0x6000,%eax
4480ba:	f7 d8                	neg    %eax
4480bc:	1b c0                	sbb    %eax,%eax
4480be:	40                   	inc    %eax
4480bf:	85 c0                	test   %eax,%eax
4480c1:	74 08                	je     0x4480cb
4480c3:	81 f9 00 06 00 00    	cmp    $0x600,%ecx
4480c9:	74 20                	je     0x4480eb
4480cb:	33 c0                	xor    %eax,%eax
4480cd:	85 ff                	test   %edi,%edi
4480cf:	74 08                	je     0x4480d9
4480d1:	81 fa 00 08 00 00    	cmp    $0x800,%edx
4480d7:	eb 03                	jmp    0x4480dc
4480d9:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
4480dc:	0f 94 c0             	sete   %al
4480df:	85 c0                	test   %eax,%eax
4480e1:	74 30                	je     0x448113
4480e3:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
4480e9:	75 28                	jne    0x448113
4480eb:	68 fc b9 49 00       	push   $0x49b9fc
4480f0:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4480f3:	e8 3a ed ff ff       	call   0x446e32
4480f8:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4480fb:	51                   	push   %ecx
4480fc:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4480ff:	51                   	push   %ecx
448100:	8b c8                	mov    %eax,%ecx
448102:	e8 55 f1 ff ff       	call   0x44725c
448107:	8b 45 f0             	mov    -0x10(%ebp),%eax
44810a:	89 45 f8             	mov    %eax,-0x8(%ebp)
44810d:	8b 45 f4             	mov    -0xc(%ebp),%eax
448110:	89 45 fc             	mov    %eax,-0x4(%ebp)
448113:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
448118:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44811b:	c1 e8 07             	shr    $0x7,%eax
44811e:	f7 d0                	not    %eax
448120:	a8 01                	test   $0x1,%al
448122:	0f 84 d8 00 00 00    	je     0x448200
448128:	33 c0                	xor    %eax,%eax
44812a:	85 ff                	test   %edi,%edi
44812c:	74 08                	je     0x448136
44812e:	81 fe 00 08 00 00    	cmp    $0x800,%esi
448134:	eb 02                	jmp    0x448138
448136:	85 c9                	test   %ecx,%ecx
448138:	0f 94 c0             	sete   %al
44813b:	85 c0                	test   %eax,%eax
44813d:	74 22                	je     0x448161
44813f:	33 d2                	xor    %edx,%edx
448141:	85 ff                	test   %edi,%edi
448143:	74 08                	je     0x44814d
448145:	8b c3                	mov    %ebx,%eax
448147:	24 c0                	and    $0xc0,%al
448149:	3c 40                	cmp    $0x40,%al
44814b:	eb 06                	jmp    0x448153
44814d:	81 fe 00 08 00 00    	cmp    $0x800,%esi
448153:	0f 94 c2             	sete   %dl
448156:	85 d2                	test   %edx,%edx
448158:	74 07                	je     0x448161
44815a:	68 08 ba 49 00       	push   $0x49ba08
44815f:	eb 79                	jmp    0x4481da
448161:	33 c0                	xor    %eax,%eax
448163:	85 ff                	test   %edi,%edi
448165:	74 08                	je     0x44816f
448167:	81 fe 00 08 00 00    	cmp    $0x800,%esi
44816d:	eb 02                	jmp    0x448171
44816f:	85 c9                	test   %ecx,%ecx
448171:	0f 94 c0             	sete   %al
448174:	85 c0                	test   %eax,%eax
448176:	74 22                	je     0x44819a
448178:	33 d2                	xor    %edx,%edx
44817a:	85 ff                	test   %edi,%edi
44817c:	74 08                	je     0x448186
44817e:	8b c3                	mov    %ebx,%eax
448180:	24 c0                	and    $0xc0,%al
448182:	3c 80                	cmp    $0x80,%al
448184:	eb 06                	jmp    0x44818c
448186:	81 fe 00 10 00 00    	cmp    $0x1000,%esi
44818c:	0f 94 c2             	sete   %dl
44818f:	85 d2                	test   %edx,%edx
448191:	74 07                	je     0x44819a
448193:	68 14 ba 49 00       	push   $0x49ba14
448198:	eb 40                	jmp    0x4481da
44819a:	33 c0                	xor    %eax,%eax
44819c:	85 ff                	test   %edi,%edi
44819e:	74 0d                	je     0x4481ad
4481a0:	81 fe 00 08 00 00    	cmp    $0x800,%esi
4481a6:	8b d6                	mov    %esi,%edx
4481a8:	0f 94 c0             	sete   %al
4481ab:	eb 0d                	jmp    0x4481ba
4481ad:	85 c9                	test   %ecx,%ecx
4481af:	8b d3                	mov    %ebx,%edx
4481b1:	0f 94 c0             	sete   %al
4481b4:	81 e2 00 18 00 00    	and    $0x1800,%edx
4481ba:	85 c0                	test   %eax,%eax
4481bc:	74 42                	je     0x448200
4481be:	85 ff                	test   %edi,%edi
4481c0:	74 08                	je     0x4481ca
4481c2:	6a 00                	push   $0x0
4481c4:	f6 c3 c0             	test   $0xc0,%bl
4481c7:	58                   	pop    %eax
4481c8:	eb 04                	jmp    0x4481ce
4481ca:	33 c0                	xor    %eax,%eax
4481cc:	85 d2                	test   %edx,%edx
4481ce:	0f 94 c0             	sete   %al
4481d1:	85 c0                	test   %eax,%eax
4481d3:	74 2b                	je     0x448200
4481d5:	68 20 ba 49 00       	push   $0x49ba20
4481da:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4481dd:	e8 50 ec ff ff       	call   0x446e32
4481e2:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4481e5:	51                   	push   %ecx
4481e6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4481e9:	51                   	push   %ecx
4481ea:	8b c8                	mov    %eax,%ecx
4481ec:	e8 6b f0 ff ff       	call   0x44725c
4481f1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4481f4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4481f7:	89 45 f8             	mov    %eax,-0x8(%ebp)
4481fa:	8b 45 f4             	mov    -0xc(%ebp),%eax
4481fd:	89 45 fc             	mov    %eax,-0x4(%ebp)
448200:	33 c0                	xor    %eax,%eax
448202:	85 ff                	test   %edi,%edi
448204:	74 08                	je     0x44820e
448206:	81 fe 00 08 00 00    	cmp    $0x800,%esi
44820c:	eb 02                	jmp    0x448210
44820e:	85 c9                	test   %ecx,%ecx
448210:	0f 94 c0             	sete   %al
448213:	b9 00 10 00 00       	mov    $0x1000,%ecx
448218:	f7 d8                	neg    %eax
44821a:	1b c0                	sbb    %eax,%eax
44821c:	25 00 f4 ff ff       	and    $0xfffff400,%eax
448221:	03 c1                	add    %ecx,%eax
448223:	85 c3                	test   %eax,%ebx
448225:	74 30                	je     0x448257
448227:	85 0d d4 b3 4b 00    	test   %ecx,0x4bb3d4
44822d:	75 28                	jne    0x448257
44822f:	68 2c ba 49 00       	push   $0x49ba2c
448234:	8d 4d cc             	lea    -0x34(%ebp),%ecx
448237:	e8 f6 eb ff ff       	call   0x446e32
44823c:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44823f:	51                   	push   %ecx
448240:	8d 4d f0             	lea    -0x10(%ebp),%ecx
448243:	51                   	push   %ecx
448244:	8b c8                	mov    %eax,%ecx
448246:	e8 11 f0 ff ff       	call   0x44725c
44824b:	8b 45 f0             	mov    -0x10(%ebp),%eax
44824e:	89 45 f8             	mov    %eax,-0x8(%ebp)
448251:	8b 45 f4             	mov    -0xc(%ebp),%eax
448254:	89 45 fc             	mov    %eax,-0x4(%ebp)
448257:	f7 c3 00 00 01 00    	test   $0x10000,%ebx
44825d:	74 28                	je     0x448287
44825f:	68 38 ba 49 00       	push   $0x49ba38
448264:	8d 4d cc             	lea    -0x34(%ebp),%ecx
448267:	e8 c6 eb ff ff       	call   0x446e32
44826c:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44826f:	51                   	push   %ecx
448270:	8d 4d f0             	lea    -0x10(%ebp),%ecx
448273:	51                   	push   %ecx
448274:	8b c8                	mov    %eax,%ecx
448276:	e8 e1 ef ff ff       	call   0x44725c
44827b:	8b 45 f0             	mov    -0x10(%ebp),%eax
44827e:	89 45 f8             	mov    %eax,-0x8(%ebp)
448281:	8b 45 f4             	mov    -0xc(%ebp),%eax
448284:	89 45 fc             	mov    %eax,-0x4(%ebp)
448287:	8b 45 08             	mov    0x8(%ebp),%eax
44828a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44828d:	89 08                	mov    %ecx,(%eax)
44828f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
448292:	89 48 04             	mov    %ecx,0x4(%eax)
448295:	5f                   	pop    %edi
448296:	5e                   	pop    %esi
448297:	5b                   	pop    %ebx
448298:	c9                   	leave
448299:	c3                   	ret
44829a:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
44829f:	c1 e8 07             	shr    $0x7,%eax
4482a2:	f7 d0                	not    %eax
4482a4:	83 e0 01             	and    $0x1,%eax
4482a7:	c3                   	ret
4482a8:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482ad:	c1 e8 04             	shr    $0x4,%eax
4482b0:	f7 d0                	not    %eax
4482b2:	83 e0 01             	and    $0x1,%eax
4482b5:	c3                   	ret
4482b6:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482bb:	c1 e8 03             	shr    $0x3,%eax
4482be:	f7 d0                	not    %eax
4482c0:	83 e0 01             	and    $0x1,%eax
4482c3:	c3                   	ret
4482c4:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482c9:	c1 e8 0f             	shr    $0xf,%eax
4482cc:	f7 d0                	not    %eax
4482ce:	83 e0 01             	and    $0x1,%eax
4482d1:	c3                   	ret
4482d2:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482d7:	c1 e8 12             	shr    $0x12,%eax
4482da:	f7 d0                	not    %eax
4482dc:	83 e0 01             	and    $0x1,%eax
4482df:	c3                   	ret
4482e0:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482e5:	c1 e8 02             	shr    $0x2,%eax
4482e8:	f7 d0                	not    %eax
4482ea:	83 e0 01             	and    $0x1,%eax
4482ed:	c3                   	ret
4482ee:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4482f3:	d1 e8                	shr    $1,%eax
4482f5:	f7 d0                	not    %eax
4482f7:	83 e0 01             	and    $0x1,%eax
4482fa:	c3                   	ret
4482fb:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
448300:	c1 e8 09             	shr    $0x9,%eax
448303:	f7 d0                	not    %eax
448305:	83 e0 01             	and    $0x1,%eax
448308:	c3                   	ret
448309:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
44830e:	25 00 10 00 00       	and    $0x1000,%eax
448313:	c3                   	ret
448314:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
448319:	25 00 00 01 00       	and    $0x10000,%eax
44831e:	c3                   	ret
44831f:	55                   	push   %ebp
448320:	8b ec                	mov    %esp,%ebp
448322:	56                   	push   %esi
448323:	8b f1                	mov    %ecx,%esi
448325:	57                   	push   %edi
448326:	33 ff                	xor    %edi,%edi
448328:	39 3e                	cmp    %edi,(%esi)
44832a:	74 0b                	je     0x448337
44832c:	89 7e 04             	mov    %edi,0x4(%esi)
44832f:	c6 46 04 03          	movb   $0x3,0x4(%esi)
448333:	89 3e                	mov    %edi,(%esi)
448335:	eb 68                	jmp    0x44839f
448337:	53                   	push   %ebx
448338:	8b 5d 08             	mov    0x8(%ebp),%ebx
44833b:	85 db                	test   %ebx,%ebx
44833d:	74 5b                	je     0x44839a
44833f:	39 7d 0c             	cmp    %edi,0xc(%ebp)
448342:	74 56                	je     0x44839a
448344:	8b 45 0c             	mov    0xc(%ebp),%eax
448347:	2b c7                	sub    %edi,%eax
448349:	74 49                	je     0x448394
44834b:	b9 e8 b3 4b 00       	mov    $0x4bb3e8,%ecx
448350:	57                   	push   %edi
448351:	83 e8 01             	sub    $0x1,%eax
448354:	74 1e                	je     0x448374
448356:	6a 0c                	push   $0xc
448358:	e8 d9 1d 00 00       	call   0x44a136
44835d:	85 c0                	test   %eax,%eax
44835f:	74 0d                	je     0x44836e
448361:	ff 75 0c             	push   0xc(%ebp)
448364:	8b c8                	mov    %eax,%ecx
448366:	53                   	push   %ebx
448367:	e8 f5 ec ff ff       	call   0x447061
44836c:	8b f8                	mov    %eax,%edi
44836e:	89 3e                	mov    %edi,(%esi)
448370:	85 ff                	test   %edi,%edi
448372:	eb 1e                	jmp    0x448392
448374:	6a 08                	push   $0x8
448376:	e8 bb 1d 00 00       	call   0x44a136
44837b:	85 c0                	test   %eax,%eax
44837d:	74 0d                	je     0x44838c
44837f:	8a 0b                	mov    (%ebx),%cl
448381:	c7 00 38 bc 49 00    	movl   $0x49bc38,(%eax)
448387:	88 48 04             	mov    %cl,0x4(%eax)
44838a:	eb 02                	jmp    0x44838e
44838c:	8b c7                	mov    %edi,%eax
44838e:	89 06                	mov    %eax,(%esi)
448390:	85 c0                	test   %eax,%eax
448392:	75 0a                	jne    0x44839e
448394:	c6 46 04 03          	movb   $0x3,0x4(%esi)
448398:	eb 04                	jmp    0x44839e
44839a:	c6 46 04 02          	movb   $0x2,0x4(%esi)
44839e:	5b                   	pop    %ebx
44839f:	5f                   	pop    %edi
4483a0:	5e                   	pop    %esi
4483a1:	5d                   	pop    %ebp
4483a2:	c2 08 00             	ret    $0x8
4483a5:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4483aa:	c1 e8 11             	shr    $0x11,%eax
4483ad:	f7 d0                	not    %eax
4483af:	83 e0 01             	and    $0x1,%eax
4483b2:	c3                   	ret
4483b3:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4483b8:	c1 e8 13             	shr    $0x13,%eax
4483bb:	f7 d0                	not    %eax
4483bd:	83 e0 01             	and    $0x1,%eax
4483c0:	c3                   	ret
4483c1:	8b 0d d4 b3 4b 00    	mov    0x4bb3d4,%ecx
4483c7:	33 c0                	xor    %eax,%eax
4483c9:	83 e1 60             	and    $0x60,%ecx
4483cc:	80 f9 60             	cmp    $0x60,%cl
4483cf:	0f 95 c0             	setne  %al
4483d2:	c3                   	ret
4483d3:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4483d8:	c1 e8 08             	shr    $0x8,%eax
4483db:	f7 d0                	not    %eax
4483dd:	83 e0 01             	and    $0x1,%eax
4483e0:	c3                   	ret
4483e1:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4483e6:	25 00 20 00 00       	and    $0x2000,%eax
4483eb:	c3                   	ret
4483ec:	a1 d4 b3 4b 00       	mov    0x4bb3d4,%eax
4483f1:	f7 d0                	not    %eax
4483f3:	83 e0 01             	and    $0x1,%eax