4671ac:	e8 57 7e fe ff       	call   0x44f008
4671b1:	8b 5d 08             	mov    0x8(%ebp),%ebx
4671b4:	85 db                	test   %ebx,%ebx
4671b6:	74 07                	je     0x4671bf
4671b8:	8b 75 0c             	mov    0xc(%ebp),%esi
4671bb:	85 f6                	test   %esi,%esi
4671bd:	75 1a                	jne    0x4671d9
4671bf:	e8 6b 5c fe ff       	call   0x44ce2f
4671c4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4671ca:	e8 07 5b fe ff       	call   0x44ccd6
4671cf:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
4671d4:	e9 8b 00 00 00       	jmp    0x467264
4671d9:	8b 45 f4             	mov    -0xc(%ebp),%eax
4671dc:	57                   	push   %edi
4671dd:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
4671e4:	75 42                	jne    0x467228
4671e6:	6a 41                	push   $0x41
4671e8:	59                   	pop    %ecx
4671e9:	6a 5a                	push   $0x5a
4671eb:	2b de                	sub    %esi,%ebx
4671ed:	5a                   	pop    %edx
4671ee:	0f b7 04 33          	movzwl (%ebx,%esi,1),%eax
4671f2:	66 3b c1             	cmp    %cx,%ax
4671f5:	72 0d                	jb     0x467204
4671f7:	66 3b c2             	cmp    %dx,%ax
4671fa:	77 08                	ja     0x467204
4671fc:	83 c0 20             	add    $0x20,%eax
4671ff:	0f b7 f8             	movzwl %ax,%edi
467202:	eb 02                	jmp    0x467206
467204:	8b f8                	mov    %eax,%edi
467206:	0f b7 06             	movzwl (%esi),%eax
467209:	66 3b c1             	cmp    %cx,%ax
46720c:	72 0b                	jb     0x467219
46720e:	66 3b c2             	cmp    %dx,%ax
467211:	77 06                	ja     0x467219
467213:	83 c0 20             	add    $0x20,%eax
467216:	0f b7 c0             	movzwl %ax,%eax
467219:	83 c6 02             	add    $0x2,%esi
46721c:	66 85 ff             	test   %di,%di
46721f:	74 3a                	je     0x46725b
467221:	66 3b f8             	cmp    %ax,%di
467224:	74 c8                	je     0x4671ee
467226:	eb 33                	jmp    0x46725b
467228:	0f b7 03             	movzwl (%ebx),%eax
46722b:	8d 4d f4             	lea    -0xc(%ebp),%ecx
46722e:	51                   	push   %ecx
46722f:	50                   	push   %eax
467230:	e8 0e 32 01 00       	call   0x47a443
467235:	8d 4d f4             	lea    -0xc(%ebp),%ecx
467238:	0f b7 f8             	movzwl %ax,%edi
46723b:	0f b7 06             	movzwl (%esi),%eax
46723e:	8d 5b 02             	lea    0x2(%ebx),%ebx
467241:	51                   	push   %ecx
467242:	50                   	push   %eax
467243:	e8 fb 31 01 00       	call   0x47a443
467248:	83 c4 10             	add    $0x10,%esp
46724b:	0f b7 c0             	movzwl %ax,%eax
46724e:	8d 76 02             	lea    0x2(%esi),%esi
467251:	66 85 ff             	test   %di,%di
467254:	74 05                	je     0x46725b
467256:	66 3b f8             	cmp    %ax,%di
467259:	74 cd                	je     0x467228
46725b:	0f b7 d7             	movzwl %di,%edx
46725e:	0f b7 c0             	movzwl %ax,%eax
467261:	2b d0                	sub    %eax,%edx
467263:	5f                   	pop    %edi
467264:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
467268:	5e                   	pop    %esi
467269:	5b                   	pop    %ebx
46726a:	74 0a                	je     0x467276
46726c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46726f:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
467276:	8b c2                	mov    %edx,%eax
467278:	8b e5                	mov    %ebp,%esp
46727a:	5d                   	pop    %ebp
46727b:	c3                   	ret
46727c:	8b ff                	mov    %edi,%edi
46727e:	55                   	push   %ebp
46727f:	8b ec                	mov    %esp,%ebp
467281:	ff 75 08             	push   0x8(%ebp)
467284:	e8 b0 b0 00 00       	call   0x472339
467289:	59                   	pop    %ecx
46728a:	5d                   	pop    %ebp
46728b:	c2 04 00             	ret    $0x4
46728e:	8b ff                	mov    %edi,%edi
467290:	55                   	push   %ebp
467291:	8b ec                	mov    %esp,%ebp
467293:	56                   	push   %esi
467294:	e8 b5 ae 00 00       	call   0x47214e
467299:	8b f0                	mov    %eax,%esi
46729b:	85 f6                	test   %esi,%esi
46729d:	75 07                	jne    0x4672a6
46729f:	b8 30 cb 49 00       	mov    $0x49cb30,%eax
4672a4:	eb 31                	jmp    0x4672d7
4672a6:	53                   	push   %ebx
4672a7:	57                   	push   %edi
4672a8:	8b 7e 40             	mov    0x40(%esi),%edi
4672ab:	33 db                	xor    %ebx,%ebx
4672ad:	85 ff                	test   %edi,%edi
4672af:	75 29                	jne    0x4672da
4672b1:	6a 01                	push   $0x1
4672b3:	68 86 00 00 00       	push   $0x86
4672b8:	e8 96 af 00 00       	call   0x472253
4672bd:	53                   	push   %ebx
4672be:	89 46 40             	mov    %eax,0x40(%esi)
4672c1:	e8 73 b0 00 00       	call   0x472339
4672c6:	8b 7e 40             	mov    0x40(%esi),%edi
4672c9:	83 c4 0c             	add    $0xc,%esp
4672cc:	85 ff                	test   %edi,%edi
4672ce:	75 0a                	jne    0x4672da
4672d0:	b8 30 cb 49 00       	mov    $0x49cb30,%eax
4672d5:	5f                   	pop    %edi
4672d6:	5b                   	pop    %ebx
4672d7:	5e                   	pop    %esi
4672d8:	5d                   	pop    %ebp
4672d9:	c3                   	ret
4672da:	ff 75 08             	push   0x8(%ebp)
4672dd:	e8 12 02 00 00       	call   0x4674f4
4672e2:	68 85 00 00 00       	push   $0x85
4672e7:	50                   	push   %eax
4672e8:	68 86 00 00 00       	push   $0x86
4672ed:	57                   	push   %edi
4672ee:	e8 9a 35 01 00       	call   0x47a88d
4672f3:	83 c4 14             	add    $0x14,%esp
4672f6:	85 c0                	test   %eax,%eax
4672f8:	75 05                	jne    0x4672ff
4672fa:	8b 46 40             	mov    0x40(%esi),%eax
4672fd:	eb d6                	jmp    0x4672d5
4672ff:	53                   	push   %ebx
467300:	53                   	push   %ebx
467301:	53                   	push   %ebx
467302:	53                   	push   %ebx
467303:	53                   	push   %ebx
467304:	e8 fa 59 fe ff       	call   0x44cd03
467309:	cc                   	int3
46730a:	8b ff                	mov    %edi,%edi
46730c:	55                   	push   %ebp
46730d:	8b ec                	mov    %esp,%ebp
46730f:	56                   	push   %esi
467310:	e8 39 ae 00 00       	call   0x47214e
467315:	8b f0                	mov    %eax,%esi
467317:	85 f6                	test   %esi,%esi
467319:	75 07                	jne    0x467322
46731b:	b8 70 cb 49 00       	mov    $0x49cb70,%eax
467320:	eb 31                	jmp    0x467353
467322:	53                   	push   %ebx
467323:	57                   	push   %edi
467324:	8b 7e 44             	mov    0x44(%esi),%edi
467327:	33 db                	xor    %ebx,%ebx
467329:	85 ff                	test   %edi,%edi
46732b:	75 29                	jne    0x467356
46732d:	6a 02                	push   $0x2
46732f:	68 86 00 00 00       	push   $0x86
467334:	e8 1a af 00 00       	call   0x472253
467339:	53                   	push   %ebx
46733a:	89 46 44             	mov    %eax,0x44(%esi)
46733d:	e8 f7 af 00 00       	call   0x472339
467342:	8b 7e 44             	mov    0x44(%esi),%edi
467345:	83 c4 0c             	add    $0xc,%esp
467348:	85 ff                	test   %edi,%edi
46734a:	75 0a                	jne    0x467356
46734c:	b8 70 cb 49 00       	mov    $0x49cb70,%eax
467351:	5f                   	pop    %edi
467352:	5b                   	pop    %ebx
467353:	5e                   	pop    %esi
467354:	5d                   	pop    %ebp
467355:	c3                   	ret
467356:	ff 75 08             	push   0x8(%ebp)
467359:	e8 96 01 00 00       	call   0x4674f4
46735e:	68 85 00 00 00       	push   $0x85
467363:	50                   	push   %eax
467364:	68 86 00 00 00       	push   $0x86
467369:	57                   	push   %edi
46736a:	53                   	push   %ebx
46736b:	e8 4c 34 01 00       	call   0x47a7bc
467370:	83 c4 18             	add    $0x18,%esp
467373:	85 c0                	test   %eax,%eax
467375:	75 05                	jne    0x46737c
467377:	8b 46 44             	mov    0x44(%esi),%eax
46737a:	eb d5                	jmp    0x467351
46737c:	53                   	push   %ebx
46737d:	53                   	push   %ebx
46737e:	53                   	push   %ebx
46737f:	53                   	push   %ebx
467380:	53                   	push   %ebx
467381:	e8 7d 59 fe ff       	call   0x44cd03
467386:	cc                   	int3
467387:	8b ff                	mov    %edi,%edi
467389:	55                   	push   %ebp
46738a:	8b ec                	mov    %esp,%ebp
46738c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
467390:	56                   	push   %esi
467391:	75 13                	jne    0x4673a6
467393:	e8 97 5a fe ff       	call   0x44ce2f
467398:	6a 16                	push   $0x16
46739a:	5e                   	pop    %esi
46739b:	89 30                	mov    %esi,(%eax)
46739d:	e8 34 59 fe ff       	call   0x44ccd6
4673a2:	8b c6                	mov    %esi,%eax
4673a4:	eb 38                	jmp    0x4673de
4673a6:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4673aa:	76 e7                	jbe    0x467393
4673ac:	ff 75 10             	push   0x10(%ebp)
4673af:	e8 40 01 00 00       	call   0x4674f4
4673b4:	6a ff                	push   $0xffffffff
4673b6:	50                   	push   %eax
4673b7:	ff 75 0c             	push   0xc(%ebp)
4673ba:	ff 75 08             	push   0x8(%ebp)
4673bd:	e8 cb 34 01 00       	call   0x47a88d
4673c2:	8b c8                	mov    %eax,%ecx
4673c4:	83 c4 14             	add    $0x14,%esp
4673c7:	85 c9                	test   %ecx,%ecx
4673c9:	74 0a                	je     0x4673d5
4673cb:	83 f9 16             	cmp    $0x16,%ecx
4673ce:	74 11                	je     0x4673e1
4673d0:	83 f9 22             	cmp    $0x22,%ecx
4673d3:	74 0c                	je     0x4673e1
4673d5:	8d 41 b0             	lea    -0x50(%ecx),%eax
4673d8:	f7 d8                	neg    %eax
4673da:	1b c0                	sbb    %eax,%eax
4673dc:	23 c1                	and    %ecx,%eax
4673de:	5e                   	pop    %esi
4673df:	5d                   	pop    %ebp
4673e0:	c3                   	ret
4673e1:	33 c0                	xor    %eax,%eax
4673e3:	50                   	push   %eax
4673e4:	50                   	push   %eax
4673e5:	50                   	push   %eax
4673e6:	50                   	push   %eax
4673e7:	50                   	push   %eax
4673e8:	e8 16 59 fe ff       	call   0x44cd03
4673ed:	cc                   	int3
4673ee:	8b ff                	mov    %edi,%edi
4673f0:	55                   	push   %ebp
4673f1:	8b ec                	mov    %esp,%ebp
4673f3:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4673f7:	56                   	push   %esi
4673f8:	75 13                	jne    0x46740d
4673fa:	e8 30 5a fe ff       	call   0x44ce2f
4673ff:	6a 16                	push   $0x16
467401:	5e                   	pop    %esi
467402:	89 30                	mov    %esi,(%eax)
467404:	e8 cd 58 fe ff       	call   0x44ccd6
467409:	8b c6                	mov    %esi,%eax
46740b:	eb 3b                	jmp    0x467448
46740d:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
467411:	76 e7                	jbe    0x4673fa
467413:	ff 75 10             	push   0x10(%ebp)
467416:	e8 d9 00 00 00       	call   0x4674f4
46741b:	6a ff                	push   $0xffffffff
46741d:	50                   	push   %eax
46741e:	ff 75 0c             	push   0xc(%ebp)
467421:	33 f6                	xor    %esi,%esi
467423:	ff 75 08             	push   0x8(%ebp)
467426:	56                   	push   %esi
467427:	e8 90 33 01 00       	call   0x47a7bc
46742c:	8b c8                	mov    %eax,%ecx
46742e:	83 c4 18             	add    $0x18,%esp
467431:	85 c9                	test   %ecx,%ecx
467433:	74 0a                	je     0x46743f
467435:	83 f9 16             	cmp    $0x16,%ecx
467438:	74 11                	je     0x46744b
46743a:	83 f9 22             	cmp    $0x22,%ecx
46743d:	74 0c                	je     0x46744b
46743f:	8d 41 b0             	lea    -0x50(%ecx),%eax
467442:	f7 d8                	neg    %eax
467444:	1b c0                	sbb    %eax,%eax
467446:	23 c1                	and    %ecx,%eax
467448:	5e                   	pop    %esi
467449:	5d                   	pop    %ebp
46744a:	c3                   	ret
46744b:	56                   	push   %esi
46744c:	56                   	push   %esi
46744d:	56                   	push   %esi
46744e:	56                   	push   %esi
46744f:	56                   	push   %esi
467450:	e8 ae 58 fe ff       	call   0x44cd03
467455:	cc                   	int3
467456:	8b ff                	mov    %edi,%edi
467458:	55                   	push   %ebp
467459:	8b ec                	mov    %esp,%ebp
46745b:	8b 45 08             	mov    0x8(%ebp),%eax
46745e:	89 01                	mov    %eax,(%ecx)
467460:	8b c1                	mov    %ecx,%eax
467462:	5d                   	pop    %ebp
467463:	c2 04 00             	ret    $0x4
467466:	8b ff                	mov    %edi,%edi
467468:	56                   	push   %esi
467469:	8b f1                	mov    %ecx,%esi
46746b:	ff 36                	push   (%esi)
46746d:	e8 c7 ae 00 00       	call   0x472339
467472:	83 26 00             	andl   $0x0,(%esi)
467475:	59                   	pop    %ecx
467476:	5e                   	pop    %esi
467477:	c3                   	ret
467478:	8b ff                	mov    %edi,%edi
46747a:	55                   	push   %ebp
46747b:	8b ec                	mov    %esp,%ebp
46747d:	ff 75 14             	push   0x14(%ebp)
467480:	ff 75 08             	push   0x8(%ebp)
467483:	ff 75 10             	push   0x10(%ebp)
467486:	ff 75 0c             	push   0xc(%ebp)
467489:	e8 ff 33 01 00       	call   0x47a88d
46748e:	83 c4 10             	add    $0x10,%esp
467491:	5d                   	pop    %ebp
467492:	c3                   	ret
467493:	8b ff                	mov    %edi,%edi
467495:	55                   	push   %ebp
467496:	8b ec                	mov    %esp,%ebp
467498:	ff 75 14             	push   0x14(%ebp)
46749b:	ff 75 08             	push   0x8(%ebp)
46749e:	ff 75 10             	push   0x10(%ebp)
4674a1:	ff 75 0c             	push   0xc(%ebp)
4674a4:	6a 00                	push   $0x0
4674a6:	e8 11 33 01 00       	call   0x47a7bc
4674ab:	83 c4 14             	add    $0x14,%esp
4674ae:	5d                   	pop    %ebp
4674af:	c3                   	ret
4674b0:	8b 01                	mov    (%ecx),%eax
4674b2:	83 21 00             	andl   $0x0,(%ecx)
4674b5:	c3                   	ret
4674b6:	8b 01                	mov    (%ecx),%eax
4674b8:	83 21 00             	andl   $0x0,(%ecx)
4674bb:	c3                   	ret
4674bc:	b8 30 cb 49 00       	mov    $0x49cb30,%eax
4674c1:	c3                   	ret
4674c2:	b8 70 cb 49 00       	mov    $0x49cb70,%eax
4674c7:	c3                   	ret
4674c8:	8b ff                	mov    %edi,%edi
4674ca:	55                   	push   %ebp
4674cb:	8b ec                	mov    %esp,%ebp
4674cd:	8b 45 08             	mov    0x8(%ebp),%eax
4674d0:	83 c0 40             	add    $0x40,%eax
4674d3:	5d                   	pop    %ebp
4674d4:	c3                   	ret
4674d5:	8b ff                	mov    %edi,%edi
4674d7:	55                   	push   %ebp
4674d8:	8b ec                	mov    %esp,%ebp
4674da:	8b 45 08             	mov    0x8(%ebp),%eax
4674dd:	83 c0 44             	add    $0x44,%eax
4674e0:	5d                   	pop    %ebp
4674e1:	c3                   	ret
4674e2:	8b ff                	mov    %edi,%edi
4674e4:	56                   	push   %esi
4674e5:	8b f1                	mov    %ecx,%esi
4674e7:	ff 36                	push   (%esi)
4674e9:	e8 4b ae 00 00       	call   0x472339
4674ee:	83 26 00             	andl   $0x0,(%esi)
4674f1:	59                   	pop    %ecx
4674f2:	5e                   	pop    %esi