44801a:	75 07                	jne    0x448023
44801c:	89 bc b5 fc fc ff ff 	mov    %edi,-0x304(%ebp,%esi,4)
448023:	8b cf                	mov    %edi,%ecx
448025:	8d 41 01             	lea    0x1(%ecx),%eax
448028:	89 85 fc f1 ff ff    	mov    %eax,-0xe04(%ebp)
44802e:	8a 01                	mov    (%ecx),%al
448030:	41                   	inc    %ecx
448031:	84 c0                	test   %al,%al
448033:	75 f9                	jne    0x44802e
448035:	2b 8d fc f1 ff ff    	sub    -0xe04(%ebp),%ecx
44803b:	47                   	inc    %edi
44803c:	03 f9                	add    %ecx,%edi
44803e:	42                   	inc    %edx
44803f:	83 fa 26             	cmp    $0x26,%edx
448042:	72 d0                	jb     0x448014
448044:	46                   	inc    %esi
448045:	6a 00                	push   $0x0
448047:	58                   	pop    %eax
448048:	83 fe 06             	cmp    $0x6,%esi
44804b:	72 c5                	jb     0x448012
44804d:	6a 0c                	push   $0xc
44804f:	50                   	push   %eax
448050:	ff 15 74 72 4a 00    	call   *0x4a7274
448056:	50                   	push   %eax
448057:	ff 15 84 72 4a 00    	call   *0x4a7284
44805d:	8d 8d 68 f1 ff ff    	lea    -0xe98(%ebp),%ecx
448063:	8b f8                	mov    %eax,%edi
448065:	e8 6a 27 02 00       	call   0x46a7d4
44806a:	85 ff                	test   %edi,%edi
44806c:	75 18                	jne    0x448086
44806e:	33 d2                	xor    %edx,%edx
448070:	89 95 68 f1 ff ff    	mov    %edx,-0xe98(%ebp)
448076:	bf 0e 00 07 80       	mov    $0x8007000e,%edi
44807b:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
448081:	e9 65 01 00 00       	jmp    0x4481eb
448086:	89 bd 68 f1 ff ff    	mov    %edi,-0xe98(%ebp)
44808c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44808f:	33 c0                	xor    %eax,%eax
448091:	89 8d 04 f2 ff ff    	mov    %ecx,-0xdfc(%ebp)
448097:	ab                   	stos   %eax,%es:(%edi)
448098:	ab                   	stos   %eax,%es:(%edi)
448099:	ab                   	stos   %eax,%es:(%edi)
44809a:	33 c0                	xor    %eax,%eax
44809c:	8b f8                	mov    %eax,%edi
44809e:	0f b7 11             	movzwl (%ecx),%edx
4480a1:	66 3b 14 45 dc 0f 41 	cmp    0x410fdc(,%eax,2),%dx
4480a8:	00
4480a9:	74 0b                	je     0x4480b6
4480ab:	40                   	inc    %eax
4480ac:	83 f8 06             	cmp    $0x6,%eax
4480af:	72 f0                	jb     0x4480a1
4480b1:	e9 c3 00 00 00       	jmp    0x448179
4480b6:	8b 94 85 fc fc ff ff 	mov    -0x304(%ebp,%eax,4),%edx
4480bd:	8b ca                	mov    %edx,%ecx
4480bf:	89 95 fc f1 ff ff    	mov    %edx,-0xe04(%ebp)
4480c5:	8d 71 01             	lea    0x1(%ecx),%esi
4480c8:	8a 01                	mov    (%ecx),%al
4480ca:	41                   	inc    %ecx
4480cb:	84 c0                	test   %al,%al
4480cd:	75 f9                	jne    0x4480c8
4480cf:	33 c0                	xor    %eax,%eax
4480d1:	2b ce                	sub    %esi,%ecx
4480d3:	8b 35 b0 00 4a 00    	mov    0x4a00b0,%esi
4480d9:	50                   	push   %eax
4480da:	50                   	push   %eax
4480db:	8d 41 01             	lea    0x1(%ecx),%eax
4480de:	8b ce                	mov    %esi,%ecx
4480e0:	50                   	push   %eax
4480e1:	52                   	push   %edx
4480e2:	33 c0                	xor    %eax,%eax
4480e4:	50                   	push   %eax
4480e5:	68 e9 fd 00 00       	push   $0xfde9
4480ea:	ff 15 2c 81 4a 00    	call   *0x4a812c
4480f0:	ff d6                	call   *%esi
4480f2:	8b f0                	mov    %eax,%esi
4480f4:	85 f6                	test   %esi,%esi
4480f6:	0f 84 bd 00 00 00    	je     0x4481b9
4480fc:	8d 0c 36             	lea    (%esi,%esi,1),%ecx
4480ff:	33 c0                	xor    %eax,%eax
448101:	51                   	push   %ecx
448102:	50                   	push   %eax
448103:	ff 15 74 72 4a 00    	call   *0x4a7274
448109:	50                   	push   %eax
44810a:	ff 15 84 72 4a 00    	call   *0x4a7284
448110:	8b 8d 68 f1 ff ff    	mov    -0xe98(%ebp),%ecx
448116:	33 d2                	xor    %edx,%edx
448118:	89 04 39             	mov    %eax,(%ecx,%edi,1)
44811b:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
448121:	39 14 38             	cmp    %edx,(%eax,%edi,1)
448124:	0f 84 4c ff ff ff    	je     0x448076
44812a:	8b 95 fc f1 ff ff    	mov    -0xe04(%ebp),%edx
448130:	8b ca                	mov    %edx,%ecx
448132:	8d 41 01             	lea    0x1(%ecx),%eax
448135:	89 85 fc f1 ff ff    	mov    %eax,-0xe04(%ebp)
44813b:	8a 01                	mov    (%ecx),%al
44813d:	41                   	inc    %ecx
44813e:	84 c0                	test   %al,%al
448140:	75 f9                	jne    0x44813b
448142:	2b 8d fc f1 ff ff    	sub    -0xe04(%ebp),%ecx
448148:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
44814e:	56                   	push   %esi
44814f:	8b 35 b0 00 4a 00    	mov    0x4a00b0,%esi
448155:	ff 34 38             	push   (%eax,%edi,1)
448158:	8d 41 01             	lea    0x1(%ecx),%eax
44815b:	8b ce                	mov    %esi,%ecx
44815d:	50                   	push   %eax
44815e:	52                   	push   %edx
44815f:	33 c0                	xor    %eax,%eax
448161:	50                   	push   %eax
448162:	68 e9 fd 00 00       	push   $0xfde9
448167:	ff 15 2c 81 4a 00    	call   *0x4a812c
44816d:	ff d6                	call   *%esi
44816f:	85 c0                	test   %eax,%eax
448171:	74 46                	je     0x4481b9
448173:	8b 8d 04 f2 ff ff    	mov    -0xdfc(%ebp),%ecx
448179:	83 c1 02             	add    $0x2,%ecx
44817c:	83 c7 04             	add    $0x4,%edi
44817f:	89 8d 04 f2 ff ff    	mov    %ecx,-0xdfc(%ebp)
448185:	6a 00                	push   $0x0
448187:	58                   	pop    %eax
448188:	83 ff 0c             	cmp    $0xc,%edi
44818b:	0f 82 0d ff ff ff    	jb     0x44809e
448191:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
448197:	33 d2                	xor    %edx,%edx
448199:	8b bd 28 f2 ff ff    	mov    -0xdd8(%ebp),%edi
44819f:	89 85 04 f1 ff ff    	mov    %eax,-0xefc(%ebp)
4481a5:	8b 85 c8 f1 ff ff    	mov    -0xe38(%ebp),%eax
4481ab:	89 95 68 f1 ff ff    	mov    %edx,-0xe98(%ebp)
4481b1:	89 85 20 f5 ff ff    	mov    %eax,-0xae0(%ebp)
4481b7:	eb 32                	jmp    0x4481eb
4481b9:	ff 15 b8 72 4a 00    	call   *0x4a72b8
4481bf:	8b f8                	mov    %eax,%edi
4481c1:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4481c7:	85 ff                	test   %edi,%edi
4481c9:	7e 11                	jle    0x4481dc
4481cb:	0f b7 ff             	movzwl %di,%edi
4481ce:	81 cf 00 00 07 80    	or     $0x80070000,%edi
4481d4:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4481da:	85 ff                	test   %edi,%edi
4481dc:	78 0b                	js     0x4481e9
4481de:	bf 05 40 00 80       	mov    $0x80004005,%edi
4481e3:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4481e9:	33 d2                	xor    %edx,%edx
4481eb:	83 bd 68 f1 ff ff 00 	cmpl   $0x0,-0xe98(%ebp)
4481f2:	74 68                	je     0x44825c
4481f4:	8b f2                	mov    %edx,%esi
4481f6:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
4481fc:	39 14 30             	cmp    %edx,(%eax,%esi,1)
4481ff:	74 53                	je     0x448254
448201:	8b 0c 30             	mov    (%eax,%esi,1),%ecx
448204:	8d 51 02             	lea    0x2(%ecx),%edx
448207:	66 8b 01             	mov    (%ecx),%ax
44820a:	83 c1 02             	add    $0x2,%ecx
44820d:	66 3b 85 c4 f1 ff ff 	cmp    -0xe3c(%ebp),%ax
448214:	75 f1                	jne    0x448207
448216:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
44821c:	2b ca                	sub    %edx,%ecx
44821e:	d1 f9                	sar    $1,%ecx
448220:	8b 04 30             	mov    (%eax,%esi,1),%eax
448223:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
44822a:	85 c9                	test   %ecx,%ecx
44822c:	74 0a                	je     0x448238
44822e:	33 d2                	xor    %edx,%edx
448230:	88 10                	mov    %dl,(%eax)
448232:	40                   	inc    %eax
448233:	83 e9 01             	sub    $0x1,%ecx
448236:	75 f8                	jne    0x448230
448238:	8b 85 68 f1 ff ff    	mov    -0xe98(%ebp),%eax
44823e:	8b 04 30             	mov    (%eax,%esi,1),%eax
448241:	50                   	push   %eax
448242:	33 c0                	xor    %eax,%eax
448244:	50                   	push   %eax
448245:	ff 15 74 72 4a 00    	call   *0x4a7274
44824b:	50                   	push   %eax
44824c:	ff 15 94 72 4a 00    	call   *0x4a7294
448252:	33 d2                	xor    %edx,%edx
448254:	83 c6 04             	add    $0x4,%esi
448257:	83 fe 0c             	cmp    $0xc,%esi
44825a:	72 9a                	jb     0x4481f6
44825c:	8b 85 28 f1 ff ff    	mov    -0xed8(%ebp),%eax
448262:	85 c0                	test   %eax,%eax
448264:	74 12                	je     0x448278
448266:	8b 8d 8c f1 ff ff    	mov    -0xe74(%ebp),%ecx
44826c:	85 c9                	test   %ecx,%ecx
44826e:	74 08                	je     0x448278
448270:	88 10                	mov    %dl,(%eax)
448272:	40                   	inc    %eax
448273:	83 e9 01             	sub    $0x1,%ecx
448276:	75 f8                	jne    0x448270
448278:	8d 8d 68 f1 ff ff    	lea    -0xe98(%ebp),%ecx
44827e:	e8 51 25 02 00       	call   0x46a7d4
448283:	8d 8d 28 f1 ff ff    	lea    -0xed8(%ebp),%ecx
448289:	e8 46 25 02 00       	call   0x46a7d4
44828e:	8d 8d 00 f1 ff ff    	lea    -0xf00(%ebp),%ecx
448294:	e8 3b 25 02 00       	call   0x46a7d4
448299:	85 ff                	test   %edi,%edi
44829b:	0f 88 33 02 00 00    	js     0x4484d4
4482a1:	8b 85 04 f1 ff ff    	mov    -0xefc(%ebp),%eax
4482a7:	8b 35 04 01 4a 00    	mov    0x4a0104,%esi
4482ad:	8b 08                	mov    (%eax),%ecx
4482af:	89 8d 28 f5 ff ff    	mov    %ecx,-0xad8(%ebp)
4482b5:	8b 48 04             	mov    0x4(%eax),%ecx
4482b8:	89 8d 2c f5 ff ff    	mov    %ecx,-0xad4(%ebp)
4482be:	33 c9                	xor    %ecx,%ecx
4482c0:	8b 40 08             	mov    0x8(%eax),%eax
4482c3:	8b f9                	mov    %ecx,%edi
4482c5:	51                   	push   %ecx
4482c6:	89 85 30 f5 ff ff    	mov    %eax,-0xad0(%ebp)
4482cc:	8d 85 9c f0 ff ff    	lea    -0xf64(%ebp),%eax
4482d2:	50                   	push   %eax
4482d3:	51                   	push   %ecx
4482d4:	89 8d a0 f0 ff ff    	mov    %ecx,-0xf60(%ebp)
4482da:	89 8d a4 f0 ff ff    	mov    %ecx,-0xf5c(%ebp)
4482e0:	89 8d 04 f2 ff ff    	mov    %ecx,-0xdfc(%ebp)
4482e6:	8b ce                	mov    %esi,%ecx
4482e8:	6a 42                	push   $0x42
4482ea:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4482f0:	c7 85 9c f0 ff ff 0c 	movl   $0xc,-0xf64(%ebp)
4482f7:	00 00 00
4482fa:	ff 15 2c 81 4a 00    	call   *0x4a812c
448300:	ff d6                	call   *%esi
448302:	85 c0                	test   %eax,%eax
448304:	75 38                	jne    0x44833e
448306:	ff 15 b8 72 4a 00    	call   *0x4a72b8
44830c:	8b f8                	mov    %eax,%edi
44830e:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
448314:	85 ff                	test   %edi,%edi
448316:	7e 11                	jle    0x448329
448318:	0f b7 ff             	movzwl %di,%edi
44831b:	81 cf 00 00 07 80    	or     $0x80070000,%edi
448321:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
448327:	85 ff                	test   %edi,%edi
448329:	8b 85 04 f2 ff ff    	mov    -0xdfc(%ebp),%eax
44832f:	78 16                	js     0x448347
448331:	bf 05 40 00 80       	mov    $0x80004005,%edi
448336:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
44833c:	eb 09                	jmp    0x448347
44833e:	8b 85 a0 f0 ff ff    	mov    -0xf60(%ebp),%eax
448344:	83 e0 01             	and    $0x1,%eax
448347:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
44834d:	85 ff                	test   %edi,%edi
44834f:	0f 88 7f 01 00 00    	js     0x4484d4
448355:	8b 85 10 f2 ff ff    	mov    -0xdf0(%ebp),%eax
44835b:	6a 2a                	push   $0x2a
44835d:	59                   	pop    %ecx
44835e:	89 8d 84 f1 ff ff    	mov    %ecx,-0xe7c(%ebp)
448364:	83 e8 01             	sub    $0x1,%eax
448367:	74 29                	je     0x448392
448369:	83 e8 01             	sub    $0x1,%eax
44836c:	74 18                	je     0x448386
44836e:	83 e8 01             	sub    $0x1,%eax
448371:	75 2f                	jne    0x4483a2
448373:	bf e1 00 00 00       	mov    $0xe1,%edi
448378:	89 bd cc f1 ff ff    	mov    %edi,-0xe34(%ebp)
44837e:	89 bd 94 f1 ff ff    	mov    %edi,-0xe6c(%ebp)
448384:	eb 1c                	jmp    0x4483a2
448386:	c7 85 cc f1 ff ff 0f 	movl   $0xf,-0xe34(%ebp)
44838d:	00 00 00
448390:	eb 06                	jmp    0x448398
448392:	89 8d cc f1 ff ff    	mov    %ecx,-0xe34(%ebp)
448398:	c7 85 94 f1 ff ff 0b 	movl   $0xb,-0xe6c(%ebp)
44839f:	00 00 00
4483a2:	be dc 00 00 00       	mov    $0xdc,%esi
4483a7:	c7 85 e4 f1 ff ff 60 	movl   $0x60,-0xe1c(%ebp)
4483ae:	00 00 00
4483b1:	33 c0                	xor    %eax,%eax
4483b3:	56                   	push   %esi
4483b4:	50                   	push   %eax
4483b5:	8d 85 c4 f7 ff ff    	lea    -0x83c(%ebp),%eax
4483bb:	50                   	push   %eax
4483bc:	e8 78 8c 04 00       	call   0x491039
4483c1:	83 c4 0c             	add    $0xc,%esp
4483c4:	66 89 b5 08 f8 ff ff 	mov    %si,-0x7f8(%ebp)
4483cb:	8b 35 c0 00 4a 00    	mov    0x4a00c0,%esi
4483d1:	8d 85 c4 f7 ff ff    	lea    -0x83c(%ebp),%eax
4483d7:	8b ce                	mov    %esi,%ecx
4483d9:	50                   	push   %eax
4483da:	6a ff                	push   $0xffffffff
4483dc:	33 c0                	xor    %eax,%eax
4483de:	50                   	push   %eax
4483df:	ff 15 2c 81 4a 00    	call   *0x4a812c
4483e5:	ff d6                	call   *%esi
4483e7:	85 c0                	test   %eax,%eax
4483e9:	74 40                	je     0x44842b
4483eb:	8b 85 70 f8 ff ff    	mov    -0x790(%ebp),%eax
4483f1:	0f b7 bd 6a f8 ff ff 	movzwl -0x796(%ebp),%edi
4483f8:	8b 8d 74 f8 ff ff    	mov    -0x78c(%ebp),%ecx
4483fe:	6a 60                	push   $0x60
448400:	89 85 f4 f1 ff ff    	mov    %eax,-0xe0c(%ebp)
448406:	89 85 ec fa ff ff    	mov    %eax,-0x514(%ebp)
44840c:	58                   	pop    %eax
44840d:	89 bd e4 f1 ff ff    	mov    %edi,-0xe1c(%ebp)
448413:	89 8d 08 f2 ff ff    	mov    %ecx,-0xdf8(%ebp)
448419:	89 8d f0 fa ff ff    	mov    %ecx,-0x510(%ebp)
44841f:	3b f8                	cmp    %eax,%edi
448421:	73 20                	jae    0x448443
448423:	89 85 e4 f1 ff ff    	mov    %eax,-0xe1c(%ebp)
448429:	eb 18                	jmp    0x448443
44842b:	8b 85 f0 fa ff ff    	mov    -0x510(%ebp),%eax
448431:	89 85 08 f2 ff ff    	mov    %eax,-0xdf8(%ebp)
448437:	8b 85 ec fa ff ff    	mov    -0x514(%ebp),%eax
44843d:	89 85 f4 f1 ff ff    	mov    %eax,-0xe0c(%ebp)
448443:	83 bd 10 f2 ff ff 01 	cmpl   $0x1,-0xdf0(%ebp)
44844a:	8b 85 80 f1 ff ff    	mov    -0xe80(%ebp),%eax
448450:	74 06                	je     0x448458
448452:	8b 85 dc f1 ff ff    	mov    -0xe24(%ebp),%eax
448458:	89 85 04 f2 ff ff    	mov    %eax,-0xdfc(%ebp)
44845e:	33 c0                	xor    %eax,%eax
448460:	6a 5c                	push   $0x5c
448462:	50                   	push   %eax
448463:	8d 85 78 f9 ff ff    	lea    -0x688(%ebp),%eax
448469:	50                   	push   %eax
44846a:	e8 ca 8b 04 00       	call   0x491039
44846f:	8b 35 cc 00 4a 00    	mov    0x4a00cc,%esi
448475:	83 c4 0c             	add    $0xc,%esp
448478:	33 c0                	xor    %eax,%eax
44847a:	8b ce                	mov    %esi,%ecx
44847c:	8b f8                	mov    %eax,%edi
44847e:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
448484:	68 03 04 00 00       	push   $0x403
448489:	50                   	push   %eax
44848a:	50                   	push   %eax
44848b:	ff 15 2c 81 4a 00    	call   *0x4a812c
448491:	ff d6                	call   *%esi
448493:	89 85 fc f1 ff ff    	mov    %eax,-0xe04(%ebp)
448499:	85 c0                	test   %eax,%eax
44849b:	0f 85 ff 01 00 00    	jne    0x4486a0
4484a1:	ff 15 b8 72 4a 00    	call   *0x4a72b8
4484a7:	8b f8                	mov    %eax,%edi
4484a9:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4484af:	85 ff                	test   %edi,%edi
4484b1:	7e 11                	jle    0x4484c4
4484b3:	0f b7 ff             	movzwl %di,%edi
4484b6:	81 cf 00 00 07 80    	or     $0x80070000,%edi
4484bc:	89 bd 28 f2 ff ff    	mov    %edi,-0xdd8(%ebp)
4484c2:	85 ff                	test   %edi,%edi
4484c4:	0f 88 8d 02 00 00    	js     0x448757
4484ca:	c7 85 28 f2 ff ff 05 	movl   $0x80004005,-0xdd8(%ebp)
4484d1:	40 00 80
4484d4:	33 c0                	xor    %eax,%eax
4484d6:	ff b5 14 f2 ff ff    	push   -0xdec(%ebp)
4484dc:	8b 35 00 01 4a 00    	mov    0x4a0100,%esi
4484e2:	8b ce                	mov    %esi,%ecx
4484e4:	50                   	push   %eax
4484e5:	ff 15 2c 81 4a 00    	call   *0x4a812c
4484eb:	ff d6                	call   *%esi
4484ed:	33 f6                	xor    %esi,%esi
4484ef:	bf c8 65 4a 00       	mov    $0x4a65c8,%edi
4484f4:	46                   	inc    %esi
4484f5:	8b ce                	mov    %esi,%ecx